:root{--obsidian:#101414;--surface:#181e1c;--paper:#f3f0e9;--muted:#b5beb7;--forest:#101414;--gold:#d5b875;--line:#ffffff26;--sans:Manrope,Arial,sans-serif;--serif:'Playfair Display',Georgia,serif;--gutter:clamp(24px,5.6vw,110px)}
*{box-sizing:border-box}html{background:var(--obsidian);scroll-padding-top:90px}body{margin:0;background:var(--obsidian);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}html.booting{overflow:hidden}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:400}p{font-size:18px;line-height:1.75}em{font-family:var(--serif);font-weight:400}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:6px}::selection{background:var(--gold);color:var(--obsidian)}.section-pad{padding:clamp(88px,9.6vw,165px) var(--gutter)}.eyebrow{font-size:11px;line-height:1.8;letter-spacing:.18em;text-transform:uppercase;font-weight:500}.display{font-size:clamp(44px,5.2vw,94px);line-height:1.1;letter-spacing:-.05em}.display em{letter-spacing:-.045em}.line-link{font-size:12px;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #d5b87588;padding:15px 0;min-height:48px;line-height:1.8}.line-link svg,.opening-foot svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.2;flex:none;transition:transform .3s}.line-link:hover svg{transform:translateX(5px)}.skip-link{position:fixed;top:12px;left:12px;background:var(--paper);color:var(--obsidian);padding:12px;z-index:100;transform:translateY(-180%)}.skip-link:focus{transform:none}
/* The existing site wordmark and navigation. */
.bcr-logo{align-items:center;color:inherit;display:inline-flex;gap:var(--icon-gap)}.bcr-logo img{flex:0 0 auto;height:var(--icon-size);transform:translateY(-.25rem);width:var(--icon-size)}.bcr-logo span{display:grid;line-height:1}.bcr-logo b{font-family:var(--serif);font-size:var(--display-size);font-style:italic;font-weight:500;letter-spacing:-.065em;line-height:.82;text-transform:lowercase;white-space:nowrap}.bcr-logo em{font-family:var(--sans);font-size:var(--sub-size);font-style:normal;font-weight:700;letter-spacing:.13em;margin-left:var(--sub-shift);margin-top:var(--sub-gap);text-transform:uppercase;white-space:nowrap}.site-header.villa-site-header{background:var(--obsidian)}.site-header.villa-site-header.over-visual{background:linear-gradient(180deg,#0c111182,transparent)}.no-script-menu{display:none}dialog{border:0;margin:0;max-width:none}dialog:not([open]){display:none}.explore-menu.shell-menu{background:var(--obsidian)}.menu-close{display:flex;align-items:center;gap:20px;border:0;background:none;text-transform:uppercase;font-size:11px;letter-spacing:.1em}.menu-close span{font-size:32px}
/* One continuous opening journey. The first composition starts in full colour. */
.opening{height:220svh;position:relative}.opening-stage{height:100svh;position:sticky;top:0;overflow:hidden}.opening-track{display:flex;width:200%;height:100%;transform:translate3d(var(--opening-x,0px),0,0);will-change:transform}.opening-panel{position:relative;width:50%;height:100%;flex-shrink:0;overflow:hidden;isolation:isolate}.opening-image{width:100%;height:100%;object-fit:cover;object-position:center 59%;filter:grayscale(var(--opening-gray,0));transform:scale(1.015)}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,#06141266 0%,transparent 65%),linear-gradient(0deg,#08100f80,transparent 32%);pointer-events:none}.hero-copy{position:absolute;inset:23% var(--gutter) auto}.hero-copy>.eyebrow{margin-bottom:22px}.hero-copy h1{font-size:clamp(68px,7.2vw,138px);line-height:1.03;letter-spacing:-.055em}.hero-copy h1 em{letter-spacing:-.045em}.hero-bottom{display:flex;gap:5vw;align-items:end;margin-top:30px}.hero-bottom p{max-width:365px;font-size:18px;line-height:1.65;text-shadow:0 1px 12px #0004}.hero-bottom .line-link{margin-bottom:3px;white-space:nowrap}.opening-foot{position:absolute;bottom:32px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.16em}.opening-foot>span:last-child{display:flex;align-items:center;gap:25px}.opening-foot svg{transform:rotate(90deg);width:18px}.road-copy{position:absolute;left:var(--gutter);top:25%;max-width:80%}.road-copy h2{font-size:clamp(56px,6vw,110px);line-height:1.07;letter-spacing:-.05em;margin:20px 0 24px}.road-panel .hero-scrim{background:linear-gradient(90deg,#07151088,transparent 80%)}.opening-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ffffff22}.opening-progress span{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(var(--opening-progress,.03));transform-origin:left}.entered .hero-copy{animation:opening-entry 1.5s ease both}.entered .opening-foot{animation:opening-entry 1.5s .15s ease both}@keyframes opening-entry{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.introduction{position:relative;background:var(--obsidian);z-index:2}.introduction>.eyebrow{color:var(--gold);margin-bottom:38px}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:11vw;align-items:start}.intro-copy{padding-top:8px;max-width:470px}.intro-copy p{color:var(--muted);margin-bottom:22px}.intro-copy .line-link{margin-top:8px}.service-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:36px;margin-top:90px;border-top:1px solid var(--line)}.service-facts span{font-size:13px;letter-spacing:.02em}.service-facts b{font-weight:400;color:var(--gold);margin-right:28px;font-size:11px}
/* Generous vehicle galleries: swipe, scroll or use the arrows. */
.vehicles{padding-bottom:75px;background:#151a18}.fleet-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:34px 11vw;padding-bottom:75px}.fleet-heading .eyebrow{grid-column:1/-1;color:var(--gold)}.fleet-heading>p:last-child{max-width:390px;align-self:end;color:var(--muted);padding-bottom:5px}.vehicle{padding:0 var(--gutter) 85px}.vehicle+.vehicle{padding-top:85px;border-top:1px solid var(--line)}.vehicle-heading{display:flex;align-items:end;justify-content:space-between;gap:8vw;margin-bottom:35px}.vehicle-heading .eyebrow{color:var(--gold);margin-bottom:14px}.vehicle-heading h3{font-size:clamp(38px,4.1vw,76px);letter-spacing:-.04em;line-height:1.12}.vehicle-heading>p{max-width:360px;color:var(--muted)}.vehicle-gallery{position:relative}.gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.gallery-track::-webkit-scrollbar{display:none}.gallery-slide{flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always;aspect-ratio:1.94;overflow:hidden}.gallery-slide img{width:100%;height:100%;object-fit:cover}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.gallery-caption{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.gallery-buttons{display:flex;gap:16px}.gallery-buttons button{display:grid;place-items:center;background:transparent;border:1px solid #ffffff40;border-radius:50%;width:46px;height:46px;transition:background .25s}.gallery-buttons button:hover{background:#ffffff10}.gallery-buttons button:disabled{opacity:.25;cursor:default}.gallery-buttons svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.2;fill:none}.gallery-prev svg{transform:rotate(180deg)}.vehicle-details{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:28px}.vehicle-spec{font-size:14px;color:var(--muted)}.vehicle-spec span{padding:0 12px;color:var(--gold)}.vehicle-price{display:flex;align-items:baseline;gap:14px}.vehicle-price strong{font:400 42px/1.2 var(--serif);letter-spacing:-.035em}.vehicle-price span{color:var(--muted);font-size:12px}.fleet-note{font-size:13px;color:var(--muted);text-align:center;max-width:660px;margin:0 auto;padding:0 24px;line-height:1.8}
/* A scenic interlude: reveal, contemplate, then let the next chapter cover it. */
.view-sequence{height:175svh;position:relative;background:var(--obsidian)}.view-stage{position:sticky;top:0;height:100svh;overflow:hidden;clip-path:inset(var(--view-inset,8%) var(--view-inset,8%) 0)}.view-photo{position:absolute;inset:0;overflow:hidden}.view-photo img{width:100%;height:100%;object-fit:cover;transform:scale(var(--view-scale,1.08));filter:grayscale(var(--view-gray,1))}.view-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#08111066,transparent 50%)}.view-caption{position:absolute;top:15%;left:var(--gutter);opacity:var(--view-text,0);transform:translateY(calc((1 - var(--view-text,0))*20px));color:white}.view-caption .eyebrow{margin-bottom:22px}.view-caption h2{font-size:clamp(52px,5.8vw,110px);line-height:1.08;letter-spacing:-.05em}.driver-trust{position:relative;z-index:2;background:var(--obsidian)}.trust-heading .eyebrow{color:var(--gold);margin-bottom:34px}.trust-heading .display{max-width:1000px}.trust-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:9vw;align-items:start;margin-top:76px}.trust-photo{position:sticky;top:120px}.trust-photo img{width:100%;aspect-ratio:1.12;object-fit:cover;object-position:62% center;filter:grayscale(var(--gray,0));transition:filter .18s}.trust-photo figcaption{font-size:11px;letter-spacing:.05em;color:var(--muted);padding-top:20px}.trust-copy article{padding:0 0 38px;margin-bottom:38px;border-bottom:1px solid var(--line)}.trust-copy article:last-child{margin:0}.trust-copy .eyebrow{color:var(--gold)}.trust-copy h3{font:400 clamp(29px,2.6vw,47px)/1.2 var(--serif);margin:18px 0 20px;letter-spacing:-.025em}.trust-copy p{color:var(--muted)}
.day-details{display:grid;grid-template-columns:1.1fr 1fr;gap:11vw;background:#191f1c}.day-intro>.eyebrow{color:var(--gold);margin-bottom:32px}.day-intro>p:last-child{max-width:410px;color:var(--muted);margin-top:35px}.day-inclusions{padding-top:4px}.day-inclusions>div{padding:25px 0;border-top:1px solid var(--line)}.day-inclusions>div>span{display:block;text-transform:uppercase;color:var(--gold);font-size:10px;letter-spacing:.13em;margin-bottom:12px}.day-inclusions p{color:var(--paper)}.day-inclusions .day-note{font-size:14px;color:var(--muted);margin:10px 0 22px}.arrival{height:110svh;position:relative;overflow:hidden}.arrival>img{width:100%;height:115%;object-fit:cover;object-position:center;transform:translateY(var(--arrival-y,-4%));filter:grayscale(var(--arrival-gray,0));will-change:transform}.arrival-shade{position:absolute;inset:0;background:linear-gradient(0deg,#101414a6,transparent 70%)}.arrival-copy{position:absolute;left:var(--gutter);bottom:12%;right:var(--gutter)}.arrival-copy .eyebrow{margin-bottom:22px}.arrival h2{font-size:clamp(52px,6.2vw,116px);letter-spacing:-.05em;line-height:1.08}.inquiry{position:relative;background:var(--obsidian);text-align:center;min-height:calc(100svh - 150px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:80px;padding-bottom:75px}.contact-mark{width:54px;height:54px;object-fit:contain;margin-bottom:25px}.inquiry>.eyebrow{color:var(--gold);margin-bottom:25px}.inquiry h2{margin-bottom:30px}.inquiry>p:not(.eyebrow){color:var(--muted);max-width:640px}.air-contact-actions{display:flex;justify-content:center;gap:18px;margin-top:36px}.air-contact-actions a{display:inline-flex;justify-content:center;align-items:center;gap:15px;min-height:60px;padding:17px 26px;border:1px solid #d5b87570;font-size:13px;letter-spacing:.025em;transition:background .3s}.air-contact-actions a:first-child{background:var(--paper);color:var(--obsidian);border-color:var(--paper)}.air-contact-actions a:hover{background:var(--gold);color:var(--obsidian)}.dock-icon{width:19px;height:19px}.inquiry .quote-assurance{font-size:12px;line-height:1.8;margin-top:24px}.bcr-standard-footer.bcr-standard-footer{background:var(--obsidian);border-top:1px solid var(--line)}.floating-whatsapp{opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.floating-whatsapp.shown{opacity:1;visibility:visible}.floating-whatsapp .wa-icon{fill:currentColor}.js .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform 1s cubic-bezier(.2,.65,.3,1)}.js .reveal.visible{opacity:1;transform:none}
.opening-picture{display:block;width:100%;height:100%}.trust-photo img{height:auto;aspect-ratio:1.12;object-position:72% center}
@media(min-width:1101px){.hero-copy{top:17%}.hero-copy h1{font-size:clamp(70px,6.7vw,128px)}.hero-bottom{position:absolute;left:68%;top:20px;display:block;margin:0;max-width:345px}.hero-bottom .line-link{margin-top:20px;font-size:11px;gap:18px}.hero-scrim{background:linear-gradient(180deg,#08152044,transparent 58%),linear-gradient(0deg,#08100f70,transparent 25%)}}
@media(max-width:1000px){.intro-grid,.fleet-heading,.day-details{column-gap:6vw}.hero-copy h1{font-size:clamp(64px,8vw,110px)}.vehicle-heading{gap:5vw}.vehicle-heading>p{max-width:300px}.vehicle-details{flex-wrap:wrap}.vehicle-details .line-link{margin-left:auto}.trust-grid{gap:6vw}.hero-bottom{display:block}.hero-bottom .line-link{margin-top:16px}.hero-copy{top:21%}}
@media(max-width:760px){:root{--gutter:24px}.section-pad{padding-top:80px;padding-bottom:80px}.display{font-size:clamp(40px,10.5vw,64px)}.eyebrow{font-size:10px;letter-spacing:.13em}.opening{height:auto}.opening-stage{position:relative;height:auto}.opening-track{display:block;width:100%;transform:none!important}.opening-panel{width:100%;height:100svh;min-height:670px}.road-panel{height:85svh;min-height:560px}.opening-image{object-position:66% center}.hero-scrim{background:linear-gradient(180deg,#0b171735,transparent 50%,#08110f8c),linear-gradient(90deg,#071a2533,transparent)}.hero-copy{top:19%;inset-inline:24px}.hero-copy>.eyebrow{margin-bottom:18px}.hero-copy h1{font-size:clamp(57px,14.6vw,88px);line-height:1.06}.hero-bottom{margin-top:23px}.hero-bottom p{max-width:310px;font-size:18px;line-height:1.65}.hero-bottom .line-link{font-size:11px;gap:22px;margin-top:17px}.opening-foot{left:24px;right:24px;bottom:25px;font-size:8px;letter-spacing:.1em}.opening-foot>span:last-child{gap:8px}.opening-progress{display:none}.road-copy{top:16%;left:24px;right:24px;max-width:none}.road-copy h2{font-size:clamp(44px,11vw,68px)}.road-copy p:last-child{max-width:240px}.road-panel .opening-image{object-position:57% center}.intro-grid,.fleet-heading,.day-details{display:block}.introduction>.eyebrow{margin-bottom:27px}.intro-copy{padding-top:32px}.service-facts{display:block;margin-top:45px;padding-top:10px}.service-facts span{display:block;padding:17px 0;border-bottom:1px solid var(--line)}.service-facts b{margin-right:20px}.fleet-heading{padding-bottom:45px}.fleet-heading .eyebrow{margin-bottom:26px}.fleet-heading>p:last-child{margin-top:27px}.vehicle{padding-bottom:55px}.vehicle+.vehicle{padding-top:55px}.vehicle-heading{display:block;margin-bottom:24px}.vehicle-heading h3{font-size:38px}.vehicle-heading>p{max-width:none;margin-top:21px}.gallery-slide{aspect-ratio:1.25}.gallery-slide img{object-fit:cover}.gallery-caption{font-size:9px;letter-spacing:.05em}.gallery-buttons{gap:8px}.gallery-buttons button{width:44px;height:44px}.gallery-controls{gap:10px;padding:14px 0}.vehicle-details{display:grid;grid-template-columns:1fr auto;gap:22px 10px}.vehicle-spec{grid-column:1/-1;font-size:12px}.vehicle-price{display:block}.vehicle-price strong{font-size:35px}.vehicle-price span{display:block;margin-top:5px;font-size:11px}.vehicle-details .line-link{font-size:10px;gap:14px;max-width:195px}.fleet-note{font-size:12px}.vehicles{padding-bottom:55px}.view-sequence{height:145svh}.view-stage{clip-path:inset(var(--view-inset,4%) 0 0)}.view-photo img{object-position:58% center}.view-caption{top:15%;right:24px}.view-caption h2{font-size:48px}.trust-grid{display:block;margin-top:38px}.trust-photo{position:relative;top:auto}.trust-photo img{aspect-ratio:1.13}.trust-copy{margin-top:50px}.trust-copy h3{font-size:32px}.trust-copy article{margin-bottom:28px;padding-bottom:28px}.day-intro>p:last-child{margin-top:25px}.day-inclusions{margin-top:42px}.arrival{height:90svh;min-height:570px}.arrival>img{object-position:62% center}.arrival-copy{bottom:10%;left:24px;right:24px}.arrival h2{font-size:clamp(46px,11vw,64px)}.inquiry{min-height:0;padding-top:70px;padding-bottom:65px}.inquiry h2{font-size:48px}.inquiry>p:not(.eyebrow){font-size:18px}.inquiry>p br{display:none}.air-contact-actions{width:100%;max-width:380px;flex-direction:column;gap:12px;margin-top:30px}.inquiry .quote-assurance{font-size:12px!important;max-width:300px}.contact-mark{width:45px;height:45px}.floating-whatsapp{right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.opening{height:auto}.opening-stage{position:relative;height:auto}.opening-track{display:block;width:100%;transform:none!important}.opening-panel{width:100%;height:100svh}.view-sequence{height:100svh}.view-stage{position:relative;clip-path:none!important}.view-photo img,.opening-image,.arrival>img{transform:none!important;filter:none!important}.view-caption{opacity:1!important;transform:none!important}.js .reveal{opacity:1;transform:none;transition:none}.entered .hero-copy,.entered .opening-foot{animation:none}.opening-progress{display:none}}
@media(min-width:1101px){#opening-frame .hero-scrim{background:linear-gradient(180deg,#06142088,#06142055 34%,transparent 62%),linear-gradient(0deg,#08100f70,transparent 25%)}}
@media(max-width:760px){#opening-frame .opening-image{object-position:58.3% center;transform:none}#opening-frame .hero-scrim{background:linear-gradient(180deg,#07151c88,#07151c55 49%,transparent 76%)}.gallery-slide{aspect-ratio:1.77}.trust-photo img{aspect-ratio:1.22;height:auto;object-position:74% center}.inquiry h2{font-size:42px}}
html:not(.js) .opening{height:auto}html:not(.js) .opening-stage{position:relative;height:auto}html:not(.js) .opening-track{display:block;width:100%;transform:none}html:not(.js) .opening-panel{width:100%;height:100svh}html:not(.js) .view-sequence{height:100svh}html:not(.js) .view-stage{clip-path:none}html:not(.js) .view-caption{opacity:1;transform:none}html:not(.js) .no-script-menu{display:block}html:not(.js) .menu-toggle{display:none!important}
