@font-face{font-family:BBC Sans;src:url('/static/e0687df685a08963-sans.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--blue:#162b51;--paper:#f6f2e9;--copper:#d6a78d;--bg:var(--blue);--fg:var(--paper);--gutter:7.142857vw;--space:clamp(90px,10.714vw,180px);--header:120px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 22px)}body{margin:0;background:var(--bg);color:var(--fg);font:400 17px/1.65 'BBC Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased;transition:color .4s}body.modal-open{overflow:hidden}main{overflow-x:clip}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit;background:none;border:0;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:5px}img,video{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h2{font-size:clamp(36px,3.8vw,64px);font-weight:400;line-height:1.12;letter-spacing:-.045em;white-space:pre-line}h3{font-size:28px;font-weight:400;line-height:1.2;letter-spacing:-.03em}p+p{margin-top:24px}.wrap{width:calc(100% - var(--gutter)*2);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:fixed;top:10px;left:10px;padding:12px;background:var(--paper);color:var(--blue);z-index:150;transform:translateY(-180%)}.skip:focus{transform:none}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;font-size:15px;font-weight:500;line-height:1.4;min-height:48px;border-bottom:1px solid currentColor;transition:color .25s}.text-link>span,.contact-link>span{font-size:20px;transition:transform .3s var(--ease)}.text-link:hover>span,.contact-link:hover>span{transform:translate(3px,-3px)}
/* Reference navigation, with the BBC identity and visible anchors at every size. */
.site-header{position:fixed;inset:0 0 auto;z-index:50;height:var(--header);display:flex;align-items:center;justify-content:space-between;padding-inline:var(--gutter);gap:30px;transition:background .3s,color .3s}.site-header.scrolled{background:var(--bg);box-shadow:0 1px 0 #b1b7c31c}.home-link{width:190px;position:relative;display:block;flex-shrink:0}.home-link img{width:100%;height:auto}.home-link .logo-dark{position:absolute;inset:0;opacity:0}.light .home-link .logo-dark{opacity:1}.light .home-link .logo-light{opacity:0}.site-header nav{display:flex;gap:30px;align-items:center}.site-header nav>a{font-size:13px;font-weight:500;position:relative;min-height:48px;display:flex;align-items:center;white-space:nowrap}.site-header nav>a:after{content:'';position:absolute;height:1px;left:0;right:0;bottom:10px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.site-header nav>a:hover:after,.site-header nav>a[aria-current=location]:after{transform:scaleX(1)}.contact-link{display:flex;align-items:center;gap:20px;min-height:48px;white-space:nowrap;font-size:14px;border-bottom:1px solid currentColor}
/* Solid first phrase, outlined second phrase. */
.hero{padding-top:clamp(180px,14.2857vw,240px);padding-bottom:clamp(80px,7.14vw,120px)}.hero-overline{display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:15px}.hero-overline>p{line-height:1.4}.hero-overline .text-link{min-height:44px;font-size:14px}.marquee{overflow:hidden;margin-top:30px;margin-bottom:62px;max-width:100%}.marquee-track{display:flex;width:max-content;animation:marquee 23.333333s linear infinite;will-change:transform}.marquee-track>span{white-space:nowrap;font-size:clamp(80px,11.6vw,220px);font-weight:600;line-height:1.18;letter-spacing:-.05em;flex-shrink:0;padding-right:.22em}.marquee b{font-weight:inherit;-webkit-text-stroke:1px var(--fg);color:transparent;margin-left:.05em}.hero-image{overflow:hidden}.hero-image img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:50% 80%}.hero-caption{padding-top:24px;font-size:15px;color:#e2e5ed;max-width:none}.hero-caption p{max-width:760px;line-height:1.7}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8.333%;align-items:start;padding-bottom:var(--space)}.split>*{min-width:0}.split h2+p{margin-top:30px}.split p{line-height:1.75}.keywords{font-size:14px;letter-spacing:.035em;opacity:.75;margin-top:30px!important}
/* Five scenes. Without JS / on touch, this is a native horizontal rail. */
.brand-passage{position:relative;margin-bottom:var(--space)}.brand-pin{height:calc(100svh - var(--header));min-height:430px;position:relative;overflow:hidden}.brand-track{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.brand-track::-webkit-scrollbar{display:none}.brand-slide{position:relative;flex:0 0 100%;height:100%;isolation:isolate;scroll-snap-align:start}.brand-slide>img{width:100%;height:100%;object-fit:cover;object-position:center}.brand-scrim{position:absolute;inset:0;background:linear-gradient(0deg,#162b51 0%,#162b51d9 16%,#162b5160 43%,#162b5100 74%)}.brand-slide figcaption{position:absolute;left:var(--gutter);right:var(--gutter);bottom:100px;color:var(--paper)}.brand-slide figcaption>span{font-size:13px}.brand-slide h3{font-size:clamp(52px,6.3vw,100px);letter-spacing:-.05em;margin-top:8px}.brand-rail-controls{position:absolute;inset:auto var(--gutter) 27px;display:flex;align-items:center;justify-content:space-between;color:var(--paper);font-size:12px;gap:20px;pointer-events:none}.brand-dots{display:flex;gap:10px;pointer-events:auto}.brand-dots button{width:48px;height:44px;display:grid;place-items:center}.brand-dots button>span{display:block;width:30px;height:2px;background:#f6f2e966;transition:background .25s,transform .25s}.brand-dots button[aria-pressed=true]>span{background:var(--paper);transform:scaleY(2)}.brand-scroll-label{display:flex;align-items:center;gap:18px}.brand-scroll-label>span{font-size:20px}.brand-passage.is-pinned .brand-track{width:max-content;overflow:visible;scroll-snap-type:none}.brand-passage.is-pinned .brand-slide{width:100vw;flex:0 0 100vw}
/* The reference split is retained; all thirty signatures have a place. */
.portfolio{padding-bottom:var(--space);padding-top:15px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%}.portfolio-copy{position:sticky;top:calc(var(--header) + 35px)}.portfolio h2{font-size:clamp(40px,4.2vw,70px)}.portfolio p{font-size:17px;max-width:480px}.partner-wall{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 20px;align-items:center}.partner-logo{position:relative;height:100px;padding:14px 6px;display:flex;align-items:center;justify-content:center;min-width:0;background:#fff}.partner-logo img{width:100%;height:100%;object-fit:contain}.partner-logo>span{position:absolute;bottom:3px;right:6px;font-size:15px;opacity:0;transition:opacity .2s}.partner-logo:after{content:'';height:1px;background:var(--blue);position:absolute;left:10px;right:10px;bottom:3px;transform:scaleX(0);transform-origin:left;transition:transform .3s}.partner-logo:hover:after,.partner-logo:focus-visible:after{transform:scaleX(1)}.partner-logo:hover>span,.partner-logo:focus-visible>span{opacity:1}.partner-logo:focus-visible{outline-color:var(--blue)}
.experience-intro{padding-bottom:60px}.video-stage{margin-bottom:var(--space);background:#101f3b}.video-stage video{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;max-height:90svh}.encounters{padding-bottom:60px}.experience-mosaic{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-template-rows:260px 260px;gap:25px;padding:32px var(--gutter) var(--space);background:var(--blue);color:var(--paper);margin-bottom:var(--space)}.experience-mosaic figure{min-width:0;min-height:0;position:relative;display:flex;flex-direction:column;justify-content:center;background:#1d345a;padding:12px 12px 0}.experience-mosaic figure:first-child{grid-row:span 2}.experience-mosaic img{width:100%;height:calc(100% - 45px);object-fit:contain}.experience-mosaic figcaption{display:flex;align-items:center;gap:16px;min-height:45px;font-size:13px}.experience-mosaic figcaption>span{font-size:11px;color:#d6a78d}.touchpoint-images{display:grid;gap:45px}.touchpoint-images>img{width:100%;height:auto}.touchpoint-images>img:last-child{width:80%;justify-self:end}.editorial-pillars{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:45px}.editorial-pillars h3{font-size:30px}.editorial-pillars p{font-size:15px;margin-top:15px}.statement{text-align:center;padding:0 8.333% var(--space)}.statement>p{font-size:14px;letter-spacing:.04em;margin-bottom:30px}.statement h2{font-size:clamp(38px,4.5vw,72px);line-height:1.2}.full-image{width:100%;overflow:hidden;margin-bottom:var(--space)}.full-image img{width:100%;height:auto}.invitation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8.333%;padding-block:15px var(--space);align-items:center}.invitation h2{font-size:clamp(50px,5.8vw,96px)}.invitation>div{min-width:0}.invitation>div:last-child{max-width:440px}.invitation .text-link{margin-top:28px;min-width:190px}.catalogue{padding-top:var(--space);padding-bottom:var(--space);background:var(--blue);color:var(--paper)}.catalogue-heading{display:flex;align-items:center;justify-content:space-between;gap:35px}.catalogue-heading h2{font-size:clamp(36px,4vw,64px)}.catalogue-heading .text-link{flex-shrink:0}.catalogue-marquee{margin-block:55px 60px}.catalogue-art{display:flex;align-items:center;justify-content:center;position:relative;min-height:600px;background:#1c345a;padding-block:45px;overflow:hidden}.catalogue-art img{width:auto;max-width:70%;height:510px;object-fit:contain;box-shadow:18px 24px 35px #070e203b;transition:transform .6s var(--ease)}.catalogue-art:hover img{transform:translateY(-8px)}.catalogue-open{position:absolute;right:35px;bottom:35px;border:1px solid #f6f2e970;border-radius:50%;width:60px;height:60px;display:grid;place-items:center;font-size:28px}.site-footer{background:var(--blue);color:var(--paper);padding-block:0 30px}.footer-logo{display:inline-block;width:260px;max-width:80%;margin-top:5px}.footer-logo img{width:100%;height:auto}.footer-columns{display:grid;grid-template-columns:1.5fr 1fr .8fr;gap:8%;margin-block:65px 70px}.footer-columns h3{font-size:16px;letter-spacing:0;line-height:1.5;margin-bottom:20px}.footer-columns a{display:block;min-height:44px;font-size:14px}.footer-columns a:hover{text-decoration:underline}.office-details{max-width:380px}.office-details>p:first-of-type{font-size:13px;font-weight:500;margin-bottom:30px}.office-details h3{font-size:14px;margin:23px 0 8px}.office-details p{font-size:14px;color:#e0e4ec;line-height:1.8}.footer-bottom{display:flex;justify-content:space-between;gap:25px;align-items:center;border-top:1px solid #f6f2e930;padding-top:25px;font-size:12px}.footer-bottom>a{min-height:44px;display:flex;align-items:center}.footer-bottom span:nth-child(2){color:#dce0e8}
/* One on-demand catalogue reader, with direct fallback inside. */
dialog{position:fixed;border:0;padding:0;background:var(--paper);color:var(--blue);margin:auto;width:94vw;height:92svh;max-width:1500px;max-height:94svh}dialog::backdrop{background:#0a142ad9;backdrop-filter:blur(5px)}.reader-top{height:86px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:18px 28px;border-bottom:1px solid #162b512b}.reader-top h2{font-size:25px;letter-spacing:-.03em;white-space:normal}.reader-top>div{display:flex;align-items:center;gap:25px}.reader-top button{width:48px;height:48px;font-size:36px;line-height:1}.reader-external{display:flex;align-items:center;min-height:48px;gap:15px;font-size:14px}.reader-external:hover{text-decoration:underline}#catalogue-viewer{height:calc(100% - 86px);position:relative;background:#eceae4}#catalogue-viewer iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.reader-status{position:absolute;inset:0 0 auto;z-index:2;background:var(--paper);padding:20px 25px;text-align:center;font-size:14px;pointer-events:none}.reader-status:empty{display:none}.cursor-dot{position:fixed;z-index:100;top:0;left:0;width:7px;height:7px;border-radius:50%;background:white;mix-blend-mode:difference;pointer-events:none;opacity:0;transition:width .2s,height .2s}.cursor-dot.active{opacity:1}.cursor-dot.over{width:30px;height:30px}@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:1100px){:root{--header:106px;--gutter:6vw}.site-header{gap:20px}.home-link{width:170px}.site-header nav{gap:22px}.contact-link{font-size:13px;gap:14px}.site-header nav>a{font-size:12px}.portfolio{gap:6%;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.partner-wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.partner-logo{height:96px}.portfolio h2{font-size:46px}.experience-mosaic{gap:20px;grid-template-rows:220px 220px}.footer-columns{gap:6%}.brand-dots{gap:2px}}
@media(max-width:900px){.site-header{gap:18px}.home-link{width:160px}.site-header nav{gap:16px}.site-header nav>a{font-size:12px}.contact-link{gap:10px;font-size:13px}.hero{padding-top:165px}.marquee-track>span{font-size:15.5vw}.hero-overline{font-size:13px}.hero-overline .text-link{font-size:13px}.split,.invitation{gap:6%}.portfolio{grid-template-columns:1fr;gap:40px}.portfolio-copy{position:static;max-width:650px}.portfolio p{max-width:600px}.partner-wall{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.partner-logo{height:100px}.experience-mosaic{grid-template-rows:210px 210px;gap:18px}.catalogue-heading{align-items:start;flex-direction:column;gap:25px}.catalogue-art{min-height:500px}.catalogue-art img{height:420px}.footer-columns{grid-template-columns:1.4fr 1fr .8fr;gap:5%}.editorial-pillars{gap:25px}.editorial-pillars h3{font-size:26px}}
@media(max-width:600px){:root{--gutter:6vw;--space:76px;--header:130px}.site-header{display:grid;grid-template-columns:1fr auto;grid-template-rows:78px 45px;gap:0;padding-block:0 7px;align-items:center}.home-link{width:165px;grid-row:1;grid-column:1}.contact-link{grid-row:1;grid-column:2;min-height:44px;font-size:13px;gap:12px}.site-header nav{grid-row:2;grid-column:1/-1;display:flex;justify-content:space-between;gap:12px;width:100%;min-width:0}.site-header nav>a{font-size:12px;min-height:44px;white-space:normal;line-height:1.35}.site-header nav>a:after{bottom:4px}.hero{padding-top:168px;padding-bottom:65px}.hero-overline{gap:16px;align-items:start}.hero-overline>p{max-width:160px;font-size:11px;line-height:1.7}.hero-overline .text-link{font-size:12px;gap:12px;min-height:42px;max-width:145px;align-items:start;padding-top:2px}.hero-overline .text-link>span{font-size:16px}.marquee{margin-top:28px;margin-bottom:35px}.marquee-track>span{font-size:22vw;line-height:1.2}.hero-image img{aspect-ratio:1.1;object-position:55% 55%}.hero-caption{font-size:14px;padding-top:22px}.split,.invitation{grid-template-columns:1fr;gap:30px}.split h2{font-size:clamp(38px,10.4vw,54px)}.split p{font-size:16px}.split h2+p{margin-top:23px}.keywords{font-size:13px!important;margin-top:22px!important}.brand-pin{height:calc(100svh - var(--header));min-height:410px}.brand-slide>img{object-position:center}.brand-slide figcaption{bottom:105px}.brand-slide h3{font-size:58px}.brand-rail-controls{bottom:20px;gap:12px;flex-wrap:wrap}.brand-scroll-label{display:none}.brand-dots{gap:0}.brand-dots button{width:39px}.brand-dots button>span{width:25px}.partner-wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 15px}.partner-logo{height:92px;padding:13px 3px}.portfolio{gap:30px}.portfolio h2{font-size:43px}.portfolio p{font-size:16px}.experience-intro{padding-bottom:35px}.video-stage{width:100%;margin-bottom:var(--space)}.video-stage video{max-height:none}.encounters{padding-bottom:35px}.experience-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:20px 16px;padding:0 var(--gutter) 50px}.experience-mosaic figure{height:260px}.experience-mosaic figure:first-child{grid-column:1/-1;grid-row:auto;height:320px}.experience-mosaic figcaption{font-size:12px;gap:10px;line-height:1.3}.touchpoint-images{gap:28px}.touchpoint-images>img:last-child{width:85%}.editorial-pillars{gap:25px;margin-top:30px}.editorial-pillars h3{font-size:26px}.editorial-pillars p{font-size:14px}.statement{padding-inline:0}.statement>p{font-size:13px;margin-bottom:24px}.statement h2{font-size:clamp(36px,9.7vw,51px)}.invitation{padding-top:0}.invitation h2{font-size:clamp(44px,12vw,64px)}.invitation p{font-size:16px}.catalogue-heading h2{font-size:43px}.catalogue-heading .text-link{font-size:14px}.catalogue-marquee{margin-block:35px 40px}.catalogue-art{min-height:390px;padding-block:35px}.catalogue-art img{height:320px;max-width:74%}.catalogue-open{right:20px;bottom:20px;width:44px;height:44px;font-size:23px}.footer-logo{width:230px}.footer-columns{grid-template-columns:1fr 1fr;gap:40px 25px;margin-block:40px 45px}.office-details{grid-column:1/-1;max-width:100%}.office-details p{max-width:360px}.footer-columns h3{margin-bottom:14px}.office-details h3{margin-top:20px;margin-bottom:7px}.footer-columns a{font-size:13px}.footer-bottom{flex-wrap:wrap;gap:12px;font-size:11px}.footer-bottom>span:first-child{width:100%}.footer-bottom>a{margin-left:auto}.cursor-dot{display:none}dialog{width:100%;height:100dvh;max-width:100%;max-height:100dvh;margin:0}.reader-top{height:85px;padding:12px 16px;gap:12px}.reader-top h2{font-size:22px;max-width:160px}.reader-top>div{gap:8px}.reader-external{font-size:0;gap:0;width:40px;justify-content:center}.reader-external>span{font-size:22px}.reader-top button{width:44px}.reader-status{font-size:13px}#catalogue-viewer{height:calc(100% - 85px)}}
@media(max-width:360px){.home-link{width:145px}.contact-link{font-size:12px;gap:9px}.site-header nav>a{font-size:11px}.hero-overline>p{max-width:130px;font-size:10px}.hero-overline .text-link{font-size:11px;max-width:125px;gap:8px}.portfolio h2{font-size:38px}.partner-logo{height:82px}.experience-mosaic figure{height:230px}.experience-mosaic figure:first-child{height:280px}.editorial-pillars{grid-template-columns:1fr;gap:25px}.brand-dots button{width:33px}.catalogue-heading h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.cursor-dot{display:none}.marquee-track{transform:none!important;will-change:auto}.brand-track{scroll-behavior:auto}.catalogue-art:hover img{transform:none}}

/* Reference load entrance: clipped, staggered letters rise from 200% below. */
.hero .marquee-track{animation-duration:20s;animation-name:marquee;animation-play-state:paused}
.hero-marquee-running .hero .marquee-track{animation-play-state:running}

.hero .hero-marquee-phrase{display:inline-block;overflow:hidden;vertical-align:top;font-style:normal}
.hero .hero-char{display:inline-block;position:relative}
.hero-reveal-pending .hero .hero-char{transform:translateY(200%)}
@media(prefers-reduced-motion:reduce){.hero .hero-char{transform:none!important}}

/* Navigation actions: Contact first, rounded catalogue CTA immediately to its right. */
.header-actions{display:flex;align-items:center;gap:26px;flex-shrink:0}
.header-catalogue-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 22px;border:1px solid color-mix(in srgb,currentColor 55%,transparent);border-radius:999px;background:transparent;color:inherit;font-size:13px;font-weight:500;line-height:1.4;white-space:nowrap;transition:background .25s,color .25s}
.header-catalogue-button:hover{background:var(--fg);color:var(--bg)}
@media(max-width:1100px){.header-actions{gap:20px}.header-catalogue-button{padding-inline:18px;font-size:12px}}
@media(max-width:900px){:root{--header:140px}.site-header{display:grid;grid-template-columns:1fr auto;grid-template-rows:86px 44px;gap:0;padding-bottom:10px}.home-link{grid-column:1;grid-row:1}.header-actions{grid-column:2;grid-row:1}.site-header nav{grid-column:1/-1;grid-row:2;justify-content:center;gap:40px}.hero{padding-top:190px}}
@media(max-width:600px){:root{--header:170px}.site-header{grid-template-rows:68px 50px 44px;padding-bottom:8px}.home-link{grid-column:1/-1;grid-row:1;width:165px}.header-actions{grid-column:1/-1;grid-row:2;justify-content:flex-end;gap:22px}.header-catalogue-button{min-height:44px;padding:10px 19px;font-size:12px}.site-header nav{grid-column:1/-1;grid-row:3;justify-content:space-between;gap:12px}.hero{padding-top:208px}}
@media(max-width:360px){.home-link{width:145px}.header-actions{gap:18px}.header-catalogue-button{padding-inline:16px}}

/* Ambient brand film: no player chrome or click-to-pause surface. */
#bbc-film{pointer-events:none}#bbc-film::-webkit-media-controls{display:none!important}

/* Compact text action aligned with the catalogue pill. */
.header-actions .contact-link{display:inline-flex;align-items:center;justify-content:center;gap:0;min-width:0;min-height:44px;padding:10px 2px;font-size:13px;font-weight:500;line-height:1.4;border-bottom:1px solid color-mix(in srgb,currentColor 55%,transparent)}
@media(max-width:1100px){.header-actions .contact-link{font-size:12px}}

/* One shared colour surface: no independent timed transitions or hard scene seams. */
body{transition:none}
.site-header{transition:box-shadow .3s}
.home-link .logo-dark{opacity:var(--logo-dark,0)}
.home-link .logo-light{opacity:calc(1 - var(--logo-dark,0))}
.experience-mosaic,.catalogue,.site-footer{background:transparent;color:inherit}
.experience-mosaic figure{background:transparent}

/* Six equal landscape frames measured from the supplied reference collage.
   Centre: 39.2vw, gutters: 3.5vw, outer columns offset down by 7.14vw. */
.experience-mosaic{position:relative;left:50%;transform:translateX(-50%);width:124.6vw;display:grid;grid-template-columns:repeat(3,39.2vw);grid-template-rows:repeat(2,auto);gap:3.5vw;align-items:start;padding:2.9vw 0 10.1vw;margin-bottom:var(--space)}
.experience-mosaic figure,.experience-mosaic figure:first-child{display:block;grid-row:auto;min-width:0;height:auto;padding:0;margin:0;position:relative;overflow:hidden;border-radius:4px;background:transparent}
.experience-mosaic figure:nth-child(1){grid-column:1;grid-row:1;transform:translateY(7.14vw)}
.experience-mosaic figure:nth-child(2){grid-column:2;grid-row:1}
.experience-mosaic figure:nth-child(3){grid-column:3;grid-row:1;transform:translateY(7.14vw)}
.experience-mosaic figure:nth-child(4){grid-column:2;grid-row:2}
.experience-mosaic figure:nth-child(5){grid-column:3;grid-row:2;transform:translateY(7.14vw)}
.experience-mosaic figure:nth-child(6){grid-column:1;grid-row:2;transform:translateY(7.14vw)}
.experience-mosaic img{display:block;width:100%;height:auto;aspect-ratio:800 / 440;object-fit:cover}
.experience-mosaic figcaption{position:absolute;inset:auto 0 0;min-height:0;padding:38px 24px 18px;background:linear-gradient(transparent,#07172db3);color:var(--paper);font-size:13px;gap:12px;line-height:1.4}
.experience-mosaic figure:nth-child(1) figcaption,.experience-mosaic figure:nth-child(6) figcaption{padding-left:calc(12.3vw + 18px)}
@media(max-width:600px){.experience-mosaic{left:auto;transform:none;width:100%;padding:6vw 5vw 16vw;grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:5vw}.experience-mosaic figure:nth-child(n){grid-column:auto;grid-row:auto;transform:none;height:auto}.experience-mosaic figure:nth-child(even){transform:translateY(8vw)}.experience-mosaic img{aspect-ratio:1.3}.experience-mosaic figcaption,.experience-mosaic figure:nth-child(1) figcaption,.experience-mosaic figure:nth-child(6) figcaption{padding:28px 10px 10px;font-size:11px;gap:6px}.experience-mosaic figcaption>span{display:none}}

/* A place at the table — an editorial statement with deliberate line breaks. */
.statement{padding:30px 0 clamp(90px,10vw,170px);text-align:left}
.quote-meta{display:flex;justify-content:space-between;gap:20px;border-top:1px solid color-mix(in srgb,currentColor 25%,transparent);padding-top:22px;margin-bottom:60px;font-size:12px;letter-spacing:.09em;text-transform:uppercase}
.quote-meta p{font-size:12px}.quote-meta>span{opacity:.6}
.quote-composition{position:relative;isolation:isolate;padding:10px 8% 15px}
.statement h2{position:relative;font-size:clamp(48px,6.2vw,104px);font-weight:400;line-height:1.08;letter-spacing:-.055em;white-space:normal;z-index:1}
.quote-line{display:block;white-space:nowrap}.quote-line:nth-child(2){margin-left:8%}.quote-line:nth-child(3){margin-left:29%}
.statement em{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.055em}
.quote-orbit{position:absolute;width:36%;aspect-ratio:1;right:8%;top:50%;transform:translateY(-50%);border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-radius:50%;z-index:-1}
.quote-orbit:after{content:'';position:absolute;width:8px;height:8px;border-radius:50%;background:var(--copper);top:14%;left:14%}
.quote-mark{position:absolute;left:0;top:-20px;font:110px/1 Georgia,serif;color:var(--copper)}
@media(max-width:600px){.statement{padding-top:15px;padding-inline:0}.quote-meta{font-size:10px;margin-bottom:38px;letter-spacing:.05em;gap:12px}.quote-meta p{font-size:10px}.quote-composition{padding:15px 0}.statement h2{font-size:clamp(30px,8.5vw,51px);line-height:1.17}.quote-line:nth-child(2){margin-left:3%}.quote-line:nth-child(3){margin-left:19%}.quote-mark{font-size:65px;top:-22px;left:-4px}.quote-orbit{width:56%;right:0}}

/* Catalogue is an inline, directly interactive reader. */
.catalogue-reader{height: min(850px,85svh);min-height:560px;background:#1c345a;overflow:hidden;border:1px solid #f6f2e926}
.catalogue-reader iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:600px){.catalogue-reader{width:100%;height:75svh;min-height:480px}}

/* Engraved tulip tasting glass: a quiet reference to spirits service. */
.quote-glass{position:absolute;right:2%;top:50%;transform:translateY(-50%) rotate(8deg);width:23%;height:auto;max-height:390px;overflow:visible;stroke:#987b5e;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;opacity:.48;z-index:-1;pointer-events:none}
.quote-glass .glass-spirit{stroke-width:1.4;opacity:.85}.quote-glass .glass-highlight{opacity:.45}
@media(max-width:600px){.quote-glass{right:-1%;width:25%;opacity:.25;max-height:190px}}

/* Fine engraved contour, connected stem and foot, level rim. */
.quote-glass{transform:translateY(-50%);stroke:#94734f;stroke-width:1.05;opacity:.65;width:21%;right:3%;max-height:360px;shape-rendering:geometricPrecision}
.quote-glass .glass-spirit{stroke-width:.8;opacity:.55}
@media(max-width:600px){.quote-glass{width:23%;right:0;max-height:185px;opacity:.35}}

/* Reference invitation: oversized bold headline, copy and round-arrow CTA below. */
.invitation{display:block;padding-top:15px;padding-bottom:var(--space)}
.invitation h2{font-size:clamp(64px,8.7vw,170px);font-weight:750;letter-spacing:-.065em;line-height:.98;white-space:normal}
.invitation h2>span{display:block;white-space:nowrap}
.invitation .invitation-copy{max-width:66%;margin-top:58px}
.invitation-copy>p{font-size:clamp(18px,1.7vw,30px);line-height:1.6;color:color-mix(in srgb,var(--fg) 58%,var(--bg));max-width:100%}
.invitation-cta{display:inline-flex;align-items:center;gap:24px;margin-top:68px;font-size:17px;font-weight:650;min-height:64px}
.invitation-arrow{display:grid;place-items:center;width:62px;height:62px;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:50%;font-size:27px;font-weight:400;transition:background .25s,color .25s,transform .25s}
.invitation-cta:hover .invitation-arrow{background:var(--fg);color:var(--bg);transform:translateX(4px)}
@media(max-width:600px){.invitation h2{font-size:clamp(34px,8.7vw,54px);line-height:1.03}.invitation .invitation-copy{max-width:100%;margin-top:30px}.invitation-copy>p{font-size:17px}.invitation-cta{margin-top:34px;gap:18px;font-size:16px}.invitation-arrow{width:52px;height:52px;font-size:24px}}
.invitation>div.invitation-copy:last-child{max-width:66%;width:66%}
@media(max-width:600px){.invitation>div.invitation-copy:last-child{max-width:100%;width:100%}}

/* Desktop brand entrance: emblem, wordmark and a three-second curtain. */
.brand-splash{display:none}
@media all{
.splash-active{overflow:hidden}
.splash-active .brand-splash{display:grid;place-items:center;position:fixed;inset:0;z-index:500;background:#162b51;color:#f6f2e9;animation:splash-curtain .65s cubic-bezier(.76,0,.24,1) 2.35s both;pointer-events:all}
.splash-content{text-align:center;display:flex;flex-direction:column;align-items:center}
.splash-emblem{width:130px;height:140px;margin-bottom:28px;animation:splash-emblem 1.2s cubic-bezier(.22,1,.36,1) both}
.splash-emblem img{width:100%;height:100%;object-fit:contain}
.splash-name{font:400 clamp(30px,3.1vw,52px)/1.1 Georgia,serif;letter-spacing:-.035em}
.splash-name span{display:block;animation:splash-word .85s cubic-bezier(.22,1,.36,1) .4s both}
.splash-name span+span{animation-delay:.58s}
.splash-location{font-size:10px;letter-spacing:.42em;text-transform:uppercase;margin-top:25px;animation:splash-word .8s ease .9s both}
.splash-rule{position:absolute;bottom:48px;left:calc(50% - 70px);width:140px;height:1px;background:#f6f2e930;overflow:hidden}
.splash-rule:after{content:'';display:block;height:100%;background:#d6a78d;transform-origin:left;animation:splash-progress 2.35s ease-in-out both}
}
@keyframes splash-emblem{from{opacity:0;transform:translateY(16px) scale(.87);filter:blur(5px);clip-path:inset(0 0 100%)}to{opacity:1;transform:none;filter:blur(0);clip-path:inset(0)}}
@keyframes splash-word{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes splash-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes splash-curtain{from{clip-path:inset(0)}to{clip-path:inset(0 0 100%)}}
@media(prefers-reduced-motion:reduce){.splash-active .brand-splash,.splash-emblem,.splash-name span,.splash-location{animation:none!important}.splash-rule:after{animation:none}}

/* Keep the bottle collection visible in the first desktop viewport. */
@media(min-width:901px){
.hero{padding-top:calc(var(--header) + clamp(20px,3.5vh,38px))}
.hero .marquee{margin-top:18px;margin-bottom:26px}
.hero .marquee-track>span{font-size:clamp(78px,10vw,180px);line-height:1.12}
.hero-image img{height:clamp(240px,calc(100svh - var(--header) - 10vw - 120px),560px);aspect-ratio:auto;object-fit:cover;object-position:50% 83%}
}
@media(min-width:601px) and (max-width:900px){
.hero{padding-top:calc(var(--header) + 26px)}
.hero .marquee{margin-top:20px;margin-bottom:26px}
.hero-image img{height:clamp(240px,42svh,420px);aspect-ratio:auto;object-position:50% 83%}
}
@media(max-width:600px){
.hero{padding-top:calc(var(--header) + 22px)}
.hero .marquee{margin-top:18px;margin-bottom:24px}
.hero-image img{height:clamp(210px,36svh,340px);aspect-ratio:auto;object-position:50% 83%}
}

/* Responsive calibration: width controls measure, height controls the first view. */
@media(min-width:901px){
:root{--header:clamp(80px,10svh,120px);--hero-type:min(10vw,16svh,200px);--hero-air:clamp(16px,3svh,40px)}
.hero{padding-top:calc(var(--header) + var(--hero-air));padding-bottom:clamp(60px,7vw,120px)}
.hero .marquee{margin-top:16px;margin-bottom:24px}
.hero .marquee-track>span{font-size:var(--hero-type);line-height:1.12}
.hero-image img{height:clamp(200px,calc(100svh - var(--header) - var(--hero-air) - var(--hero-type)*1.12 - 132px),900px);object-position:50% 83%}
.hero-caption{padding-top:18px}
}
@media(min-width:901px) and (max-width:1100px){.site-header{gap:18px}.home-link{width:155px}.site-header nav{gap:18px}.site-header nav>a{font-size:12px}.header-actions{gap:18px}}
@media(min-width:601px) and (max-width:900px){
.invitation h2{font-size:8.5vw}.statement h2{font-size:6.1vw}.quote-composition{padding-inline:5%}.quote-glass{width:22%;right:0}
.portfolio-copy{position:static}.partner-wall{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:600px){
:root{--header:120px;--gutter:5.5vw;--space:68px}
.site-header{display:grid;grid-template-columns:1fr auto;grid-template-rows:70px 44px;height:var(--header);padding-block:0 6px;gap:0;align-items:center}
.home-link{grid-column:1;grid-row:1;width:clamp(122px,35vw,145px)}
.header-actions{display:contents}
.header-catalogue-button{grid-column:2;grid-row:1;font-size:11px;min-height:42px;padding:10px 15px}
.header-actions .contact-link{position:absolute;right:var(--gutter);bottom:6px;font-size:11px;min-height:44px;border:0;padding:0}
.site-header nav{grid-column:1/-1;grid-row:2;width:calc(100% - 76px);justify-content:space-between;gap:9px}
.site-header nav>a{font-size:11px;white-space:nowrap;min-height:44px}
.hero{padding-top:calc(var(--header) + 22px);padding-bottom:56px}
.hero-overline>p{max-width:none;font-size:11px;white-space:nowrap}
.hero .marquee{margin-top:18px;margin-bottom:22px}
.hero .marquee-track>span{font-size:min(22vw,12svh);line-height:1.16}
.hero-image img{height:clamp(180px,calc(100svh - var(--header) - 22vw - 160px),370px);object-position:50% 83%}
.hero-caption{font-size:13px;line-height:1.6;padding-top:18px}
.portfolio-copy{position:static}.portfolio h2{font-size:clamp(34px,9.8vw,43px)}
.partner-wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.partner-logo{height:88px}
.brand-pin{height:clamp(330px,calc(100svh - var(--header)),650px);min-height:0}
.brand-slide figcaption{bottom:85px}.brand-slide h3{font-size:clamp(44px,12vw,62px)}
.brand-rail-controls{bottom:15px}.brand-dots button{width:36px;min-height:44px}
.quote-meta{gap:8px;font-size:9px;letter-spacing:.03em}.quote-meta p{font-size:9px}
.statement h2{font-size:8.5vw}.quote-glass{width:22%;right:0}
.invitation h2{font-size:8.45vw}.invitation-cta{min-height:52px}
.catalogue-heading{align-items:flex-start;flex-direction:column;gap:20px}
.catalogue-heading h2{font-size:clamp(34px,10vw,43px)}
.catalogue-reader{height:clamp(440px,75svh,760px);min-height:0}
}
@media(max-width:360px){.site-header nav{width:calc(100% - 66px);gap:7px}.site-header nav>a{font-size:10px}.header-actions .contact-link{font-size:10px}.header-catalogue-button{padding-inline:12px;font-size:10px}.brand-dots button{width:30px}.brand-dots button>span{width:21px}.partner-logo{height:76px}}
@media(max-height:500px) and (min-width:601px){:root{--header:76px}.site-header{display:flex;height:76px;padding-block:0}.home-link{width:130px}.site-header nav{width:auto;gap:14px}.site-header nav>a{font-size:11px}.header-actions{gap:14px}.hero{padding-top:96px}.hero-image img{height:240px}.hero .marquee-track>span{font-size:12svh}.brand-pin{height:calc(100svh - 76px);min-height:260px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.invitation-arrow{transition:none}}
/* Preserve readable measures on very large displays. */
.wrap{max-width:2200px}
.split>div>p{max-width:640px}
@media(max-width:600px){.hero-image img{height:auto;aspect-ratio:1.45;object-position:50% 83%}}
@media(max-height:500px) and (min-width:601px){.hero-image img{height:clamp(110px,calc(100svh - 245px),240px)}}

@media(max-width:600px){.splash-emblem{width:100px;height:108px;margin-bottom:24px}.splash-name{font-size:34px}.splash-location{font-size:9px}.splash-rule{bottom:calc(32px + env(safe-area-inset-bottom,0px))}}
.mobile-to-top{display:none}
@media(max-width:900px){.mobile-to-top{display:grid;place-items:center;position:fixed;left:auto;right:max(18px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));width:48px;height:48px;z-index:70;border:1px solid #f6f2e960;border-radius:50%;background:#162b51;color:#f6f2e9;box-shadow:0 4px 18px #08142d26;font-size:24px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s}.mobile-to-top.visible{opacity:1;visibility:visible;transform:none}}

/* Header anchors form one group, separate from the catalogue action. */
@media(min-width:901px) and (min-height:501px){.site-header{display:grid;grid-template-columns:1fr auto 1fr}.site-header nav{justify-self:center;gap:clamp(18px,2.1vw,36px)}.header-actions{justify-self:end}.home-link{justify-self:start}}
@media(max-width:600px){.site-header nav{width:100%;gap:9px}}
@media(max-width:360px){.site-header nav{width:100%;gap:7px}}

/* Difference blending needs a DOM cursor rather than an OS cursor image. */
.cursor-dot{display:none}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .custom-cursor-active,.custom-cursor-active *{cursor:none!important}
 .cursor-dot,.cursor-dot.over{display:block;position:fixed;left:0;top:0;width:32px;height:44px;z-index:600;opacity:0;pointer-events:none;background:none;mix-blend-mode:difference;border-radius:0;transition:opacity .12s}
 .cursor-dot.active{opacity:1}
 .cursor-dot::before{content:'';position:absolute;inset:0;background:#fff;mask:url('/static/9ade4a02820649b6-tasting-glass-fill.svg') center/contain no-repeat;-webkit-mask:url('/static/9ade4a02820649b6-tasting-glass-fill.svg') center/contain no-repeat;transform-origin:50% 10%;transition:transform .22s cubic-bezier(.22,1,.36,1)}
 .cursor-dot.over::before{transform:scale(1.22)}
}

/* One vector arrow on every OS, including Safari's emoji-capable fonts. */
.external-arrow{display:inline-block;width:20px;height:20px;flex-shrink:0;background:currentColor;mask:url('/static/37293f537d28ccc0-external-arrow.svg') center/contain no-repeat;-webkit-mask:url('/static/37293f537d28ccc0-external-arrow.svg') center/contain no-repeat}
.partner-logo>.external-arrow{width:18px;height:18px;color:var(--blue)}
@media(hover:none),(pointer:coarse){.partner-logo>.external-arrow{opacity:.65}.partner-logo:active>.external-arrow{opacity:1}.partner-logo:active:after{transform:scaleX(1)}}
/* Reserve the film's dimensions before Safari has decoded metadata. */
.video-stage{position:relative;aspect-ratio:16/9;overflow:hidden}
.video-stage video{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain}

/* Touch logos open directly; hover-only affordances stay on desktop. */
@media(hover:none),(pointer:coarse){
 .partner-logo>.external-arrow{display:none!important}
 .partner-logo:after{display:none}
}

/* Mobile editorial rhythm: full / pair / full / pair, with aligned baselines. */
@media(max-width:600px){
 .experience-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,auto);gap:18px 14px;padding:24px var(--gutter) 56px}
 .experience-mosaic figure:nth-child(n){grid-column:auto;grid-row:auto;transform:none;margin:0;height:auto}
 .experience-mosaic figure:nth-child(1){grid-column:1/-1;grid-row:1}
 .experience-mosaic figure:nth-child(2){grid-column:1;grid-row:2}
 .experience-mosaic figure:nth-child(3){grid-column:2;grid-row:2}
 .experience-mosaic figure:nth-child(4){grid-column:1/-1;grid-row:3}
 .experience-mosaic figure:nth-child(5){grid-column:1;grid-row:4}
 .experience-mosaic figure:nth-child(6){grid-column:2;grid-row:4}
 .experience-mosaic img{aspect-ratio:1.12;object-fit:cover}
 .experience-mosaic figure:nth-child(1) img,.experience-mosaic figure:nth-child(4) img{aspect-ratio:1.65}
 .experience-mosaic figcaption,.experience-mosaic figure:nth-child(1) figcaption,.experience-mosaic figure:nth-child(6) figcaption{padding:30px 10px 10px;font-size:12px;line-height:1.3}
 .experience-mosaic figure:nth-child(1) figcaption,.experience-mosaic figure:nth-child(4) figcaption{padding:36px 14px 12px;font-size:14px}
}

@media(hover:none),(pointer:coarse){
 .brand-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;transform:none!important}
 .brand-slide{scroll-snap-stop:always}
 .brand-pin{height:clamp(330px,72svh,650px)}
}
.film-start{position:absolute;z-index:2;inset:50% auto auto 50%;transform:translate(-50%,-50%);padding:13px 24px;border:1px solid #f6f2e9a6;border-radius:30px;background:#162b51d9;color:#f6f2e9;min-height:48px;font-size:14px}
.film-start[hidden]{display:none}

/* Safari reload/toolbar protection: no page content can show outside the splash. */
html.splash-active,html.splash-active body{background:#162b51!important;overflow:hidden!important;overscroll-behavior:none}
html.splash-active body> :not(.brand-splash){visibility:hidden!important}
html.splash-active::before{content:'';position:fixed;inset:-200px -2px;z-index:499;background:#162b51;pointer-events:all}
@media(hover:none),(pointer:coarse){
 .splash-active .brand-splash{top:0;left:0;right:0;bottom:auto;width:100%;height:100vh;height:100dvh;min-height:100svh;animation:none;clip-path:none;isolation:isolate}
 .splash-active .brand-splash::before{content:'';position:absolute;inset:-200px -2px;background:#162b51;z-index:-1}
 .splash-content{position:relative;z-index:1}
}
