/* CAPTURE 369 — approved Dual Signature V1.0; progressive visual layer. */
:root{
  --capture-ink:#101113;--capture-surface:#292A2D;--capture-ivory:#F3EEE4;
  --capture-gold:#DCB675;--capture-muted:#C9C5BE;--capture-line:#DCB67533;
  --capture-body:'Manrope',Arial,sans-serif;--capture-display:'Cormorant Garamond',Georgia,serif;
  --capture-radius:24px;--capture-ease:cubic-bezier(.18,.8,.2,1);
}
body[data-capture-theme="brand"],body[data-capture-theme="editorial"],body[data-capture-theme="holiday"]{
  --bg:var(--capture-ink);--ink:var(--capture-ink);--panel:var(--capture-surface);
  --paper:var(--capture-ivory);--text:var(--capture-ivory);--gold:var(--capture-gold);
  background:var(--capture-ink);color:var(--capture-ivory);
}
/* Approved flat gold for interface accents; logo gloss comes from the original SVG. */
body[data-capture-theme="brand"],body[data-capture-theme="editorial"],body[data-capture-theme="holiday"]{--gold:var(--capture-gold)}
body:is([data-capture-theme="brand"],[data-capture-theme="editorial"],[data-capture-theme="holiday"]) :is(h1 em,h2 em,.eyebrow,.text-link,.event-gallery-link,.service-breadcrumb a,.experience-strip,.experience-inquiry label,.experience-footer h2){color:var(--capture-gold)}
body[data-capture-theme="light"]{--capture-surface:#E9E1D4;background:var(--capture-ivory)}
body[data-capture-theme]{font-family:var(--capture-body);font-size:16px;line-height:1.7}
body[data-capture-theme] :is(button,input,select,textarea){font-family:var(--capture-body)}
body[data-capture-theme] :is(h1,h2){font-family:var(--capture-display)}
body[data-capture-theme="child"] :is(h1,h2,h3){font-family:var(--capture-body);font-weight:700;letter-spacing:-.035em}
.capture-brand,.experience-brand,.visual-wordmark{display:inline-flex;align-items:center;line-height:1;letter-spacing:0;flex:0 0 auto}
.capture-brand-logo{display:block;object-fit:contain;height:auto;max-width:100%;border-radius:0!important}
.capture-header-logo{width:225px;height:auto}
.capture-footer-logo{width:270px;height:auto}
.capture-footer .capture-footer-logo,.experience-footer .capture-footer-logo,.visual-footer .capture-footer-logo{width:270px;max-width:100%;height:auto}
.visual-footer-wordmark{display:inline-block}.visual-footer-descriptor{display:none}
body[data-capture-theme] footer :is(.capture-signature,.capture-logo){width:270px;height:auto;border-radius:0}
body[data-capture-theme] :is(.capture-footer,.experience-footer,.visual-footer){border-color:var(--capture-line)}
body[data-capture-theme] :is(.capture-footer,.experience-footer,.visual-footer),body[data-capture-theme="light"] footer.footer.wrap{background:var(--capture-ink);color:var(--capture-ivory)}
body[data-capture-theme] .capture-header{border-color:var(--capture-line)}
body[data-capture-theme="brand"] :is(.button,.nav-quote,.nav-cta),
body[data-capture-theme="editorial"] :is(.button,.nav-quote,.nav-cta),
body[data-capture-theme="holiday"] :is(.button,.nav-quote,.nav-cta),
body[data-capture-theme] .visual-primary{background:var(--capture-gold);color:var(--capture-ink);border-color:var(--capture-gold)}
body[data-capture-theme="light"] :is(.eyebrow,.text-link){color:#775327}
body[data-capture-theme="light"] .hero .eyebrow{color:var(--capture-gold)}
.capture-byline-logo{width:160px;height:auto;margin-block:8px}
.cgp-toolbar .capture-gallery-logo{width:115px;height:auto;max-height:none;border-radius:0}
/* Decorative, rotated photographs may extend a few pixels; clip only their frame. */
body[data-capture-theme="partner"] .hero-visual{overflow:clip}
body[data-capture-theme="light"] .hero,
body[data-capture-theme="partner"] .hero:not(:has(.hero-visual)){border-radius:0 0 44px 44px;overflow:clip}
/* Same three consent choices and handlers, in a compact visual presentation. */
body[data-capture-theme] .capture-consent{padding:14px;border-radius:18px;background:#101113f7;border-color:#DCB67566}
body[data-capture-theme] .capture-consent>strong{font-size:13px}
body[data-capture-theme] .capture-consent>p{font-size:12px;line-height:1.5;margin:8px 0 12px}
body[data-capture-theme] .capture-consent-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body[data-capture-theme] .capture-consent-actions button{min-height:48px;padding:8px;font-size:12px;line-height:1.3;border-radius:12px;border-color:#DCB67588}
body[data-capture-theme] .capture-consent-actions button:nth-child(2){background:var(--capture-gold);color:var(--capture-ink)}
body[data-capture-theme] :is(.button,.nav-quote,.nav-cta,.persistent-cta,.visual-primary,.visual-quick){
  border-radius:999px;min-height:48px;transition:transform 240ms var(--capture-ease),box-shadow 240ms var(--capture-ease),background-color 220ms ease;
}
body[data-capture-theme] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-radius:14px}
body[data-capture-theme] :is(.card,.package,.package-card,.experience-card,.visual-event-card,.cgp-tablet,.gallery-demo){border-radius:24px}
body[data-capture-theme] :is(.visual-cover img,.visual-event-photo img,.photo-open,.guide-article img,.visual-card,.visual-hero,.contact){border-radius:28px}
body[data-capture-theme] :is(.visual-event-photo,.moment-open,.moment-image,.photo-open,.visual-card){overflow:hidden}
body[data-capture-theme] :is(.visual-cover img,.visual-event-photo img,.moment-open img,.moment-image img,.photo-open img,.visual-card>img){transition:transform 650ms var(--capture-ease)}
body[data-capture-theme] :is(a,button,summary,input,select,textarea):focus-visible{outline:3px solid var(--capture-gold);outline-offset:5px}
body[data-capture-theme="light"] :is(a,button,summary,input,select,textarea):focus-visible,
body[data-capture-theme="child"] :is(a,button,summary,input,select,textarea):focus-visible{outline-color:#775327}
.capture-curve{position:relative;isolation:isolate;background:var(--capture-surface);border-radius:clamp(28px,5vw,64px) clamp(28px,5vw,64px) 24px 24px;padding-inline:clamp(20px,4vw,48px);border-top-color:transparent;margin-block:32px}
.capture-watermark{position:relative;isolation:isolate}
.capture-watermark::after{content:'';position:absolute;right:24px;top:24px;width:120px;height:120px;background:url('/shared/identity-v1/symbol-369-oscuro.svg') center/contain no-repeat;opacity:.055;pointer-events:none;z-index:-1}
/* First viewport stays visible. Animation is applied only to below-fold elements in JS. */
.capture-enter{animation:capture-enter 650ms var(--capture-ease) both;animation-delay:var(--capture-delay,0ms)}
@keyframes capture-enter{from{opacity:.35;transform:translateY(22px)}to{opacity:1;transform:none}}
/* The former full-screen Black intro delayed access to the hero. */
.visual-black-intro{display:none!important}
.visual-motion .visual-primary{animation:none}
body[data-founder-portrait="approved-v2"] .black-v21-intro{display:none!important}
body[data-founder-portrait="approved-v2"] :is(.founder-portrait,.visual-hero-copy,.visual-primary,.visual-quick-grid){opacity:1!important;animation:none!important}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  body[data-capture-theme] :is(.button,.nav-quote,.nav-cta,.visual-primary,.visual-quick):hover{transform:translateY(-2px);box-shadow:0 10px 26px #0003}
  body[data-capture-theme] :is(.moment-open,.moment-image,.photo-open,.visual-card):hover>img{transform:scale(1.035)}
  body[data-capture-theme] :is(.button,.nav-cta,.visual-primary,.visual-quick):active{transform:scale(.98)}
}
@media(max-width:650px){
  body[data-capture-theme]{font-size:16px}
  .capture-header-logo{width:150px}
  .capture-footer .capture-footer-logo,.experience-footer .capture-footer-logo,.visual-footer .capture-footer-logo,
  body[data-capture-theme] footer :is(.capture-signature,.capture-logo){width:250px}
  body[data-capture-theme] :is(.card,.package,.package-card,.experience-card,.visual-event-card){border-radius:18px}
  body[data-capture-theme] :is(.visual-cover img,.visual-event-photo img,.photo-open,.guide-article img,.visual-card,.visual-hero,.contact){border-radius:20px}
  .capture-curve{margin-block:24px;border-radius:36px 36px 20px 20px}
  .experience-header,.capture-header{gap:12px}
  .capture-watermark::after{width:86px;height:86px;right:18px;top:18px}
}
@media(max-width:380px){.capture-header-logo{width:132px}.experience-header .nav-cta{padding-inline:12px;font-size:12px}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  body[data-capture-theme] *,body[data-capture-theme] *::before,body[data-capture-theme] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  body[data-capture-theme] :is(.button,.nav-cta,.visual-primary,.visual-quick,.moment-open,.moment-image,.photo-open,.visual-card):hover,
  body[data-capture-theme] :is(.moment-open,.moment-image,.photo-open,.visual-card):hover>img{transform:none!important}
}
