
:root{--wine:#22060c;--wine2:#4d1220;--champ:#d0b48b;--ivory:#f6f1ea;--paper:#efe7dc;--ink:#1d1715;--muted:#766a63;--line:rgba(29,23,21,.12);--shadow:0 30px 70px rgba(20,6,10,.18);--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'Manrope','Helvetica Neue',Arial,sans-serif;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);background:var(--ivory);color:var(--ink);overflow-x:hidden}a{color:inherit;text-decoration:none}img,video{display:block;width:100%;height:100%;object-fit:cover}button,input,textarea,select{font:inherit}button{cursor:pointer}.route{display:none;min-height:100vh}.route.active{display:block;animation:fade .7s ease both}@keyframes fade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.skip{position:fixed;left:12px;top:-120px;background:#fff;padding:10px 14px;z-index:9999}.skip:focus{top:12px}.container{width:min(var(--max),calc(100% - clamp(30px,7vw,100px)));margin:auto}.eyebrow{font-size:9px;letter-spacing:.22em;text-transform:uppercase;font-weight:600}.display{font-family:var(--serif);font-weight:400;letter-spacing:-.03em}header.site{position:fixed;inset:0 0 auto 0;height:84px;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,58px);color:var(--wine2);background:rgba(246,241,234,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:.35s}header.site.solid{background:rgba(246,241,234,.96);color:var(--ink);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:44px;height:56px;object-fit:contain;filter:none}header.site.solid .brand img{filter:none}.brand span{font-size:9px;letter-spacing:.19em;text-transform:uppercase;line-height:1.2}nav.desktop{display:flex;align-items:center;gap:clamp(14px,2vw,28px)}.nav-link{font-size:8.1px;letter-spacing:.16em;text-transform:uppercase;position:relative;padding:33px 0}.nav-link:after{content:'';position:absolute;left:0;right:100%;bottom:23px;height:1px;background:currentColor;transition:right .3s}.nav-link:hover:after,.nav-link.active:after{right:0}.cta{border:1px solid currentColor;padding:11px 16px;font-size:8.1px;letter-spacing:.16em;text-transform:uppercase}.menuBtn{display:none;border:0;background:transparent;color:inherit;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.drawer{position:fixed;inset:0;z-index:350;background:var(--wine);color:#fff;display:none;padding:110px 24px 30px}.drawer.open{display:flex;flex-direction:column}.drawer a{font:400 clamp(30.6px,9vw,55.8px)/1.12 var(--serif);padding:8px 0;border-bottom:1px solid rgba(255,255,255,.14)}.drawer button{position:absolute;top:24px;right:20px;border:0;background:transparent;color:#fff;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.intro{position:relative;min-height:100svh;background:#000;color:#fff;display:grid;place-items:center;overflow:hidden}.intro video{position:absolute;inset:0}.intro:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.14),rgba(0,0,0,0) 22%),linear-gradient(180deg,rgba(8,2,4,.35),rgba(8,2,4,.72))}.intro-panel{position:relative;z-index:2;text-align:center;padding:26px 28px;max-width:760px;background:linear-gradient(180deg,rgba(28,10,15,.12),rgba(28,10,15,.18));backdrop-filter:blur(2px)}.intro-panel img{width:min(200px,40vw);height:auto;margin:0 auto 18px;filter:brightness(0) invert(1);opacity:.92}.intro-panel p{font:400 clamp(25.2px,3.42vw,52.2px)/1.38 var(--serif);margin:0 auto 26px;color:rgba(255,250,245,.92)}.intro-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:12px;border:1px solid currentColor;padding:14px 18px;background:transparent;color:inherit;font-size:8.1px;letter-spacing:.18em;text-transform:uppercase;transition:.28s}.btn:hover{background:currentColor;color:var(--ivory)}.intro small{display:block;margin-top:22px;letter-spacing:.22em;text-transform:uppercase;color:#e6d6ca;font-size:9px}.soundNote{position:absolute;right:18px;bottom:18px;z-index:3;background:rgba(0,0,0,.38);padding:9px 12px;border:1px solid rgba(255,255,255,.24);font-size:8.1px;letter-spacing:.14em;text-transform:uppercase}.section{padding:clamp(72px,8vw,120px) 0}.about-hero{min-height:calc(100svh - 84px);display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.about-copy{padding:clamp(56px,7vw,88px) clamp(22px,5vw,76px) 42px;display:flex;flex-direction:column;justify-content:center}.about-copy h1{font-size:clamp(37.8px,5.04vw,82.8px);line-height:.88;margin:12px 0 18px;max-width:8.2em}.about-copy .lead{font:400 clamp(15.3px,1.305vw,21.6px)/1.42 var(--serif);max-width:760px;color:#4f4640;text-align:justify}.about-media{min-height:calc(100svh - 84px);background:var(--ivory);display:flex;align-items:center;justify-content:center;padding:28px}.about-media img{object-fit:contain;object-position:center center;border-radius:2px;max-width:100%;max-height:100%}.about-stats{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px}.stat{border-top:1px solid var(--line);padding-top:12px;min-width:150px}.stat strong{display:block;font:400 23.4px var(--serif)}.stat span{font-size:8.1px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);line-height:1.55}.founders-preview{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);box-shadow:var(--shadow)}.founder{background:var(--paper);display:grid;grid-template-columns:.84fr 1.16fr}.founder-card{min-height:420px;padding:44px}.founder-portrait{background:linear-gradient(160deg,var(--wine),#5a1524);display:grid;place-items:center;color:var(--champ);font:400 73.8px var(--serif);position:relative}.founder-portrait:after{content:'';position:absolute;inset:18px;border:1px solid rgba(208,180,139,.45)}.founder-card h2{font:400 39.6px/1 var(--serif);margin:12px 0 8px}.founder-card p{font-size:13.5px;line-height:1.7;color:#5f5550}.subcta{margin-top:30px}.work-preview{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}.work-preview h2{font-size:clamp(43.2px,5.4vw,81px);line-height:.88;margin:10px 0}.chip-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.chip{padding:9px 12px;background:#fff;border:1px solid var(--line);font-size:9px;letter-spacing:.14em;text-transform:uppercase}.clients-strip{background:#111;color:#efe9e2;padding:26px 0}.clients-track{display:flex;gap:18px;flex-wrap:wrap;justify-content:center}.client-pill{border:1px solid rgba(255,255,255,.18);padding:14px 18px;min-width:155px;text-align:center;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.awards-section{padding:52px 0 76px;background:var(--ivory)}.tickerWrap{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0}.ticker{display:flex;gap:12px;width:max-content;animation:slide 30s linear infinite}@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}.awardChip{border:1px solid var(--line);background:#fff;min-height:52px;padding:0 18px;display:flex;align-items:center;justify-content:center;font-size:9px;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,.04)}.journal-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.journal-card{background:#fff;box-shadow:var(--shadow)}.journal-card img{height:260px}.journal-card-copy{padding:22px}.journal-card h3{font:400 28.8px/1.04 var(--serif);margin:8px 0 10px}.journal-card .meta{font-size:8.1px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.concierge-box{background:linear-gradient(180deg,var(--wine),#3c0f18);color:#fff;padding:clamp(38px,5vw,60px);box-shadow:var(--shadow)}.concierge-box h2{font-size:clamp(45px,5.4vw,82.8px);line-height:.9;margin:12px 0 18px}.concierge-box p{font:400 19.8px/1.5 var(--serif);max-width:760px;color:#e9ddd2}.social-marquee{background:#100809;color:#fff;overflow:hidden;padding:18px 0}.social-track{display:flex;gap:14px;width:max-content;animation:slide 26s linear infinite}.socialLink{display:flex;align-items:center;gap:10px;padding:13px 16px;border:1px solid rgba(255,255,255,.18);font-size:9px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.pageHero{padding:130px 0 46px;background:var(--wine);color:#fff}.pageHero h1{font-size:clamp(48.6px,6.3vw,100.8px);line-height:.84;margin:8px 0 14px}.pageHero p{font:400 clamp(18px,1.8vw,27px)/1.45 var(--serif);max-width:820px;color:#e9ddd2}.workViewport{position:relative;min-height:calc(100svh - 84px);display:grid;grid-template-columns:120px 1fr 320px;gap:20px;padding:24px 0 20px;align-items:stretch}.categoryRail{display:flex;flex-direction:column;justify-content:center;gap:16px;align-items:flex-start}.railBtn{writing-mode:vertical-rl;transform:rotate(180deg);border:0;background:transparent;color:#867a72;font-size:10.8px;letter-spacing:.18em;text-transform:uppercase;padding:4px 0;transition:.28s}.railBtn.active{color:var(--ink)}.workHeroStage{position:relative;border-radius:2px;overflow:hidden;min-height:700px;background:#ddd;box-shadow:var(--shadow)}.workHeroStage img{transition:opacity .55s ease,transform .7s ease}.workHeroStage:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,8,10,.72),rgba(17,8,10,.14) 55%,rgba(17,8,10,.24)),linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.34))}.workHeroCopy{position:absolute;left:42px;bottom:42px;z-index:2;color:#fff;max-width:560px}.workHeroCopy h2{font-size:clamp(48.6px,5.4vw,100.8px);line-height:.83;margin:8px 0 14px}.workHeroCopy p{font:400 18px/1.6 var(--serif);color:#efe5db}.heroMeta{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.sidePanel{display:flex;flex-direction:column;justify-content:space-between;padding:12px 0}.sidePanel .desc{font-size:12.6px;line-height:1.8;color:#685e58}.miniStack{display:grid;gap:10px}.miniCard{display:grid;grid-template-columns:84px 1fr;gap:12px;padding:10px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.06);border:1px solid var(--line);cursor:pointer}.miniCard img{height:84px}.miniCard h4{font:400 19.8px/1 var(--serif);margin:4px 0 6px}.miniCard span{font-size:8.1px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.miniCard.active{outline:1px solid var(--champ)}.catalogueSection{padding:18px 0 120px}.catalogueLayout{display:grid;grid-template-columns:220px 1fr;gap:36px;align-items:start}.catalogueNav{position:sticky;top:100px;border-top:1px solid var(--line)}.catalogueNav button{width:100%;display:flex;justify-content:space-between;gap:10px;border:0;background:transparent;border-bottom:1px solid var(--line);padding:15px 0;color:#7c7169;text-align:left;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.catalogueNav button.active{color:var(--ink)}.catalogueNav button b{font:400 18px var(--serif);font-weight:400;color:var(--champ)}.catalogueDisplay{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}.catalogueMain{background:#fff;box-shadow:var(--shadow);overflow:hidden}.catalogueMain img{height:560px;transition:opacity .45s ease, transform .55s ease}.catalogueCopy{padding:26px 28px}.catalogueCopy h3{font:400 clamp(34.2px,3.6vw,57.6px)/.95 var(--serif);margin:8px 0 12px}.catalogueCopy p{font-size:13.5px;line-height:1.72;color:#5e544d}.thumbStrip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.thumb{border:0;background:#fff;padding:0;box-shadow:0 8px 22px rgba(0,0,0,.06);text-align:left}.thumb img{height:118px}.thumb span{display:block;padding:10px;font-size:9.9px;line-height:1.35}.thumb.active{outline:1px solid var(--champ)}.catalogueInfo{padding-top:10px}.catalogueInfo h4{font:400 30.6px/1 var(--serif);margin:0 0 12px}.catalogueInfo p{font-size:12.6px;line-height:1.72;color:#645a55}.catalogueTag{font-size:8.1px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.teamGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.teamCard{background:#fff;padding:34px}.teamCard h3{font:400 27px var(--serif);margin:8px 0 4px}.teamCard .role{font-size:8.1px;letter-spacing:.16em;text-transform:uppercase;color:#7b1d2e}.teamCard p{font-size:12.6px;line-height:1.68;color:#615751}.modal{position:fixed;inset:0;background:rgba(10,8,9,.78);display:none;align-items:center;justify-content:center;padding:24px;z-index:500}.modal.open{display:flex}.modalCard{background:#fff;max-width:620px;width:100%;padding:36px;position:relative;box-shadow:var(--shadow)}.modalCard h3{font:400 37.8px/1 var(--serif);margin:0 0 12px}.modalCard p{font-size:13.5px;line-height:1.75;color:#5f5650}.close{position:absolute;top:18px;right:18px;border:0;background:transparent;font-size:9px;letter-spacing:.14em;text-transform:uppercase}footer{background:#12090b;color:#d7cdc7;padding:50px 0 24px}.footerGrid{display:grid;grid-template-columns:1.2fr .8fr .9fr 1.1fr;gap:30px}.footerGrid img{width:72px;height:92px;object-fit:contain;filter:brightness(0) invert(1)}footer h4{font-size:8.1px;letter-spacing:.16em;text-transform:uppercase;color:#fff}footer a,footer p{display:block;font-size:11.7px;color:#9f948d;margin:8px 0}.footerBottom{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:16px;font-size:9.9px;color:#7d746e;display:flex;justify-content:space-between;gap:16px}@media(max-width:1080px){nav.desktop,.cta{display:none}.menuBtn{display:block}.about-hero,.work-preview,.journal-cards,.catalogueDisplay,.footerGrid{grid-template-columns:1fr 1fr}.workViewport{grid-template-columns:74px 1fr;gap:14px}.sidePanel{grid-column:1/-1;padding-top:0}.catalogueLayout{grid-template-columns:1fr}.catalogueNav{position:relative;top:auto;display:flex;gap:16px;overflow:auto;border-top:0;border-bottom:1px solid var(--line)}.catalogueNav button{width:auto;min-width:max-content;border:0;padding:10px 0}}@media(max-width:760px){header.site{height:70px;padding:0 14px}.brand span{display:none}.brand img{width:38px;height:48px}.intro-panel p{font-size:19.8px}.about-hero,.founders-preview,.founder,.work-preview,.journal-cards,.catalogueDisplay,.footerGrid{grid-template-columns:1fr}.about-media{min-height:360px;padding:16px}.founder-portrait{min-height:240px}.founder-card{min-height:auto}.workViewport{display:block;padding-top:12px}.categoryRail{display:flex;flex-direction:row;overflow:auto;gap:18px;padding:0 16px 12px}.railBtn{writing-mode:horizontal-tb;transform:none;min-width:max-content}.workHeroStage{min-height:520px;margin:0 16px}.workHeroCopy{left:20px;right:20px;bottom:24px}.workHeroCopy h2{font-size:43.2px}.sidePanel{padding:18px 16px 0}.catalogueSection{padding-top:34px}.catalogueDisplay{gap:18px}.catalogueMain img{height:320px}.thumbStrip{grid-template-columns:repeat(2,1fr)}.teamGrid{grid-template-columns:1fr}.clients-track{justify-content:flex-start;overflow:auto;flex-wrap:nowrap;padding:0 16px}.footerBottom{display:block}}
/* === WORK EXPERIENCE V3: FULL-SCREEN CATEGORY SHOWCASE + INTERNAL ALBUM CATALOGUE === */
.work-page-shell{background:#080808;color:#fff;min-height:100vh}
.work-showcase{position:relative;height:calc(100svh - 84px);min-height:620px;overflow:hidden;background:#050505}
.work-showcase-bg{position:absolute;inset:0;transition:opacity .55s ease,transform .85s cubic-bezier(.2,.75,.25,1);transform:scale(1.01)}
.work-showcase-bg.switching{opacity:.2;transform:scale(1.045)}
.work-showcase::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58) 0,rgba(0,0,0,.10) 42%,rgba(0,0,0,.12)),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.18) 60%,rgba(0,0,0,.48));pointer-events:none}
.work-category-panels{position:absolute;z-index:3;left:0;top:0;bottom:0;display:flex;align-items:stretch}
.work-category-panel{position:relative;width:72px;border:0;border-right:1px solid rgba(255,255,255,.34);background:rgba(0,0,0,.12);color:rgba(255,255,255,.62);padding:0;overflow:hidden;transition:width .42s cubic-bezier(.2,.75,.25,1),background .35s,color .35s}
.work-category-panel:first-child{border-left:1px solid rgba(255,255,255,.18)}
.work-category-panel:hover,.work-category-panel.active{width:88px;background:rgba(0,0,0,.34);color:#fff;backdrop-filter:blur(4px)}
.work-category-panel span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-90deg);font-size:clamp(15.3px,1.35vw,22.5px);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-weight:500}
.work-category-panel b{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);font:400 14.4px var(--serif);opacity:.74}
.work-showcase-copy{position:absolute;z-index:3;right:clamp(28px,5vw,78px);bottom:clamp(72px,11vh,120px);max-width:560px;text-align:right;text-shadow:0 3px 24px rgba(0,0,0,.5)}
.work-showcase-copy .eyebrow{color:#eee5dc}
.work-showcase-copy h1{font:400 clamp(55.8px,6.3vw,108px)/.82 var(--serif);margin:10px 0 13px}
.work-showcase-copy p{font:400 17.1px/1.55 var(--serif);margin:0;color:#f1e7de}
.work-gallery-entry{position:absolute;z-index:4;left:50%;bottom:28px;transform:translateX(-50%);background:#fff;color:#15110f;border:0;min-width:210px;padding:16px 24px;font-size:9px;letter-spacing:.13em;text-transform:uppercase;box-shadow:0 14px 34px rgba(0,0,0,.18);transition:transform .25s,background .25s}
.work-gallery-entry:hover{transform:translateX(-50%) translateY(-3px);background:var(--champ)}
.work-internal{display:none;background:#f6f2ec;color:var(--ink);min-height:100vh;padding-top:84px}
.work-internal.open{display:block;animation:workPageIn .65s ease both}
.work-showcase.hidden{display:none}
@keyframes workPageIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.work-internal-head{padding:38px clamp(20px,4vw,56px) 30px;border-bottom:1px solid var(--line);display:flex;align-items:flex-end;justify-content:space-between;gap:30px;background:var(--ivory)}
.work-internal-head h1{font:400 clamp(43.2px,5.4vw,82.8px)/.86 var(--serif);margin:8px 0 0}
.work-internal-head p{max-width:590px;color:var(--muted);font-size:12.6px;line-height:1.75;margin:0}
.work-back{border:1px solid var(--ink);background:transparent;padding:12px 15px;font-size:8.1px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.work-catalogue-body{display:grid;grid-template-columns:210px minmax(0,1fr);gap:44px;width:min(1440px,calc(100% - clamp(30px,6vw,90px)));margin:0 auto;padding:42px 0 110px}
.work-catalogue-sidebar{position:sticky;top:110px;align-self:start;border-top:1px solid var(--line)}
.work-side-category{display:flex;width:100%;justify-content:space-between;align-items:center;gap:14px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:15px 0;color:#83776f;text-align:left;font-size:9px;letter-spacing:.13em;text-transform:uppercase;transition:padding .25s,color .25s}
.work-side-category:hover{padding-left:7px;color:var(--ink)}
.work-side-category.active{color:var(--ink)}
.work-side-category b{font:400 17.1px var(--serif);color:var(--champ)}
.work-album-list{display:grid;gap:64px}
.work-album{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(260px,.82fr);gap:30px;align-items:start;padding-bottom:64px;border-bottom:1px solid var(--line)}
.work-album:last-child{border-bottom:0}
.work-album-visual{background:#ddd;overflow:hidden;box-shadow:0 16px 45px rgba(33,16,20,.11)}
.work-album-main{height:clamp(380px,49vw,630px);border:0;padding:0;background:#ddd;display:block;width:100%;overflow:hidden}
.work-album-main img{transition:opacity .36s ease,transform .55s ease}
.work-album-main:hover img{transform:scale(1.012)}
.work-album-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;background:#fff}
.work-album-thumb{height:95px;border:0;padding:0;background:#ddd;opacity:.68;transition:opacity .25s,transform .25s;overflow:hidden}
.work-album-thumb:hover,.work-album-thumb.active{opacity:1}
.work-album-thumb:hover{transform:translateY(-2px)}
.work-album-info{padding-top:8px}
.work-album-number{font:italic 17.1px var(--serif);color:var(--champ)}
.work-album-info h2{font:400 clamp(35.1px,3.6vw,59.4px)/.92 var(--serif);margin:12px 0 13px}
.work-album-subtitle{font-size:8.1px;letter-spacing:.16em;text-transform:uppercase;color:var(--wine2);margin-bottom:18px}
.work-album-info p{font-size:12.6px;line-height:1.75;color:#665c56;margin:0 0 22px}
.work-album-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid var(--line);padding-top:17px}
.work-album-meta span{font-size:8.1px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
@media(max-width:1020px){
 .work-category-panel{width:58px}.work-category-panel:hover,.work-category-panel.active{width:68px}
 .work-showcase-copy{max-width:460px}
 .work-catalogue-body{grid-template-columns:175px minmax(0,1fr);gap:26px}
 .work-album{grid-template-columns:1fr}
 .work-album-info{max-width:720px}
}
@media(max-width:720px){
 .work-showcase{height:calc(100svh - 70px);min-height:640px}
 .work-category-panels{left:0;right:0;top:auto;bottom:0;height:72px;width:100%}
 .work-category-panel,.work-category-panel:hover,.work-category-panel.active{width:auto;flex:1;border-top:1px solid rgba(255,255,255,.3);border-right:1px solid rgba(255,255,255,.28)}
 .work-category-panel span{transform:translate(-50%,-50%);font-size:9px;letter-spacing:.06em}
 .work-category-panel b{display:none}
 .work-showcase-copy{left:20px;right:20px;bottom:145px;text-align:left;max-width:none}
 .work-showcase-copy h1{font-size:clamp(46.8px,15.3vw,73.8px)}
 .work-showcase-copy p{font-size:14.4px;max-width:520px}
 .work-gallery-entry{bottom:87px;min-width:190px;padding:14px 17px}
 .work-internal{padding-top:70px}
 .work-internal-head{display:block;padding-top:28px}
 .work-internal-head .work-back{margin-top:20px}
 .work-catalogue-body{display:block;width:calc(100% - 32px);padding-top:20px}
 .work-catalogue-sidebar{position:relative;top:auto;display:flex;overflow:auto;gap:18px;border-top:0;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:28px}
 .work-side-category{width:auto;min-width:max-content;border:0;padding:8px 0}
 .work-side-category b{display:none}
 .work-album-list{gap:45px}
 .work-album{gap:18px;padding-bottom:45px}
 .work-album-main{height:360px}
 .work-album-thumbs{grid-template-columns:repeat(4,1fr)}
 .work-album-thumb{height:68px}
 .work-album-meta{grid-template-columns:1fr}
}


.home-work-scroll{position:relative;height:500vh;background:#050505}
.home-work-sticky{position:sticky;top:84px;height:calc(100svh - 84px);overflow:hidden}
.home-work-showcase{height:100%;min-height:0}
.home-work-showcase .work-showcase-copy h2{font:400 clamp(55.8px,6.3vw,108px)/.82 var(--serif);margin:10px 0 13px;color:#fff}
.home-work-showcase .work-category-panels{transition:transform .5s cubic-bezier(.2,.75,.25,1)}
.home-work-showcase .work-category-panel{will-change:width,background,color}
.home-work-showcase .work-category-panel.active{width:102px;background:rgba(0,0,0,.38)}
.home-work-scroll-guide{position:absolute;z-index:4;right:clamp(24px,4vw,58px);top:28px;color:#fff;display:flex;align-items:center;gap:12px;font-size:8.1px;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,.65)}
.home-work-scroll-guide i{display:block;width:70px;height:1px;background:rgba(255,255,255,.55);position:relative;overflow:hidden}
.home-work-scroll-guide i::after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;transform:scaleX(var(--work-progress,.05));transition:transform .3s ease}
.home-work-scroll.is-complete .home-work-scroll-guide{opacity:.65}
@media(max-width:760px){
  .home-work-scroll{height:420vh}
  .home-work-sticky{top:70px;height:calc(100svh - 70px)}
  .home-work-showcase .work-category-panels{left:0;right:0;top:auto;bottom:0;height:92px;display:flex;overflow:hidden;background:rgba(0,0,0,.38)}
  .home-work-showcase .work-category-panel,.home-work-showcase .work-category-panel:hover,.home-work-showcase .work-category-panel.active{width:20%;height:92px;border-right:1px solid rgba(255,255,255,.25);background:transparent;backdrop-filter:none}
  .home-work-showcase .work-category-panel span{transform:translate(-50%,-50%);font-size:9px;letter-spacing:.08em}
  .home-work-showcase .work-category-panel b{bottom:9px;font-size:10.8px}
  .home-work-showcase .work-category-panel.active{background:rgba(255,255,255,.14)}
  .home-work-showcase .work-showcase-copy{left:20px;right:20px;bottom:175px;text-align:left;max-width:none}
  .home-work-showcase .work-showcase-copy h2{font-size:clamp(45px,13.5vw,70.2px)}
  .home-work-showcase .work-showcase-copy p{font-size:14.4px;max-width:94%}
  .home-work-showcase .work-gallery-entry{bottom:110px}
  .home-work-scroll-guide{top:18px;right:17px}
  .home-work-scroll-guide span:first-child,.home-work-scroll-guide i{display:none}
}

/* Approved PDF comments: landing and About page */
.intro-panel{max-width:820px;text-align:center;display:flex;flex-direction:column;align-items:center;background:rgba(25,8,12,.10)}
.intro-panel img{width:min(205px,42vw);max-height:250px;object-fit:contain;margin:0 auto 18px;filter:none}
.intro-panel p{max-width:760px;text-align:center;margin-left:auto;margin-right:auto;font-size:clamp(20.7px,2.7vw,41.4px);line-height:1.3}
.intro-actions{justify-content:center}
.about-hero{height:calc(100svh - 84px);min-height:610px;overflow:hidden;grid-template-columns:1fr 1fr;background:var(--ivory)}
.about-copy{text-align:center;align-items:center;padding:38px clamp(28px,4.5vw,70px) 28px}
.about-copy h1{font-size:clamp(36px,4.14vw,64.8px);line-height:.9;max-width:9.5em;margin:10px auto 16px;text-align:center}
.about-copy .lead{font-size:clamp(14.4px,1.125vw,18px);line-height:1.5;text-align:center;max-width:620px;margin:0 auto}
.about-stats{width:100%;justify-content:center;gap:14px;margin-top:22px}
.stat{flex:1 1 150px;max-width:205px;text-align:center;min-width:0}
.stat strong{font-size:clamp(19.8px,1.8vw,27px);line-height:1.08}
.stat span{display:block;margin-top:5px}
.about-media{height:calc(100svh - 84px);min-height:610px;padding:34px;background:#eee7de}
.about-media img{width:100%;height:100%;object-fit:contain;object-position:center center}
.about-seo{background:#f8f4ee;border-top:1px solid var(--line)}
.about-seo-intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,6vw,90px);align-items:start;padding-bottom:70px;border-bottom:1px solid var(--line)}
.about-seo-intro h2{font-size:clamp(43.2px,5.4vw,82.8px);line-height:.9;margin:12px 0 0;max-width:9em}
.about-seo-opening p{font:400 clamp(16.2px,1.575vw,22.5px)/1.58 var(--serif);color:#4f4640;margin:0 0 18px}
.about-editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin:70px 0}
.about-story-block{background:var(--ivory);padding:clamp(34px,4.5vw,62px)}
.about-story-block.featured{background:var(--wine);color:#fff}
.about-number{display:block;font:italic 19.8px var(--serif);color:var(--champ);margin-bottom:35px}
.about-story-block h3{font:400 clamp(27.9px,3.24vw,48.6px)/1.02 var(--serif);margin:0 0 22px}
.about-story-block p{font-size:13.5px;line-height:1.78;color:var(--muted);margin:0 0 16px}
.about-story-block.featured p{color:#e7d9cf}
.service-spectrum{padding:70px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.service-spectrum>header{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-bottom:40px}
.service-spectrum>header h3{font-size:clamp(41.4px,5.13vw,75.6px);line-height:.9;margin:10px 0 0}
.service-spectrum>header p{font-size:14.4px;line-height:1.75;color:var(--muted)}
.service-spectrum-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.service-spectrum-grid article{background:#fff;padding:32px}
.service-spectrum-grid article>span{font:italic 18px var(--serif);color:var(--champ)}
.service-spectrum-grid h4{font:400 26.1px/1.05 var(--serif);margin:28px 0 14px}
.service-spectrum-grid p{font-size:12.6px;line-height:1.7;color:var(--muted)}
.service-spectrum blockquote{font:400 clamp(21.6px,2.7vw,37.8px)/1.28 var(--serif);max-width:1000px;margin:65px auto 0;text-align:center;color:#4d4240}
.venue-production{margin-top:70px}
.one-standard{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:75px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:start}
.one-standard h3{font-size:clamp(40.5px,4.95vw,72px);line-height:.9;margin:12px 0}
.one-standard p{font-size:14.4px;line-height:1.8;color:var(--muted)}
.why-vidira{padding:75px 0}
.why-vidira header{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:end;margin-bottom:35px}
.why-vidira h3{font-size:clamp(39.6px,4.5vw,67.5px);line-height:.9;margin:10px 0 0}
.why-vidira ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.why-vidira li{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;padding:20px 0;border-bottom:1px solid var(--line)}
.why-vidira li strong{font:400 24.3px var(--serif)}
.why-vidira li span{color:var(--muted);line-height:1.65}
.more-than-event{background:var(--wine);color:#fff;padding:clamp(45px,7vw,90px);text-align:center}
.more-than-event h3{font-size:clamp(43.2px,5.4vw,81px);line-height:.88;max-width:1000px;margin:12px auto 24px}
.more-than-event p{font:400 18px/1.55 var(--serif);max-width:850px;margin:0 auto 18px;color:#eaded4}
.more-than-event .btn{margin-top:18px}
@media(max-width:900px){
 .about-hero{height:auto;min-height:0;grid-template-columns:1fr;overflow:visible;padding-top:70px}
 .about-copy{min-height:auto;padding:55px 24px 42px}
 .about-media{height:55svh;min-height:360px;padding:18px}
 .about-seo-intro,.service-spectrum>header,.one-standard,.why-vidira header{grid-template-columns:1fr;gap:20px}
 .about-editorial-grid,.service-spectrum-grid{grid-template-columns:1fr}
 .why-vidira li{grid-template-columns:1fr;gap:7px}
}
@media(max-height:760px) and (min-width:901px){
 .about-copy h1{font-size:clamp(34.2px,3.69vw,54.9px)}
 .about-copy .lead{font-size:14.4px;line-height:1.4}
 .about-stats{margin-top:15px}
 .about-media,.about-hero{min-height:560px}
}

.faq-section{padding:0 0 clamp(80px,9vw,130px);background:var(--ivory)}
.faq-shell{width:min(1120px,calc(100% - clamp(30px,7vw,100px)));margin:0 auto;border-top:1px solid var(--line);padding-top:clamp(54px,6vw,82px)}
.faq-heading{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,90px);align-items:end;margin-bottom:38px}
.faq-heading h2{font:400 clamp(43.2px,5.85vw,86.4px)/.9 var(--serif);letter-spacing:-.03em;margin:10px 0 0}
.faq-heading p{font:400 clamp(16.2px,1.53vw,22.5px)/1.55 var(--serif);color:var(--muted);max-width:670px;margin:0}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{list-style:none;display:grid;grid-template-columns:1fr 42px;gap:20px;align-items:center;padding:24px 0;cursor:pointer;font:400 clamp(20.7px,2.16vw,32.4px)/1.15 var(--serif)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-icon{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font:300 18px/1 var(--sans);transition:transform .3s,background .3s,color .3s}
.faq-item[open] .faq-icon{transform:rotate(45deg);background:var(--wine);color:#fff;border-color:var(--wine)}
.faq-answer{padding:0 64px 28px 0;max-width:920px;color:var(--muted);font-size:13.5px;line-height:1.8}
.faq-contact{margin-top:38px;padding:28px 32px;background:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:25px}
.faq-contact p{font:400 clamp(18.9px,1.8vw,26.1px)/1.3 var(--serif);margin:0;max-width:680px}
@media(max-width:760px){.faq-heading{grid-template-columns:1fr;gap:15px}.faq-item summary{grid-template-columns:1fr 34px;padding:20px 0;font-size:20.7px}.faq-answer{padding-right:0}.faq-contact{display:block;padding:24px}.faq-contact .btn{margin-top:18px}}

/* Testimonials */
.testimonials-route{background:linear-gradient(180deg,var(--ivory) 0%,#f7f1e8 38%,#ede1d3 100%)}
.testimonials-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:22px;align-items:start}
.testimonial-card{grid-column:span 4;background:rgba(255,255,255,.72);backdrop-filter:blur(12px);border:1px solid rgba(34,6,12,.08);border-radius:26px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:100%}
.testimonial-card.featured{grid-column:span 6}
.testimonial-image-wrap{position:relative;padding:16px 16px 0}
.testimonial-image-wrap::before{content:'';position:absolute;inset:16px 16px 0;background:linear-gradient(180deg,rgba(77,18,32,.14),rgba(34,6,12,.05));border-radius:22px;pointer-events:none}
.testimonial-image{display:block;width:100%;height:360px;object-fit:cover;object-position:top center;border-radius:22px;border:1px solid rgba(34,6,12,.1);cursor:pointer;background:#fff}
.testimonial-card.featured .testimonial-image{height:430px}
.testimonial-copy{padding:18px 20px 22px}
.testimonial-copy h3{margin:0 0 4px;font:600 0.9rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--wine2)}
.testimonial-copy .meta{display:block;color:var(--muted);font:.82rem/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.testimonial-copy blockquote{margin:0;color:var(--ink);font:400 1.044rem/1.72 var(--serif)}
.testimonial-copy blockquote strong{color:var(--wine2)}
.testimonial-note{margin-top:14px;padding-top:14px;border-top:1px solid rgba(34,6,12,.08);display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--muted);font:.82rem/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.testimonial-tag{display:inline-flex;align-items:center;border:1px solid rgba(77,18,32,.12);border-radius:999px;padding:8px 12px;background:rgba(255,255,255,.65);color:var(--wine2)}
.testimonial-gallery-shell{margin-top:52px;padding:34px;border-radius:30px;background:linear-gradient(180deg,rgba(77,18,32,.98),rgba(34,6,12,1));box-shadow:var(--shadow);color:#fff}
.testimonial-gallery-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}
.testimonial-gallery-head p{max-width:740px;color:rgba(255,255,255,.72);margin:0}
.testimonial-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.testimonial-shot{position:relative;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);padding:10px;box-shadow:0 16px 40px rgba(0,0,0,.22)}
.testimonial-shot::after{content:'Tap to enlarge';position:absolute;left:22px;bottom:20px;color:#fff;background:rgba(0,0,0,.48);border:1px solid rgba(255,255,255,.2);padding:8px 12px;border-radius:999px;font:.72rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:.25s ease}
.testimonial-shot:hover::after{opacity:1;transform:translateY(0)}
.testimonial-shot img{display:block;width:100%;height:320px;object-fit:cover;object-position:top center;border-radius:16px;cursor:pointer;filter:saturate(.95) contrast(1.02)}
.testimonial-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:26px}
.testimonial-stat{padding:18px 16px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.testimonial-stat strong{display:block;color:var(--champ);font:400 clamp(1.395rem,1.8vw,1.8rem)/1 var(--serif);margin-bottom:10px}
.testimonial-stat span{display:block;color:rgba(255,255,255,.74);font:.85rem/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.testimonial-modal{position:fixed;inset:0;background:rgba(14,6,8,.84);display:flex;align-items:center;justify-content:center;padding:34px;z-index:10000;opacity:0;pointer-events:none;transition:.3s ease;backdrop-filter:blur(12px)}
.testimonial-modal.open{opacity:1;pointer-events:auto}
.testimonial-modal-inner{position:relative;max-width:min(1200px,92vw);max-height:88vh;width:auto}
.testimonial-modal img{display:block;max-width:100%;max-height:88vh;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.34)}
.testimonial-modal button{position:absolute;top:14px;right:14px;border:none;background:rgba(255,255,255,.92);color:var(--wine);width:44px;height:44px;border-radius:50%;font:500 1.125rem/1 var(--sans);cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.2)}
.routeCtaBand{margin-top:48px;padding:22px 24px;border-radius:24px;border:1px solid rgba(34,6,12,.1);background:rgba(255,255,255,.65);display:flex;align-items:center;justify-content:space-between;gap:18px}
.routeCtaBand p{margin:0;color:var(--muted)}
@media (max-width:1100px){.testimonial-card,.testimonial-card.featured{grid-column:span 6}.testimonial-wall{grid-template-columns:repeat(3,1fr)}.testimonial-stats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){.testimonials-grid{display:flex;flex-direction:column}.testimonial-card,.testimonial-card.featured{grid-column:auto}.testimonial-gallery-shell{padding:24px}.testimonial-gallery-head{display:block}.testimonial-wall{grid-template-columns:repeat(2,1fr)}.testimonial-shot img{height:240px}.testimonial-stats{grid-template-columns:1fr}.routeCtaBand{flex-direction:column;align-items:flex-start}}
@media (max-width:520px){.testimonial-wall{grid-template-columns:1fr}.testimonial-image,.testimonial-card.featured .testimonial-image{height:300px}}

/* === FINAL SAFARI, TYPE, TRANSITION, FOOTER & SCROLL-SPY REFINEMENTS === */
video::-webkit-media-controls,
video::-webkit-media-controls-panel,
video::-webkit-media-controls-play-button,
video::-webkit-media-controls-start-playback-button{display:none;-webkit-appearance:none;opacity:0;pointer-events:none}
#introVideo{pointer-events:none;width:100%;height:100%;object-fit:cover;background:#080506}

/* Centre the brand block in the footer while keeping the remaining columns structured. */
.footerGrid>div:first-child{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center}
.footerGrid>div:first-child img{margin:0 auto 16px;display:block}
.footerGrid>div:first-child p{max-width:390px;margin-left:auto;margin-right:auto}

/* More tactile active-state language in the primary navigation. */
.nav-link.active{color:var(--wine2);font-weight:700}
.nav-link.active::before{content:'';position:absolute;left:50%;bottom:17px;width:5px;height:5px;border-radius:50%;background:var(--wine2);transform:translateX(-50%);box-shadow:0 0 0 5px rgba(77,18,32,.08)}
.nav-link.active::after{right:0}

/* Interactive internal-page transition. */
.route-transition{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;background:var(--wine);color:#fff;clip-path:inset(100% 0 0 0);pointer-events:none;transition:clip-path .54s cubic-bezier(.72,0,.28,1)}
.route-transition.is-entering{clip-path:inset(0 0 0 0)}
.route-transition.is-leaving{clip-path:inset(0 0 100% 0)}
.route-transition-inner{display:flex;flex-direction:column;align-items:center;gap:14px;opacity:0;transform:translateY(16px);transition:opacity .28s ease .12s,transform .35s ease .12s}
.route-transition.is-entering .route-transition-inner{opacity:1;transform:none}
.route-transition-inner img{width:86px;height:112px;object-fit:contain;filter:brightness(0) invert(1)}
.route-transition-inner span{font-size:7.2px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.78)}
.route{will-change:opacity,transform}
.route.active{animation:vidiraRouteArrival .74s cubic-bezier(.2,.72,.28,1) both}
@keyframes vidiraRouteArrival{0%{opacity:0;transform:translateY(18px) scale(.995)}100%{opacity:1;transform:none}}

/* The main-page scroll spy keeps the current chapter unmistakable. */
header.site .nav-link.scroll-active{color:var(--wine2);font-weight:700}
header.site .nav-link.scroll-active::after{right:0;height:2px}
header.site .nav-link.scroll-active::before{content:'';position:absolute;left:50%;bottom:17px;width:5px;height:5px;border-radius:50%;background:var(--wine2);transform:translateX(-50%);box-shadow:0 0 0 5px rgba(77,18,32,.08)}

@media(max-width:760px){
  .route-transition-inner img{width:70px;height:92px}
  .footerGrid>div:first-child{grid-column:1/-1}
}



/* Final architecture update: one-screen philosophy, hover-only collections, restored sound */
.philosophy-read-more{margin-top:20px;align-self:center;padding:12px 16px;font-size:7.2px}
.philosophy-detail-hero{min-height:58svh;display:flex;align-items:flex-end}
.philosophy-detail-hero .container{padding-bottom:20px}
.philosophy-back{margin-top:24px;color:#fff}

.intro-sound-toggle{
  position:absolute;z-index:8;right:clamp(16px,3vw,36px);top:clamp(16px,3vw,30px);
  border:1px solid rgba(255,255,255,.55);background:rgba(20,7,11,.34);color:#fff;
  padding:10px 13px;font-size:8.1px;letter-spacing:.16em;text-transform:uppercase;
  backdrop-filter:blur(10px);transition:.3s
}
.intro-sound-toggle:hover{background:#fff;color:#2a070d}

/* Collections becomes a normal one-screen section; no scroll capture or sticky hold */
.home-work-scroll{
  height:calc(100svh - 84px);
  min-height:640px;
  position:relative;
  overflow:hidden;
}
.home-work-sticky{
  position:relative;top:auto;
  height:100%;min-height:0;overflow:hidden
}
.home-work-scroll-guide span:first-child{white-space:nowrap}
.home-work-scroll-guide i{display:none}
.home-work-showcase .work-category-panels{transform:none}
.home-work-showcase .work-category-panel{
  transition:width .45s cubic-bezier(.2,.75,.25,1),background .35s,transform .45s
}
.home-work-showcase .work-category-panel.active{
  transform:translateX(16px);
  background:rgba(0,0,0,.42)
}

@media(max-width:760px){
  .home-work-scroll{height:calc(100svh - 70px);min-height:620px}
  .home-work-sticky{height:100%}
  .home-work-showcase .work-category-panel.active{transform:translateY(-6px)}
  .philosophy-read-more{margin-top:14px}
  .intro-sound-toggle{top:14px;right:14px}
}



#introVideo{background:#10090b;opacity:1;transition:opacity .45s ease}
#introVideo.video-loading{opacity:.35}
.intro-sound-toggle.needs-play{background:#fff;color:#2a070d;border-color:#fff;animation:videoPulse 1.8s ease-in-out infinite}
@keyframes videoPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.15)}50%{box-shadow:0 0 0 12px rgba(255,255,255,0)}}



/* Final landing, founders, journal and testimonial refinement */
.intro::after{background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.06),rgba(0,0,0,0) 28%),linear-gradient(180deg,rgba(8,2,4,.12),rgba(8,2,4,.34))}
.intro-panel{background:rgba(34,6,12,.025);backdrop-filter:blur(.5px);-webkit-backdrop-filter:blur(.5px);box-shadow:none;border:0}
.intro-panel.intro-delayed{opacity:0;transform:translateY(18px);transition:opacity 1.15s ease,transform 1.15s ease}
.intro-panel.intro-delayed.intro-ready{opacity:1;transform:none}
.intro-sound-toggle{opacity:0;transition:opacity .8s ease,background .25s ease,color .25s ease;z-index:9}
.intro-sound-toggle.intro-ready{opacity:1}
.intro-sound-toggle.needs-play{animation:none;background:rgba(20,8,12,.48);color:#fff;border-color:rgba(255,255,255,.4)}
#introVideo.video-loading{opacity:1}
.founder-photo-frame{min-height:420px;overflow:hidden;background:linear-gradient(145deg,#2b080f,#5d1625);position:relative}
.founder-photo-placeholder{position:absolute;inset:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;border:1px solid rgba(208,180,139,.34);color:rgba(246,241,234,.82);text-align:center;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
.founder-photo-icon{font:400 4.32rem/1 var(--serif);color:var(--champ);opacity:.9}
.journal-card[data-journal-article]{cursor:pointer;transition:transform .35s ease,box-shadow .35s ease}
.journal-card[data-journal-article]:hover{transform:translateY(-7px);box-shadow:0 32px 72px rgba(34,6,12,.18)}
.journal-read-link{display:inline-flex;margin-top:14px;color:var(--wine2);font:.75rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.journal-reader{position:fixed;inset:0;z-index:15000;display:flex;justify-content:center;align-items:flex-start;padding:5vh 24px;background:rgba(16,6,9,.88);backdrop-filter:blur(14px);opacity:0;pointer-events:none;overflow:auto;transition:opacity .3s ease}
.journal-reader.open{opacity:1;pointer-events:auto}
.journal-reader-sheet{position:relative;width:min(920px,100%);padding:clamp(34px,6vw,80px);background:var(--ivory);box-shadow:0 34px 90px rgba(0,0,0,.36)}
.journal-reader-sheet h2{font-size:clamp(2.25rem,4.5vw,4.77rem);line-height:.93;margin:13px 0 28px}
.journal-reader-body{font:400 clamp(0.954rem,1.35vw,1.125rem)/1.78 var(--serif);color:#514741;margin-bottom:32px}
.journal-reader-body h3{font:400 1.53rem/1.2 var(--serif);margin:34px 0 12px;color:var(--wine2)}
.journal-reader-close{position:absolute;right:20px;top:18px;border:0;background:transparent;color:var(--wine2);font:.75rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.home-testimonial-preview{padding:clamp(76px,8vw,115px) 0;background:linear-gradient(180deg,#f4eee6,#eaded1);min-height:560px;overflow:hidden}
.home-testimonial-head{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:end;margin-bottom:34px}
.home-testimonial-head h2{font-size:clamp(2.646rem,5.39vw,5.67rem);line-height:.9;margin:12px 0 0}
.home-testimonial-head p{margin:0;color:var(--muted);font:400 1.058rem/1.68 var(--serif)}
.home-testimonial-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.home-testimonial-card{display:flex;flex-direction:column;min-height:405px;background:rgba(255,255,255,.76);border:1px solid rgba(34,6,12,.08);box-shadow:0 15px 42px rgba(34,6,12,.09);overflow:hidden;transition:transform .35s ease,box-shadow .35s ease;border-radius:28px}
.home-testimonial-card:hover{transform:translateY(-8px);box-shadow:0 28px 60px rgba(34,6,12,.15)}
.home-testimonial-card img{width:100%;height:155px;object-fit:cover;object-position:top center;filter:saturate(.78) sepia(.05)}.home-testimonial-arch{padding:18px 18px 6px}.home-testimonial-arch svg{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 14px 22px rgba(34,6,12,.08))}.home-testimonial-arch .arch-fill{fill:rgba(255,255,255,.58)}.home-testimonial-arch .arch-stroke{fill:none;stroke:rgba(126,81,90,.62);stroke-width:3.4;stroke-linejoin:round}
.home-testimonial-card-body{padding:14px 21px 24px}
.home-testimonial-card-body h3{margin:0;font:600 .8rem/1.3 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--wine2)}
.home-testimonial-card-body>span{display:block;margin:7px 0 12px;color:var(--muted);font:.715rem/1.45 var(--sans);letter-spacing:.09em;text-transform:uppercase}
.home-testimonial-card blockquote{margin:0;font:400 .945rem/1.68 var(--serif);color:#4f4640;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.home-testimonial-cta{display:flex;justify-content:flex-end;margin-top:28px}
.testimonials-route .pageHero{padding-top:120px;padding-bottom:55px}
.testimonials-route .pageHero h1{font-size:clamp(2.52rem,5.04vw,5.67rem);line-height:.9;max-width:900px}
.testimonials-route .pageHero p{font-size:clamp(0.945rem,1.395vw,1.215rem);line-height:1.55;max-width:760px}
.testimonials-route .section{padding-top:72px}
.testimonials-grid{gap:18px}
.testimonial-card{border-radius:18px}
.testimonial-image-wrap{padding:12px 12px 0}
.testimonial-image{height:290px;border-radius:14px}
.testimonial-card.featured .testimonial-image{height:330px}
.testimonial-copy{padding:17px 18px 20px}
.testimonial-copy h3{font-size:.78rem}
.testimonial-copy .meta{font-size:.68rem;margin-bottom:9px}
.testimonial-copy blockquote{font-size:0.9rem;line-height:1.58}
.testimonial-note{font-size:.65rem;padding-top:11px;margin-top:11px}
.testimonial-tag{padding:6px 10px}
.testimonial-gallery-shell{margin-top:42px;padding:28px;border-radius:22px}
.testimonial-gallery-head h2{font-size:clamp(1.8rem,3.33vw,3.15rem);line-height:.95}
.testimonial-gallery-head p{font-size:.93rem;line-height:1.6}
.testimonial-shot{border-radius:15px;padding:7px}
.testimonial-shot img{height:270px;border-radius:10px;cursor:zoom-in}
.testimonial-video-library{margin:44px 0;padding:34px;border:1px solid rgba(34,6,12,.1);background:#f3ece3}
.testimonial-video-head{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:end;margin-bottom:25px}
.testimonial-video-head h2{font-size:clamp(1.98rem,3.6vw,3.78rem);line-height:.93;margin:10px 0 0}
.testimonial-video-head p{margin:0;color:var(--muted);font:400 0.945rem/1.65 var(--serif)}
.testimonial-video-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.testimonial-video-card{position:relative;background:#21070d;color:#fff;min-height:390px;overflow:hidden}
.testimonial-video-card video{position:absolute;inset:0;width:100%;height:250px;object-fit:cover;background:#12070a;z-index:2}
.testimonial-video-poster{height:250px;display:grid;place-items:center;background:radial-gradient(circle at 50% 30%,#6b2031,#21070d 70%);color:rgba(255,255,255,.64);font:.72rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.testimonial-video-info{padding:20px}
.testimonial-video-info h3{font:400 1.62rem/1 var(--serif);margin:0 0 9px}
.testimonial-video-info p{font-size:.86rem;color:rgba(255,255,255,.66);line-height:1.55}
.testimonial-video-upload{display:inline-flex;margin-top:8px;border:1px solid rgba(255,255,255,.35);padding:10px 13px;font:.68rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.testimonial-video-upload input{display:none}
.testimonial-modal{z-index:20000;cursor:zoom-out}
.testimonial-modal-inner{display:flex;align-items:center;justify-content:center}
.testimonial-modal img{width:auto;height:auto;max-width:92vw;max-height:88vh;object-fit:contain;background:#fff}
@media(max-width:1000px){.home-testimonial-track{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.home-testimonial-head,.testimonial-video-head{grid-template-columns:1fr;gap:15px}.home-testimonial-track{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:15px}.home-testimonial-card{min-width:82vw;scroll-snap-align:start}.home-testimonial-arch{padding:16px 16px 4px}.testimonial-video-grid{grid-template-columns:1fr}.testimonials-route .pageHero h1{font-size:2.88rem}.testimonial-gallery-shell{padding:20px}.founder-photo-frame{min-height:300px}}



/* Landing logo retains the supplied arch and floral artwork with no backdrop. */
#route-intro .intro-panel img{width:min(228px,44vw);max-height:286px;object-fit:contain;filter:none}

/* FAQ: calmer, smaller and justified. */
.faq-heading{grid-template-columns:.72fr 1.28fr;align-items:start}
.faq-heading h2{font-size:clamp(32.4px,3.825vw,55.8px);line-height:.98;max-width:9em}
.faq-heading p{font-size:clamp(13.5px,1.125vw,17.1px);line-height:1.7;text-align:justify;max-width:720px}
.faq-item summary{font-size:clamp(15.3px,1.305vw,19.8px);line-height:1.35;padding:20px 0;letter-spacing:-.01em}
.faq-answer{font-size:12.6px;line-height:1.85;text-align:justify;max-width:980px;padding-bottom:25px}
.faq-contact p{font-size:clamp(15.3px,1.305vw,19.8px);line-height:1.5;text-align:justify}

/* Testimonials: every message card follows one systematic editorial scale. */
.testimonials-route .pageHero h1{font-size:clamp(37.8px,4.86vw,70.2px);line-height:.94}
.testimonials-route .pageHero p{font-size:clamp(15.3px,1.35vw,19.8px);line-height:1.6;max-width:820px}
.testimonials-grid{grid-template-columns:repeat(12,1fr);gap:20px}
.testimonial-card,.testimonial-card.featured{grid-column:span 4;border-radius:22px;box-shadow:0 18px 44px rgba(31,10,14,.11)}
.testimonial-card.featured .testimonial-image,.testimonial-image{height:330px;object-fit:cover;object-position:top center;border-radius:17px}
.testimonial-image-wrap{padding:13px 13px 0}
.testimonial-image-wrap::before{inset:13px 13px 0;border-radius:17px}
.testimonial-copy{padding:16px 18px 19px}
.testimonial-copy h3{font-size:.82rem;line-height:1.25;letter-spacing:.13em}
.testimonial-copy .meta{font-size:.68rem;line-height:1.45;margin-bottom:9px}
.testimonial-copy blockquote{font-size:0.9rem;line-height:1.62}
.testimonial-note{font-size:.65rem;line-height:1.35;margin-top:12px;padding-top:12px}
.testimonial-tag{padding:7px 10px}
.testimonial-gallery-head h2{font-size:clamp(28.8px,3.33vw,46.8px);line-height:1}
.testimonial-gallery-head p{font-size:12.6px;line-height:1.75;text-align:justify}

/* Enlarged testimonial viewer: always-visible close and clear outside-click target. */
.testimonial-modal{cursor:zoom-out;padding:48px}
.testimonial-modal-inner{cursor:default;position:relative}
.testimonial-modal button,#testimonialModalClose{display:grid;place-items:center;position:absolute;top:-18px;right:-18px;width:48px;height:48px;border:2px solid #fff;background:var(--wine);color:#fff;border-radius:50%;z-index:20;font-size:24.3px;line-height:1;box-shadow:0 12px 32px rgba(0,0,0,.35)}
.testimonial-modal img{cursor:default}

@media(max-width:1100px){
  .testimonial-card,.testimonial-card.featured{grid-column:span 6}
}
@media(max-width:760px){
  .faq-heading{grid-template-columns:1fr}
  .faq-heading h2{font-size:34.2px}
  .faq-item summary{font-size:16.2px}
  .testimonial-card,.testimonial-card.featured{grid-column:1/-1}
  .testimonial-card.featured .testimonial-image,.testimonial-image{height:300px}
  .testimonial-modal{padding:30px 18px}
  .testimonial-modal button,#testimonialModalClose{top:-14px;right:-8px}
}


/* VIDIRA FINAL PRODUCTION REFINEMENT */
:root{--header-h:84px;--max:1480px;--ease:cubic-bezier(.22,.72,.18,1)}
html{font-size:15px;scroll-padding-top:var(--header-h);-webkit-text-size-adjust:100%}
body{min-width:320px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.route-changing{overflow:hidden}
::selection{background:var(--wine2);color:#fff}
:focus-visible{outline:2px solid var(--champ);outline-offset:4px}
.container{width:min(var(--max),calc(100% - clamp(32px,6vw,112px)))}
header.site{height:var(--header-h);padding-inline:clamp(20px,4vw,64px);box-shadow:0 1px 0 rgba(29,23,21,.08)}
header.site .brand img{width:48px;height:62px;object-fit:contain;filter:none}
header.site .brand{min-width:210px}
.nav-link,.cta{font-size:.63rem;letter-spacing:.16em}
.nav-link.scroll-active,.nav-link.active{color:var(--wine2);font-weight:700}
.nav-link.scroll-active::after,.nav-link.active::after{right:0}
.route{min-height:100dvh}
.route.active{animation:routeEnter .72s var(--ease) both}
@keyframes routeEnter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.route-transition{display:block;position:fixed;inset:0;z-index:9998;background:var(--wine);transform:translateY(102%);pointer-events:none;visibility:hidden}
.route-transition.is-active{visibility:visible;animation:routeCurtain .82s var(--ease) both}
.route-transition-inner{height:100%;display:grid;place-items:center}
.route-transition img{width:clamp(110px,12vw,190px);height:auto;filter:none;opacity:.94}
@keyframes routeCurtain{0%{transform:translateY(102%)}45%,58%{transform:translateY(0)}100%{transform:translateY(-102%)}}

/* Landing */
.intro{min-height:100svh;min-height:100dvh;background:#10090b}
#introVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;background:#10090b}
.intro::after{background:linear-gradient(180deg,rgba(12,3,6,.16),rgba(12,3,6,.38))}
.intro-panel{max-width:820px;padding:clamp(18px,3vw,34px);background:rgba(34,6,12,.035);backdrop-filter:blur(.35px);-webkit-backdrop-filter:blur(.35px)}
.intro-panel img{width:min(245px,45vw);max-height:310px}
.intro-panel p{font-size:clamp(1.35rem,2.55vw,2.65rem);line-height:1.28;text-shadow:0 2px 18px rgba(0,0,0,.55)}
.intro-panel small{font-size:.62rem;line-height:1.5}
.intro-panel.intro-delayed{opacity:0;transform:translateY(18px)}
.intro-panel.intro-ready{opacity:1;transform:none;transition:opacity 1.05s ease,transform 1.05s var(--ease)}
.intro-sound-toggle{top:auto;right:clamp(16px,3vw,36px);bottom:clamp(16px,3vw,30px);opacity:1;border-radius:999px;padding:11px 15px;background:rgba(18,7,10,.5);font-size:.62rem;min-width:92px}
.intro-sound-toggle:hover{background:#fff;color:var(--wine)}

/* Philosophy: exactly one desktop screen, naturally flowing on smaller devices */
.about-hero{height:calc(100dvh - var(--header-h));min-height:650px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden}
.about-copy{padding:clamp(56px,6vw,96px);justify-content:center}
.about-copy h1{font-size:clamp(3.25rem,5.7vw,6.6rem);line-height:.87;max-width:8.2em}
.about-copy .lead{font-size:clamp(1.08rem,1.45vw,1.5rem);line-height:1.55;text-align:justify;max-width:700px}
.about-media{min-height:0;height:100%;padding:clamp(18px,2vw,32px)}
.about-media img{object-fit:contain;object-position:center}
.about-stats{gap:clamp(12px,1.8vw,24px)}
.stat{min-width:130px;flex:1}
.stat strong{font-size:1.5rem}
.stat span{font-size:.62rem;line-height:1.5}

/* Founder presentation - no fake portrait photography */
.founders-preview{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:28px;overflow:hidden}
.founder{grid-template-columns:minmax(210px,.75fr) minmax(0,1.25fr)}
.founder-photo-frame{min-height:390px;background:linear-gradient(155deg,#2a0710,#551320)}
.founder-signature-panel{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;color:#fff;position:relative;isolation:isolate}
.founder-signature-panel::before{content:'';position:absolute;inset:24px;border:1px solid rgba(208,180,139,.45);z-index:-1}
.founder-signature-panel span{font-size:.65rem;letter-spacing:.22em;text-transform:uppercase;color:var(--champ);margin-bottom:24px}
.founder-signature-panel strong{font:400 clamp(2.1rem,3vw,3.8rem)/.92 var(--serif);max-width:6em}
.founder-signature-panel em{font-style:normal;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;margin-top:18px;color:rgba(255,255,255,.72)}
.founder-card{padding:clamp(30px,4vw,54px);display:flex;flex-direction:column;justify-content:center}
.founder-card h2{font-size:clamp(2rem,3vw,3.1rem)}

/* Collections: hover/focus/click only, never scroll-trapped */
.home-work-scroll{height:calc(100dvh - var(--header-h));min-height:650px;overflow:hidden}
.home-work-sticky{position:relative;top:auto;height:100%}
.home-work-scroll-guide span:first-child{font-size:.62rem}
.home-work-showcase .work-category-panels{transform:none}
.home-work-showcase .work-category-panel.active{transform:translateX(10px)}
.work-showcase-copy{max-width:min(650px,50vw)}
.work-showcase-copy p{line-height:1.55}
.work-gallery-entry{transition:transform .3s var(--ease),background .3s,color .3s}
.work-gallery-entry:hover{transform:translateY(-3px)}
.work-internal{min-height:100dvh}
.work-album-card,.work-album-image{border-radius:20px}

/* Journal */
.journal-card{border-radius:22px;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s}
.journal-card:hover{transform:translateY(-7px);box-shadow:0 26px 55px rgba(34,6,12,.14)}
.journal-card:focus-visible{transform:translateY(-4px)}
.journal-reader{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.journal-reader-sheet{border-radius:28px;max-width:900px}
.journal-reader-body{text-align:justify}

/* Home testimonial preview */
.home-testimonial-preview{min-height:clamp(470px,52vh,590px);padding:clamp(60px,7vw,96px) 0;overflow:hidden}
.home-testimonial-preview .home-testimonial-grid{align-items:stretch}
.home-testimonial-card{border-radius:22px;overflow:hidden;min-height:310px}

/* Testimonials: systematic, calmer and consistent */
.testimonials-route .pageHero h1{font-size:clamp(3rem,6vw,6.2rem)}
.testimonials-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.testimonial-card,.testimonial-card.featured{grid-column:auto;border-radius:22px;min-width:0;background:rgba(255,255,255,.78)}
.testimonial-image-wrap{padding:12px 12px 0}
.testimonial-image,.testimonial-card.featured .testimonial-image{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:top center;border-radius:16px}
.testimonial-copy{padding:18px 20px 22px}
.testimonial-copy h3{font-size:.9rem}
.testimonial-copy .meta{font-size:.66rem}
.testimonial-copy blockquote{font-size:1.02rem;line-height:1.62;text-align:justify}
.testimonial-note{font-size:.62rem}
.testimonial-gallery-shell{border-radius:28px}
.testimonial-gallery-head h2{font-size:clamp(2.1rem,3.8vw,3.9rem)}
.testimonial-gallery-head p{text-align:justify;font-size:.92rem;line-height:1.75}
.testimonial-wall{grid-template-columns:repeat(4,minmax(0,1fr))}
.testimonial-shot img{height:auto;aspect-ratio:3/4;object-fit:cover;object-position:top center}
.testimonial-modal{z-index:10050;cursor:zoom-out}
.testimonial-modal-inner{cursor:default;max-width:min(1100px,94vw);max-height:90dvh}
.testimonial-modal img{max-height:90dvh;object-fit:contain;background:#fff}
.testimonial-modal button{display:grid;place-items:center;z-index:2;font-size:1.4rem}

/* FAQs */
.faq-section{padding-block:clamp(70px,8vw,110px)}
.faq-heading h2{font-size:clamp(2rem,3.5vw,3.65rem);line-height:1}
.faq-heading p{font-size:.94rem;line-height:1.75;text-align:justify}
.faq-item summary{font-size:clamp(1rem,1.15vw,1.22rem);line-height:1.45;padding:18px 0}
.faq-answer{font-size:.92rem;line-height:1.8;text-align:justify}

/* Forms */
#conciergeForm input,#conciergeForm select,#conciergeForm textarea{min-height:48px;border-radius:0;transition:border-color .25s,background .25s}
#conciergeForm input:focus,#conciergeForm select:focus,#conciergeForm textarea:focus{border-color:var(--champ);background:rgba(255,255,255,.1);outline:none}
#conciergeForm [aria-invalid='true']{border-color:#ffb3b3}
.form-status{grid-column:1/-1;margin:4px 0 0;color:#f0ddd1;min-height:1.4em;font-size:.85rem}

/* Footer */
footer .footerGrid{grid-template-columns:1.2fr .8fr .8fr 1fr;align-items:start}
footer .footerGrid>div:first-child{display:flex;flex-direction:column;align-items:center;text-align:center}
footer .footerGrid>div:first-child img{width:118px;height:145px;margin:0 auto 14px;filter:none}
footer .footerGrid>div:first-child p{max-width:390px}
.footerBottom{align-items:center}

/* Large displays */
@media(min-width:1800px){:root{--max:1660px}.about-copy h1{font-size:7.15rem}.work-showcase-copy{max-width:760px}.home-work-scroll{min-height:760px}}

/* Laptop / tablet */
@media(max-width:1180px){
  :root{--header-h:76px}.desktop{gap:18px}.brand span{display:none}.brand{min-width:auto}
  .about-hero{height:auto;min-height:calc(100dvh - var(--header-h));grid-template-columns:1fr 1fr}
  .about-copy{padding:clamp(48px,5vw,72px)}
  .founder{grid-template-columns:1fr}.founder-photo-frame{min-height:270px}
  .testimonials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-wall{grid-template-columns:repeat(3,minmax(0,1fr))}
  footer .footerGrid{grid-template-columns:1fr 1fr}
}

/* Mobile and portrait tablets */
@media(max-width:820px){
  :root{--header-h:70px}.container{width:min(100% - 32px,var(--max))}
  nav.desktop,.site>.cta{display:none}.menuBtn{display:block}
  .drawer{padding-top:100px}.drawer a{font-size:clamp(2.2rem,10vw,4.5rem)}
  .about-hero{height:auto;min-height:0;grid-template-columns:1fr;overflow:visible}
  .about-copy{padding:48px 20px 40px;text-align:left;align-items:flex-start}
  .about-copy h1{font-size:clamp(3.15rem,15vw,5.25rem);max-width:none;text-align:left}
  .about-copy .lead{text-align:left}
  .about-media{height:min(76vw,540px);padding:16px}
  .about-media img{object-fit:cover}
  .about-stats{width:100%;display:grid;grid-template-columns:1fr}
  .founders-preview{grid-template-columns:1fr}.founder{grid-template-columns:1fr}.founder-photo-frame{min-height:250px}
  .home-work-scroll{height:calc(100dvh - var(--header-h));min-height:600px}
  .home-work-showcase .work-category-panels{height:96px}.home-work-showcase .work-category-panel.active{transform:translateY(-5px)}
  .work-showcase-copy{max-width:none;left:18px;right:18px;bottom:150px}
  .work-showcase-copy h2,.work-showcase-copy h1{font-size:clamp(3rem,15vw,5.3rem)}
  .testimonials-grid{grid-template-columns:1fr}.testimonial-wall{grid-template-columns:repeat(2,minmax(0,1fr))}
  .faq-heading{grid-template-columns:1fr;gap:20px}.faq-heading h2{max-width:none}
  #conciergeForm{grid-template-columns:1fr}#conciergeForm>div{grid-column:1}
  footer .footerGrid{grid-template-columns:1fr;text-align:center}footer .footerGrid>div{display:flex;flex-direction:column;align-items:center}
  .footerBottom{display:flex;flex-direction:column;text-align:center}
}
@media(max-width:520px){
  .intro-panel p{font-size:1.3rem}.intro-panel img{width:min(190px,54vw)}.intro-panel small{max-width:300px}
  .testimonial-wall{grid-template-columns:1fr}.testimonial-modal{padding:14px}.testimonial-modal button{top:8px;right:8px}
  .client-pill{min-width:145px}.ticker{animation-duration:42s}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}
  .route-transition{display:none}
}


/* Final production polish */
html{scroll-padding-top:86px}
body{min-width:280px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
nav a,.drawer a,.btn,.cta,button{-webkit-tap-highlight-color:transparent}
.route.active{contain:layout style}
.route:focus{outline:none}
.testimonial-video-ready-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.testimonial-video-reserved{min-height:320px}
.testimonial-video-reserved-stage{min-height:320px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:34px;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 20%,rgba(208,180,139,.22),transparent 34%),linear-gradient(145deg,#25080e,#4d1220 55%,#170509);color:#fff}
.testimonial-video-reserved-stage::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.16);pointer-events:none}
.testimonial-video-reserved-stage>span{position:relative;z-index:1;width:62px;height:62px;border:1px solid rgba(255,255,255,.42);border-radius:50%;display:grid;place-items:center;font-size:18px;padding-left:3px}
.testimonial-video-reserved-copy{position:relative;z-index:1;max-width:310px;text-align:right}
.testimonial-video-reserved-copy h3{font:400 clamp(27px,3vw,42px)/1 var(--serif);margin:0 0 12px}
.testimonial-video-reserved-copy p{margin:0;color:rgba(255,255,255,.68);font-size:13px;line-height:1.6}
noscript{display:block;padding:16px 20px;background:#4d1220;color:#fff;text-align:center;font:14px/1.5 var(--sans)}
@media(max-width:760px){html{scroll-padding-top:70px}.testimonial-video-ready-grid{grid-template-columns:1fr}.testimonial-video-reserved,.testimonial-video-reserved-stage{min-height:250px}.testimonial-video-reserved-stage{padding:26px}.testimonial-video-reserved-copy{text-align:left}.route.active{contain:none}}
@media(min-width:2000px){.container{max-width:1560px}.site{padding-left:max(58px,calc((100vw - 1800px)/2));padding-right:max(58px,calc((100vw - 1800px)/2))}.about-copy{padding-left:max(76px,calc((100vw - 1800px)/4))}.work-catalogue-body{max-width:1800px;margin-inline:auto}}



/* =========================================================
   VIDIRA V12 — FINAL PRODUCTION SYSTEM
   One final cascade: typography, layout, responsive behavior,
   landing media, founders, testimonials, Instagram, concierge.
   ========================================================= */
:root{
  --wine:#22060c;--wine2:#4d1220;--champ:#d0b48b;--ivory:#f6f1ea;--paper:#efe7dc;
  --ink:#1d1715;--muted:#6f625c;--line:rgba(29,23,21,.12);--shadow:0 24px 60px rgba(20,6,10,.13);
  --serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --sans:'Manrope','Helvetica Neue',Arial,sans-serif;
  --max:1320px;--header-h:88px;--section-y:clamp(76px,8vw,124px);
}
html{font-size:16px;scroll-padding-top:calc(var(--header-h) + 18px);-webkit-text-size-adjust:100%}
body{font-family:var(--sans);font-size:16px;line-height:1.65;letter-spacing:-.005em;background:var(--ivory);color:var(--ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
p{margin-top:0;text-align:left;overflow-wrap:anywhere}
img{image-rendering:auto}
.container{width:min(var(--max),calc(100% - clamp(36px,7vw,104px)))}
.section{padding:var(--section-y) 0}
.display,h1,h2,h3{font-family:var(--serif);font-weight:500;text-wrap:balance}
.eyebrow{font-size:11px;line-height:1.35;letter-spacing:.19em;font-weight:600}
.btn,.cta{min-height:44px;padding:13px 18px;font-size:11px;line-height:1.15;letter-spacing:.14em;font-weight:600;justify-content:center}
button,.btn,.cta,a{touch-action:manipulation}

/* Header */
header.site{height:var(--header-h);padding:0 clamp(22px,4vw,60px)}
.brand{gap:13px;min-width:max-content}.brand img{width:48px;height:60px}.brand span{font-size:10.5px;letter-spacing:.16em;line-height:1.35;font-weight:500}
nav.desktop{gap:clamp(18px,2vw,30px)}
.nav-link{font-size:10.5px;letter-spacing:.13em;font-weight:600;padding:35px 0}.nav-link:after{bottom:25px}
header.site>.cta{font-size:10.5px;white-space:nowrap}.menuBtn,.drawer button{font-size:11px;font-weight:600}
.drawer{padding-top:110px}.drawer a{font-size:clamp(36px,10vw,60px);line-height:1.08}

/* Landing: one lightweight MP4 first; animated fallback loads only after an actual block/failure. */
body.landing-active{overflow:hidden;background:#000}
#route-intro{background:#000}
.intro{height:100svh;min-height:100svh;background:#090607;isolation:isolate}
.intro video,.intro-motion-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity .55s ease}
.intro-motion-fallback{z-index:0;opacity:1;animation:fallbackDrift 12s ease-in-out infinite alternate;transform:scale(1.015)}
@keyframes fallbackDrift{from{transform:scale(1.015) translate3d(0,0,0)}to{transform:scale(1.055) translate3d(-.7%,.45%,0)}}
.intro video{z-index:1;opacity:0;background:transparent}
.intro video.is-playing{opacity:1}
.intro:after{z-index:2;background:linear-gradient(180deg,rgba(8,2,4,.20),rgba(8,2,4,.63)),radial-gradient(circle at 50% 36%,rgba(255,255,255,.09),transparent 30%)}
.intro-frame{z-index:3}.intro-location{z-index:4;font-size:11px;letter-spacing:.18em}
.intro-panel{z-index:4;width:min(760px,calc(100% - 40px));padding:26px 28px;background:transparent;backdrop-filter:none}
.intro-panel img{width:clamp(150px,18vw,210px);max-height:240px;object-fit:contain;margin:0 auto 20px;filter:none}
.intro-panel p{font-family:var(--serif);font-size:clamp(27px,3.2vw,48px);line-height:1.22;max-width:700px;margin:0 auto 28px;text-align:center;letter-spacing:-.018em}
.intro-panel small{font-size:10.5px;letter-spacing:.16em;line-height:1.5;margin-top:20px}
.intro-sound-toggle,.soundNote{font-size:10.5px;letter-spacing:.12em;min-height:42px}

/* Core editorial sections */
.about-hero{min-height:calc(100svh - var(--header-h));height:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--ivory)}
.about-copy{padding:clamp(64px,7vw,96px) clamp(28px,5vw,78px);text-align:left;align-items:flex-start}
.about-copy h1{font-size:clamp(52px,5vw,78px);line-height:.92;max-width:9em;margin:12px 0 22px;text-align:left}
.about-copy .lead{font-family:var(--serif);font-size:clamp(18px,1.4vw,22px);line-height:1.55;max-width:650px;text-align:left;color:#504640}
.about-stats{justify-content:flex-start;margin-top:30px}.stat{text-align:left}.stat strong{font-size:30px}.stat span{font-size:10.5px}
.about-media{min-height:calc(100svh - var(--header-h));padding:clamp(22px,3vw,38px)}
.about-media img{object-fit:cover}
.work-preview h2,.concierge-box h2,.pageHero h1{letter-spacing:-.035em}
.pageHero{padding:calc(var(--header-h) + 54px) 0 58px}.pageHero h1{font-size:clamp(58px,7vw,104px);line-height:.86}.pageHero p{font-size:clamp(20px,1.9vw,28px);line-height:1.5;max-width:820px}
.concierge-hero{position:relative;background:url(../images/concierge-hero.webp) center top/cover no-repeat;min-height:70vh;display:flex;align-items:flex-end;padding-bottom:60px}.concierge-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72) 0%,rgba(0,0,0,.2) 50%,transparent 100%)}.concierge-hero .container{position:relative;z-index:1}.concierge-hero h1,.concierge-hero p,.concierge-hero .eyebrow{color:#fff}
@media(max-width:760px){.concierge-hero{min-height:50vh}}
.pageHero p,.about-seo p,.team-founder-bio-copy p,.journal-detail p,.faqAnswer p{max-width:75ch}
.about-seo-opening p,.about-story-block p,.department p,.team-founder-bio-copy p,.teamCard p,.journal-card p,.testimonial-copy blockquote{font-size:16px;line-height:1.75;text-align:left}
.about-story-block h3,.department h4{line-height:1.05}

/* Founder presentation */
.founders-preview{gap:24px;background:transparent;box-shadow:none}
.founder{grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);background:var(--paper);box-shadow:var(--shadow);overflow:hidden}
.founder-portrait{min-height:520px}.founder-portrait img{object-fit:cover;object-position:center 28%}
.founder-card{padding:clamp(34px,4vw,54px);display:flex;flex-direction:column;justify-content:center}
.founder-card h2{font-size:clamp(42px,4vw,58px);line-height:.95}.founder-card p{font-size:16px;line-height:1.72}
.team-founders-bios{gap:34px}.team-founder-bio{overflow:hidden}.team-founder-bio-media{min-height:620px}.team-founder-bio-media img{object-fit:cover;object-position:center 24%}
.team-founder-bio-head{padding:clamp(32px,4vw,54px)}.team-founder-bio-head h2{font-size:clamp(48px,5vw,72px)}
.team-founder-bio-copy{padding:clamp(32px,4vw,54px)}
.team-founder-bio-copy blockquote{font-size:clamp(24px,2.3vw,34px);line-height:1.25}
.founder-more{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}
.founder-more summary{list-style:none;cursor:pointer;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--wine2);display:inline-flex;align-items:center;gap:10px;min-height:42px}
.founder-more summary::-webkit-details-marker{display:none}.founder-more summary:after{content:'+';font-size:18px;font-weight:400}.founder-more[open] summary:after{content:'−'}
.founder-more[open] summary{margin-bottom:18px}
.teamGrid{gap:1px}.teamCard{padding:34px;min-height:240px}.teamCard h3{font-size:34px}.teamCard .role{font-size:10.5px}.teamCard p{font-size:15px}

/* Collections and journal */
.home-work-scroll{height:auto}.home-work-sticky{position:relative;top:auto;height:auto;min-height:760px}.home-work-scroll-guide{display:none}
.work-category-panel span,.work-gallery-entry,.work-back,.work-side-category,.work-album-subtitle,.work-album-meta span{font-size:10.5px}
.journal-cards{gap:24px}.journal-card{display:flex;flex-direction:column;height:100%;box-shadow:0 18px 42px rgba(20,6,10,.10)}.journal-card img{height:300px}.journal-card-copy{padding:26px}.journal-card h3{font-size:34px;line-height:1.02}.journal-card .meta{font-size:10.5px}.journal-card-copy p{font-size:15px;line-height:1.7}

/* Curated testimonials */
.testimonials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.testimonial-card{display:grid;grid-template-columns:minmax(220px,.86fr) minmax(0,1.14fr);min-height:430px;background:#fff;box-shadow:0 18px 44px rgba(20,6,10,.10);overflow:hidden}
.testimonial-image-wrap{min-height:430px}.testimonial-image{object-fit:cover;object-position:center top}
.testimonial-copy{padding:clamp(28px,3vw,42px);display:flex;flex-direction:column;justify-content:center}.testimonial-copy h3{font-size:38px;margin:0 0 8px}.testimonial-copy .meta{font-size:10.5px;letter-spacing:.13em}.testimonial-copy blockquote{font-family:var(--serif);font-size:21px;line-height:1.45;margin:22px 0}.testimonial-note{margin-top:auto}.testimonial-tag{font-size:10.5px}
.home-testimonial-preview{overflow:hidden}.testimonial-carousel-kicker,.testimonial-carousel-author{font-size:10.5px}.testimonial-carousel-card blockquote{font-size:18px;line-height:1.55}

/* Instagram */
.instagram-live-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:40px;align-items:end;margin-bottom:32px}
.instagram-live-head h2{font-size:clamp(46px,5vw,72px);line-height:.92;margin:.35rem 0 0}.instagram-live-intro p{font-size:15px;line-height:1.65;margin:0 0 18px}
.instagram-live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.instagram-live-card,.instagram-skeleton{aspect-ratio:1/1;min-height:0}.instagram-live-card img,.instagram-live-card video{object-fit:cover}
.instagram-live-overlay{font-size:11px}.instagram-live-fallback{font-size:15px}

/* Concierge */
.concierge-box{padding:clamp(40px,6vw,74px)}.concierge-box>p{font-size:20px;line-height:1.55}
#conciergeForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;margin-top:34px}
#conciergeForm>div{min-width:0}#conciergeForm label{display:block;margin-bottom:8px}
#conciergeForm input,#conciergeForm select,#conciergeForm textarea{width:100%;min-height:52px;margin:0;padding:14px 15px;border:1px solid rgba(255,255,255,.32);border-radius:0;background:rgba(255,255,255,.065);color:#fff;font-family:var(--sans);font-size:16px;line-height:1.35;outline:none;transition:border-color .2s,background .2s,box-shadow .2s}
#conciergeForm textarea{min-height:150px;resize:vertical}
#conciergeForm input:focus,#conciergeForm select:focus,#conciergeForm textarea:focus{border-color:rgba(255,255,255,.8);background:rgba(255,255,255,.10);box-shadow:0 0 0 3px rgba(255,255,255,.08)}
#conciergeForm option{color:#16110f;background:#fff}.concierge-phone-row{display:grid;grid-template-columns:minmax(175px,.72fr) minmax(0,1.28fr);gap:10px}
#conciergeForm .form-wide,#conciergeForm .concierge-submit-wrap,#conciergeSuccessWrap,.concierge-privacy-note,#conciergeStatus{grid-column:1/-1}
#conciergeSubmit{min-width:170px;margin:4px auto 0}.concierge-submit-wrap{display:flex;justify-content:center}.concierge-privacy-note{font-size:12px;line-height:1.6;text-align:center;color:rgba(255,255,255,.72);margin:0 auto;max-width:700px}.concierge-privacy-note a{text-decoration:underline;text-underline-offset:3px}
#conciergeStatus{font-size:14px;text-align:center}.concierge-success-wrap{text-align:center;padding-top:12px}.concierge-success-wrap h3{font-size:34px;margin-bottom:10px}.concierge-success-wrap p{font-size:16px;max-width:720px;margin:0 auto 20px;text-align:center}

/* FAQ / CTA / footer */
.faqQuestion{font-size:17px;min-height:58px}.faqAnswer p{font-size:15px}
.routeCtaBand p{font-size:18px;line-height:1.55}
footer{padding-top:72px}.footerGrid{grid-template-columns:1.3fr .8fr .9fr 1.1fr;gap:clamp(30px,5vw,72px)}.footerGrid h4{font-size:11px;letter-spacing:.15em}.footerGrid p,.footerGrid a{font-size:13px;line-height:1.65}.footerGrid a{display:block;margin:8px 0}.footerBottom{font-size:12px}

/* Static SEO / privacy pages */
body.seo-static{background:var(--ivory)}.seo-static header.site{position:sticky;top:0}.seo-page{padding:clamp(68px,8vw,118px) 0}.seo-hero{padding:clamp(72px,8vw,118px) 0;background:var(--wine);color:#fff}.seo-hero h1{font-size:clamp(56px,7vw,102px);line-height:.88;margin:12px 0 22px}.seo-hero p{font-family:var(--serif);font-size:clamp(20px,2vw,28px);line-height:1.5;max-width:760px}.seo-article{max-width:820px}.seo-article h2{font-size:clamp(38px,4vw,56px);line-height:1;margin:50px 0 16px}.seo-article p,.seo-article li{font-size:17px;line-height:1.8}.seo-article ul{padding-left:1.25rem}.seo-cta{margin-top:54px;padding:34px;background:var(--paper)}

/* Responsive: laptop / tablet */
@media(max-width:1160px){
  :root{--header-h:78px}.container{width:min(var(--max),calc(100% - 48px))}
  nav.desktop{display:none}header.site>.cta{display:none}.menuBtn{display:block}
  .about-hero{grid-template-columns:1fr 1fr}.founders-preview{grid-template-columns:1fr}.testimonial-card{grid-template-columns:1fr}.testimonial-image-wrap{height:330px;min-height:0}
  .footerGrid{grid-template-columns:1.2fr 1fr 1fr}
}
@media(max-width:900px){
  .about-hero{grid-template-columns:1fr}.about-media{min-height:62vw;order:-1}.about-copy{padding-top:56px}.about-copy h1{font-size:clamp(50px,9vw,72px)}
  .journal-cards{grid-template-columns:repeat(2,1fr)}.instagram-live-grid{grid-template-columns:repeat(2,1fr)}.instagram-live-head{grid-template-columns:1fr;gap:18px}
  .team-founders-bios{grid-template-columns:1fr}.teamGrid{grid-template-columns:repeat(2,1fr)}
  .testimonials-grid{grid-template-columns:1fr}.footerGrid{grid-template-columns:repeat(2,1fr)}
  #conciergeForm{grid-template-columns:1fr}#conciergeForm>*{grid-column:1/-1}
}

/* Mobile */
@media(max-width:640px){
  :root{--header-h:70px;--section-y:58px}.container{width:calc(100% - 34px)}
  header.site{height:var(--header-h);padding:0 17px}.brand img{width:38px;height:48px}.brand span{font-size:9.5px}.menuBtn{font-size:10.5px}
  .intro{height:100dvh;min-height:100dvh}.intro-panel{width:calc(100% - 28px);padding:18px 8px}.intro-panel img{width:142px;margin-bottom:16px}.intro-panel p{font-size:clamp(29px,8.4vw,40px);line-height:1.13}.intro-panel p br{display:none}.intro-panel small{font-size:9.5px;letter-spacing:.12em;max-width:290px}.intro-location{font-size:9.5px}.intro-sound-toggle{font-size:10px;bottom:max(14px,env(safe-area-inset-bottom));right:14px}
  .eyebrow{font-size:10.5px}.btn,.cta{font-size:10.5px;min-height:46px;padding:13px 16px}
  .pageHero{padding:calc(var(--header-h) + 36px) 0 42px}.pageHero h1{font-size:clamp(49px,14vw,72px)}.pageHero p{font-size:20px}
  .about-media{min-height:82vw;padding:16px}.about-copy{padding:44px 17px 54px;align-items:flex-start}.about-copy h1{font-size:clamp(46px,13vw,62px);text-align:left}.about-copy .lead{font-size:18px}.about-stats{display:grid;grid-template-columns:repeat(2,1fr);width:100%}.stat{max-width:none}
  .founder{grid-template-columns:1fr}.founder-portrait{min-height:112vw}.founder-card{padding:30px 26px}.founder-card h2{font-size:45px}.founder-card p{font-size:15px}
  .team-founder-bio-media{min-height:118vw}.team-founder-bio-head,.team-founder-bio-copy{padding:28px 24px}.team-founder-bio-head h2{font-size:50px}.teamGrid{grid-template-columns:1fr}.teamCard{min-height:0;padding:28px}
  .journal-cards{grid-template-columns:1fr}.journal-card img{height:64vw}.journal-card h3{font-size:32px}
  .instagram-live-grid{gap:8px}.instagram-live-head h2{font-size:48px}.instagram-live-intro p{font-size:14px}
  .testimonials-grid{gap:18px}.testimonial-image-wrap{height:78vw}.testimonial-copy{padding:26px 24px}.testimonial-copy h3{font-size:34px}.testimonial-copy blockquote{font-size:20px}
  .concierge-box{padding:34px 20px}.concierge-box h2{font-size:48px}.concierge-box>p{font-size:18px}#conciergeForm{gap:18px}.concierge-phone-row{grid-template-columns:1fr}.concierge-phone-row select{min-height:54px}
  .footerGrid{grid-template-columns:1fr;gap:30px}.footerBottom{display:grid;gap:8px}
}
@media(max-width:390px){
  .container{width:calc(100% - 28px)}.brand span{display:none}.intro-panel p{font-size:29px}.intro-panel small{font-size:9px}.about-stats{grid-template-columns:1fr 1fr}.instagram-live-grid{grid-template-columns:1fr 1fr}.testimonial-copy blockquote{font-size:19px}
}
@media(max-height:560px) and (orientation:landscape){
  .intro-panel img{width:92px;margin-bottom:8px}.intro-panel p{font-size:26px;margin-bottom:12px}.intro-panel small{display:none}.intro-actions .btn{min-height:38px;padding:9px 14px}.intro-sound-toggle{bottom:8px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}.route.active,.ticker,.social-track{animation:none}.route-transition{display:none}.intro video,.intro-motion-fallback{transition:none}}

/* V12 QA corrections — founder cards + secure honeypot + form polish */
.form-honeypot{display:none;position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.team-founder-bios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.team-founder-bio{background:#fff;border:1px solid var(--line);box-shadow:0 18px 44px rgba(20,6,10,.08);overflow:hidden}
.team-founder-bio-head{display:grid;grid-template-columns:160px minmax(0,1fr);gap:28px;align-items:center;padding:34px 34px 26px}
.team-founder-mini-portrait{width:160px;aspect-ratio:4/5;overflow:hidden;background:var(--paper)}
.team-founder-mini-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 24%}
.team-founder-bio-title{min-width:0}.team-founder-bio-title h2{font-size:clamp(42px,3.8vw,58px);line-height:.93;margin:9px 0 10px}
.team-founder-bio-title .bio-role{font-size:12px;line-height:1.55;letter-spacing:.03em;color:var(--muted);margin:0;text-align:left}
.team-founder-bio-copy{padding:0 34px 34px}.team-founder-bio-copy>p:first-child{font-family:var(--serif);font-size:20px;line-height:1.55;color:#403735}
.team-founder-bio-copy p{max-width:none}.team-founder-bio-copy blockquote{margin:22px 0;padding-left:20px;border-left:1px solid var(--champ)}
#conciergeForm>.form-honeypot{display:none}
.concierge-phone-row{grid-template-columns:minmax(210px,.9fr) minmax(0,1.1fr)}

@media(max-width:900px){
  .team-founder-bios{grid-template-columns:1fr;gap:22px}
  .team-founder-bio-head{grid-template-columns:145px minmax(0,1fr)}
  .team-founder-mini-portrait{width:145px}
}
@media(max-width:640px){
  .team-founder-bio-head{grid-template-columns:112px minmax(0,1fr);gap:20px;padding:24px 20px 20px}
  .team-founder-mini-portrait{width:112px}
  .team-founder-bio-title h2{font-size:40px}
  .team-founder-bio-title .bio-role{font-size:11px}
  .team-founder-bio-copy{padding:0 20px 26px}
  .team-founder-bio-copy>p:first-child{font-size:18px}
  .concierge-phone-row{grid-template-columns:1fr}
}
@media(max-width:390px){
  .team-founder-bio-head{grid-template-columns:96px minmax(0,1fr);gap:16px}
  .team-founder-mini-portrait{width:96px}
  .team-founder-bio-title h2{font-size:35px}
}


/* === V13 interaction regression fixes: collections, testimonials, Instagram === */
/* Home collections requires an explicit viewport height because all showcase children are positioned. */
.home-work-scroll{background:#050505}
.home-work-sticky{height:clamp(640px,calc(100svh - var(--header-h)),860px);min-height:640px;background:#050505}
.home-work-showcase{height:100%;min-height:640px;background:#050505}
.home-work-showcase .work-showcase-bg{z-index:0;opacity:1}
.home-work-showcase .work-showcase-copy{z-index:4;color:#fff}
.home-work-showcase .work-showcase-copy h2{color:#fff}
.home-work-showcase .work-category-panels{z-index:5}
.home-work-showcase .work-gallery-entry{z-index:6}

/* Reference-style testimonial carousel restored after V12 stylesheet consolidation. */
.testimonial-carousel-shell{max-width:1500px}
.testimonial-carousel-heading{text-align:center;max-width:790px;margin:0 auto clamp(36px,4vw,54px)}
.testimonial-carousel-heading h2{font-size:clamp(2.8rem,5.5vw,5.5rem);line-height:.92;margin:11px 0 18px}
.testimonial-carousel-heading p{font:400 1.02rem/1.7 var(--serif);color:var(--muted);margin:0;text-align:center}
.testimonial-carousel{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:12px;max-width:1260px;margin:0 auto}
.testimonial-carousel-viewport{position:relative;overflow:hidden;padding:34px 0 42px;min-height:370px}
.testimonial-carousel-track{position:relative;height:380px;perspective:1200px}
.testimonial-carousel-card{position:absolute;left:50%;top:0;width:min(520px,44vw);min-height:300px;background:#fff;border:1px solid rgba(34,6,12,.09);box-shadow:0 14px 35px rgba(34,6,12,.10);padding:34px 34px 30px;display:flex;flex-direction:column;justify-content:center;color:var(--ink);transition:transform .62s cubic-bezier(.2,.72,.2,1),opacity .5s ease,filter .5s ease,box-shadow .5s ease;transform-origin:center;opacity:0;pointer-events:none;z-index:0}
.testimonial-carousel-card[data-position="0"]{transform:translateX(-50%) translateZ(20px) scale(1);opacity:1;pointer-events:auto;z-index:5;box-shadow:0 26px 58px rgba(34,6,12,.18)}
/* The neighbouring cards anchor to the viewport edges rather than sitting at a
   fixed pixel offset from centre. A fixed offset only fits one window width: at
   430px the card hung 84px past the clip at 1920 and 207px at 900, slicing the
   quote mid-word. Anchored, the card's own padding is always the first thing
   inside the clip, at any width. Mobile re-centres them and pushes them off-
   screen deliberately, so it restores left:50% below. */
.testimonial-carousel-card[data-position="-1"]{left:14px;right:auto;transform:scale(.87);transform-origin:left center;opacity:.72;pointer-events:auto;z-index:2;filter:saturate(.75)}
.testimonial-carousel-card[data-position="1"]{left:auto;right:14px;transform:scale(.87);transform-origin:right center;opacity:.72;pointer-events:auto;z-index:2;filter:saturate(.75)}
.testimonial-carousel-card[data-position="-2"]{transform:translateX(calc(-50% - 745px)) scale(.77);opacity:.28;z-index:1}
.testimonial-carousel-card[data-position="2"]{transform:translateX(calc(-50% + 745px)) scale(.77);opacity:.28;z-index:1}
.testimonial-carousel-kicker{font:600 10.5px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--wine2);margin-bottom:16px}
.testimonial-carousel-card h3{font:400 clamp(1.5rem,2vw,1.9rem)/1.14 var(--serif);margin:0 0 16px;color:var(--ink)}
.testimonial-carousel-card blockquote{font:400 18px/1.62 var(--serif);margin:0;color:#534a44;text-align:left}
.testimonial-carousel-author{margin-top:22px;padding-top:15px;border-top:1px solid rgba(34,6,12,.10);font:500 10.5px/1.4 var(--sans);font-style:italic;color:var(--wine2)}
.testimonial-carousel-arrow{width:42px;height:42px;border-radius:50%;border:1px solid rgba(34,6,12,.22);background:rgba(255,255,255,.62);color:var(--wine2);display:grid;place-items:center;font-size:1rem;transition:.25s ease;z-index:8}
.testimonial-carousel-arrow:hover{background:var(--wine2);color:#fff;border-color:var(--wine2)}
/* Track height fits the tallest quote (351px measured) instead of 315px, and the
   dots no longer sit under the cards: the old margin-top:-8px pulled them into
   the track, so a long testimonial covered them completely. z-index above the
   cards' 5 keeps them visible even if a future quote overruns the track. */
.testimonial-carousel-dots{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:18px;position:relative;z-index:6}
.testimonial-carousel-dot{width:6px;height:6px;padding:0;border:0;border-radius:50%;background:rgba(77,18,32,.22);transition:.28s ease}
.testimonial-carousel-dot.active{width:9px;height:9px;background:var(--wine2)}
.home-testimonial-cta{text-align:center;margin-top:30px}

/* Live Instagram cards: API response becomes six linked post tiles; local/unconfigured preview remains a full grid. */
.instagram-live-section{background:#f6f1ea;border-top:1px solid rgba(34,6,12,.08);border-bottom:1px solid rgba(34,6,12,.08)}
.instagram-live-grid{min-height:0}
.instagram-live-card{position:relative;aspect-ratio:1/1;overflow:hidden;background:#e6ddd2;border:1px solid rgba(34,6,12,.08)}
.instagram-live-card>a{position:absolute;inset:0;display:block}
.instagram-live-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.72,.2,1),filter .45s ease}
.instagram-live-card:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgba(16,4,8,.64) 100%);opacity:.9}
.instagram-live-card:hover img{transform:scale(1.035);filter:saturate(.94)}
.instagram-live-card-meta{position:absolute;z-index:2;left:16px;right:16px;bottom:14px;color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;font:600 10px/1.35 var(--sans);letter-spacing:.12em;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,.5);pointer-events:none}
.instagram-live-card-caption{max-width:76%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.instagram-skeleton{background:linear-gradient(110deg,#e6ddd2 8%,#f3ece4 18%,#e6ddd2 33%);background-size:200% 100%;animation:instagramShimmer 1.5s linear infinite}
@keyframes instagramShimmer{to{background-position-x:-200%}}

/* Keep only one current navigation state visible on the long home page. */
.nav-link.scroll-active:after{right:0}

@media(max-width:1160px){
  .testimonial-carousel-card{width:min(500px,58vw)}
  .testimonial-carousel-card[data-position="-1"]{transform:scale(.86);transform-origin:left center}
  .testimonial-carousel-card[data-position="1"]{transform:scale(.86);transform-origin:right center}
}
@media(max-width:760px){
  .home-work-sticky{height:calc(100svh - var(--header-h));min-height:620px}
  .home-work-showcase{height:100%;min-height:620px}
  .testimonial-carousel-heading{text-align:left;margin-left:0;margin-right:0}.testimonial-carousel-heading p{text-align:left}
  .testimonial-carousel{grid-template-columns:34px minmax(0,1fr) 34px;gap:5px}
  .testimonial-carousel-viewport{padding:20px 0 28px;min-height:360px}
  .testimonial-carousel-track{height:360px}
  .testimonial-carousel-card{width:min(82vw,500px);padding:28px 24px;min-height:315px}
  .testimonial-carousel-card[data-position="-1"]{left:50%;right:auto;transform-origin:center;transform:translateX(calc(-50% - 75vw)) scale(.86);opacity:.42}
  .testimonial-carousel-card[data-position="1"]{left:50%;right:auto;transform-origin:center;transform:translateX(calc(-50% + 75vw)) scale(.86);opacity:.42}
  .testimonial-carousel-card[data-position="-2"],.testimonial-carousel-card[data-position="2"]{opacity:0}
  .testimonial-carousel-arrow{width:32px;height:32px}
  .instagram-live-card-meta{left:10px;right:10px;bottom:9px;font-size:9px}.instagram-live-card-caption{display:none}
}

/* V14 — selected clients / brand relationships */
.selected-clients-section{background:#f6f4f1;border-top:1px solid rgba(29,23,21,.08);border-bottom:1px solid rgba(29,23,21,.08)}
.selected-clients-section .container{max-width:1320px}
.selected-clients-head{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px;margin-bottom:clamp(34px,4.5vw,62px)}
.selected-clients-head::before,.selected-clients-foot::after{content:"";display:block;width:44px;height:3px;border-radius:999px;background:#7b5bd4}
.selected-clients-head .eyebrow{margin:0;color:#71655d}
.selected-clients-head h2{font-size:clamp(34px,4vw,62px);line-height:1.02;margin:0;max-width:12ch}
.selected-clients-head>p{margin:0 auto;font-size:15px;line-height:1.8;color:#675d56;max-width:820px}
.selected-clients-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(20px,2.2vw,34px);align-items:stretch}
.client-brand-card{min-height:168px;padding:18px 10px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;border:none;background:transparent;transition:transform .25s ease,opacity .25s ease;opacity:.96}
a.client-brand-card:hover{transform:translateY(-3px);opacity:1}
.client-brand-mark{width:100%;height:72px;display:flex;align-items:center;justify-content:center;position:relative;background:transparent;border:none;overflow:visible}
.client-brand-fallback{grid-area:1/1;font:500 34px/1 var(--serif);letter-spacing:.06em;color:#1f1b1a;opacity:.78}
.client-brand-icon{grid-area:1/1;max-width:170px;width:auto;height:56px;object-fit:contain;position:relative;z-index:1;background:transparent;filter:none;transition:transform .25s ease}
a.client-brand-card:hover .client-brand-icon{filter:none;transform:scale(1.03)}
.client-brand-copy{display:flex;flex-direction:column;gap:6px;align-items:center}
.client-brand-copy h3{font:500 16px/1.25 var(--sans);letter-spacing:0;margin:0;color:var(--ink);max-width:18ch}
.client-brand-copy p{margin:0;font-size:10px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;color:#8e8178}
.selected-clients-foot{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:clamp(18px,2vw,28px)}
.selected-clients-note{margin:0;font-size:11px;line-height:1.75;letter-spacing:.03em;color:#8b8078;max-width:860px;text-align:center}
@media(max-width:1240px){.selected-clients-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1024px){.selected-clients-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.client-brand-card{min-height:156px}.client-brand-icon{max-width:150px;height:50px}}
@media(max-width:760px){.selected-clients-head>p{font-size:14px}.selected-clients-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.client-brand-card{min-height:148px;padding:16px 8px 12px}.client-brand-mark{height:60px}.client-brand-icon{max-width:128px;height:42px}.client-brand-copy h3{font-size:14px}.client-brand-copy p{font-size:9px}}
@media(max-width:520px){.selected-clients-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.client-brand-card{min-height:132px}.client-brand-mark{height:52px}.client-brand-fallback{font-size:28px}.client-brand-icon{max-width:112px;height:36px}.selected-clients-note{font-size:10px}}
@media(max-width:360px){.selected-clients-grid{grid-template-columns:1fr}.client-brand-card{min-height:124px}}


/* === V16: Editorial Collections + horizontal Instagram + persistent WhatsApp + branded social icons === */
.home-collections-editorial{background:var(--ivory);padding:clamp(78px,8vw,118px) 0}
.home-collections-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(42px,7vw,110px);align-items:end;margin-bottom:clamp(36px,5vw,70px)}
.home-collections-titleblock h2{font-size:clamp(48px,5.9vw,88px);line-height:.92;margin:12px 0 0;max-width:10.6em}
.home-collections-intro{max-width:500px;justify-self:end}
.home-collections-intro p{margin:0 0 24px;font-size:15px;line-height:1.85;color:#665b54}
.home-collections-mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(260px,32vw);gap:14px}
.collection-preview-card{position:relative;overflow:hidden;border:0;background:#181313;color:#fff;min-height:360px;isolation:isolate;box-shadow:0 20px 50px rgba(28,14,16,.10)}
.collection-preview-card--weddings{grid-column:span 7}.collection-preview-card--social{grid-column:span 5}
.collection-preview-card--corporate,.collection-preview-card--birthday,.collection-preview-card--milestone{grid-column:span 4;min-height:310px}
.collection-preview-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.collection-preview-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(12,7,8,.02) 34%,rgba(12,7,8,.76) 100%),linear-gradient(90deg,rgba(12,7,8,.22),transparent 46%)}
.collection-preview-index{position:absolute;z-index:2;top:22px;right:22px;font:500 10px/1 var(--sans);letter-spacing:.18em;color:rgba(255,255,255,.78)}
.collection-preview-copy{position:absolute;z-index:2;left:clamp(22px,3vw,40px);right:clamp(22px,3vw,40px);bottom:clamp(22px,3vw,38px);display:grid;gap:7px;text-align:left}
.collection-preview-copy small{font:600 9.5px/1.4 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.collection-preview-copy strong{font:400 clamp(36px,4vw,66px)/.92 var(--serif);letter-spacing:-.025em}
.collection-preview-copy em{font:600 9.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;font-style:normal;opacity:0;transform:translateY(8px);transition:.35s ease}
.collection-preview-card:hover img,.collection-preview-card:focus-visible img{transform:scale(1.035);filter:saturate(.94)}
.collection-preview-card:hover .collection-preview-copy em,.collection-preview-card:focus-visible .collection-preview-copy em{opacity:1;transform:none}
.collection-preview-card:focus-visible{outline:2px solid var(--wine2);outline-offset:3px}

.instagram-live-section{overflow:hidden}
.instagram-live-head{grid-template-columns:minmax(0,1fr) minmax(280px,400px);margin-bottom:28px}
.instagram-live-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;width:100%}
.instagram-live-card,.instagram-skeleton{aspect-ratio:1/1;min-width:0}
.instagram-live-card-meta{left:10px;right:10px;bottom:9px;font-size:8px;letter-spacing:.08em}
.instagram-live-card-caption{display:none}

.floating-whatsapp{position:fixed;left:max(clamp(12px,1.8vw,24px),env(safe-area-inset-left));bottom:max(clamp(12px,1.8vw,24px),env(safe-area-inset-bottom));z-index:900;display:flex;align-items:center;justify-content:center;width:clamp(48px,4.2vw,58px);height:clamp(48px,4.2vw,58px);min-width:0;padding:0;border-radius:50%;background:#25D366;color:#fff;border:1px solid rgba(255,255,255,.72);box-shadow:0 10px 28px rgba(15,91,70,.28);transition:transform .22s ease,box-shadow .22s ease,background .22s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.floating-whatsapp:hover{transform:translateY(-2px) scale(1.03);background:#20c85a;box-shadow:0 14px 34px rgba(15,91,70,.34)}
.floating-whatsapp:active{transform:scale(.96)}
.floating-whatsapp:focus-visible{outline:3px solid rgba(37,211,102,.32);outline-offset:4px}
.floating-whatsapp img{display:block;width:56%;height:56%;object-fit:contain;filter:brightness(0) invert(1);background:transparent;border-radius:0;padding:0}
body.landing-active .floating-whatsapp,.route#route-intro.active~* .floating-whatsapp{display:flex}

.footer-social-bar{border-top:1px solid rgba(255,255,255,.10);margin-top:38px;padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-social-label{font:600 10px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#b8aaa2}
.footer-social-icons{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.footer-social-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid rgba(255,255,255,.14);transition:transform .22s ease,background .22s ease}
.footer-social-icon:hover{transform:translateY(-3px);background:#f7f4f1}
.footer-social-icon img{width:21px;height:21px;object-fit:contain;filter:none;margin:0}

@media(max-width:1100px){
  .home-collections-head{grid-template-columns:1fr;gap:24px}.home-collections-intro{justify-self:start;max-width:680px}
  .home-collections-mosaic{grid-auto-rows:minmax(280px,42vw)}
  .collection-preview-card--weddings,.collection-preview-card--social{grid-column:span 6}
  .collection-preview-card--corporate,.collection-preview-card--birthday{grid-column:span 6}.collection-preview-card--milestone{grid-column:span 12;min-height:340px}
  .instagram-live-grid{display:flex;overflow-x:auto;gap:8px;padding-bottom:10px;scroll-snap-type:x mandatory;scrollbar-width:none}.instagram-live-grid::-webkit-scrollbar{display:none}
  .instagram-live-card,.instagram-skeleton{flex:0 0 clamp(150px,24vw,210px);scroll-snap-align:start}
}
@media(max-width:760px){
  .home-collections-editorial{padding:64px 0}.home-collections-titleblock h2{font-size:clamp(44px,13vw,64px)}
  .home-collections-mosaic{display:grid;grid-template-columns:1fr;grid-auto-rows:auto;gap:12px}
  .collection-preview-card,.collection-preview-card--weddings,.collection-preview-card--social,.collection-preview-card--corporate,.collection-preview-card--birthday,.collection-preview-card--milestone{grid-column:auto;min-height:0;aspect-ratio:4/5}
  .collection-preview-copy strong{font-size:52px}.collection-preview-copy em{opacity:1;transform:none}
  .instagram-live-head{grid-template-columns:1fr;gap:18px}.instagram-live-grid{margin-right:calc((100vw - 100%)/-2);padding-right:22px}.instagram-live-card,.instagram-skeleton{flex-basis:172px}
  .footer-social-bar{flex-direction:column;justify-content:center;text-align:center}.footer-social-icons{justify-content:center}
  .floating-whatsapp{width:50px;height:50px;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom))}
}


/* === V17: precision alignment + original-color client marks === */
/* Shared editorial alignment */
.home-collections-head,.instagram-live-head,.selected-clients-head,.faq-heading{align-items:start}
.home-collections-titleblock,.home-collections-intro,.instagram-live-head>*,.selected-clients-head>*{min-width:0}
.home-collections-titleblock .eyebrow,.instagram-live-head .eyebrow,.selected-clients-head .eyebrow{display:block;margin-bottom:10px}
.home-collections-intro p,.instagram-live-head p,.selected-clients-head>p{max-width:62ch}

/* Collections: consistent text and image geometry */
.home-collections-mosaic{align-items:stretch}
.collection-preview-card{display:block;height:100%}
.collection-preview-card img{object-position:center center}
.collection-preview-copy{min-height:102px;align-content:end}
.collection-preview-copy small{min-height:2.8em;display:flex;align-items:flex-end;max-width:34ch}
.collection-preview-copy strong{display:block;white-space:normal}
.collection-preview-copy em{margin-top:4px}

/* Clients: all marks and labels share the same visual baseline */
.selected-clients-grid{align-items:stretch;grid-auto-rows:1fr}
.client-brand-card{display:grid;grid-template-rows:88px minmax(62px,auto);align-content:center;justify-items:center;min-height:176px;padding:16px 10px 18px;gap:12px}
.client-brand-mark{height:88px;width:100%;display:flex;align-items:center;justify-content:center}
.client-brand-icon{display:block;max-width:min(170px,88%);width:auto;height:auto;max-height:64px;object-fit:contain;filter:none}
a.client-brand-card:hover .client-brand-icon{filter:none}
.client-brand-copy{display:grid;grid-template-rows:minmax(38px,auto) auto;align-content:start;justify-items:center;gap:7px;width:100%}
.client-brand-copy h3{display:flex;align-items:flex-start;justify-content:center;text-align:center;min-height:38px;margin:0;line-height:1.22}
.client-brand-copy p{text-align:center;margin:0;line-height:1.45}

/* Instagram: one visual baseline, no stretched media */
.instagram-live-grid{align-items:start}
.instagram-live-card,.instagram-skeleton{overflow:hidden;border-radius:0}
.instagram-live-card img{width:100%;height:100%;object-fit:cover;object-position:center}

/* Footer: align columns and social marks */
.footerGrid{align-items:start}
.footerGrid>div{min-width:0}
.footerGrid h4{margin-top:0;margin-bottom:14px}
.footer-social-bar{align-items:center}
.footer-social-icon{flex:0 0 46px}
.footer-social-icon img{display:block;width:22px;height:22px;object-fit:contain;filter:none}

@media(max-width:1100px){
  .home-collections-head,.instagram-live-head{align-items:start}
  .client-brand-card{grid-template-rows:80px minmax(58px,auto);min-height:166px}
  .client-brand-mark{height:80px}.client-brand-icon{max-height:56px}
}
@media(max-width:760px){
  .home-collections-head,.instagram-live-head,.selected-clients-head{text-align:left}
  .selected-clients-head{align-items:flex-start}
  .selected-clients-head::before{margin-left:0}
  .client-brand-card{grid-template-rows:66px minmax(54px,auto);min-height:148px;padding:14px 8px}
  .client-brand-mark{height:66px}.client-brand-icon{max-width:90%;max-height:46px}
  .client-brand-copy h3{min-height:34px;font-size:13.5px}
  .footerGrid{text-align:left}
}


/* V18 selected clients marquee */
.selected-clients-section .container{max-width:1320px}
.selected-clients-head,.home-collections-head,.instagram-live-head,.faq-heading{align-items:center}
.selected-clients-head,.selected-clients-head *{text-align:center}
.selected-clients-head{display:flex;flex-direction:column;align-items:center!important;justify-content:center;gap:18px;margin-bottom:clamp(28px,4vw,48px)}
.selected-clients-head::before{content:"";display:block;width:44px;height:3px;border-radius:999px;background:#7b5bd4;margin:0 auto}
.selected-clients-head .eyebrow{display:block;margin:0;color:#71655d}
.selected-clients-head h2{font-size:clamp(36px,4vw,62px);line-height:1.02;margin:0;max-width:16ch}
.selected-clients-head>div,.selected-clients-head>p{width:100%;max-width:900px}
.selected-clients-head>p{margin:0 auto;font-size:15px;line-height:1.8;color:#675d56}
.selected-clients-marquee-shell{position:relative;overflow:hidden;padding:10px 0 8px}
.selected-clients-marquee-track{display:flex;gap:24px;align-items:stretch;width:max-content;will-change:transform;animation:vidiraClientsMarquee 50s linear infinite}
.selected-clients-marquee-shell:hover .selected-clients-marquee-track{animation-play-state:paused}
.selected-clients-marquee-group{display:flex;gap:24px;flex:none;align-items:stretch}
.selected-clients-marquee-group .client-brand-card{flex:0 0 clamp(168px,14vw,196px);width:clamp(168px,14vw,196px)}
.client-brand-card,.client-brand-card.client-brand-card-static{display:grid;grid-template-rows:72px minmax(66px,auto);align-content:start;justify-items:center;min-height:156px;padding:16px 8px 10px;gap:14px;border:none;background:transparent;box-shadow:none;transform:none}
a.client-brand-card:hover{transform:translateY(-2px)}
.client-brand-mark{height:72px;width:100%;display:flex;align-items:center;justify-content:center}
.client-brand-icon{display:block;max-width:min(170px,92%);width:auto;height:auto;max-height:60px;object-fit:contain;filter:none}
a.client-brand-card:hover .client-brand-icon{filter:none;transform:scale(1.03)}
.client-brand-copy{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:flex-start;width:100%}
.client-brand-copy h3{min-height:44px;display:flex;align-items:flex-start;justify-content:center;text-align:center;font:500 15px/1.24 var(--sans);letter-spacing:0;margin:0;color:var(--ink)}
.client-brand-copy p{margin:0;font-size:10px;line-height:1.45;letter-spacing:.11em;text-transform:uppercase;color:#8e8178;text-align:center}
.selected-clients-note{margin:16px auto 0;font-size:11px;line-height:1.7;letter-spacing:.03em;color:#8b8078;max-width:860px;text-align:center}
@keyframes vidiraClientsMarquee{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media (max-width:1024px){.selected-clients-marquee-track,.selected-clients-marquee-group{gap:20px}.selected-clients-marquee-group .client-brand-card{flex-basis:180px;width:180px}.client-brand-copy h3{font-size:14px;min-height:40px}}
@media (max-width:760px){.selected-clients-head,.selected-clients-head *{text-align:center}.selected-clients-head{align-items:center!important}.selected-clients-head::before{margin:0 auto}.selected-clients-head>p{font-size:14px}.selected-clients-marquee-track,.selected-clients-marquee-group{gap:16px}.selected-clients-marquee-group .client-brand-card{flex-basis:156px;width:156px}.client-brand-mark{height:64px}.client-brand-icon{max-height:48px}.client-brand-copy h3{font-size:13.5px;min-height:38px}.client-brand-copy p{font-size:9px}}
@media (max-width:480px){.selected-clients-marquee-group .client-brand-card{flex-basis:138px;width:138px;min-height:138px}.client-brand-mark{height:56px}.client-brand-icon{max-height:42px}.selected-clients-note{font-size:10px}}


/* V19 client marquee: exact centered copy + right-to-left direction */
.selected-clients-head{display:flex;flex-direction:column;align-items:center!important;justify-content:center!important;text-align:center!important;width:100%;margin-left:auto;margin-right:auto}
.selected-clients-head>div,.selected-clients-head>p,.selected-clients-head h2,.selected-clients-head .eyebrow{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
.selected-clients-head>div{max-width:1100px!important;width:100%}
.selected-clients-head h2{max-width:none!important;width:100%;line-height:1.04}
.selected-clients-head>p{max-width:880px!important;width:100%}
.selected-clients-head .eyebrow{text-transform:uppercase;letter-spacing:.16em}
.selected-clients-head::before{margin-left:auto!important;margin-right:auto!important}
.selected-clients-marquee-track{animation-name:vidiraClientsMarqueeRTL!important;animation-duration:50s!important;animation-timing-function:linear!important;animation-iteration-count:infinite!important}
@keyframes vidiraClientsMarqueeRTL{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:760px){.selected-clients-head,.selected-clients-head *{text-align:center!important}.selected-clients-head{align-items:center!important}.selected-clients-head>div,.selected-clients-head>p{max-width:100%!important}}


/* V20: bypass obsolete collection showcase */
#route-work .work-showcase{display:none}
#route-work .work-internal{display:block}


/* V21 verified client identity and logo visibility */
.client-brand-mark{background:transparent}
.client-brand-fallback[hidden]{display:none}
.client-brand-icon{max-width:min(172px,92%);max-height:68px;width:auto;height:auto;object-fit:contain;filter:none!important;opacity:1}
.client-brand-icon[src$="favicon.ico"],.client-brand-icon[src*="google.com/s2/favicons"]{max-width:72px;max-height:72px}
.client-brand-card:hover .client-brand-icon{filter:none!important}
@media(max-width:760px){.client-brand-icon{max-height:56px}.client-brand-icon[src$="favicon.ico"],.client-brand-icon[src*="google.com/s2/favicons"]{max-width:54px;max-height:54px}}


/* V22 publish-ready responsive hardening */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{overflow-x:hidden}
img,video,svg{max-width:100%}
a,button,input,select,textarea{touch-action:manipulation}
a,button{-webkit-tap-highlight-color:transparent}
.collection-preview-card--birthday,.collection-preview-card--milestone{grid-column:span 6;min-height:330px}
.work-internal-head{grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);display:grid;align-items:end}
.work-internal-head>div{min-width:0}
.work-internal-head>p{justify-self:end;width:100%}
@media(max-width:900px){
  .work-internal-head{display:grid;grid-template-columns:1fr;gap:14px;padding-top:28px}
  .work-internal-head>p{justify-self:start;max-width:720px}
  .collection-preview-card--birthday,.collection-preview-card--milestone{grid-column:span 6}
}
@media(max-width:760px){
  .collection-preview-card--birthday,.collection-preview-card--milestone{grid-column:auto}
  .work-side-category{min-height:44px;display:flex;align-items:center}
  .work-album-main{height:clamp(280px,94vw,420px)}
  .work-album-thumb{min-height:58px}
  .work-catalogue-sidebar{-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .work-catalogue-sidebar::-webkit-scrollbar{display:none}
  input,select,textarea{font-size:16px}
}
@media(hover:none){
  .collection-preview-card:hover img,.work-album-main:hover img,.work-album-thumb:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}


/* V24 — homepage philosophy rotating Collection gallery */
.about-media{position:relative;overflow:hidden}
.about-media-slideshow{position:relative;width:100%;height:100%;min-height:inherit;overflow:hidden;background:#e9e1d8;border-radius:2px;isolation:isolate}
.about-media-slideshow .about-slide{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center;opacity:0;transform:scale(1.055);transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform 3.4s cubic-bezier(.22,.61,.36,1);will-change:opacity,transform;z-index:1}
.about-media-slideshow .about-slide.is-active{opacity:1;transform:scale(1);z-index:2}
.about-slide-indicator{position:absolute;right:18px;bottom:16px;z-index:5;padding:7px 9px;background:rgba(20,10,12,.42);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);color:#fff;font-size:10px;line-height:1;letter-spacing:.14em;font-weight:600}
@media(max-width:900px){.about-media-slideshow{min-height:0}.about-slide-indicator{right:12px;bottom:12px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.about-media-slideshow .about-slide{transition:opacity .18s linear;transform:none}.about-media-slideshow .about-slide.is-active{transform:none}}

@media(max-width:760px){.floating-whatsapp{width:50px;height:50px}}
@media(max-width:390px){.floating-whatsapp{width:46px;height:46px;left:max(10px,env(safe-area-inset-left));bottom:max(10px,env(safe-area-inset-bottom))}}


/* V24 Gallery Update — user-tagged collection folders */
.work-album{content-visibility:auto;contain-intrinsic-size:900px}
.work-album-main img{width:100%;height:100%;object-fit:cover;display:block}
.work-album-thumbs{display:flex;grid-template-columns:none;gap:5px;padding:5px;background:#fff;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:rgba(77,18,32,.28) transparent;-webkit-overflow-scrolling:touch}
.work-album-thumbs::-webkit-scrollbar{height:6px}.work-album-thumbs::-webkit-scrollbar-thumb{background:rgba(77,18,32,.24);border-radius:99px}
.work-album-thumb{flex:0 0 108px;width:108px;height:82px;scroll-snap-align:start}
.work-album-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.work-album-info{position:sticky;top:110px}
@media(max-width:900px){.work-album-info{position:static}.work-album-thumb{flex-basis:92px;width:92px;height:70px}}
@media(max-width:520px){.work-album-thumbs{gap:4px;padding:4px}.work-album-thumb{flex-basis:78px;width:78px;height:60px}.work-album-list{gap:54px}}

/* === JOURNAL ARTICLE PAGES === */
.journal-article-page{padding-top:84px}
.journal-article-head{background:var(--wine);color:#fff;padding:clamp(48px,6vw,88px) 0 clamp(36px,5vw,60px)}
.journal-article-head .eyebrow{color:var(--champ);display:block;margin-bottom:12px}
.journal-article-head h1{font-size:clamp(34.2px,5vw,72px);line-height:.9;margin:0 0 16px;max-width:14em}
.journal-article-head time{font-size:11.7px;color:#c9bbb2;letter-spacing:.04em}
.journal-back-link{display:inline-block;font-size:10.8px;letter-spacing:.12em;text-transform:uppercase;color:var(--champ);margin-bottom:28px;transition:opacity .2s}
.journal-back-link:hover{opacity:.7}
.journal-article-hero{margin:0 auto;max-width:1100px;padding:0 clamp(15px,3.5vw,50px)}
.journal-article-hero img{width:100%;height:auto;max-height:560px;object-fit:cover;border-radius:0 0 3px 3px}
.journal-article{max-width:780px;margin:0 auto;padding:clamp(36px,5vw,64px) 0 clamp(24px,4vw,48px)}
.journal-article h2{font:400 clamp(27px,3.2vw,42px)/1.08 var(--serif);margin:48px 0 16px;color:var(--ink)}
.journal-article h3{font:400 clamp(22.5px,2.6vw,34px)/1.12 var(--serif);margin:40px 0 14px;color:var(--ink)}
.journal-article h4{font:400 clamp(18px,2vw,27px)/1.18 var(--serif);margin:32px 0 12px;color:var(--ink)}
.journal-article p{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 20px}
.journal-article a{color:var(--wine2);text-decoration:underline;text-underline-offset:3px}
.journal-article a:hover{color:var(--ink)}
.journal-article img{width:100%;height:auto;border-radius:3px;margin:28px 0}
.journal-article blockquote{border-left:3px solid var(--champ);margin:32px 0;padding:18px 0 18px 28px;font:italic clamp(18px,2vw,24px)/1.5 var(--serif);color:#4f4640}
.journal-article blockquote p{font:inherit;color:inherit;margin:0}
.journal-article ul,.journal-article ol{padding-left:24px;margin:0 0 20px}
.journal-article li{font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:8px}
.journal-article hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.journal-article pre{background:#1d1715;color:#efe7dc;padding:20px 24px;border-radius:3px;overflow-x:auto;font-size:13.5px;line-height:1.6;margin:24px 0}
.journal-article code{font-family:'SF Mono','Fira Code',monospace;font-size:.88em}
.journal-article-cta{max-width:780px;margin:0 auto;padding:0 0 clamp(48px,6vw,80px)}
.journal-card-placeholder{height:260px;background:linear-gradient(135deg,var(--paper),var(--ivory))}
@media(max-width:760px){.journal-article-page{padding-top:70px}.journal-article-hero{padding:0 16px}.journal-article{padding-left:0;padding-right:0}}

/* ---------------------------------------------------------------------------
   Primary CTA hover
   ---------------------------------------------------------------------------
   The base rule sets `background:currentColor` and `color:var(--ivory)` in the
   same declaration. currentColor resolves against the element's own color, so
   both landed on #f6f1ea and the label disappeared into the fill.

   The fill has to be a real colour, and it differs by context: on light ground
   the button fills ink with ivory text, on dark ground it fills white with wine
   text. Contexts set the pair; the button only consumes it.
--------------------------------------------------------------------------- */
.btn{--btn-fill:var(--ink);--btn-text:var(--ivory)}
.btn:hover,.btn:focus-visible{background:var(--btn-fill);color:var(--btn-text)}

.intro .btn,
.more-than-event .btn,
.concierge-box .btn,
.pageHero .btn,
.workHeroCopy .btn,
.clients-strip .btn,
.social-marquee .btn,
.drawer .btn,
footer .btn{--btn-fill:#fff;--btn-text:var(--wine)}

/* ── V24.1 — philosophy media panel: full bleed ─────────────────────────────
   The panel inset its image with padding (38px desktop / 16px mobile), which
   left a cream border on three sides. Worse, .about-media-slideshow takes
   `min-height:inherit` from .about-media — the parent's FULL height, not its
   padded content box — so the slideshow was ~76px taller than the space it sat
   in and spilled out under `overflow:hidden`, clipping unevenly at the top.
   Removing the padding fixes the border and the overflow together. */
.about-media{padding:0}
.about-media-slideshow{min-height:100%;border-radius:0}

/* The Ken Burns zoom animated transform over 3.4s while slides swap every
   3.4s, so a slide was always still moving when it was replaced — it never
   reached scale(1), sat permanently ~5% zoomed, and lost its edges. That is
   what read as "cropped from the top". Less movement, settled well before the
   swap. */
.about-media-slideshow .about-slide{
  transform:scale(1.028);
  transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform 2.4s cubic-bezier(.22,.61,.36,1)
}
.about-media-slideshow .about-slide.is-active{transform:scale(1)}

/* Re-assert the reduced-motion opt-out: the rules above are later in the
   cascade than the original @media block and would otherwise reinstate the
   zoom for users who asked for no animation. */
@media(prefers-reduced-motion:reduce){
  .about-media-slideshow .about-slide,
  .about-media-slideshow .about-slide.is-active{transition:opacity .18s linear;transform:none}
}

/* ── V24.1 — philosophy hero clears the fixed header ────────────────────────
   header.site is position:fixed at var(--header-h), so it paints over whatever
   is under it, and nothing on body/main/.route offsets for that at desktop.
   .about-hero was nonetheless sized `100svh - var(--header-h)` — as if the
   header were in flow — so the section started at y=0 behind the nav bar and
   finished a header's height short of the viewport, leaving .route's
   background showing as a strip at the bottom. One offset, both ends.

   Desktop only: below 901px the hero stacks and already sets its own
   padding-top with height:auto, which an unscoped rule here would clobber. */
@media(min-width:901px){
  .about-hero{padding-top:var(--header-h);min-height:100svh}
}
