/* Final hero layout. Geometry variables are measured by composition-hero-alignment.js.
   Scope every adjustment to the composition branch; preserve existing animated text. */
@media(min-width:861px){
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero{height:auto!important;min-height:max(900px,108svh)!important;max-height:none!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-inner{height:auto!important;min-height:max(900px,108svh)!important;padding:0!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-intro{top:clamp(113px,13vh,145px)!important;left:0!important;right:0!important;width:100%!important;text-align:center!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-kicker{font-size:clamp(36px,3.7vw,54px)!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero #hero-title .picked{font-size:clamp(48px,5.1vw,74px)!important;line-height:1!important;min-height:1em!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero #hero-title .accent-italic{font-size:clamp(110px,17.5vw,250px)!important;line-height:.84!important;letter-spacing:-.018em!important;margin:0 auto!important;padding:0!important;transform:none!important;max-width:none!important;white-space:nowrap!important;color:#66d487!important;-webkit-text-fill-color:#66d487!important;background:none!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .portrait-stage{position:absolute!important;left:50%!important;right:auto!important;top:var(--portrait-stage-top,245px)!important;bottom:auto!important;width:min(62vw,920px)!important;height:min(61vw,800px,calc(100% - var(--portrait-stage-top,245px) - 24px))!important;min-height:0!important;transform:translateX(-50%)!important;transform-origin:center top!important;z-index:6!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-3d-fallback{position:absolute!important;left:50%!important;right:auto!important;top:var(--portrait-stage-top,245px)!important;bottom:auto!important;width:min(56vw,820px)!important;height:min(61vw,800px,calc(100% - var(--portrait-stage-top,245px) - 24px))!important;transform:translateX(-50%)!important;object-fit:contain!important;object-position:center center!important;z-index:5!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-statement{position:absolute!important;left:var(--designer-copy-left,19vw)!important;right:auto!important;top:var(--designer-copy-top,465px)!important;bottom:auto!important;width:min(330px,calc(100% - var(--designer-copy-left,19vw) - 24px))!important;max-width:330px!important;margin:0!important;padding:0!important;text-align:left!important;z-index:12!important;pointer-events:auto!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-statement-title{font-size:clamp(18px,1.7vw,24px)!important;line-height:1.3!important;max-width:100%!important;margin:0 0 13px!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-statement>p:last-of-type{font-size:clamp(12px,1.05vw,15px)!important;max-width:100%!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-actions{margin-top:23px!important;gap:12px!important;max-width:100%!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-actions .btn{min-height:43px!important;padding:11px 22px!important;font-size:13px!important}
}
/* Tablet and phone: fit a larger portrait above a bounded text column, with
   buttons stacked below. JS positions these relative to the rendered headline. */
@media(max-width:860px){
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero,html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-inner{height:auto!important;min-height:var(--mobile-hero-height,830px)!important;max-height:none!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero #hero-title .picked{line-height:1!important;min-height:1em!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero #hero-title .accent-italic{font-size:clamp(60px,16vw,120px)!important;line-height:.9!important;margin:0 auto!important;transform:none!important;max-width:100%!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .portrait-stage{position:absolute!important;left:50%!important;right:auto!important;top:var(--mobile-portrait-top,230px)!important;bottom:auto!important;width:min(112vw,610px)!important;height:clamp(370px,67vw,510px)!important;transform:translateX(-50%)!important;z-index:6!important;overflow:hidden!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-3d-fallback{position:absolute!important;left:50%!important;right:auto!important;top:var(--mobile-portrait-top,230px)!important;bottom:auto!important;width:min(106vw,580px)!important;height:clamp(370px,67vw,510px)!important;transform:translateX(-50%)!important;object-fit:contain!important;object-position:center center!important;z-index:5!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-statement{position:absolute!important;left:20px!important;right:20px!important;top:var(--mobile-copy-top,590px)!important;bottom:auto!important;width:auto!important;max-width:none!important;margin:0!important;text-align:center!important;z-index:12!important;pointer-events:auto!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-statement-title,html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-statement>p:last-of-type{width:100%!important;max-width:min(64vw,620px)!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;width:100%!important;max-width:440px!important;margin:18px auto 0!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-actions .btn{display:flex!important;width:100%!important;justify-content:center!important;min-height:43px!important}
}
@media(max-width:560px){
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero #hero-title .accent-italic{font-size:clamp(60px,16vw,90px)!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .portrait-stage{width:min(120vw,540px)!important;height:385px!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-3d-fallback{width:min(114vw,510px)!important;height:385px!important}
 html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-statement-title,html body.composition-home.composition-v2.hero-reference-layout .portfolio-hero .hero-statement>p:last-of-type{max-width:min(64vw,360px)!important}
}
