/* Scoped close-up hero. Existing navigation, following sections and older heroes are unchanged. */
.phm-closeup-hero{--paper:#fdfdfd;--muted:#a9bcbc;--leaf:#5eb76e;--ease:cubic-bezier(.2,0,0,1);position:relative;isolation:isolate;box-sizing:border-box;width:100%;max-width:none!important;margin:0!important;min-height:max(720px,calc(100svh - var(--wp-admin--admin-bar--height,0px)));overflow:hidden;background:#000;display:flex;align-items:center;color:var(--paper);font-family:Manrope,Arial,sans-serif;color-scheme:dark}
.phm-closeup-hero *{box-sizing:border-box;min-width:0}
main.phm-home:has(>.phm-closeup-hero){margin-block-start:0!important}
.phm-closeup-hero::before,.phm-closeup-hero::after{content:"";position:absolute;inset:0;pointer-events:none}
.phm-closeup-hero::before{z-index:1;mix-blend-mode:screen;opacity:.26;background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.55) 36%,transparent 68%),radial-gradient(ellipse at 75% 28%,rgba(109,109,109,.35),transparent 65%),linear-gradient(120deg,#2b2b2b,#6d6d6d 40%,#b1b1b1 70%,#6d6d6d)}
.phm-closeup-hero::after{z-index:2;opacity:.065;mix-blend-mode:screen;background-image:url('../cinematic-closeup/assets/hero-grain.svg');background-size:256px 256px}
.phm-closeup-hero .phm-closeup-copy{position:relative;z-index:3;width:100%;max-width:1320px;margin:auto;padding:160px 48px 128px;pointer-events:none}
.phm-closeup-hero .phm-closeup-copy>*{width:43%;max-width:480px;pointer-events:auto}
.phm-closeup-hero h1{font:800 32px/1.25 Manrope,Arial,sans-serif;letter-spacing:-.035em;margin:0 0 24px!important;color:var(--paper)!important}
.phm-closeup-hero h1>span{display:block}
.phm-closeup-hero .discipline-word{font-size:clamp(48px,5.4vw,80px);line-height:1.2;min-height:96px;white-space:nowrap;font-weight:400;letter-spacing:-.045em}
.phm-closeup-hero .discipline-word[data-long="true"]{font-size:clamp(32px,3.9vw,56px)}
.phm-closeup-hero .headline-support{font-size:clamp(24px,2.4vw,32px);font-weight:800;color:var(--leaf)}
.phm-closeup-hero .brand-line{white-space:nowrap;color:var(--leaf)}
.phm-closeup-hero .deck{color:var(--muted)!important;line-height:1.7;font-size:18px;max-width:360px;min-height:96px;margin:0 0 32px}
.phm-closeup-hero a{color:inherit;text-decoration:none}
.phm-closeup-hero .phm-closeup-copy .cta{display:inline-flex;width:auto;align-items:center;min-height:48px;padding:8px 24px;border-radius:6px;background:linear-gradient(120deg,#0c5747,#17856f 40%,#2ea88c 70%,#17856f);font-size:14px;font-weight:800;color:var(--paper)}
.phm-closeup-hero .cta:hover{background:#17856f}
.phm-closeup-hero :is(a,button,[tabindex]):focus-visible{outline:2px solid var(--leaf);outline-offset:4px}
.phm-closeup-hero .visual{position:absolute;inset:0;z-index:0;overflow:hidden;background:#000;width:100%;height:100%;max-width:none}
.phm-closeup-hero .visual canvas{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.phm-closeup-hero .visual canvas{opacity:0}
.phm-closeup-hero .visual.ready canvas{opacity:1}
.phm-closeup-hero .visual::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.76) 33%,rgba(0,0,0,.68) 43%,rgba(0,0,0,.12) 61%,transparent 76%),radial-gradient(ellipse at 73% 49%,transparent 30%,rgba(0,0,0,.12) 65%,rgba(0,0,0,.48) 100%)}
.phm-closeup-hero .phm-closeup-copy h1,.phm-closeup-hero .deck{text-shadow:0 2px 8px rgba(0,0,0,.8)}
.phm-closeup-hero .focus-falloff{position:absolute;inset:0;pointer-events:none;backdrop-filter:blur(2px);mask-image:radial-gradient(ellipse at 73% 49%,transparent 48%,#000 96%)}
.phm-closeup-hero .credits-link{position:absolute;z-index:5;right:48px;bottom:24px;font-size:12px;color:#91a39f;text-decoration:underline;text-underline-offset:4px}
.phm-closeup-hero .visual:not(.ready) canvas{visibility:hidden}
.phm-closeup-hero .load-state{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;margin:0;text-align:center;font-size:12px;color:var(--muted);pointer-events:none}
.phm-closeup-hero .hero-progress{display:block;width:72px;height:3px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.18)}
.phm-closeup-hero .hero-progress-fill{display:block;width:22px;height:100%;border-radius:inherit;background:#fff}
.phm-closeup-hero .visual.ready .load-state,.phm-closeup-hero [data-closeup-id="asset-trail"],.phm-closeup-hero .flash{display:none!important}
.phm-closeup-hero dialog{max-width:640px;width:calc(100% - 32px);max-height:calc(100svh - 48px);overflow:auto;padding:32px;border:1px solid #365555;border-radius:8px;background:#0f2a2b;color:var(--paper);line-height:1.65}
.phm-closeup-hero dialog::backdrop{background:rgba(0,0,0,.85)}
.phm-closeup-hero dialog h2{margin:0 0 16px;color:var(--paper)}
.phm-closeup-hero dialog p,.phm-closeup-hero dialog li{font-size:14px;color:var(--paper)}
.phm-closeup-hero dialog a{text-decoration:underline;color:#a3e0ac}
.phm-closeup-hero dialog button{font:inherit;background:#17856f;border:0;color:white;border-radius:6px;padding:8px 24px;cursor:pointer}
@media(max-width:1200px){.phm-closeup-hero .phm-closeup-copy{padding-inline:32px}}
@media(max-width:960px){.phm-closeup-hero{display:block;min-height:100svh}.phm-closeup-hero .phm-closeup-copy{padding:128px 24px 0}.phm-closeup-hero .phm-closeup-copy>*{width:100%;max-width:600px}.phm-closeup-hero .phm-closeup-copy .deck{max-width:440px;min-height:80px}.phm-closeup-hero .discipline-word{font-size:64px;min-height:80px}.phm-closeup-hero .discipline-word[data-long="true"]{font-size:48px}.phm-closeup-hero .visual{position:relative;height:64svh;min-height:400px;margin-top:-32px}.phm-closeup-hero .visual::after{background:linear-gradient(#000,transparent 24%,transparent 72%,#000),radial-gradient(ellipse at 55% 48%,transparent 16%,rgba(0,0,0,.25) 54%,#000 85%)}.phm-closeup-hero .focus-falloff{mask-image:radial-gradient(ellipse at 55% 48%,transparent 25%,#000 85%)}.phm-closeup-hero .credits-link{right:24px;bottom:24px}}
@media(max-width:480px){.phm-closeup-hero .phm-closeup-copy{padding:128px 16px 0}.phm-closeup-hero .discipline-word{font-size:48px;min-height:64px}.phm-closeup-hero .discipline-word[data-long="true"]{font-size:clamp(32px,9vw,40px)}.phm-closeup-hero .headline-support{font-size:24px}.phm-closeup-hero .deck{font-size:16px}.phm-closeup-hero .visual{height:56svh;min-height:360px}.phm-closeup-hero .credits-link{right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){.phm-closeup-hero *,.phm-closeup-hero *::before,.phm-closeup-hero *::after{animation:none!important;transition:none!important}}
/* Three-line headline: green discipline, white decisions, white better MADE. */
.phm-closeup-hero .phm-closeup-copy h1{width:48%;max-width:600px;font-size:clamp(40px,4.2vw,64px);font-weight:800;line-height:1.14;letter-spacing:-.025em;perspective:600px}
.phm-closeup-hero h1 .discipline-word,.phm-closeup-hero h1 .discipline-word[data-long="true"]{display:inline-block;font:inherit;letter-spacing:inherit;min-height:0;color:var(--leaf);white-space:nowrap;transform-origin:50% 50%;backface-visibility:hidden}
.phm-closeup-hero h1 .headline-support,.phm-closeup-hero h1 .brand-line{display:block;font:inherit;letter-spacing:inherit;color:var(--paper);white-space:nowrap}
@media(max-width:960px){.phm-closeup-hero .phm-closeup-copy h1{width:100%;max-width:600px;font-size:48px}}
@media(max-width:480px){.phm-closeup-hero .phm-closeup-copy h1{font-size:clamp(32px,8vw,40px)}}
.phm-closeup-hero h1 .discipline-word,.phm-closeup-hero h1 .discipline-word[data-long="true"]{display:inline-grid;vertical-align:baseline;perspective:600px}
.phm-closeup-hero h1 .phm-flip-layer{display:block;grid-area:1/1;justify-self:start;font:inherit;letter-spacing:inherit;color:inherit;white-space:nowrap;perspective:600px}
.phm-closeup-hero h1 .phm-flip-letter{display:inline-block;font:inherit;letter-spacing:inherit;color:inherit;white-space:pre;transform-origin:50% 60%;backface-visibility:hidden}
