/* One shared mauve palette and spacing rhythm for the public marketing site. */
:root{--mauve-ink:#392f3b;--mauve:#735b75;--mauve-deep:#574159;--mauve-paper:#fffdfe;--mauve-mist:#f3eff3;--mauve-line:#d8ced9}
body[data-mauve]{--studio-ink:#392f3b;--studio-wine:#735b75;--studio-muted:#716675;--studio-line:#d8ced9;--studio-paper:#fffdfe;--vr-ink:#392f3b;--vr-paper:#fffdfe;--vr-rose:#f3eff3;--vr-rule:#d8ced9;--teal:#735b75;--teal-dark:#574159;--teal-mid:#8d748f;--teal-pale:#f3eff3;--cream:#f3eff3;--cream2:#e9e1ea;--gold:#735b75;--model-ink:#574159;--model-paper:#fffdfe;--model-gold:#735b75;background:#fffdfe;color:#392f3b}
body[data-mauve] :is(.studio-header,.filter-bar-wrap,.vr-jump){background:#fffdfe;color:#392f3b}
body[data-mauve] :is(.studio-button,.model-button,.btn-primary,.nav-cta,.lp-nav-cta,.form-submit){background:#735b75;color:#fff;min-height:44px;width:fit-content;max-width:100%;flex:0 0 auto;align-self:start;padding:13px 22px;border-radius:3px;letter-spacing:.02em;white-space:normal;text-align:center}
body[data-mauve] :is(.studio-text-link,.vr-hero-secondary){width:fit-content;max-width:100%;gap:14px;min-height:44px;align-items:center}
body[data-mauve] :is(.studio-section,.studio-subhero,.vr-directory-hero){padding-block:64px}
body[data-mauve] :is(.studio-enquiry,.vr-directory-hero,.studio-subhero,.studio-datebar){background:#f3eff3;color:#392f3b}
body[data-mauve] .studio-footer{background:#574159;color:#fffdfe;padding-top:48px}
body[data-mauve] .studio-footer-top{padding-bottom:32px;gap:32px}
body[data-mauve] .studio-wordmark{font-size:48px!important;text-align:left;padding:0 5vw 24px!important;line-height:1.1}
body[data-mauve] .studio-registered{padding-top:20px;padding-bottom:24px;border-color:#99849b}
body[data-mauve] :focus-visible{outline:2px solid #735b75;outline-offset:4px}
/* Homepage: discrete chapters, quiet motion and a browsable photographic strip. */
body[data-guided-home][data-mauve] main>.studio-section{border-top:1px solid #d8ced9;background:#fffdfe;color:#392f3b}
body[data-guided-home][data-mauve] :is(#services,#client-feedback,#portal-preview,#enquiry){background:#f3eff3;color:#392f3b}
body[data-guided-home][data-mauve] .studio-section h2{font-size:clamp(34px,4vw,54px);line-height:1.08;max-width:24ch;margin-bottom:24px}
body[data-guided-home][data-mauve] .studio-section-heading{align-items:end;gap:24px;margin-bottom:24px}
body[data-guided-home][data-mauve] :is(.studio-section-heading p,.studio-service-grid p){color:#716675}
body[data-guided-home][data-mauve] #services .studio-service-grid{gap:40px;margin-top:28px}
body[data-guided-home][data-mauve] #services .studio-service-grid>a{border-color:#d8ced9;padding-block:24px}
body[data-guided-home][data-mauve] .motion-bloom{display:block;width:130px;right:0;opacity:.8}
body[data-guided-home][data-mauve] .method-story{display:grid;gap:24px}
body[data-guided-home][data-mauve] .method-story>.motion-step{position:relative!important;top:auto!important;min-height:340px;margin:0;grid-template-columns:1fr 1fr;background:#f3eff3;color:#392f3b;transform:none!important;border:0}
body[data-guided-home][data-mauve] .method-story .motion-step-copy{padding:36px}
body[data-guided-home][data-mauve] .method-story .motion-step-copy h3{font-size:36px;line-height:1.12;max-width:18ch}
body[data-guided-home][data-mauve] .method-story .motion-step-copy p{color:#716675}
body[data-guided-home][data-mauve] :is(.method-art,.method-brief-image){height:340px;min-height:0}
body[data-guided-home][data-mauve] .method-cues{padding:24px 36px;color:#392f3b}
body[data-guided-home][data-mauve] .method-cues>div{border-color:#d8ced9;padding:19px 0}
body[data-guided-home][data-mauve] .method-cues :is(time,span,p){color:#716675}
body[data-guided-home][data-mauve] .method-cues strong{font-size:26px}
body[data-guided-home][data-mauve] .method-number{color:#716675}
body[data-guided-home][data-mauve] [data-home-gallery] .media-grid{display:grid!important;grid-auto-flow:column;grid-template-rows:repeat(2,230px);grid-auto-columns:250px;columns:unset;gap:18px;overflow-x:auto;padding-bottom:18px;scroll-snap-type:x proximity;scrollbar-color:#8d748f #f3eff3}
body[data-guided-home][data-mauve] [data-home-gallery] .media-piece{margin:0!important;height:230px;min-width:0;scroll-snap-align:start}
body[data-guided-home][data-mauve] [data-home-gallery] .media-piece>a{height:100%;display:block}
body[data-guided-home][data-mauve] [data-home-gallery] .media-piece img{height:230px;width:100%;object-fit:cover}
body[data-guided-home][data-mauve] .gallery-detail summary{background:#574159;color:#fff}
.gallery-strip-controls{display:flex;align-items:center;gap:12px;margin:18px 0 0;font-size:13px;color:#716675}
.gallery-strip-controls button{background:transparent;color:#574159;border:1px solid #d8ced9;width:44px;height:44px;font-size:22px;cursor:pointer}
body[data-guided-home][data-mauve] #portal-preview :is(h2,h3,h4,.portal-list strong,.portal-next,.portal-full-link,.portal-team h4,.portal-guest-flow){color:#392f3b}
body[data-guided-home][data-mauve] #portal-preview :is(p,small,.portal-brand,.portal-position,.portal-chapter-hint,.portal-navigation button,.portal-list span,.portal-list small,.portal-swatches span,.portal-afterword,.home-portal-links){color:#716675}
body[data-guided-home][data-mauve] #portal-preview :is(.portal-sidebar,.portal-controls,.portal-list>div,.portal-team,.portal-full-link){border-color:#d8ced9}
body[data-guided-home][data-mauve] #portal-preview .portal-navigation button[aria-selected=true]{color:#574159;border-color:#735b75}
body[data-guided-home][data-mauve] #portal-preview .portal-design-notes,body[data-guided-home][data-mauve] #portal-preview .portal-meeting{background:#fffdfe;color:#392f3b}
body[data-guided-home][data-mauve] #portal-preview .portal-heading{margin-bottom:28px}
body[data-guided-home][data-mauve] #portal-preview .portal-panel{min-height:0}
body[data-guided-home][data-mauve] #portal-preview .portal-design{grid-template-rows:300px auto}
body[data-guided-home][data-mauve] #portal-preview .portal-design figure{height:340px}
body[data-guided-home][data-mauve] #portal-preview .portal-panel h3{font-size:42px}
body[data-guided-home][data-mauve] #portal-preview .portal-design-plane{transform:rotate(-3deg)}
body[data-guided-home][data-mauve] #portal-preview .portal-design figure{transform:none}
/* Venue files: one overview, compact images, one model and a clear reading order. */
body[data-mauve].vr-page .vr-hero{padding:40px max(24px,5vw);gap:48px;background:#f3eff3;max-width:none}
body[data-mauve].vr-page .vr-hero h1{font-size:clamp(38px,4.3vw,64px);line-height:1.08}
body[data-mauve].vr-page .vr-hero-image img{height:360px;object-fit:cover}
body[data-mauve].vr-page .vr-hero-copy .studio-eyebrow{margin:18px 0}
body[data-mauve].vr-page .vr-content{width:min(1120px,90vw)}
body[data-mauve].vr-page :is(.vr-section,.vr-answer){padding-block:40px}
body[data-mauve].vr-page .vr-section h2{font-size:34px;margin-bottom:22px}
body[data-mauve].vr-page :is(.vr-gallery,.pg-fl-gallery){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;columns:unset}
body[data-mauve].vr-page :is(.vr-gallery,.pg-fl-gallery) figure{margin:0;min-width:0}
body[data-mauve].vr-page :is(.vr-gallery,.pg-fl-gallery) img{width:100%!important;height:220px!important;object-fit:contain!important;background:#f3eff3}
body[data-mauve].vr-page :is(.vr-gallery,.pg-fl-gallery) figcaption{font-size:12px;line-height:1.5;margin-top:8px}
body[data-mauve].vr-page .vr-enquiry{background:#f3eff3;color:#392f3b;padding:36px;margin:36px 0;gap:40px}
body[data-mauve].vr-page .vr-enquiry :is(.studio-eyebrow,p){color:#716675}
body[data-mauve].vr-page .vr-enquiry .studio-button{background:#735b75;color:#fff!important}
.venue-section-nav{display:flex;gap:24px;overflow-x:auto;white-space:nowrap;padding:16px 5vw;border-bottom:1px solid #d8ced9;background:#fffdfe;font-size:13px}
.venue-section-nav a{color:#574159;text-decoration:none;min-height:44px;display:flex;align-items:center}
body[data-mauve] .venue-model-preview{display:grid;grid-template-columns:1fr 230px;gap:40px;align-items:center;background:#f3eff3;padding:32px;margin:40px 0;color:#392f3b}
body[data-mauve] .venue-model-preview h2{font-size:32px;line-height:1.15;margin:0 0 16px}
body[data-mauve] .venue-model-preview video{width:100%;height:300px;object-fit:contain;background:#e9e1ea;display:block;margin:0}
body[data-mauve] .venue-model-preview p{font-size:15px;line-height:1.65}
body[data-mauve] .venue-model-preview .model-caption{font-size:12px;color:#716675;margin-top:16px}
.venue-planning-details{border-top:1px solid #d8ced9;padding-block:22px;margin:20px 0}
.venue-planning-details>summary{cursor:pointer;font:400 30px/1.2 'Cormorant Garamond',serif;color:#574159;min-height:44px}
.venue-planning-details .vr-section{border-top:0;border-bottom:1px solid #d8ced9}
/* Dedicated city pages: twelve cards, ordinary links and compact pagination. */
body[data-venue-directory] .page-hdr{padding:38px 5vw 28px!important;min-height:0!important;background:#f3eff3;color:#392f3b}
body[data-venue-directory] .page-hdr h1{font-size:clamp(38px,4.4vw,62px);line-height:1.1}
body[data-venue-directory] .city-desc{max-width:75ch;font-size:14px;line-height:1.65;color:#716675}
body[data-venue-directory] .city-hd-name-inner{transform:none!important;opacity:1!important}
body[data-venue-directory] .city-sec{margin:0;padding-block:32px}
body[data-venue-directory] .vgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
body[data-venue-directory] .vc{background:#fffdfe;border:0!important;border-bottom:1px solid #d8ced9!important;border-radius:0!important;transform:none!important;opacity:1!important;box-shadow:none!important}
body[data-venue-directory] :is(.vc-img,.vc-bg){height:220px!important;aspect-ratio:auto}
body[data-venue-directory] .vc-img img{width:100%;height:220px;object-fit:cover}
body[data-venue-directory] :is(.vc-gold-border,.img-wipe-overlay,.vc-arrow){display:none!important}
body[data-venue-directory] .vc-info{padding:18px 0 24px}
body[data-venue-directory] .vc-name{font-size:27px;color:#392f3b}
body[data-venue-directory] :is(.vc-desc,.vc-area,.vc-type){color:#716675}
body[data-venue-directory] .fbt{display:inline-flex;text-decoration:none;align-items:center;gap:7px;padding:11px 17px;border:1px solid #d8ced9!important;color:#574159;background:transparent;border-radius:3px;min-height:44px}
body[data-venue-directory] .fbt.on{background:#735b75!important;color:#fff!important}
body[data-venue-directory] .fbc{background:transparent!important;color:inherit!important}
.venue-pagination{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin:32px 0 50px}
.venue-pagination a,.venue-pagination span,.venue-pagination button{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:10px 14px;text-decoration:none;border:1px solid #d8ced9;color:#574159;font-size:14px}
.venue-pagination [aria-current=page]{background:#735b75;color:#fff;border-color:#735b75}
body[data-venue-directory] .venue-empty{padding:48px 0;background:#f3eff3;text-align:center}
@media(max-width:760px){
 body[data-mauve] :is(.studio-section,.studio-subhero,.vr-directory-hero){padding-block:40px}
 body[data-mauve] .studio-wordmark{font-size:36px!important}
 body[data-guided-home][data-mauve] .method-story>.motion-step{grid-template-columns:1fr;min-height:0;gap:0}
 body[data-guided-home][data-mauve] .method-story .motion-step-copy{padding:26px}
 body[data-guided-home][data-mauve] :is(.method-art,.method-brief-image){height:260px}
 body[data-guided-home][data-mauve] .method-story .motion-step-copy h3{font-size:31px}
 body[data-guided-home][data-mauve] [data-home-gallery] .media-grid{grid-template-rows:340px;grid-auto-columns:76vw;gap:14px}
 body[data-guided-home][data-mauve] [data-home-gallery] .media-piece,body[data-guided-home][data-mauve] [data-home-gallery] .media-piece img{height:340px}
 body[data-guided-home][data-mauve] #portal-preview .portal-panel h3{font-size:34px}
 body[data-guided-home][data-mauve] #portal-preview .portal-design{grid-template-rows:230px auto}
 body[data-guided-home][data-mauve] #portal-preview .portal-design figure{height:260px}
 body[data-mauve].vr-page .vr-hero{grid-template-columns:1fr;gap:24px;padding:28px 5vw}
 body[data-mauve].vr-page .vr-hero-image img{height:260px}
 body[data-mauve].vr-page :is(.vr-gallery,.pg-fl-gallery){grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 body[data-mauve].vr-page :is(.vr-gallery,.pg-fl-gallery) img{height:160px!important}
 body[data-mauve].vr-page .vr-section h2{font-size:28px}
 body[data-mauve].vr-page .vr-enquiry{grid-template-columns:1fr;padding:26px;gap:24px}
 body[data-mauve] .venue-model-preview{grid-template-columns:1fr;gap:20px;padding:24px;margin:28px 0}
 body[data-mauve] .venue-model-preview video{height:280px;width:180px;justify-self:center}
 body[data-venue-directory] .vgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}
 body[data-venue-directory] :is(.vc-img,.vc-bg),body[data-venue-directory] .vc-img img{height:170px!important}
 body[data-venue-directory] .vc-name{font-size:23px}
 body[data-venue-directory] .vc-desc{font-size:12px;line-height:1.55}
 body[data-venue-directory] .vsearch{max-width:none!important}
}
@media(max-width:420px){body[data-venue-directory] .vgrid{grid-template-columns:1fr}body[data-venue-directory] :is(.vc-img,.vc-bg),body[data-venue-directory] .vc-img img{height:220px!important}}

/* The studio process is the one scroll composition; reading pages stay still. */
@media(min-width:1000px) and (min-height:780px) and (prefers-reduced-motion:no-preference){
 body[data-guided-home][data-mauve].motion-enabled .method-story>.motion-step{position:sticky!important;top:calc(96px + var(--step-index)*14px)!important;border:1px solid #d8ced9;margin-bottom:60px;min-height:390px}
}
body[data-venue-directory] .city-sec{margin-bottom:0}
body[data-venue-directory] :is(.vc-gold-border,.img-wipe-overlay,.vc-rat,.vc-desc){display:none}
body[data-venue-directory] .vc{border:1px solid #d8ced9;background:#fffdfe;box-shadow:none;transform:none!important}
body[data-venue-directory] .vc-body{padding:20px}
body[data-venue-directory] .vc-name{font-size:27px;line-height:1.15;margin:8px 0 16px}
body[data-venue-directory] .vc-foot{border-color:#d8ced9;padding-top:16px;gap:12px}
body[data-venue-directory] .vc-bg{background:#f3eff3!important}
body[data-venue-directory] .vc-bg img{object-fit:cover}
body[data-venue-directory] .ph{padding-block:44px!important;background:#f3eff3}
body[data-venue-directory] .fb{border-color:#d8ced9;background:#fffdfe}
body[data-venue-directory] .filter-btn{text-decoration:none}
body[data-venue-directory] .filter-btn:focus-visible{outline:2px solid #574159;outline-offset:3px}
body[data-mauve] .motion-controls{color:#574159;border-color:#d8ced9;background:#fffdfe;min-height:44px}
body[data-mauve] .studio-button:hover{background:#574159}
@media(max-width:760px){body[data-guided-home][data-mauve] .motion-bloom{width:70px;opacity:.45}body[data-guided-home][data-mauve] #services .studio-section-heading h2{padding-right:60px}}
/* Reset inherited masonry columns and colour exceptions before applying the shared system. */
body[data-guided-home][data-mauve] .studio-hero .studio-button--light{background:#fffdfe;color:#574159!important;border-color:#fffdfe}
body[data-guided-home][data-mauve] #how-we-work{background:#f3eff3}
body[data-guided-home][data-mauve] #how-we-work>.studio-container>h2{font-size:clamp(36px,4vw,54px);max-width:22ch}
body[data-guided-home][data-mauve] .method-story{grid-template-columns:minmax(0,1fr);gap:24px}
body[data-guided-home][data-mauve] .method-story .motion-step-copy a{color:#574159}
body[data-guided-home][data-mauve] [data-home-gallery] .media-grid{grid-template-columns:none!important}
body[data-guided-home][data-mauve] [data-home-gallery] .media-piece{overflow:hidden}
body[data-guided-home][data-mauve] [data-home-gallery] .media-piece picture{display:block;width:100%;height:100%}
body[data-guided-home][data-mauve] [data-home-gallery] .media-piece img{height:100%!important;min-height:100%;width:100%!important;object-fit:cover!important;aspect-ratio:auto!important}
body[data-guided-home][data-mauve] [data-home-gallery] .media-piece figcaption{position:absolute;inset:auto 10px 10px;max-width:calc(100% - 20px);width:auto}
body[data-guided-home][data-mauve] [data-home-gallery] .gallery-detail{margin-left:auto;width:fit-content;max-width:100%}
body[data-guided-home][data-mauve] [data-home-gallery] .gallery-detail[open]{width:100%}
body[data-guided-home][data-mauve] [data-home-gallery] .gallery-detail>div{max-height:160px;overflow:auto;background:#fffdfe;color:#392f3b}
body[data-mauve].vr-page :is(.vr-gallery,.pg-fl-gallery) img{object-fit:cover!important}
body[data-mauve] :is(.vc-cap,.vc-arr,.vc-type,.city-name,.vr-update-box a){color:#574159!important}
body[data-mauve] .vc-type{background:#fffdfe!important;border-color:#d8ced9;letter-spacing:.06em}
body[data-mauve] :is(.pg-update-alert,.vr-update-box,.venue-alert){background:#f3eff3;border-color:#d8ced9}
body[data-mauve] :is(.pg-fl-gallery,.vr-gallery) figcaption details>summary{cursor:pointer;color:#574159;min-height:44px;display:flex;align-items:center;font-size:13px}
body[data-mauve] :is(.pg-fl-gallery,.vr-gallery) figcaption details>div{padding:4px 0 12px}
/* Legacy controls use the same palette, with separate positions and native focus. */
body[data-mauve] :is(.waf,.wa-float,.whatsapp-float,.mobile-cta,.mobile-cta .mc-wa,.mobile-cta .mc-quote,.mobile-cta a){background:#735b75!important;color:#fff!important;border-color:#d8ced9!important}
body[data-mauve] #back-top{right:24px!important;bottom:96px!important;width:44px!important;height:44px!important;background:#574159!important;color:#fff!important;border:1px solid #d8ced9!important;backdrop-filter:none!important}
body[data-mauve] .pg-sl-watch{background:#f3eff3!important;border-color:#d8ced9!important;border-radius:3px!important;padding:20px}
body[data-mauve] .pg-sl-btn{color:#574159!important;border-color:#735b75!important;background:#fffdfe!important;min-height:44px;width:fit-content}
body[data-mauve] .studio-context{font:400 14px/1.6 var(--studio-body,'DM Sans',sans-serif);letter-spacing:0;text-transform:none;color:#716675;margin:12px 0 20px}
body[data-mauve] .studio-hero .studio-context{color:#fff;max-width:55ch}
body[data-mauve] .vc-area{letter-spacing:0;text-transform:none;font-size:13px;color:#716675;margin:0 0 16px}
body[data-mauve] .vc-body .vc-name{margin-top:0;margin-bottom:8px}
@media(max-width:900px){body[data-mauve] #back-top{display:none!important}body[data-mauve] .mobile-cta a{min-height:44px}}
body[data-guided-home][data-mauve] .studio-hero .hero-h1{display:flex;flex-direction:column}
body[data-guided-home][data-mauve] .studio-hero .hero-h1>.h1-line:first-child{order:2;margin-top:24px}
body[data-guided-home][data-mauve] .studio-hero .hero-h1 .h1-kicker{font-size:14px!important;letter-spacing:0!important;text-transform:none!important;margin:0!important;line-height:1.6!important}
body[data-venue-directory] .vc-type{font-size:11px;letter-spacing:0!important;text-transform:none!important}
body[data-venue-directory] .vc-area{letter-spacing:0!important;text-transform:none!important;font-weight:400!important}
body[data-venue-directory] .vc{display:flex;flex-direction:column}
body[data-venue-directory] .vc-body{display:flex;flex-direction:column;flex:1}
body[data-venue-directory] .vc-foot{margin-top:auto}
body[data-mauve] :is(#scroll-prog,.sec-div-line){background:#d8ced9!important}
body[data-mauve] .sec-div-diamond{color:#735b75!important}
body[data-mauve] .waf::after{border-color:#d8ced9!important;box-shadow:none!important}
body[data-mauve]>.venue-model-preview{max-width:1120px;margin:40px auto;width:90%}
body[data-mauve] :is(.bg-cream,.lp-section.bg-cream){background:#f3eff3}
