:root{--black:#000;--ink:#111;--white:#fff;--gray:#f3f3f3;--mid:#d7d7d7;--muted:#5e5e5e;--line:#dedede;--font:system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font);overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin-top:0}.shell{width:min(1180px,calc(100% - 48px));margin:0 auto}.skip-link{position:fixed;left:16px;top:-80px;z-index:100;background:#fff;color:#000;padding:12px 18px}.skip-link:focus{top:16px}
.site-header{position:absolute;inset:0 0 auto;z-index:30;color:#fff}.nav-wrap{height:80px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{font-size:24px;font-weight:700;letter-spacing:-.055em;width:max-content}.brand span{font-weight:400}.main-nav{display:flex;gap:8px}.main-nav a{font-size:14px;font-weight:600;padding:10px 14px;border-radius:999px}.main-nav a:hover{background:#282828}.nav-cta{justify-self:end;background:#fff;color:#000;padding:12px 18px;border-radius:8px;font-size:14px;font-weight:700}.menu-toggle{display:none}
.hero{background:#000;color:#fff;min-height:790px;padding:150px 0 95px}.hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:85px;align-items:center}.location-line{font-size:14px;font-weight:600;margin-bottom:25px}.location-line span{font-size:10px;margin-right:8px}h1{font-size:clamp(55px,6vw,78px);line-height:1.02;letter-spacing:-.045em;font-weight:700;margin:0 0 28px}.hero-copy>p{max-width:520px;color:#d2d2d2;font-size:18px;line-height:1.55}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;padding:15px 22px;min-height:52px;font-weight:700;font-size:15px;cursor:pointer;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-1px)}.button-white{background:#fff;color:#000}.button-white:hover{background:#e8e8e8}.button-black{background:#000;color:#fff}.button-black:hover{background:#333}.under-link{font-size:15px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:4px}.price-line{display:flex;align-items:center;gap:18px;margin-top:48px;padding-top:24px;border-top:1px solid #333;max-width:520px}.price-line strong{font-size:30px;letter-spacing:-.04em}.price-line span{color:#aaa;font-size:12px;line-height:1.4}
.route-panel{background:#f5f5f5;color:#000;padding:26px 28px 28px;min-height:540px}.route-head{display:flex;justify-content:space-between;border-bottom:1px solid #ccc;padding-bottom:16px;font-size:10px;font-weight:700;letter-spacing:.08em}.route-flow{position:relative;padding:25px 0 15px}.route-rail{position:absolute;left:12px;top:53px;bottom:58px;width:2px;background:#000}.route-stop{position:relative;z-index:1;display:grid;grid-template-columns:26px 1fr auto;gap:15px;align-items:center;min-height:105px}.stop-dot{width:18px;height:18px;background:#000;border:5px solid #f5f5f5;outline:2px solid #000;display:block;margin-left:4px}.stop-dot.round{border-radius:50%}.stop-dot.square{border-radius:0}.route-stop small,.route-stop strong,.route-stop span{display:block}.route-stop small{font-size:9px;color:#777;margin-bottom:5px}.route-stop strong{font-size:17px}.route-stop span{font-size:12px;color:#6a6a6a;margin-top:4px}.route-stop>b{font-size:11px;background:#e3e3e3;padding:7px 9px;border-radius:999px}.route-result{background:#000;color:#fff;padding:22px;display:flex;justify-content:space-between;align-items:center}.route-result span,.route-result strong{display:block}.route-result span{font-size:9px;color:#aaa;letter-spacing:.08em;margin-bottom:5px}.route-result strong{font-size:21px}.stamp{width:64px;height:64px;border:1px solid #fff;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:8px}.stamp b{font-size:19px}
.section-white{background:#fff}.section-gray{background:var(--gray)}.service,.process,.hours,.faq{padding:115px 0}.section-head{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:end}.section-head h2,.split-copy h2,.world-copy h2,.booking-intro h2,.faq-title h2,.final-cta h2{font-size:clamp(42px,4.7vw,64px);line-height:1.05;letter-spacing:-.05em;font-weight:700;margin-bottom:0}.section-head>p{margin:0;color:var(--muted);font-size:16px;line-height:1.6;max-width:470px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid #000}.service-item{padding:24px 35px 10px 0;min-height:340px;border-right:1px solid var(--line);position:relative}.service-item+article{padding-left:35px}.service-item:last-child{border-right:0}.service-item>span{font-size:11px;color:#666}.line-icon{width:85px;height:85px;margin:50px 0 45px;border:2px solid #000;display:grid;place-items:center;font-size:39px}.document-icon{padding:19px}.document-icon i{display:block;width:100%;height:2px;background:#000;margin:5px 0}.check-icon{border-radius:50%}.globe-icon{border-radius:50%;font-size:56px}.service-item h3{font-size:23px;line-height:1.2;letter-spacing:-.03em;margin-bottom:13px}.service-item p{font-size:14px;color:var(--muted);line-height:1.6;max-width:300px}
.split-feature{padding:100px 0}.split-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:100px;align-items:center}.feature-graphic{position:relative;min-height:580px;background:#d7d7d7;display:grid;place-items:center;overflow:hidden}.feature-graphic:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 45%),repeating-linear-gradient(0deg,transparent 0 39px,rgba(0,0,0,.05) 40px)}.paper-sheet{position:relative;width:330px;min-height:430px;background:#fff;padding:38px;box-shadow:18px 22px 0 rgba(0,0,0,.14);transform:rotate(-3deg)}.paper-sheet>span{font-size:9px;letter-spacing:.1em;font-weight:700}.paper-sheet>strong{display:block;font-size:34px;line-height:1.08;letter-spacing:-.04em;margin:62px 0 70px}.paper-sheet>i{display:block;width:75%;height:2px;background:#ccc;margin:11px 0}.black-seal{position:absolute;right:28px;bottom:35px;width:95px;height:95px;border:2px solid #000;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:9px;font-weight:700}.black-seal b{font-size:28px}.floating-label{position:absolute;left:35px;bottom:45px;background:#000;color:#fff;padding:14px 16px;font-size:12px;font-weight:600;box-shadow:10px 10px 0 rgba(255,255,255,.65)}.floating-label b{margin-left:20px}.split-copy>p{color:var(--muted);font-size:17px;line-height:1.65;margin:27px 0 30px}.split-copy ul{list-style:none;padding:0;margin:0 0 35px}.split-copy li{padding:14px 0;border-bottom:1px solid #d1d1d1;font-size:14px}.split-copy li span{font-size:7px;margin-right:11px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:65px}.steps article{background:#f3f3f3;min-height:330px;padding:30px;display:flex;flex-direction:column}.step-top{display:flex;justify-content:space-between;align-items:center}.step-top span{font-size:13px;font-weight:700}.step-top b{font-size:23px}.steps h3{font-size:25px;letter-spacing:-.035em;margin:auto 0 14px}.steps p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.world-section{background:#000;color:#fff;padding:105px 0}.world-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:100px;align-items:center}.overline{display:block;font-size:11px;letter-spacing:.1em;font-weight:700;color:#aaa;margin-bottom:24px}.world-copy p{color:#b9b9b9;font-size:16px;line-height:1.65;margin:28px 0 32px}.light-link{color:#fff}.world-map{position:relative;min-height:500px;background:#151515;overflow:hidden}.world-map svg{width:100%;height:100%;position:absolute;inset:0}.world-map .map-grid{stroke:#333;stroke-width:1}.world-map .route-path{stroke:#fff;stroke-width:4;fill:none;stroke-dasharray:9 10}.world-map circle,.world-map rect{fill:#fff}.map-label{position:absolute;background:#fff;color:#000;padding:9px 12px;font-size:9px;font-weight:700;letter-spacing:.08em}.map-label.from{left:8%;bottom:15%}.map-label.to{right:6%;top:13%}.map-status{position:absolute;left:28px;right:28px;bottom:28px;background:#000;border:1px solid #444;padding:16px 18px;display:flex;justify-content:space-between;font-size:11px}.map-status span{color:#888}
.hours-table{margin-top:65px;border-top:2px solid #000}.hours-row{display:grid;grid-template-columns:1.45fr repeat(3,1fr);align-items:center;min-height:86px;border-bottom:1px solid var(--line);font-size:15px}.hours-heading{min-height:48px;color:#777;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.circle-mark,.square-mark{display:inline-block;width:11px;height:11px;background:#000;margin-right:12px}.circle-mark{border-radius:50%}.hours-note{font-size:11px;color:#777;margin-top:18px}
.booking-section{background:#000;color:#fff;padding:110px 0}.booking-layout{display:grid;grid-template-columns:360px 1fr;gap:75px;align-items:start}.booking-intro{position:sticky;top:25px}.booking-intro>p{color:#aaa;line-height:1.6;margin:26px 0 45px}.booking-price{border-top:1px solid #333;padding-top:25px;display:flex;align-items:center;gap:18px}.booking-price strong{font-size:42px;letter-spacing:-.04em}.booking-price span{font-size:11px;color:#aaa;line-height:1.45}.booking-app{background:#fff;color:#000;min-width:0}.booking-controls{padding:36px;min-width:0}.control-block{margin-bottom:38px}.control-block>label{display:block;margin-bottom:13px;font-size:11px;font-weight:700}.segmented{display:flex;gap:8px}.mode-button{border:0;background:#eee;padding:13px 16px;cursor:pointer;text-align:left}.mode-button.active{background:#000;color:#fff}.mode-button.active .circle-mark,.mode-button.active .square-mark{background:#fff}.date-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.date-button{min-height:88px;border:1px solid #ccc;background:#fff;cursor:pointer;padding:9px 4px}.date-button span,.date-button small{display:block;font-size:8px;color:#777}.date-button strong{display:block;font-size:24px;margin:4px 0}.date-button.active{background:#000;color:#fff;border-color:#000}.date-button.active span,.date-button.active small{color:#aaa}.date-button[disabled]{opacity:.28;cursor:not-allowed}.time-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.time-button{border:1px solid #ccc;background:#fff;padding:12px 5px;cursor:pointer}.time-button:hover,.time-button.active{background:#000;color:#fff;border-color:#000}.empty-times{font-size:13px;color:#777;grid-column:1/-1}.booking-summary{background:#f1f1f1;padding:30px;min-height:440px;display:flex;flex-direction:column}.summary-top{display:flex;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid #ccc;font-size:9px;font-weight:700}.summary-status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#16883f;margin-right:6px}.summary-service{padding:30px 0}.summary-service small{font-size:9px;color:#666}.summary-service strong{display:block;font-size:27px;line-height:1.15;margin-top:7px}.booking-summary dl{margin:0}.booking-summary dl>div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #ccc;font-size:12px}.booking-summary dt{color:#666}.booking-summary dd{margin:0;text-align:right;font-weight:600}.booking-summary .total{margin-top:5px;border:0;align-items:center}.booking-summary .total dd{font-size:28px}.button-book{width:100%;margin-top:auto;background:#000;color:#fff;justify-content:space-between}.button-book:disabled{opacity:.3;cursor:not-allowed}.booking-summary>p{font-size:9px;color:#777;text-align:center;margin:10px 0 0}
.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:110px}.faq-title{position:sticky;top:30px;align-self:start}.dark-overline{color:#555}.faq-title .button{margin-top:35px}.accordion{border-top:2px solid #000}.accordion details{border-bottom:1px solid var(--line)}.accordion summary{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:18px;font-weight:600}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-size:26px;font-weight:400;transition:transform .2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{color:var(--muted);font-size:14px;line-height:1.65;padding:0 45px 24px 0}
.final-cta{background:#000;color:#fff;padding:95px 0}.final-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:110px;align-items:end}.final-grid p{color:#aaa;line-height:1.6;margin-bottom:26px}
footer{background:#000;color:#fff;border-top:1px solid #333;padding:65px 0 35px}.footer-grid{display:grid;grid-template-columns:1fr 1.2fr .7fr;gap:70px}.footer-grid>p{color:#999;font-size:13px;line-height:1.6}.footer-links{display:grid;gap:10px;font-size:13px}.footer-meta{grid-column:1/-1;border-top:1px solid #333;padding-top:22px;display:flex;justify-content:space-between;color:#777;font-size:9px;text-transform:uppercase;letter-spacing:.06em}
.toast{position:fixed;right:24px;bottom:24px;z-index:100;width:min(380px,calc(100% - 48px));background:#fff;color:#000;border:2px solid #000;padding:20px 45px 20px 20px;box-shadow:8px 8px 0 #000;transform:translateY(160%);transition:transform .3s}.toast.visible{transform:translateY(0)}.toast strong,.toast span{display:block}.toast span{font-size:11px;line-height:1.5;margin-top:4px}.toast button{position:absolute;right:11px;top:7px;background:none;border:0;font-size:23px;cursor:pointer}
@media(max-width:980px){.shell{width:min(100% - 32px,760px)}.nav-wrap{grid-template-columns:1fr auto}.nav-cta{display:none}.menu-toggle{display:block;justify-self:end;background:#222;color:#fff;border:0;border-radius:999px;padding:10px 14px}.main-nav{position:absolute;left:16px;right:16px;top:72px;background:#222;display:none;flex-direction:column;padding:18px}.main-nav.open{display:flex}.hero-grid,.section-head,.split-grid,.world-grid,.booking-layout,.faq-grid,.final-grid{grid-template-columns:1fr}.hero-grid{gap:65px}.hero{padding-top:130px}.section-head,.split-grid,.world-grid,.booking-layout,.faq-grid,.final-grid{gap:55px}.service-grid{grid-template-columns:1fr}.service-item,.service-item+article{padding:28px 0;border-right:0;border-bottom:1px solid var(--line);min-height:300px}.steps{grid-template-columns:1fr}.steps article{min-height:280px}.booking-intro,.faq-title{position:static}.booking-app{max-width:100%}.footer-grid{grid-template-columns:1fr 1fr}.footer-links{grid-column:2;grid-row:1/span 2}}
@media(max-width:640px){.shell{width:calc(100% - 28px)}.nav-wrap{height:70px}.brand{font-size:21px}.hero{padding:120px 0 70px;min-height:auto}.hero-grid{gap:50px}h1{font-size:52px}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column;align-items:flex-start}.button-white{width:100%}.route-panel{padding:20px 18px;min-height:500px}.route-stop{grid-template-columns:24px 1fr}.route-stop>b{grid-column:2;width:max-content}.route-result strong{font-size:17px}.service,.process,.hours,.faq{padding:80px 0}.section-head h2,.split-copy h2,.world-copy h2,.booking-intro h2,.faq-title h2,.final-cta h2{font-size:42px}.section-head{gap:25px}.line-icon{margin:35px 0}.split-feature{padding:70px 0}.feature-graphic{min-height:470px}.paper-sheet{width:270px;min-height:370px;padding:28px}.paper-sheet>strong{font-size:29px;margin:50px 0 58px}.floating-label{left:15px;bottom:25px}.world-section{padding:80px 0}.world-map{min-height:370px}.hours-table{overflow-x:auto}.hours-row{width:650px}.booking-section{padding:80px 0}.segmented{flex-direction:column}.date-strip{grid-template-columns:repeat(7,72px);overflow-x:auto;padding-bottom:6px}.time-grid{grid-template-columns:repeat(3,1fr)}.booking-controls{padding:26px 18px}.booking-summary{padding:25px 20px}.accordion summary{font-size:16px}.final-cta{padding:75px 0}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-links{grid-column:auto;grid-row:auto}.footer-meta{flex-direction:column;gap:8px}}
.online-mode{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;background:#eee;padding:16px}.online-mode .circle-mark{margin:0}.online-mode span strong,.online-mode span small{display:block}.online-mode span strong{font-size:14px}.online-mode span small{font-size:10px;color:#666;margin-top:3px}.online-mode>b{font-size:9px;letter-spacing:.07em;background:#000;color:#fff;padding:7px 9px}
@media(max-width:640px){.online-mode{grid-template-columns:auto 1fr}.online-mode>b{grid-column:2;width:max-content}}
.step-illustration{height:175px;margin:28px 0 30px;background:#fff;display:grid;place-items:center;overflow:hidden}.step-illustration svg{width:88%;height:88%;fill:none;stroke:#000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.steps article{min-height:470px}.steps h3{margin-top:auto}
@media(max-width:980px){.steps article{min-height:430px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}
