@font-face{font-family:Manrope;src:url('/assets/fonts/manrope.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--ink:#19211e;--dark:#171e1c;--dark-soft:#222b27;--paper:#f5f4ef;--gold:#ebbb58;--gold-dark:#aa7927;--muted:#797e72;--line:#d9dcd3;--font:Manrope,Arial,sans-serif;--header-height:96px}
*,*::before,*::after{box-sizing:border-box}html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--paper);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}::selection{background:var(--gold);color:var(--ink)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12}h2{font-size:clamp(38px,4.5vw,64px);font-weight:600;letter-spacing:-3px}h3{font-weight:600;letter-spacing:-.6px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold-dark);outline-offset:6px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold-dark);outline-offset:3px}.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}.section{padding:116px 0}.light-section{background:var(--paper)}.dark-section{background:var(--dark);color:var(--paper)}.gold{color:var(--gold)}.muted{color:#858a7f}.eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;font-weight:700;letter-spacing:1.8px;line-height:1.5;margin-bottom:26px}.tiny-line{display:inline-block;width:25px;height:2px;background:var(--gold-dark);flex-shrink:0}.dark-section .tiny-line{background:var(--gold)}.icon{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;min-height:54px;padding:15px 24px;border:1px solid transparent;border-radius:4px;font-size:12px;line-height:1.5;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s}.button>span{font-size:23px;font-weight:400;line-height:1}.button:hover{transform:translateY(-3px)}.button-gold{background:var(--gold);color:var(--ink)}.button-gold:hover{background:#f3ca7a;box-shadow:0 6px 24px #0002}.button-dark{background:var(--dark);color:var(--paper)}.button-dark:hover{background:#34433b}.text-link{font-size:12px;font-weight:700;display:inline-flex;gap:25px;align-items:center;padding:10px 0;border-bottom:1px solid currentColor}.text-link span{font-size:22px;font-weight:400}.text-link:hover{color:var(--gold-dark)}.dark-section .text-link:hover{color:var(--gold)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;top:-100px;left:20px;background:var(--gold);padding:12px 22px;color:var(--ink)}.skip-link:focus{top:12px}
.site-header{height:var(--header-height);position:relative;z-index:100;background:var(--dark);color:#eeeee7;border-bottom:1px solid #ffffff14}.header-inner{height:100%;display:flex;align-items:center;gap:20px;min-width:0}.brand{display:inline-block;flex-shrink:0}.brand img{width:170px;height:56px;object-fit:contain}.main-nav{display:flex;gap:22px;margin-left:auto;align-items:center;min-width:0}.main-nav>a{font-size:11px;font-weight:500;position:relative;white-space:nowrap;padding:12px 0}.main-nav>a:after{content:'';height:1px;background:var(--gold);position:absolute;left:0;bottom:3px;width:0;transition:width .25s}.main-nav>a:hover:after{width:100%}.header-cta{min-height:44px;padding:11px 17px;font-size:10px;gap:12px;flex-shrink:0}.menu-toggle{display:none}.hero{position:relative;background:#1c251e;min-height:740px;height:calc(100svh - 96px);max-height:960px;overflow:hidden;color:var(--paper);isolation:isolate}.hero-photo{position:absolute;inset:-8% -3% -10% 27%;z-index:-3;will-change:transform}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:58% 54%;filter:brightness(.81) saturate(.75)}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#172019 0%,#172019ee 13%,#172019b8 34%,#17201910 75%),linear-gradient(0deg,#171e1cd9,transparent 35%,#171e1c08)}.hero-content{padding-top:75px;position:relative}.hero-intro{font-size:9px;letter-spacing:2px;margin-bottom:30px;color:#f7f3e9}.status-dot{height:6px;width:6px;background:var(--gold);border-radius:50%;box-shadow:0 0 0 5px #ebbb5818;margin-right:6px}.hero h1{font-size:clamp(68px,7.65vw,110px);font-weight:500;letter-spacing:-6px;line-height:1.04;max-width:800px}.hero h1 em{color:var(--gold);font-size:1.08em;letter-spacing:-5px}.hero-description{margin-top:29px;color:#d4d9ce;font-size:15px;line-height:1.8}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:31px}.hero-secondary{font-size:11px;font-weight:600;display:flex;gap:13px;align-items:center}.hero-secondary span{font-size:21px}.hero-secondary:hover{color:var(--gold)}.travel-stamp{position:absolute;right:7%;bottom:26%;width:122px;height:122px;display:grid;place-items:center;color:#fff7db}.travel-stamp svg{width:100%;position:absolute;inset:0;animation:stamp-turn 65s linear infinite;fill:currentColor;font-size:9.4px;font-weight:600;letter-spacing:2.3px}.travel-stamp>span{font-size:53px;font-weight:400}.hero-bottom{display:flex;align-items:center;justify-content:space-between;position:absolute;bottom:26px;left:0;right:0;gap:25px}.scroll-cue{font-size:8px;font-weight:600;letter-spacing:1.8px;display:flex;align-items:center;gap:14px}.scroll-cue>span{border:1px solid #f5f4ef55;display:grid;place-items:center;border-radius:25px;width:24px;height:37px;font-size:18px;letter-spacing:0}.photo-caption{display:flex;gap:13px;align-items:center;font-size:8px;letter-spacing:1.6px;color:#ebece5}.caption-line{height:1px;background:var(--gold);width:35px}.hero-coordinate{font-size:9px;color:#c4caba;letter-spacing:1px}.trust-strip{background:#eaece4;padding:32px 0}.trust-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr}.trust-grid>div{display:flex;flex-direction:column;gap:6px;border-right:1px solid #cdd1c5;padding:0 35px}.trust-grid>div:first-child{padding-left:0}.trust-grid>div:last-child{border-right:0;padding-right:0}.trust-number{font-size:26px;letter-spacing:-1px;line-height:1.4;font-weight:600}.trust-number .gold{color:#805b16;font-size:.65em}.trust-number>.gold:first-child{font-size:.65em}.trust-grid>div>span:last-child{font-size:10px;color:#5e675a}.trust-grid>div.trust-last{flex-direction:row;gap:16px;align-items:center;justify-content:flex-end}.trust-last .icon{width:37px;height:37px;color:#7b8669}.trust-grid .trust-last>span:last-child{color:var(--ink);font-size:12px;font-weight:600}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:45px}.section-intro{max-width:260px;color:#697165;font-size:13px;line-height:1.9;padding-bottom:8px}.featured-services{display:grid;grid-template-columns:1fr 1fr;gap:24px;perspective:1200px}.service-feature{height:420px;position:relative;overflow:hidden;border-radius:6px;color:white;transform-style:preserve-3d;transition:box-shadow .3s;isolation:isolate}.service-feature>img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .8s;z-index:-2;filter:saturate(.75)}.service-feature:hover>img{transform:scale(1.05)}.feature-shade{position:absolute;inset:0;background:linear-gradient(0deg,#172019ec 0%,#17201930 72%,#17201940);z-index:-1}.service-number{position:absolute;top:26px;left:30px;font-size:9px;letter-spacing:1.8px}.feature-content{position:absolute;bottom:30px;left:30px;right:30px;transform:translateZ(20px)}.feature-content>p{font-size:8px;font-weight:600;letter-spacing:1.5px;margin-bottom:15px}.feature-content h3{font-size:38px;letter-spacing:-1.5px;line-height:1.12;font-weight:500}.feature-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-top:26px;padding-top:20px;border-top:1px solid #fff4;gap:10px}.circle-arrow{border:1px solid #fff6;border-radius:50%;width:35px;height:35px;display:grid;place-items:center;font-size:22px;flex-shrink:0}.service-feature:hover .circle-arrow{background:var(--gold);border-color:var(--gold);color:var(--ink)}.service-list{display:grid;grid-template-columns:1fr 1fr;column-gap:35px;margin-top:34px}.service-row{display:flex;align-items:center;padding:28px 0;gap:18px;border-bottom:1px solid var(--line);transition:color .2s}.row-number{font-size:10px;color:#67725d}.service-row .icon{margin-right:4px;width:28px;height:28px;color:#79846e}.service-row h3{font-size:15px;letter-spacing:-.3px;margin-bottom:6px}.service-row p{font-size:10px;color:#626d5b}.row-arrow{font-size:24px;margin-left:auto;transition:transform .2s}.service-row:hover{color:var(--gold-dark)}.service-row:hover .row-arrow{transform:translate(3px,-3px)}
.fleet{overflow:hidden}.fleet h2{font-size:70px;letter-spacing:-3px}.fleet-intro{max-width:295px}.fleet-intro p{font-size:13px;color:#a8b1a5;line-height:1.9;margin-bottom:20px}.fleet-intro .text-link{font-size:11px}.fleet-toolbar{display:flex;justify-content:space-between;align-items:center;margin:43px 0 28px;gap:20px}.fleet-filters{display:flex;gap:8px;flex-wrap:wrap}.filter{background:transparent;border:1px solid #465046;border-radius:40px;color:#c2c8bf;padding:9px 18px;font-size:10px;transition:background .2s}.filter:hover{border-color:var(--gold);color:var(--gold)}.filter.active{background:var(--gold);border-color:var(--gold);color:var(--ink)}.slider-controls{display:flex;gap:10px}.round-button{width:39px;height:39px;display:grid;place-items:center;background:transparent;border:1px solid #465046;border-radius:50%;color:white;font-size:22px;line-height:1}.round-button:hover{background:var(--gold);color:var(--ink);border-color:var(--gold)}.round-button:disabled{opacity:.3;cursor:default}.fleet-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#59634f transparent;padding-bottom:25px;overscroll-behavior-x:contain}.vehicle-card{flex:0 0 calc((100% - 48px)/3);min-width:0;background:var(--dark-soft);border:1px solid #ffffff09;border-radius:5px;overflow:hidden;scroll-snap-align:start}.vehicle-card[hidden]{display:none}.vehicle-image{aspect-ratio:1.43;position:relative;overflow:hidden}.vehicle-image>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.vehicle-card:hover .vehicle-image>img{transform:scale(1.045)}.seat-badge{position:absolute;top:14px;right:14px;font-size:9px;display:flex;align-items:center;gap:7px;background:#f5f4efef;color:var(--ink);border-radius:3px;padding:6px 10px;font-weight:700}.seat-badge .icon{width:14px;height:14px}.vehicle-info{padding:23px}.vehicle-category{font-size:8px;letter-spacing:1.5px;color:var(--gold);text-transform:uppercase;margin-bottom:10px}.vehicle-info h3{font-size:20px;font-weight:500;letter-spacing:-.5px;margin-bottom:11px}.vehicle-description{font-size:11px;color:#bdc4b9;line-height:1.8}.vehicle-cta{display:flex;align-items:center;justify-content:space-between;margin-top:23px;padding-top:17px;border-top:1px solid #ffffff18;font-size:10px;font-weight:600}.vehicle-cta span{font-size:23px}.vehicle-cta:hover{color:var(--gold)}.fleet-footnote{display:flex;align-items:center;gap:28px;margin-top:25px;font-size:9px;color:#aab2a5}.fleet-footnote>span{display:flex;gap:9px;align-items:center}.fleet-footnote .icon{width:18px;height:18px}.fleet-footnote .drag-hint{margin-left:auto;font-size:8px;letter-spacing:1.4px}.drag-hint>span{font-size:24px;color:var(--gold)}
.destination-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.destination-copy h2{font-size:57px;letter-spacing:-2.7px;margin-bottom:28px}.destination-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#67705f;margin-bottom:17px;max-width:420px}.destination-tags{display:flex;gap:7px;flex-wrap:wrap;max-width:430px;margin:28px 0 33px}.destination-tags>span{font-size:9px;border:1px solid #d4d8ca;border-radius:30px;padding:7px 14px}.route-scene{height:550px;position:relative;background:#e9ece3;border-radius:8px;perspective:1000px;isolation:isolate;overflow:hidden}.route-grid{position:absolute;inset:0;background-image:linear-gradient(#8491700d 1px,transparent 1px),linear-gradient(90deg,#8491700d 1px,transparent 1px);background-size:30px 30px;mask-image:linear-gradient(0deg,transparent,#000 20%,#000 80%,transparent);z-index:-1}.map-kicker{display:flex;justify-content:space-between;font-size:8px;font-weight:700;letter-spacing:1.5px;padding:26px 28px;color:#59694c}.map-kicker>span{color:#647455}.route-map{position:absolute;inset:45px -10px 32px;transform-style:preserve-3d;will-change:transform}.route-map svg{width:100%;height:100%;overflow:visible}.iberia{fill:url(#map-dots);stroke:#aeb7a1;stroke-width:1.4;filter:drop-shadow(0 18px 8px #68765324)}.portugal{fill:#c5ceb5;stroke:#8c9c7d;stroke-width:1}.map-route{fill:none;stroke:#a5792a;stroke-width:1.6;stroke-dasharray:4 5}.map-route.faint{opacity:.4}.animated-route{stroke:#b8842a;stroke-width:2;stroke-dasharray:260;stroke-dashoffset:260}.map-city{fill:#566745}.map-city text{font-family:var(--font);font-weight:700;font-size:9px;letter-spacing:1px}.map-home>circle{fill:#bb892d}.map-home>.home-pulse{fill:#bf90252b;stroke:#bf90255c}.map-home text{fill:#273723;font-size:13px;letter-spacing:1px;font-weight:800}.map-home .map-lisbon{font-size:9px;fill:#67785a;letter-spacing:2px}.country-label{font-family:var(--font);font-size:10px;letter-spacing:5px;fill:#6e7c5f}.route-ticket{position:absolute;bottom:30px;left:30px;right:30px;background:#fafbf7;border:1px solid #d2d8c7;border-radius:5px;padding:18px;display:flex;gap:14px;align-items:center;box-shadow:0 14px 30px #283a1710}.route-ticket strong{display:block;font-size:11px;font-weight:600}.route-ticket div>span{display:block;font-size:9px;color:#626f57;margin-top:3px}.route-ticket>span:last-child{font-size:25px;margin-left:auto}.ticket-dot{width:8px;height:8px;background:#82916a;border-radius:50%;box-shadow:0 0 0 6px #82916a15}
.about{padding-top:40px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;perspective:1200px}.about-visual{position:relative;border-radius:6px;transform-style:preserve-3d}.about-visual>img{width:100%;height:505px;object-fit:cover;border-radius:6px;filter:saturate(.75)}.about-year{position:absolute;bottom:30px;right:-25px;background:var(--gold);padding:22px 30px;min-width:210px;border-radius:3px;transform:translateZ(30px)}.about-year>span{font-size:10px}.about-year>strong{font-size:65px;line-height:1.3;font-weight:500;letter-spacing:-3px;display:flex;align-items:center;justify-content:space-between;gap:26px}.about-year strong>span{font-size:45px}.about-copy h2{font-size:48px;letter-spacing:-2.2px;margin-bottom:28px}.about-copy>p:not(.eyebrow){font-size:12px;color:#606c55;line-height:1.95;margin-bottom:15px}.about-values{display:flex;flex-direction:column;gap:13px;margin:24px 0}.about-values>span{display:flex;align-items:center;gap:11px;font-size:11px;font-weight:600}.about-values .icon{width:19px;height:19px;color:#87966e}.faq{border-top:1px solid var(--line);padding-top:82px;padding-bottom:90px}.faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.faq h2{font-size:43px;letter-spacing:-2px;margin-bottom:23px}.faq-grid>div>p:not(.eyebrow){color:#616d55;font-size:12px;line-height:1.9}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{padding:22px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-size:12px;font-weight:600}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:25px;font-weight:400;color:#8b917e;line-height:1;transition:transform .25s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details>p{padding:0 30px 23px 0;font-size:12px;line-height:1.9;color:#697360}
.contact{position:relative;overflow:hidden}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.contact-copy h2{font-size:104px;letter-spacing:-5px;line-height:1.02;position:relative}.contact-copy h2 em{color:var(--gold)}.contact-arrow{position:absolute;font-size:124px;font-weight:300;left:265px;top:50px;color:var(--gold);line-height:1}.contact-copy>p:not(.eyebrow){font-size:14px;color:#acb4a6;line-height:1.85;margin-top:30px}.contact-details{display:flex;align-items:flex-start;flex-direction:column;margin:34px 0 25px;gap:7px}.contact-phone{font-size:26px;letter-spacing:-1px;line-height:1.5}.contact-phone>span{font-size:27px;margin-left:20px;color:var(--gold)}.second-phone{font-size:16px;color:#d2d6cb}.contact-details small{font-size:9px;color:#a6afa0;margin:0 0 20px}.contact-details>a[href^='mailto:']{font-size:12px;display:flex;gap:22px;align-items:center}.contact-details>a[href^='mailto:']>span{font-size:18px;color:var(--gold)}.contact-details a:hover{color:var(--gold)}.contact-copy address{font-style:normal;font-size:11px;color:#a6afa0;line-height:1.9}.contact-copy>.text-link{font-size:10px;margin-top:5px}.quote-panel{background:#f5f4ef;border-radius:6px;padding:38px;color:var(--ink);scroll-margin-top:30px}.quote-panel>.eyebrow{font-size:8px;color:#616d55;margin-bottom:14px}.quote-panel>h3{font-size:25px;letter-spacing:-1px;line-height:1.3;margin-bottom:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}.form-grid>label{display:flex;flex-direction:column;gap:8px;font-size:10px;font-weight:700;min-width:0}.full-width{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{background:transparent;border:0;border-bottom:1px solid #c6cbbd;border-radius:0;color:var(--ink);padding:6px 0 10px;font-size:11px;font-weight:400;min-width:0;width:100%;min-height:37px}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#66715c;opacity:1}.form-grid textarea{resize:vertical;min-height:62px}.form-grid input[type='date']{min-width:0;-webkit-appearance:none}.optional{font-weight:400;color:#717a64;display:contents}.form-privacy{font-size:9px;line-height:1.8;color:#606c53;margin:22px 0 19px}.form-privacy a{text-decoration:underline;text-underline-offset:3px}.form-submit{width:100%;font-size:11px;gap:12px}.form-submit>.icon{width:20px;height:20px}.form-submit>span{margin-left:auto}.email-submit{display:block;margin:13px auto 0;background:none;border:0;font-size:10px;font-weight:600;padding:8px}.email-submit span{margin-left:10px;font-size:15px}.email-submit:hover{color:#927025}.form-status{font-size:10px;color:#596548;line-height:1.8;margin-top:8px}.form-status:empty{display:none}
.site-footer{background:var(--dark);color:var(--paper);border-top:1px solid #ffffff17;padding:35px 0 25px}.footer-top{display:flex;align-items:center;gap:48px;margin-bottom:25px}.footer-top>p{font-family:Georgia,'Times New Roman',serif;font-size:19px;color:#b5bead;font-style:italic}.social-link{margin-left:auto;display:flex;align-items:center;gap:22px;font-size:22px;font-weight:700}.social-link>span{font-size:17px;font-weight:400}.back-top{height:36px;width:36px;border-radius:50%;border:1px solid #515b4b;display:grid;place-items:center;font-size:23px}.back-top:hover{background:var(--gold);color:var(--ink)}.footer-links{display:flex;gap:27px;padding:0 0 25px;border-bottom:1px solid #ffffff17;flex-wrap:wrap}.footer-links>a{font-size:10px;color:#abb5a3}.footer-links a:hover,.footer-bottom a:hover{color:var(--gold)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:8px;color:#a3ad9c;padding-top:24px;flex-wrap:wrap}.footer-bottom>div{display:flex;gap:18px}.made-for{font-size:7px;letter-spacing:1.3px}.whatsapp-float{position:fixed;bottom:26px;right:26px;z-index:150;display:grid;place-items:center;width:58px;height:58px;border:1px solid #ffffff40;border-radius:50%;background:#238b50;color:white;box-shadow:0 5px 25px #0003;transition:transform .2s,background .2s}.whatsapp-float>svg{width:29px;height:29px}.whatsapp-float:hover{background:#176e3d;transform:translateY(-4px)}.whatsapp-tooltip{position:absolute;right:72px;background:white;color:var(--ink);font-size:11px;white-space:nowrap;padding:9px 15px;border-radius:5px;box-shadow:0 3px 20px #0002;opacity:0;transform:translateX(8px);pointer-events:none;transition:opacity .2s,transform .2s}.whatsapp-float:hover .whatsapp-tooltip,.whatsapp-float:focus-visible .whatsapp-tooltip{opacity:1;transform:translateX(0)}.scroll-progress{position:fixed;left:0;top:0;height:2px;z-index:160;transform:scaleX(0);transform-origin:left;width:100%;background:var(--gold);pointer-events:none}
/* Motion is added only after the observers have initialized. Content is visible without JS. */
.motion-ready [data-reveal]{opacity:0;transform:perspective(1000px) translate3d(0,45px,0) rotateX(4deg);transition:opacity .85s ease,transform 1.05s cubic-bezier(.2,.7,.2,1)}.motion-ready [data-reveal].is-visible{opacity:1;transform:perspective(1000px) translate3d(0,0,0) rotateX(0)}.motion-ready .hero-content{animation:hero-arrive 1.1s ease both}.motion-ready .hero h1{animation:hero-arrive 1.1s .1s ease both}.motion-ready .hero-actions{animation:hero-arrive 1.1s .2s ease both}.is-visible[data-tilt]{transition:transform .25s ease-out,box-shadow .3s ease}.map-bus{transform:translate(122px,292px)}@keyframes hero-arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes stamp-turn{to{transform:rotate(360deg)}}
/* Additional static pages preserve the useful URLs of the original website. */
.page-hero{background:var(--dark);color:var(--paper);padding:55px 0 76px}.breadcrumbs{display:flex;gap:14px;align-items:center;font-size:10px;color:#b2bba9;margin-bottom:40px;flex-wrap:wrap}.breadcrumbs>a:hover{color:var(--gold)}.breadcrumbs>span[aria-hidden]{color:var(--gold)}.page-hero .eyebrow{color:var(--gold)}.page-hero h1{font-size:clamp(40px,5.4vw,74px);font-weight:500;letter-spacing:-3px;max-width:950px;line-height:1.12}.page-hero .lead{color:#b4beaa;max-width:680px;margin-top:25px;font-size:15px;line-height:1.9}.page-content{padding:75px 0 95px}.editorial-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:75px;align-items:start}.prose{max-width:760px}.prose h2{font-size:32px;letter-spacing:-1.3px;margin:35px 0 20px;scroll-margin-top:40px}.prose h2:first-child{margin-top:0}.prose h3{font-size:20px;margin:25px 0 15px}.prose p,.prose li{font-size:14px;line-height:1.9;color:#606c56;margin-bottom:16px}.prose ul{padding-left:20px}.prose a:not(.button){text-decoration:underline;text-underline-offset:4px}.prose .button{margin-top:20px}.editorial-photo{position:sticky;top:30px}.editorial-photo img{width:100%;max-height:560px;object-fit:cover;border-radius:5px}.editorial-photo figcaption{font-size:10px;color:#75816b;margin-top:10px}.editorial-photo figure{margin:0}.page-fleet{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.page-fleet .vehicle-card{color:var(--paper)}.page-contact .contact{padding-top:75px}.mini-cta{background:#e8eadf;padding:45px 0}.mini-cta>.wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.mini-cta h2{font-size:31px;letter-spacing:-1px}.mini-cta p{font-size:12px;color:#6e7960;margin-top:10px}.error-page{min-height:65vh;display:grid;place-items:center;text-align:center;padding:50px 20px}.error-page h1{font-size:100px;color:var(--gold-dark);letter-spacing:-6px}.error-page h2{font-size:32px;margin:20px 0;letter-spacing:-1px}.error-page p{margin:20px 0}
@media(min-width:1600px){.hero-content{padding-top:110px}.hero-photo{inset:-8% -3% -10% 25%}.hero h1{font-size:118px}.hero-description{font-size:17px}.hero-actions{margin-top:37px}.travel-stamp{bottom:24%;right:12%}}
@media(max-width:1190px){.wrap{width:calc(100% - 72px)}.header-inner{gap:16px}.main-nav{gap:16px}.brand img{width:145px}.header-cta{padding:10px 14px;gap:10px}.hero h1{font-size:85px;letter-spacing:-4.7px}.hero-content{padding-top:82px}.hero{min-height:730px}.section{padding:90px 0}.section-heading h2{font-size:51px}.trust-grid>div{padding-inline:25px}.trust-number{font-size:23px}.trust-grid>div>span:last-child{font-size:9px}.service-feature{height:375px}.feature-content h3{font-size:33px}.service-row{gap:13px}.service-row h3{font-size:13px}.service-row p{font-size:9px}.destination-grid{gap:35px}.destination-copy h2{font-size:48px}.route-scene{height:510px}.about-grid{gap:65px}.about-copy h2{font-size:40px}.about-visual>img{height:490px}.faq-grid{gap:50px}.faq h2{font-size:36px}.contact-grid{gap:60px}.contact-copy h2{font-size:93px}.contact-arrow{left:235px;font-size:105px}.quote-panel{padding:30px}.quote-panel>h3{font-size:22px}.footer-top{gap:30px}.made-for{display:none}}
@media(max-width:950px){:root{--header-height:80px}.site-header{height:80px}.header-inner{gap:20px}.header-cta{margin-left:auto}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:42px;height:42px;background:transparent;border:1px solid #ffffff38;border-radius:4px;padding:11px}.menu-toggle>span{display:block;height:1px;width:18px;background:var(--paper);transition:transform .2s}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--dark);padding:25px 36px 40px;border-top:1px solid #ffffff20}.main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:5px}.main-nav>a{font-size:20px;padding:14px 0}.hero{height:740px;min-height:0}.hero h1{font-size:78px}.hero-photo{left:17%}.hero-shade{background:linear-gradient(90deg,#172019f5,#172019b0 30%,#17201910 90%),linear-gradient(0deg,#171e1cdc,transparent 50%)}.hero-coordinate{display:none}.travel-stamp{right:8%;bottom:28%;width:105px;height:105px}.trust-grid{grid-template-columns:1fr 1fr 1fr}.trust-grid>div.trust-last{display:none}.trust-grid>div:nth-child(3){border:0;padding-right:0}.section-heading h2{font-size:45px}.section-intro{max-width:210px;font-size:12px}.feature-content{left:24px;right:24px;bottom:24px}.feature-content h3{font-size:29px}.service-number{left:24px}.feature-label{font-size:9px}.service-list{column-gap:25px}.service-row .icon{display:none}.service-row h3{font-size:12px}.vehicle-card{flex-basis:calc((100% - 24px)/2)}.fleet-intro{max-width:230px}.fleet-footnote{gap:20px}.drag-hint{display:none!important}.destination-grid{grid-template-columns:1fr;gap:40px}.destination-copy>p:not(.eyebrow){max-width:580px}.destination-copy h2{font-size:55px}.route-scene{height:540px;max-width:630px;width:100%;margin:auto}.route-map{inset:28px 15px 30px}.destination-tags{max-width:none}.about-grid{gap:48px}.about-visual>img{height:440px}.about-copy h2{font-size:32px}.about-copy .eyebrow{font-size:8px;letter-spacing:1px}.about-year{min-width:175px;right:-15px;padding:18px 22px}.about-year>strong{font-size:50px}.faq-grid{gap:35px;grid-template-columns:.8fr 1.2fr}.faq h2{font-size:32px}.faq-list summary{font-size:11px}.contact-grid{gap:40px;grid-template-columns:.85fr 1.15fr}.contact-copy h2{font-size:77px}.contact-arrow{left:184px;font-size:85px;top:46px}.contact-phone{font-size:21px}.contact-phone>span{margin-left:5px}.quote-panel{padding:27px}.quote-panel>h3{font-size:22px}.form-grid{column-gap:13px}.footer-top>p{font-size:16px}.footer-links{gap:20px}.footer-bottom{justify-content:flex-start}.editorial-grid{gap:35px}.page-fleet{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.section{padding:70px 0}.header-inner{gap:12px}.brand img{width:132px;height:50px}.header-cta{font-size:9px;gap:13px;padding:9px 12px;min-height:39px}.header-cta>span{font-size:20px}.menu-toggle{width:37px;height:39px;padding:9px}.main-nav{padding-inline:24px}.hero{min-height:760px;height:calc(100svh - 80px);max-height:900px}.hero-photo{inset:25% -26% -5% -10%;transform:none}.hero-photo img{object-position:60% 48%;filter:brightness(.8) saturate(.75)}.hero-shade{background:linear-gradient(180deg,#172019 0%,#172019ed 16%,#17201970 43%,#17201922 58%,#172019bf 84%,#171e1c 100%),linear-gradient(90deg,#17201988,transparent 90%)}.hero-content{padding-top:42px}.hero-intro{font-size:7px;letter-spacing:1.3px;margin-bottom:26px;gap:8px}.status-dot{width:5px;height:5px;margin-left:4px;margin-right:4px}.hero h1{font-size:clamp(50px,10.9vw,76px);letter-spacing:-3px;max-width:520px;line-height:1.07}.hero h1 em{letter-spacing:-3px}.hero-description{font-size:12px;margin-top:25px;color:#e0e5d7}.hero-actions{margin-top:26px;gap:18px;align-items:flex-start;flex-direction:column}.hero-actions .button{font-size:10px;min-height:48px;padding:13px 19px;gap:20px}.hero-secondary{font-size:10px;gap:12px}.travel-stamp{width:88px;height:88px;right:26px;bottom:108px}.travel-stamp>span{font-size:42px}.hero-bottom{bottom:24px}.photo-caption{display:none}.scroll-cue{font-size:7px;letter-spacing:1.5px}.trust-strip{padding:23px 0}.trust-grid>div{padding:0 13px;gap:4px}.trust-number{font-size:18px;letter-spacing:-.6px}.trust-number .gold{display:block;font-size:11px;line-height:1.3}.trust-grid>div>span:last-child{font-size:8px;line-height:1.6}.trust-grid>div:first-child .gold,.trust-grid>div:nth-child(3) .gold{display:inline;font-size:18px}.eyebrow{font-size:8px;letter-spacing:1.4px;gap:10px;margin-bottom:20px}.tiny-line{width:20px}.section-heading{flex-direction:column;align-items:flex-start;gap:23px;margin-bottom:32px}.section-heading h2{font-size:39px;letter-spacing:-2px}.section-intro{max-width:290px;font-size:12px;line-height:1.85;padding:0}.featured-services{grid-template-columns:1fr;gap:18px}.service-feature{height:400px}.feature-content h3{font-size:37px;letter-spacing:-1.5px}.feature-content>p{font-size:8px}.feature-label{font-size:10px}.service-list{grid-template-columns:1fr;margin-top:14px}.service-row{padding:23px 0;gap:17px}.service-row .icon{display:block;width:23px;height:23px}.service-row h3{font-size:13px}.service-row p{font-size:9px}.row-number{font-size:8px}.fleet h2{font-size:53px}.fleet-intro{max-width:330px}.fleet-intro p{font-size:12px;margin-bottom:12px}.fleet-toolbar{margin:27px 0 24px;align-items:flex-start;gap:10px}.fleet-filters{gap:6px;flex-wrap:nowrap;overflow:auto;padding:2px}.filter{font-size:9px;padding:8px 12px;white-space:nowrap}.slider-controls{display:none}.fleet-track{gap:16px;padding-bottom:16px}.vehicle-card{flex-basis:85%}.vehicle-info{padding:22px}.vehicle-info h3{font-size:23px}.vehicle-description{font-size:11px}.vehicle-cta{font-size:11px}.fleet-footnote{flex-wrap:wrap;gap:13px 18px;font-size:8px;margin-top:20px}.fleet-footnote .icon{width:15px;height:15px}.destination-copy h2{font-size:40px;letter-spacing:-2px}.destination-copy>p:not(.eyebrow){font-size:12px}.destination-tags{gap:6px;margin:24px 0 27px}.destination-tags>span{font-size:8px;padding:6px 12px}.destination-copy>.button{font-size:10px;padding:14px 18px;min-height:49px}.destination-grid{gap:35px}.route-scene{height:415px}.map-kicker{padding:20px;font-size:7px}.route-map{inset:28px -20px 25px}.route-ticket{bottom:20px;left:18px;right:18px;padding:14px;gap:12px}.route-ticket strong{font-size:9px}.route-ticket div>span{font-size:8px}.route-ticket>span:last-child{font-size:22px}.about{padding-top:0}.about-grid{grid-template-columns:1fr;gap:48px}.about-visual{margin-right:15px}.about-visual>img{height:390px}.about-year{bottom:25px;right:-15px;min-width:185px}.about-year>strong{font-size:58px}.about-copy h2{font-size:39px;letter-spacing:-1.9px}.about-copy>p:not(.eyebrow){font-size:12px}.about-copy .eyebrow{font-size:8px;letter-spacing:1.4px}.about-values>span{font-size:11px}.faq-grid{grid-template-columns:1fr;gap:30px}.faq h2{font-size:36px;letter-spacing:-1.8px}.faq-list summary{font-size:12px;padding:20px 0}.faq-list details>p{font-size:11px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-copy h2{font-size:88px}.contact-arrow{left:223px;top:49px;font-size:95px}.contact-copy>p:not(.eyebrow){font-size:13px;margin-top:25px}.contact-details{margin-top:28px}.contact-phone{font-size:26px}.contact-phone>span{margin-left:22px}.contact-details>a[href^='mailto:']{font-size:13px}.contact-copy address{font-size:12px}.quote-panel{padding:27px 23px}.quote-panel>h3{font-size:23px}.quote-panel>.eyebrow{font-size:7px}.form-grid{gap:20px 17px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px;min-height:42px}.form-grid input::placeholder,.form-grid textarea::placeholder{font-size:12px}.form-grid label{font-size:10px}.form-grid select{font-size:12px}.form-privacy{font-size:9px}.form-submit{font-size:11px}.email-submit{font-size:11px}.site-footer{padding-top:25px;padding-bottom:95px}.footer-top{gap:20px;flex-wrap:wrap;margin-bottom:24px}.footer-top>.brand{flex:1}.footer-top>p{order:4;width:100%;font-size:18px}.social-link{margin-left:0}.footer-links{gap:14px 20px}.footer-links>a{font-size:9px}.footer-bottom{gap:15px;line-height:1.8;font-size:8px}.footer-bottom>p{width:100%}.footer-bottom>div{gap:15px}.whatsapp-float{right:18px;bottom:max(18px,env(safe-area-inset-bottom));height:54px;width:54px}.whatsapp-float>svg{width:27px;height:27px}.whatsapp-tooltip{right:65px;font-size:10px}.page-hero{padding:30px 0 50px}.breadcrumbs{font-size:9px;margin-bottom:30px}.page-hero h1{font-size:42px;letter-spacing:-2px}.page-hero .lead{font-size:13px}.page-content{padding:45px 0 60px}.editorial-grid{grid-template-columns:1fr;gap:30px}.editorial-photo{position:static;order:-1}.editorial-photo img{height:280px}.prose h2{font-size:29px;letter-spacing:-1px}.prose p,.prose li{font-size:13px}.page-fleet{grid-template-columns:1fr}.mini-cta>.wrap{flex-direction:column;align-items:flex-start;gap:24px}.mini-cta h2{font-size:29px}.mini-cta .button{font-size:11px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.brand img{width:112px}.header-cta{gap:8px;padding:9px}.hero h1{font-size:45px}.hero-intro{font-size:6px}.trust-number{font-size:16px}.feature-content h3{font-size:31px}.section-heading h2,.destination-copy h2,.about-copy h2{font-size:35px}.service-row{gap:12px}.service-row h3{font-size:12px}.service-row p{font-size:8px}.quote-panel{padding:24px 18px}.filter{padding:7px 10px;font-size:8px}.contact-arrow{left:207px}.contact-copy h2{font-size:82px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready [data-reveal]{opacity:1!important;transform:none!important}.hero-photo,.route-map{transform:none!important}.animated-route{stroke-dashoffset:0!important}.map-bus{display:none}.travel-stamp svg{animation:none}.scroll-progress{display:none}}
@media print{.site-header,.hero,.trust-strip,.site-footer,.whatsapp-float,.scroll-progress,.route-scene,.quote-panel,.slider-controls,.fleet-filters{display:none!important}.section{padding:25px 0!important;background:white!important;color:black!important}.wrap{width:100%}.fleet-track{display:grid;grid-template-columns:repeat(2,1fr);overflow:visible}.vehicle-card{color:black!important;background:white!important;break-inside:avoid}.vehicle-card[hidden]{display:block}.vehicle-description{color:black}.motion-ready [data-reveal]{opacity:1;transform:none}.contact-copy h2{font-size:45px}.contact-arrow{display:none}.contact-details a,.contact-copy p{color:black!important}.contact-grid{display:block}a[href^='tel:']::after,a[href^='mailto:']::after{content:''}}

#quote-fields{border:0;padding:0;margin:0;min-width:0}#quote-fields:disabled{opacity:.5}

/* Feather the photograph into the hero background. */
.hero-photo{mask-image:linear-gradient(90deg,transparent,#000 25%)}
@media(max-width:700px){.hero-photo{mask-image:linear-gradient(180deg,transparent,#000 22%)}}

@media(max-width:700px){.page-hero h1{font-size:clamp(30px,9vw,42px);overflow-wrap:break-word;hyphens:auto}}

/* Leave room for map labels and the route ticket without distorting the coastline. */
.journey-page .route-map{inset:44px 0 112px;will-change:auto}
@media(max-width:700px){.journey-page .route-map{inset:26px 0 82px}}

/* Road and coach share one isometric 3D scene; SVG is the no-WebGL alternative. */
.journey-page { position:relative; isolation:isolate; }
.journey-page > .section:not(.contact) > .wrap { width:min(1184px,calc(100% - 248px)); }
.journey-departure { height:660px; position:relative; background:#eaece3; overflow:hidden; }
.journey-departure::before { content:''; position:absolute; inset:0; background-image:radial-gradient(#77866a35 .7px,transparent .7px); background-size:15px 15px; mask-image:linear-gradient(110deg,transparent 22%,#000); }
.departure-copy { position:relative; padding-top:78px; z-index:6; pointer-events:none; }
.departure-copy .eyebrow { color:#667258; }
.departure-copy h2 { font-size:clamp(40px,4.6vw,65px); max-width:670px; letter-spacing:-3px; line-height:1.13; }
.departure-copy h2 em { color:var(--gold); }
.departure-copy > p:not(.eyebrow) { max-width:345px; font-size:12px; line-height:1.95; color:#5c6852; margin-top:23px; }
.departure-instruction { display:inline-flex; gap:13px; align-items:center; margin-top:28px; font-size:8px; font-weight:700; letter-spacing:1.4px; }
.departure-instruction > span { display:grid; place-items:center; border:1px solid #8b9679; width:25px; height:35px; border-radius:30px; font-size:18px; }
.departure-pin { position:absolute; z-index:6; right:14%; top:78px; display:flex; align-items:center; gap:14px; }
.departure-pin > span { display:block; width:10px; height:10px; border:3px solid #ebbb58; background:#233629; border-radius:50%; box-shadow:0 0 0 8px #d1b46122; }
.departure-pin strong { display:block; font-size:12px; font-weight:700; }
.departure-pin small { display:block; font-size:8px; letter-spacing:2px; color:#647257; margin-top:4px; }
.departure-watermark { position:absolute; font-size:180px; font-weight:800; letter-spacing:-10px; line-height:1; left:26%; bottom:14px; color:#778b6010; white-space:nowrap; }
.departure-static { position:absolute; width:145px; top:150px; right:20%; transform:rotate(-145deg); filter:drop-shadow(10px 12px 5px #273c231c); }
.departure-static-road { position:absolute; width:100%; height:100%; inset:0; color:#bdc4b0; }
.journey-ready .departure-static,.journey-ready .departure-static-road { opacity:0; }
.journey-world { position:absolute; inset:0; z-index:5; pointer-events:none; overflow:hidden; opacity:0; }
.journey-ready .journey-world { opacity:1; }
.journey-road { display:block; width:100%; overflow:visible; }
.journey-road path { fill:none; stroke-linecap:round; stroke-linejoin:round; }
.road-verge { stroke:#91a17a24; stroke-width:100; }
.road-depth { stroke:#545b58; stroke-width:79; transform:translateY(7px); }
.road-border { stroke:#b7b29e; stroke-width:80; }
.road-asphalt { stroke:#343c40; stroke-width:73; }
.road-lines { stroke:#ede5c17a; stroke-width:1.5; stroke-dasharray:8 12; }
.road-travelled { stroke:#ebbb58; stroke-width:2.5; }
.road-terminal { fill:#ebbb58; stroke:#2c382f; stroke-width:5; }
.road-terminal-ring { fill:none; stroke:#a58f51; stroke-width:1; opacity:.65; }
.journey-vehicle { position:fixed; top:0; left:0; width:260px; height:260px; z-index:40; pointer-events:none; visibility:hidden; will-change:transform; contain:layout style; }
.journey-vehicle.is-on-route { visibility:visible; }
.journey-scene { position:fixed; inset:0; width:100%; height:100%; opacity:0; }
.model-ready .journey-scene { opacity:1; }
.model-ready .journey-road { opacity:0; }
.menu-open .journey-scene { visibility:hidden; }
.coach-fallback { position:absolute; width:80px; height:180px; left:90px; top:40px; object-fit:contain; }
.model-ready .coach-fallback { opacity:0; }
.journey-pass { position:relative; height:330px; background:var(--paper); overflow:hidden; }
.journey-pass.to-fleet { background:linear-gradient(180deg,var(--paper),#e9ece2); }
.journey-pass.from-fleet { background:#e9ece2; }
.journey-pass .pass-caption { position:absolute; left:50%; top:28px; transform:translateX(-50%); text-align:center; white-space:nowrap; z-index:6; }
.pass-caption > span { font-size:8px; letter-spacing:2px; font-weight:700; color:#5e6e50; }
.pass-caption > p { font-family:Georgia,'Times New Roman',serif; font-size:27px; font-style:italic; color:#475b3d; margin-top:8px; }
.pass-landscape { position:absolute; width:500px; height:230px; bottom:-20px; left:50%; transform:translateX(-50%); opacity:.17; color:#71845a; }
.pass-landscape path,.pass-landscape circle { fill:none; stroke:currentColor; stroke-width:1.3; }
.journey-arrival { height:390px; background:#e9ece2; }
.journey-arrival .pass-caption { top:28px; }
.arrival-label { position:absolute; bottom:32px; left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:12px; font-size:9px; letter-spacing:1px; color:#566447; white-space:nowrap; }
.arrival-label span { width:6px; height:6px; border-radius:50%; background:#ad842e; }
.journey-current { position:fixed; z-index:80; bottom:28px; left:25px; display:flex; align-items:center; gap:14px; padding:12px 17px 13px; background:#f8f8f0f5; color:#263a29; border:1px solid #c6cfb7; border-radius:4px; box-shadow:0 8px 28px #192d1b13; opacity:0; visibility:hidden; transform:translateY(8px); transition:opacity .25s,transform .25s,visibility .25s; pointer-events:none; }
.journey-current.is-visible { opacity:1; visibility:visible; transform:translateY(0); }
.journey-current > svg { width:22px; height:22px; color:#8c752f; }
.journey-current small { display:block; font-size:7px; letter-spacing:1.6px; color:#627253; line-height:1.5; }
.journey-current strong { display:block; font-size:10px; font-weight:600; margin-top:3px; letter-spacing:.15px; }
.journey-current-track { position:absolute; bottom:0; height:2px; left:0; right:0; background:#dde3d2; overflow:hidden; }
.journey-current-progress { display:block; height:100%; background:#b9943d; transform-origin:left; transform:scaleX(0); }
.journey-page .map-bus { display:none; }
.menu-open .journey-current,.menu-open .journey-vehicle { visibility:hidden; }
@media(min-width:1600px) { .departure-copy { padding-top:95px; } .journey-departure { height:700px; } }
@media(max-width:1190px) {
  .journey-page > .section:not(.contact) > .wrap { width:calc(100% - 216px); }
  .journey-page .section-heading h2 { font-size:45px; }
  .journey-page .about-grid { gap:50px; }
  .journey-page .about-copy h2 { font-size:37px; }
  .journey-page .contact-grid { gap:60px; }
  .departure-pin { right:11%; }
  .departure-copy h2 { font-size:54px; }
}
@media(max-width:950px) {
  .journey-page > .section:not(.contact) > .wrap { width:calc(100% - 180px); }
  .journey-page .section-heading { flex-direction:column; align-items:flex-start; gap:24px; }
  .journey-page .section-intro,.journey-page .fleet-intro { max-width:390px; }
  .journey-page .featured-services { gap:17px; }
  .journey-page .feature-content { left:19px; right:19px; }
  .journey-page .feature-content h3 { font-size:27px; }
  .journey-page .feature-label { font-size:9px; gap:8px; }
  .journey-page .service-list { grid-template-columns:1fr; }
  .journey-page .service-row h3 { font-size:14px; }
  .journey-page .service-row p { font-size:11px; }
  .journey-page .about-grid,.journey-page .faq-grid { grid-template-columns:1fr; }
  .journey-page .about-visual > img { height:400px; }
  .journey-page .about-copy h2 { font-size:43px; }
  .departure-copy h2 { font-size:48px; max-width:460px; }
  .departure-pin { top:330px; right:12%; }
  .departure-static { top:355px; right:20%; width:90px; }
  .journey-pass { height:290px; }
  .journey-arrival { height:370px; }
}
@media(max-width:700px) {
  .journey-page > .section:not(.contact) > .wrap { width:calc(100% - 94px); margin-left:74px; margin-right:20px; }
  .journey-page .section-heading h2 { font-size:33px; letter-spacing:-1.7px; }
  .journey-page .featured-services { grid-template-columns:1fr; }
  .journey-page .service-feature { height:370px; }
  .journey-page .feature-content h3 { font-size:30px; letter-spacing:-1.2px; }
  .journey-page .feature-content > p { font-size:7px; }
  .journey-page .feature-label { font-size:9px; }
  .journey-page .service-row { gap:12px; }
  .journey-page .service-row .icon { display:none; }
  .journey-page .service-row h3 { font-size:12px; }
  .journey-page .service-row p { font-size:10px; }
  .journey-page .fleet h2 { font-size:46px; }
  .journey-page .fleet-filters { flex-wrap:wrap; }
  .journey-page .filter { font-size:8px; padding:7px 11px; }
  .journey-page .vehicle-card { flex-basis:95%; }
  .journey-page .vehicle-info { padding:18px; }
  .journey-page .vehicle-info h3 { font-size:21px; }
  .journey-page .vehicle-cta { font-size:9px; gap:9px; }
  .journey-page .destination-copy h2,.journey-page .about-copy h2 { font-size:33px; letter-spacing:-1.8px; }
  .journey-page .destination-copy > .button { gap:12px; font-size:9px; padding:13px; }
  .journey-page .route-scene { height:370px; }
  .journey-page .route-ticket { padding:11px; gap:8px; left:12px; right:12px; }
  .journey-page .route-ticket strong { font-size:8px; }
  .journey-page .route-ticket div > span { font-size:7px; }
  .journey-page .about-visual > img { height:330px; }
  .journey-page .about-year { min-width:155px; padding:15px 20px; }
  .journey-page .about-year > strong { font-size:48px; }
  .journey-page .about-values > span { font-size:10px; }
  .journey-page .faq h2 { font-size:31px; letter-spacing:-1.4px; }
  .journey-page .faq-list summary { font-size:11px; }
  .journey-departure { height:640px; }
  .departure-copy { padding-top:55px; }
  .departure-copy h2 { font-size:41px; max-width:345px; letter-spacing:-2px; }
  .departure-copy > p:not(.eyebrow) { max-width:295px; font-size:11px; margin-top:20px; }
  .departure-instruction { margin-top:19px; font-size:7px; letter-spacing:1px; }
  .departure-pin { top:380px; right:15%; }
  .departure-pin strong { font-size:10px; }
  .departure-pin small { font-size:7px; }
  .departure-static { top:402px; width:85px; }
  .departure-watermark { font-size:89px; letter-spacing:-5px; bottom:40px; left:20px; }
  .road-verge { stroke-width:54; }
  .road-depth { stroke-width:42; transform:translateY(4px); }
  .road-border { stroke-width:42; }
  .road-asphalt { stroke-width:37; }
  .road-lines { stroke-width:1; stroke-dasharray:5 7; }
  .road-travelled { stroke-width:1.5; }
  .journey-pass { height:265px; }
  .journey-pass .pass-caption { width:calc(100% - 80px); left:62px; transform:none; top:18px; text-align:left; white-space:normal; }
  .pass-caption > span { font-size:7px; letter-spacing:1.3px; }
  .pass-caption > p { font-size:23px; line-height:1.2; max-width:270px; }
  .pass-landscape { width:340px; height:150px; bottom:0; left:55%; }
  .journey-arrival { height:365px; }
  .journey-arrival .pass-caption > p { font-size:27px; }
  .arrival-label { bottom:26px; font-size:8px; }
  .journey-current { bottom:22px; left:15px; padding:10px 13px 11px; gap:10px; }
  .journey-current > svg { width:18px; height:18px; }
  .journey-current small { font-size:6px; }
  .journey-current strong { font-size:9px; }
}
@media(max-width:360px) {
  .departure-copy h2 { font-size:35px; }
  .journey-page .section-heading h2,.journey-page .destination-copy h2,.journey-page .about-copy h2 { font-size:28px; }
  .journey-page .feature-content h3 { font-size:25px; }
  .journey-page .feature-content { left:16px; right:16px; }
  .journey-page .feature-label { font-size:8px; }
  .journey-page .vehicle-info h3 { font-size:19px; }
  .journey-page .faq h2 { font-size:27px; }
}
@media(prefers-reduced-motion:reduce) {
  .journey-world,.journey-vehicle,.journey-current { display:none!important; }
  .journey-ready .departure-static,.journey-ready .departure-static-road { opacity:1; }
  .journey-pass { height:150px; }
  .journey-arrival { height:220px; }
}
@media print {
  .journey-world,.journey-vehicle,.journey-current,.journey-pass,.journey-departure { display:none!important; }
  .journey-page > .section:not(.contact) > .wrap { width:100%; margin:0; }
}

/* A roadside marker stays in the verge, so it never covers copy or controls. */
.journey-current{width:58px;padding:8px 4px 10px;flex-direction:column;gap:0;border-color:#bec9ad;box-shadow:0 4px 18px #192d1b0d}
.journey-current > svg,.journey-current > div:not(.journey-current-track){display:none}
.journey-current-number{font-family:Georgia,'Times New Roman',serif;font-size:25px;line-height:1.15;color:#5e653e}
.journey-current-label{font-size:6px;letter-spacing:.8px;margin-top:3px;color:#5d6b4e}
@media(max-width:700px){.departure-pin{left:22px;right:auto;top:380px}.journey-current{width:40px;padding:7px 2px 9px}.journey-current-number{font-size:20px}.journey-current-label{font-size:5px;letter-spacing:.4px}}
/* Shared heading accents keep each heading's existing responsive size. */
:is(h1, h2, h3, h4, h5, h6) :is(em, .muted, .gold) {
  color: var(--gold);
  font-family: Georgia, 'Times New Roman', serif;
  font-style: italic;
  font-weight: 400;
}
/* header gold CTAs — shared size, grouped right */
.header-actions{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}
.header-actions>.header-cta,.main-nav>.nav-hire-menu{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:11px 17px;border:1px solid var(--gold);border-radius:4px;background:var(--gold);color:var(--ink);font-size:10px;font-weight:700;letter-spacing:.2px;white-space:nowrap;box-sizing:border-box}
.header-actions>.header-cta>span,.main-nav>.nav-hire-menu>span{font-size:18px;font-weight:400;line-height:1}
.header-actions>.header-cta:hover,.main-nav>.nav-hire-menu:hover{background:#f3ca7a;color:var(--ink)}
.main-nav>.nav-hire-menu{display:none}
.main-nav>.nav-hire-menu:after{display:none}
@media(max-width:1190px){.header-actions>.header-cta,.main-nav>.nav-hire-menu{padding:10px 14px;gap:10px}.header-actions{gap:8px}}
@media(max-width:950px){.header-actions>.header-cta:first-child{display:none}.main-nav>.nav-hire-menu{display:inline-flex;margin:12px 0 0;justify-content:space-between;width:100%;font-size:14px;min-height:48px;padding:14px 16px}}
@media(max-width:700px){.header-actions>.header-cta{font-size:9px;gap:10px;padding:9px 12px;min-height:39px}.header-actions>.header-cta>span{font-size:18px}}
@media(max-width:480px){.header-actions{gap:6px}.header-actions>.header-cta{gap:8px;padding:8px 10px;min-height:36px;font-size:9px}.header-actions>.header-cta>span{font-size:16px}}
