:root{--ink:#171719;--muted:#626269;--paper:#f4f5f3;--white:#fff;--line:#d9dcd8;--coral:#ed6047;--coral-dark:#c9402c;--cobalt:#214cce;--sage:#177a5b;--soft-blue:#e9efff;--soft-coral:#fff0ec;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,Helvetica,sans-serif;letter-spacing:0}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:100;background:#fff;padding:12px}
.header{position:sticky;top:0;z-index:30;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,64px);background:rgba(255,255,255,.96);border-bottom:1px solid var(--line)}.logo{font-family:Georgia,serif;font-size:25px;font-weight:700;text-decoration:none}.logo span{font-family:Arial,sans-serif;font-size:10px;color:var(--coral);margin-left:6px}.desktop-nav{display:flex;align-items:center;gap:28px}.desktop-nav a{font-size:14px;font-weight:700;text-decoration:none}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--cobalt)}.book-link,.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;background:var(--coral);color:#fff;text-decoration:none;border:0;border-radius:4px;font-size:14px;font-weight:700;transition:background .2s,transform .2s}.book-link:hover,.button:hover{background:var(--coral-dark);transform:translateY(-1px)}.button.secondary{background:transparent;color:var(--ink);border:1px solid var(--ink)}.menu-button{display:none;width:44px;height:44px;border:0;background:transparent;font-size:26px}.menu-panel{position:fixed;z-index:40;inset:76px 0 0;display:none;background:var(--ink);color:#fff;padding:40px clamp(24px,6vw,80px);overflow:auto}.menu-panel.open{display:block}.menu-panel nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8vw}.menu-panel a{display:flex;justify-content:space-between;padding:19px 0;border-bottom:1px solid #404046;font-family:Georgia,serif;font-size:clamp(24px,3vw,42px);text-decoration:none}.menu-panel a span{font-family:Arial,sans-serif;color:#818188;font-size:12px}.menu-close{position:absolute;right:28px;top:20px;width:44px;height:44px;border:0;background:transparent;color:#fff;font-size:30px}
.hero{position:relative;min-height:calc(100svh - 76px);display:flex;align-items:center;overflow:hidden;background:#edf0ed}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;background:rgba(255,255,255,.1)}.hero-content{position:relative;z-index:2;width:min(700px,58%);margin-left:max(24px,calc((100vw - var(--max))/2));padding:84px 0}.kicker,.section-kicker{margin:0 0 18px;color:var(--cobalt);font-size:12px;font-weight:800;text-transform:uppercase}.hero h1,.page-hero h1{margin:0;font-family:Georgia,serif;font-size:clamp(52px,7.3vw,108px);font-weight:400;line-height:.92}.hero p.lead{max-width:530px;margin:26px 0 32px;font-size:19px;line-height:1.6}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{position:absolute;right:clamp(20px,4vw,64px);bottom:28px;z-index:2;font-size:12px;font-weight:700}
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:#fff}.trust-strip div{padding:24px clamp(18px,3vw,42px);border-right:1px solid var(--line)}.trust-strip div:last-child{border:0}.trust-strip strong{display:block;margin-bottom:6px;font-size:14px}.trust-strip span{color:var(--muted);font-size:12px}
.section{padding:clamp(64px,9vw,120px) max(24px,calc((100vw - var(--max))/2))}.section.alt{background:var(--paper)}.section.dark{background:var(--ink);color:#fff}.section-head{display:grid;grid-template-columns:.55fr 1.45fr;gap:7vw;margin-bottom:52px}.section-head h2,.content h2{margin:0;font-family:Georgia,serif;font-size:clamp(38px,5vw,70px);font-weight:400;line-height:1.05}.section-head p{max-width:720px;margin:0;color:var(--muted);font-size:18px;line-height:1.7}.dark .section-head p{color:#bebec3}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,7vw,96px);align-items:center}.split.reverse .media{order:2}.media{min-height:420px}.media img{width:100%;height:100%;min-height:420px;object-fit:cover}.content h3{margin:0 0 16px;font-family:Georgia,serif;font-size:clamp(30px,3.6vw,50px);font-weight:400}.content p{color:var(--muted);font-size:17px;line-height:1.72}.content ul,.content ol{padding-left:20px;color:var(--muted);line-height:1.75}.content li+li{margin-top:9px}.dark .content p,.dark .content li{color:#c9c9cd}
.page-hero{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:var(--paper)}.page-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:80px clamp(24px,6vw,90px)}.page-hero h1{font-size:clamp(50px,6vw,88px)}.page-hero-copy>p:last-child{max-width:600px;margin:28px 0 0;color:var(--muted);font-size:18px;line-height:1.7}.page-hero img{width:100%;height:100%;min-height:620px;object-fit:cover}.page-hero.compact{min-height:480px}.page-hero.compact img{min-height:480px}
.method-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.method{padding:32px 30px 34px 0;border-bottom:1px solid var(--line)}.method:nth-child(odd){border-right:1px solid var(--line)}.method:nth-child(even){padding-left:30px}.method-index{display:block;margin-bottom:28px;color:var(--coral);font-size:12px;font-weight:800}.method h3{margin:0 0 10px;font-family:Georgia,serif;font-size:30px;font-weight:400}.method p{margin:0;color:var(--muted);line-height:1.65}.method dl{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0 0}.method dt{color:var(--muted);font-size:11px;text-transform:uppercase}.method dd{margin:5px 0 0;font-size:14px;font-weight:700}
.choice-tool{display:grid;grid-template-columns:.8fr 1.2fr;gap:4vw;padding:36px;background:var(--soft-blue);border:1px solid #c9d5ff}.choice-options{display:grid;gap:10px}.choice-options button{min-height:48px;text-align:left;padding:0 16px;background:#fff;border:1px solid #c5cbe0;border-radius:4px;font-weight:700}.choice-options button.active{background:var(--cobalt);border-color:var(--cobalt);color:#fff}.choice-result{padding:28px;background:#fff}.choice-result h3{margin:0 0 12px;font-family:Georgia,serif;font-size:32px}.choice-result p{margin:0;color:var(--muted);line-height:1.65}
.steps{counter-reset:steps;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.step{padding:26px 24px 20px 0;border-bottom:1px solid var(--line);counter-increment:steps}.step::before{content:"0" counter(steps);display:block;margin-bottom:36px;color:var(--coral);font-size:12px;font-weight:800}.step h3{margin:0 0 12px;font-size:18px}.step p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.comparison{width:100%;border-collapse:collapse}.comparison th,.comparison td{padding:18px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.comparison th{font-size:12px;text-transform:uppercase}.comparison td{color:var(--muted);line-height:1.55}.comparison td:first-child{color:var(--ink);font-weight:700}
.callout{padding:28px 32px;background:var(--soft-coral);border-left:4px solid var(--coral)}.callout.blue{background:var(--soft-blue);border-color:var(--cobalt)}.callout.green{background:#e9f5f0;border-color:var(--sage)}.callout h3{margin:0 0 10px;font-size:18px}.callout p{margin:0;color:var(--muted);line-height:1.65}.warning-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.warning-list article{padding:28px;background:#fff}.warning-list h3{margin:0 0 10px;font-size:18px}.warning-list p{margin:0;color:var(--muted);line-height:1.6}.warning-list .danger h3{color:var(--coral-dark)}
.source-list{margin:0;padding:0;list-style:none;border-top:1px solid #444}.source-list li{display:grid;grid-template-columns:40px 1fr auto;gap:18px;padding:18px 0;border-bottom:1px solid #444;align-items:center}.source-list span{color:#85858c;font-size:12px}.source-list a{color:#fff;font-weight:700;text-decoration:none}.source-list a:hover{text-decoration:underline}.source-list small{color:#aaa}
.price-builder{display:grid;grid-template-columns:1fr 1fr;gap:38px;padding:38px;border:1px solid var(--line)}.field{display:grid;gap:9px;margin-bottom:20px}.field label{font-size:13px;font-weight:700}.field select,.field input,.field textarea{width:100%;min-height:48px;padding:10px 12px;background:#fff;border:1px solid #bfc3bf;border-radius:3px}.field textarea{min-height:120px;resize:vertical}.range-row{display:flex;justify-content:space-between;font-size:13px}.range-value{font-weight:800;color:var(--cobalt)}.estimate{padding:30px;background:var(--ink);color:#fff}.estimate span{color:#b7b7bc;font-size:12px;text-transform:uppercase}.estimate strong{display:block;margin:12px 0;font-family:Georgia,serif;font-size:40px;font-weight:400}.estimate p{color:#c3c3c7;line-height:1.6}
.faq-list{max-width:900px;margin:0 auto}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:18px;font-weight:700;cursor:pointer;list-style:none}.faq-list summary::after{content:"+";font-size:25px;font-weight:400}.faq-list details[open] summary::after{content:"−"}.faq-list details p{max-width:760px;margin:0 0 24px;color:var(--muted);line-height:1.7}
.booking-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.booking-copy h2{margin:0 0 20px;font-family:Georgia,serif;font-size:48px;font-weight:400}.booking-copy p{color:var(--muted);line-height:1.7}.booking-form{padding:34px;background:var(--paper)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .wide{grid-column:1/-1}.form-status{min-height:22px;margin:16px 0 0;color:var(--sage);font-size:14px;font-weight:700}
.footer{padding:70px max(24px,calc((100vw - var(--max))/2)) 28px;background:var(--ink);color:#fff}.footer-top{display:grid;grid-template-columns:1fr 2fr;gap:7vw;padding-bottom:60px}.footer-title{margin:20px 0 0;font-family:Georgia,serif;font-size:clamp(36px,5vw,68px);font-weight:400;line-height:1}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.footer-links h3{margin:0 0 14px;color:#88888f;font-size:11px;text-transform:uppercase}.footer-links a{display:block;margin:10px 0;color:#ddd;text-decoration:none;font-size:14px}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid #414146;color:#8f8f95;font-size:12px}
@media(max-width:980px){.desktop-nav a:not(.book-link){display:none}.menu-button{display:block}.header-actions{display:flex;align-items:center;gap:8px}.section-head,.page-hero,.split,.choice-tool,.price-builder,.booking-layout{grid-template-columns:1fr}.page-hero img{min-height:420px;max-height:560px}.page-hero-copy{padding-top:64px;padding-bottom:64px}.split.reverse .media{order:0}.steps{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:1fr}.hero-content{width:min(620px,75%)}.hero{min-height:760px}}
@media(max-width:680px){.header{height:64px}.book-link{display:none}.menu-panel{inset:64px 0 0}.menu-panel nav{grid-template-columns:1fr}.hero{min-height:calc(100svh - 64px);align-items:flex-end}.hero>img{object-position:64% center}.hero-overlay{background:rgba(255,255,255,.48)}.hero-content{width:100%;margin:0;padding:120px 24px 76px}.hero h1{font-size:clamp(48px,15vw,70px)}.hero p.lead{font-size:16px;max-width:92%}.hero-note{right:20px;bottom:20px}.trust-strip{grid-template-columns:1fr 1fr}.trust-strip div:nth-child(2){border-right:0}.trust-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}.section{padding-left:24px;padding-right:24px}.section-head{margin-bottom:36px}.section-head h2,.content h2{font-size:40px}.page-hero{min-height:auto}.page-hero-copy{padding:54px 24px}.page-hero h1{font-size:48px}.page-hero img,.page-hero.compact img{min-height:390px}.method-grid{grid-template-columns:1fr}.method:nth-child(odd){border-right:0}.method:nth-child(even){padding-left:0}.method dl{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}.warning-list{grid-template-columns:1fr}.comparison-wrap{overflow-x:auto}.comparison{min-width:720px}.choice-tool,.price-builder{padding:22px}.source-list li{grid-template-columns:30px 1fr}.source-list small{display:none}.form-grid{grid-template-columns:1fr}.footer{padding-left:24px;padding-right:24px}.footer-links{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column}.media,.media img{min-height:340px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.book-link{transition:none}}
