/* Reference-matched hero. All overrides are confined to this hero and its header. */
.reference-header{height:80px;padding:0 5.3%;background:#0c100c;border-bottom-color:#e2e7d20c}
.reference-header .brand{font-size:21px;font-weight:550;letter-spacing:-1px;gap:11px}
.reference-header .brand-mark{font-size:25px}
.reference-header nav{font-size:12px;gap:30px;color:#d4d7cd}
.reference-header .button.small{font-size:12px;font-weight:600;min-width:150px;padding:14px 16px;border-radius:4px;gap:28px;border-color:#b6c39470}
.hero.reference-hero{min-height:755px;height:100svh;max-height:1000px;padding:0;position:relative;background:#0c100c;overflow:hidden}
.reference-hero .hero-copy{position:absolute;left:13%;top:18.2%;width:37%;z-index:3;animation:reference-copy-in 1s ease-out both}
.reference-hero .hero-copy .eyebrow{font-size:9px;line-height:16px;letter-spacing:2px;gap:14px;color:#d5dbcd;white-space:nowrap}
.reference-hero .eyebrow .line{width:24px;flex-shrink:0;background:#cbd4b58c}
.reference-hero h1{font-family:'Manrope',sans-serif;font-weight:400;font-size:clamp(55px,4.55vw,74px);line-height:1.045;letter-spacing:-3px;margin:32px 0 28px;color:#f0f0e8}
.reference-hero h1 em{font-family:Georgia,'Times New Roman',serif;font-size:1.02em;font-weight:400;line-height:1.02;letter-spacing:-2px;color:#bac69d}
.reference-hero .hero-copy>p{font-size:14px;font-weight:400;line-height:1.68;max-width:430px;color:#b0b6a9;margin:0 0 23px;letter-spacing:-.2px}
.reference-hero .hero-copy .button.primary{height:56px;padding:15px 18px;min-width:168px;gap:33px;border-radius:4px;font-size:12px;font-weight:650;color:#202718;background:linear-gradient(120deg,#dce4c5,#cbd6ae);border:1px solid #e4edd038;box-shadow:0 2px 12px #ccdba80d}
.reference-hero .hero-copy .button.primary:hover{background:linear-gradient(120deg,#e5ebd4,#d6e0bd);box-shadow:0 5px 22px #ccdba820;transform:translateY(-2px)}
.reference-hero .hero-copy .button span{font-size:19px}
.reference-hero .micro{font-size:10px;line-height:14px;letter-spacing:0;margin-top:9px;color:#9ea593}
.hero.reference-hero .hero-art.reference-art{position:absolute;left:49.35%;right:auto;top:15.2%;bottom:auto;width:43.75%;height:auto;aspect-ratio:700/530;opacity:1;animation:none;isolation:isolate;perspective:1300px}
.reference-art .reference-depth{position:absolute;inset:0;transform:none!important;transition:none;pointer-events:none}
.hero.reference-hero .art-label{position:absolute;z-index:2;display:flex;flex-direction:column;gap:6px;border-top:0;border-bottom:1px solid #b1bd8959;padding:0 0 9px;font-size:9px;line-height:1.8;letter-spacing:2px;color:#d1d7c7;pointer-events:none}
.reference-hero .art-label span{margin:0;font-size:9px;color:inherit}
.hero.reference-hero .label-me{left:0;top:17.6%;right:auto;width:100px}
.hero.reference-hero .label-them{left:80.4%;top:31.7%;right:auto;bottom:auto;width:103px}
.hero.reference-hero .art-caption{left:74.2%;right:auto;bottom:5.8%;top:auto;white-space:nowrap;font:italic 15px/1.4 Georgia,'Times New Roman',serif;color:#b7c09f;text-align:left}
.reference-hero .hero-bottom{left:5.35%;right:5.35%;height:75px;border-top:1px solid #e4ead514;color:#8c967e;font-size:9px;letter-spacing:1.15px}
.reference-hero .hero-bottom a{font-size:11px;color:#d8ddcf;font-weight:500}
.reference-hero .hero-bottom a span{margin-left:25px}
.reference-hero .hero-bottom i{color:#768269;margin:0 14px}
@keyframes reference-copy-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(min-width:1800px){.reference-hero .hero-copy{left:calc(50% - 590px)}.hero.reference-hero .hero-art.reference-art{width:760px;left:calc(50% - 10px);top:15.2%}}
@media(min-width:701px) and (max-width:1200px){.hero.reference-hero{min-height:720px}.reference-hero .hero-copy{left:8%;top:20%;width:44%}.reference-hero h1{font-size:clamp(49px,5.1vw,62px);letter-spacing:-2.5px}.reference-hero h1 em{letter-spacing:-1.8px}.reference-hero .hero-copy>p{font-size:13px;max-width:360px}.reference-break{display:none}.hero.reference-hero .hero-art.reference-art{left:49%;top:24%;width:51%}.hero.reference-hero .label-me,.hero.reference-hero .label-them{display:none}.hero.reference-hero .art-caption{left:67%;font-size:13px}.reference-hero .hero-copy .eyebrow{font-size:7px;letter-spacing:1.4px;gap:10px}.reference-header nav{gap:20px}}
@media(max-width:700px){.reference-header{height:76px;padding:0 6%}.reference-header .brand{font-size:18px;gap:7px}.reference-header .brand-mark{font-size:22px}.reference-header .button.small{min-width:0;font-size:10px;padding:9px 11px;gap:13px}.hero.reference-hero{height:auto;min-height:0;max-height:none;padding:119px 7% 66px}.reference-hero .hero-copy{position:relative;left:auto;top:auto;width:100%}.reference-hero .hero-copy .eyebrow{font-size:7px;letter-spacing:1.4px;gap:10px;white-space:normal}.reference-hero h1{font-size:clamp(43px,11.5vw,65px);line-height:1.06;letter-spacing:-2px;margin:25px 0 25px}.reference-hero h1 em{letter-spacing:-1.4px}.reference-hero .hero-copy>p{font-size:13px;max-width:355px;line-height:1.75;margin-bottom:23px}.reference-break{display:none}.reference-hero .hero-copy .button.primary{height:51px;min-width:160px;font-size:11px}.reference-hero .micro{font-size:9px}.hero.reference-hero .hero-art.reference-art{position:relative;width:116%;left:-7%;top:auto;bottom:auto;margin:27px 0 0;aspect-ratio:700/530;pointer-events:none}.hero.reference-hero .label-me{display:flex;left:3%;top:18%;width:52px;font-size:7px;letter-spacing:1.3px}.hero.reference-hero .label-them{display:flex;left:81%;top:30%;width:62px;font-size:7px;letter-spacing:1.3px}.reference-hero .art-label span{font-size:7px}.hero.reference-hero .art-caption{left:74%!important;bottom:3%;font-size:11px}.reference-hero .hero-bottom{left:7%;right:7%;height:57px;font-size:7px;letter-spacing:.7px}.reference-hero .hero-bottom>span:first-child{display:none}.reference-hero .hero-bottom a{font-size:10px}.reference-hero .hero-bottom>span:last-child{font-size:8px}.reference-hero .hero-bottom i{margin:0 8px}}
@media(prefers-reduced-motion:reduce){.reference-hero .hero-copy,.reference-art .reference-crop,.reference-art .mirror-sheen{animation:none!important;transform:none!important;filter:none!important;opacity:1}.reference-art .mirror-sheen{display:none}}
/* Layered entrance: olive, line, physical mirror, reflection; then rest. */
.reference-art .reference-composition{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.reference-art .reference-olive{fill:#515a3b;fill-opacity:.67;transform-origin:216px 282px;animation:olive-arrive 1.4s .2s cubic-bezier(.2,.7,.2,1) both}
.reference-art .reference-person-group{transform:translate(var(--person-x,0px),var(--person-y,0px))}
.reference-art .reference-human-line{fill:none;stroke:#e5e5d5;stroke-width:3;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;animation:human-draw 2.2s 1.15s cubic-bezier(.45,0,.2,1) both}
.reference-art .reference-mirror-group{position:absolute;left:53.142857%;top:.754717%;width:17.428571%;height:95.849057%;transform:translate(var(--mirror-x,0px),var(--mirror-y,0px));isolation:isolate}
.reference-art .reference-mirror-base{position:absolute;inset:0;animation:mirror-arrive 1.7s 2.8s cubic-bezier(.2,.8,.2,1) both}
.reference-art .reference-mirror-base img{position:absolute;max-width:none;pointer-events:none;user-select:none}
.reference-art .reference-reflection-mask{position:absolute;inset:0;clip-path:url(#reference-mirror-clip);overflow:hidden}
.reference-art .reference-reflection{position:absolute;left:7%;top:16%;width:93%;height:68%;animation:reflection-resolve 1.8s 4.1s ease-out both;mix-blend-mode:screen}
.reference-art .reference-reflection img{position:absolute;max-width:none;pointer-events:none;user-select:none}
@keyframes olive-arrive{from{opacity:0;transform:scale(.975);filter:blur(5px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
@keyframes human-draw{from{stroke-dashoffset:100;opacity:0}5%{opacity:1}to{stroke-dashoffset:0;opacity:1}}
@keyframes mirror-arrive{from{opacity:0;transform:translateX(7px);filter:blur(3px)}to{opacity:1;transform:translateX(0);filter:blur(0)}}
@keyframes reflection-resolve{from{opacity:0;filter:blur(5px);transform:translateX(2px)}to{opacity:.32;filter:blur(.5px);transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.reference-art .reference-olive,.reference-art .reference-human-line,.reference-art .reference-mirror-base,.reference-art .reference-reflection{animation:none!important;filter:none!important}.reference-art .reference-human-line{stroke-dashoffset:0;opacity:1}.reference-art .reference-reflection{opacity:.32}.reference-art .reference-person-group,.reference-art .reference-mirror-group{transform:none}}

/* Asset registration and live transparency: clip the mirror; extract reflection tint from its neutral backdrop. */
.reference-art .reference-mirror-base{clip-path:url(#reference-mirror-clip)}
.reference-art .reference-mirror-base img{width:141.6829746%;height:106.4705882%;left:-21.1350294%;top:-1.5686275%}
.reference-art .reference-reflection img{width:177.0171149%;height:150.8333333%;left:-39.6088020%;top:-24.5833333%;filter:url(#reflection-tint-alpha)}
.reference-art .reference-depth:not(.assets-ready) *{animation-play-state:paused!important}
