:root{--navy:#071f2d;--navy2:#062334;--gold:#f7ad19;--white:#fff;--ink:#082640;--glass:rgba(14,48,67,.70)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#fff;background:#061e2c}a{color:inherit;text-decoration:none}.site-header{height:102px;background:var(--navy);display:flex;align-items:center;padding:0 4.3vw;gap:34px;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:12px;min-width:330px}.brand img{width:70px;height:70px;object-fit:contain}.brand-rule{height:58px;width:2px;background:var(--gold)}.brand-copy{display:flex;flex-direction:column}.brand-copy b{font-size:31px;letter-spacing:3px}.brand-copy small{font-size:9px;font-weight:700;line-height:1.15}.site-header nav{display:flex;align-items:center;justify-content:center;gap:36px;flex:1;height:100%;font-size:13px;font-weight:800}.site-header nav>a,.nav-item>a{height:100%;display:flex;align-items:center;position:relative}.site-header nav>a.active:after{content:"";position:absolute;bottom:27px;left:0;right:0;height:3px;background:var(--gold)}.nav-item{height:100%;position:relative;display:flex;align-items:center}.nav-item>a{border-radius:10px;padding:0 10px;height:48px;margin-top:27px;margin-bottom:27px}.nav-item:hover>a{background:rgba(100,160,190,.18);border:1px solid rgba(130,210,240,.45);box-shadow:0 0 18px rgba(80,190,235,.16),inset 0 0 18px rgba(255,255,255,.05)}.dropdown{position:absolute;top:75px;left:-10px;width:285px;padding:14px 0;background:rgba(14,47,65,.87);border:1px solid rgba(160,220,245,.38);border-radius:14px;backdrop-filter:blur(16px);box-shadow:0 14px 35px rgba(0,0,0,.34);opacity:0;visibility:hidden;transform:translateY(-5px);transition:.2s}.nav-item:hover .dropdown{opacity:1;visibility:visible;transform:none}.dropdown a{display:block;padding:12px 22px;font-size:15px}.dropdown a:hover{background:rgba(255,255,255,.07)}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:#071f2d;font-weight:900;border:0;padding:15px 26px;min-height:46px}.btn:hover{filter:brightness(1.05);box-shadow:0 0 0 1px rgba(255,255,255,.5),0 8px 22px rgba(247,173,25,.22)}.site-header>.contact{white-space:nowrap}
.hero{height:405px;position:relative;overflow:hidden;background:#0b2636}.hero-image{position:absolute;inset:0;background-image:url('../images/hero-clean-v9.jpg');background-repeat:no-repeat;background-size:cover;background-position:center 48%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,24,35,.95) 0%,rgba(3,24,35,.78) 28%,rgba(3,24,35,.14) 54%,rgba(3,24,35,0) 100%)}.hero-copy{position:relative;z-index:2;width:48%;padding:50px 0 0 4.3vw}.gold-kicker{color:var(--gold);font-weight:900}.hero-copy .gold-kicker{font-size:19px;margin:0 0 7px}.hero-copy h1{font-size:76px;letter-spacing:7px;line-height:.95;margin:0 0 8px}.hero-copy h2{font-size:19px;line-height:1.1;margin:0}.hero-copy i{display:block;width:55px;height:3px;background:var(--gold);margin:15px 0}.hero-copy>p:not(.gold-kicker){font-size:15px;line-height:1.45;max-width:610px;margin:0 0 18px}.hero-actions{display:flex;gap:16px}.btn.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.8)}
.services{height:145px;background:#fff;color:var(--ink);display:grid;grid-template-columns:repeat(5,1fr);padding:0 4.3vw}.services article{padding:18px 22px 14px;border-right:1px solid #cdd8df;position:relative;overflow:hidden;transition:.25s}.services article:first-child{border-left:1px solid #cdd8df}.services img{width:30px;height:30px}.services h3{font-size:15px;margin:8px 0 6px}.services p{font-size:12px;line-height:1.25;margin:0;max-width:220px}.services a{position:absolute;bottom:14px;color:#d97c00;font-weight:900;font-size:12px}.services article:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,30,43,.72),rgba(4,30,43,.1)),var(--pic) center/cover no-repeat;opacity:0;transition:.25s}.services article:hover:before{opacity:1}.services article:hover{color:#fff;transform:translateY(-5px);box-shadow:0 12px 28px rgba(0,0,0,.18);z-index:2}.services article:hover>*{position:relative;z-index:1}.services article:hover img{filter:brightness(0) invert(1)}.services article:hover a{color:#ffd07a}
.about{height:205px;background:#fff;color:var(--ink);display:grid;grid-template-columns:38% 32% 30%;overflow:hidden;transition:height .35s ease}.about.compact{height:0}.about-copy{padding:20px 2.6vw 14px 4.3vw}.about .gold-kicker{margin:0 0 4px;font-size:14px}.about h2{font-size:27px;line-height:.98;margin:0 0 10px}.about-copy>p:not(.gold-kicker){font-size:11.5px;line-height:1.25;margin:0 0 11px}.outline{border:1px solid var(--gold);padding:8px 14px;font-weight:900;font-size:11px}.about-image{background:url('../images/about.jpg') center 53%/cover no-repeat}.values{padding:23px 4.3vw 10px 28px;display:grid;align-content:center;gap:9px}.values div{display:flex;align-items:center;gap:12px}.values img{width:26px;height:26px}.values p{margin:0;font-size:11px}.values b,.values span{display:block}
.philosophy{min-height:335px;background-color:#062334;background-image:linear-gradient(rgba(4,31,45,.08),rgba(4,31,45,.08)),url('../images/philosophy-clean-final.jpg');background-size:cover;background-position:center;position:relative;padding:15px 1.6vw 13px;transition:min-height .35s}.title-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;text-align:center}.title-row>span{height:1px;background:linear-gradient(90deg,transparent,var(--gold))}.title-row>span:last-child{background:linear-gradient(90deg,var(--gold),transparent)}.title-row p{color:var(--gold);font-weight:900;margin:0 0 5px;font-size:14px}.title-row h2{margin:0;font-size:22px}.title-row small{display:block;margin-top:7px;font-size:11px}.scenario-row{display:flex;gap:10px;height:166px;margin-top:12px;transition:height .35s}.scenario{flex:1;min-width:0;border:1px solid rgba(94,184,221,.52);border-radius:7px;overflow:hidden;position:relative;background:#082838;transition:flex .34s ease,transform .34s,height .34s,box-shadow .34s,border-color .34s}.scenario .photo{position:absolute;inset:0 0 46px;background-repeat:no-repeat;background-position:center;background-size:cover;transition:inset .34s,background-size .34s}.s1 .photo{background-image:url('../images/scenario-1-clean-v9.jpg')}.s2 .photo{background-image:url('../images/scenario-2-clean-v9.jpg')}.s3 .photo{background-image:url('../images/scenario-3-clean-v9.jpg')}.s4 .photo{background-image:url('../images/scenario-4-clean-v9.jpg')}.s5 .photo{background-image:url('../images/scenario-5-approved.jpg')}.s6 .photo{background-image:url('../images/scenario-6-clean-v9.jpg')}.scenario .caption{position:absolute;left:0;right:0;bottom:0;min-height:48px;padding:9px 10px;background:linear-gradient(0deg,rgba(5,31,44,.98) 45%,rgba(5,31,44,.83) 78%,rgba(5,31,44,0));transition:min-height .34s,padding .34s}.scenario h3{font-size:12px;line-height:1.08;margin:0}.scenario p,.scenario button{display:none}.scenario-row:hover .scenario{flex:.82}.scenario-row .scenario:hover{flex:1.55;transform:translateY(-5px);border-color:rgba(181,231,251,.9);box-shadow:0 0 0 2px rgba(108,198,235,.23),0 0 24px rgba(98,202,242,.22),inset 0 0 28px rgba(255,255,255,.04)}.scenario-row .scenario:hover .caption{min-height:92px;padding:14px 14px}.scenario-row .scenario:hover h3{font-size:15px}.scenario-row .scenario:hover p{display:block;font-size:10px;line-height:1.3;margin:8px 40px 0 0}.scenario-row .scenario:hover button{display:flex;position:absolute;right:12px;bottom:12px;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.75);background:rgba(255,255,255,.08);color:#fff;align-items:center;justify-content:center;font-size:22px}.philosophy.active{min-height:465px}.philosophy.active .scenario-row{height:260px}.philosophy.active .scenario .photo{inset:0 0 64px}.philosophy.active .scenario-row .scenario:hover .photo{inset:0 0 98px}.philosophy-line{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;max-width:940px;margin:10px auto 0;text-align:center}.philosophy-line span{height:2px;background:var(--gold)}.philosophy-line h3{font-size:16px;line-height:1.05;margin:0}.philosophy-line b{color:var(--gold)}.principles{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:8px;font-size:10px;font-weight:900}.principles div{display:flex;align-items:center;gap:9px}.principles img{width:27px;height:27px}.principles i{height:24px;width:1px;background:var(--gold)}
.split{display:flex;height:300px;border-top:1px solid var(--gold);overflow:hidden}.split article{flex:1;position:relative;overflow:hidden;transition:flex .38s ease,box-shadow .38s,border-color .38s}.split:hover article{flex:.88}.split article:hover{flex:1.35;z-index:2;box-shadow:0 0 0 2px rgba(132,210,239,.28),inset 0 0 28px rgba(255,255,255,.04)}.panel-photo,.panel-shade{position:absolute;inset:0}.professional .panel-photo{background:url('../images/professional-clean-v9.jpg') center/cover no-repeat}.public .panel-photo{background:url('../images/public-clean-v9.jpg') center/cover no-repeat}.panel-shade{background:linear-gradient(90deg,rgba(4,29,42,.96) 0%,rgba(4,29,42,.78) 48%,rgba(4,29,42,.12) 78%,rgba(4,29,42,0) 100%)}.panel-copy{position:relative;z-index:2;width:65%;padding:20px 0 10px 4.3vw}.panel-copy .gold-kicker{font-size:13px;margin:0 0 6px}.panel-copy h2{font-size:23px;line-height:1.05;margin:0 0 10px}.panel-copy>p:not(.gold-kicker){font-size:11px;line-height:1.25;margin:0 0 8px}.panel-copy ul{list-style:none;padding:0;margin:0 0 10px}.panel-copy li{font-size:12px;margin:5px 0}.panel-copy li:before{content:'✓';display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border:2px solid var(--gold);border-radius:50%;color:var(--gold);margin-right:9px;font-weight:900}.panel-copy .btn{font-size:10px;padding:9px 16px;min-height:34px}.split article:hover .panel-photo{transform:scale(.98);transition:transform .38s}.split article:hover .panel-shade{background:linear-gradient(90deg,rgba(4,29,42,.92),rgba(4,29,42,.64) 52%,rgba(4,29,42,.08))}
.cta{height:108px;position:relative;text-align:center;display:flex;align-items:center;justify-content:center;overflow:hidden}.cta-photo{position:absolute;inset:0;background:url('../images/mountain-approved.jpg') center/cover no-repeat}.cta-shade{position:absolute;inset:0;background:rgba(5,31,44,.30)}.cta>div:last-child{position:relative;z-index:2}.cta h2{color:var(--gold);font-size:21px;margin:0 0 5px}.cta p{font-size:10px;margin:0 0 7px}.cta .btn{min-height:28px;padding:7px 22px;font-size:10px}
footer{height:78px;background:var(--navy);display:flex;align-items:center;padding:0 2vw;gap:25px}.brand.foot{min-width:250px}.brand.foot img{width:48px;height:48px}.brand.foot .brand-rule{height:40px}.brand.foot .brand-copy b{font-size:22px}.brand.foot .brand-copy small{font-size:6px}footer nav{display:flex;justify-content:center;gap:12px;flex:1;font-size:8px;font-weight:800}footer small{font-size:8px;text-align:right}
@media(max-width:900px){.site-header{padding:0 18px;height:82px}.site-header nav{display:none}.brand{min-width:0}.brand img{width:54px;height:54px}.brand-copy b{font-size:24px}.hero{height:460px}.hero-image{background-position:62% center}.hero-copy{width:68%;padding-left:24px}.hero-copy h1{font-size:58px}.services{height:auto;grid-template-columns:1fr 1fr;padding:0}.services article{min-height:145px}.about{grid-template-columns:1fr;height:auto}.about-image{height:220px}.values{padding:20px}.scenario-row{overflow-x:auto;height:280px}.scenario{min-width:180px}.philosophy.active .scenario-row{height:320px}.split{height:auto;display:block}.split article{height:340px}.panel-copy{width:78%;padding-left:24px}.cta{height:140px}footer{height:auto;min-height:100px;flex-wrap:wrap}.brand.foot{min-width:220px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* MASTER MATCH FINAL OVERRIDES — verified against supplied resting/hover references */
.hero-image{background-image:url('../images/hero-clean-v9.jpg'),url('../images/mountain-approved.jpg');background-size:auto 100%,cover;background-position:right center,center;background-repeat:no-repeat}
.hero-overlay{background:linear-gradient(90deg,rgba(3,24,35,.96) 0%,rgba(3,24,35,.76) 31%,rgba(3,24,35,.16) 55%,rgba(3,24,35,0) 100%)}
.scenario-row{height:205px}.scenario .photo{inset:0 0 58px;background-size:cover}.scenario .caption{min-height:60px}.philosophy{min-height:380px}.philosophy.active{min-height:510px}.philosophy.active .scenario-row{height:300px}.philosophy.active .scenario .photo{inset:0 0 72px}.philosophy.active .scenario-row .scenario:hover .photo{inset:0 0 110px}.scenario-row .scenario:hover{flex:1.75;transform:translateY(-7px)}
.professional .panel-photo{background-image:url('../images/professional-clean-v9.jpg'),url('../images/mountain-approved.jpg');background-size:auto 100%,cover;background-position:right center,center;background-repeat:no-repeat}.public .panel-photo{background-image:url('../images/public-clean-v9.jpg');background-size:auto 100%;background-position:right center;background-repeat:no-repeat;background-color:#1b2428}.split article:hover .panel-photo{transform:scale(.97)}
.cta-photo{background-image:url('../images/cta-master-mountain.png');background-size:cover;background-position:center 55%}
.hero-image{background-size:auto 88%,cover;background-position:right bottom,center}
.professional .panel-photo,.public .panel-photo{background-size:auto 88%,cover;background-position:right bottom,center}
.scenario-row .scenario.active-card{flex:1.75;transform:translateY(-7px);border-color:rgba(181,231,251,.9);box-shadow:0 0 0 2px rgba(108,198,235,.23),0 0 24px rgba(98,202,242,.22),inset 0 0 28px rgba(255,255,255,.04)}
.scenario-row .scenario.active-card .caption{min-height:110px;padding:14px}.scenario-row .scenario.active-card h3{font-size:15px}.scenario-row .scenario.active-card p{display:block;font-size:10px;line-height:1.3;margin:8px 40px 0 0}.scenario-row .scenario.active-card button{display:flex;position:absolute;right:12px;bottom:12px;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.75);background:rgba(255,255,255,.08);color:#fff;align-items:center;justify-content:center;font-size:22px}.philosophy.active .scenario-row .scenario.active-card .photo{inset:0 0 110px}
.split article.active-panel{flex:1.35;z-index:2;box-shadow:0 0 0 2px rgba(132,210,239,.28),inset 0 0 28px rgba(255,255,255,.04)}

/* 2026-10-07: locked-effects visual refinements; no interaction geometry modified */
.brand img{background:transparent;mix-blend-mode:lighten}
.brand-rule{width:3px;flex:none;background:linear-gradient(to bottom,transparent 0%,rgba(247,173,25,.35) 14%,#f7ad19 38%,#f7ad19 62%,rgba(247,173,25,.35) 86%,transparent 100%)}
.hero-image{background-image:url('../images/hero-single-clean.jpg')!important;background-size:cover!important;background-position:center 48%!important;background-repeat:no-repeat!important}
.hero-overlay{background:linear-gradient(90deg,rgba(3,24,35,.94) 0%,rgba(3,24,35,.72) 30%,rgba(3,24,35,.18) 54%,transparent 85%)}
/* Keep the original six photographs uncropped and unstretched. */
.scenario .photo{background-size:contain!important;background-position:center top!important;background-color:#082838!important}
.philosophy{background-image:linear-gradient(rgba(3,24,38,.13),rgba(3,24,38,.08)),url('../images/mountain-no-text.jpg')!important;background-position:center!important;background-size:cover!important}
.dropdown{background:linear-gradient(135deg,rgba(115,166,194,.30),rgba(12,44,65,.78) 50%,rgba(16,55,78,.66))!important;backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);border:1px solid rgba(173,220,242,.55);box-shadow:0 20px 45px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.25),inset 0 -1px rgba(255,255,255,.06)}
.dropdown a:hover,.dropdown a:focus-visible{background:linear-gradient(145deg,rgba(177,219,239,.23),rgba(114,172,204,.12));box-shadow:inset 0 1px rgba(255,255,255,.28);border-radius:12px}
/* Preserve existing expand/yield and glass hover behavior. */
/* FINAL VERIFIED OVERRIDES — visual-only, interaction geometry untouched */
.brand-rule{width:3px;background:linear-gradient(to bottom,transparent 0%,rgba(247,173,25,.4) 13%,#f7ad19 36%,#f7ad19 64%,rgba(247,173,25,.4) 87%,transparent 100%)}
.brand img{mix-blend-mode:lighten}
.hero-image{background-image:url('../images/hero-single-clean.jpg')!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important}
.hero-overlay{background:linear-gradient(90deg,rgba(3,24,35,.94),rgba(3,24,35,.69) 30%,rgba(3,24,35,.06) 63%,transparent 100%)}
.philosophy{background-image:url('../images/philosophy-approved-mountains.jpg')!important;background-position:center bottom!important;background-size:cover!important}
.philosophy:before{background:linear-gradient(rgba(3,31,46,.08),rgba(3,31,46,.19))!important;opacity:1!important}
.scenario .photo{background-size:cover!important;background-position:center 38%!important}
.s5 .photo{background-position:center 44%!important}
.dropdown{background:linear-gradient(135deg,rgba(75,111,132,.50),rgba(8,42,61,.78))!important;backdrop-filter:blur(20px) saturate(145%)!important;-webkit-backdrop-filter:blur(20px) saturate(145%)!important;border:1px solid rgba(188,233,250,.48)!important;box-shadow:inset 0 1px 1px rgba(255,255,255,.34),0 15px 40px rgba(0,0,0,.34)!important}
.dropdown a:hover{background:linear-gradient(125deg,rgba(185,222,239,.32),rgba(100,150,180,.14))!important;border-radius:10px}
.philosophy{background-image:url('../images/philosophy-mountains-clean-verified.jpg')!important}
/* Prevent service text and CTA from colliding at narrow widths. */
.services article{min-width:0;padding-bottom:44px!important}
.services article p{max-width:100%;overflow-wrap:break-word}
.services article a{bottom:13px!important;left:22px!important}

/* HEATSS approved original HD asset integration; overrides appended without disturbing existing interactions. */
.hero-image{background-image:url('../images/heatss-hd-01.webp')!important;background-size:cover!important;background-position:center center!important}
.about-image{background-image:url('../images/heatss-hd-02.webp')!important}
.philosophy{background-image:url('../images/heatss-hd-03.webp')!important;background-position:center bottom!important;background-size:cover!important}
.s1 .photo{background-image:url('../images/heatss-hd-04.webp')!important}
.s2 .photo{background-image:url('../images/heatss-hd-05.webp')!important}
.s3 .photo{background-image:url('../images/heatss-hd-06.webp')!important}
.s4 .photo{background-image:url('../images/heatss-hd-07.webp')!important}
.s5 .photo{background-image:url('../images/heatss-hd-08.webp')!important}
.s6 .photo{background-image:url('../images/heatss-hd-09.webp')!important}
.s7 .photo{background-image:url('../images/heatss-hd-10.webp')!important}
.professional .panel-photo{background-image:url('../images/heatss-hd-11.webp')!important;background-size:cover!important;background-position:center!important}
.public .panel-photo{background-image:url('../images/heatss-hd-12.webp')!important;background-size:cover!important;background-position:center!important}
.cta-photo{background-image:url('../images/heatss-hd-13.webp')!important}
.brand{gap:0;min-width:330px}
.brand img{width:330px;height:85px;max-width:100%;object-fit:contain;mix-blend-mode:normal}
.brand .brand-rule,.brand .brand-copy{display:none}
.brand.foot{min-width:235px}
.brand.foot img{width:235px;height:62px}
@media(max-width:900px){.brand{min-width:0}.brand img{width:245px;height:65px}.brand.foot img{width:210px;height:56px}}


/* FINAL USER-REQUESTED REFINEMENTS — 2026-10-08.
   Scenario section deliberately untouched. All source images unchanged. */
/* 1. Nudge the header brand toward the viewport edge. */
.site-header{padding-left:2.4vw}
/* 2. Rounder, slightly clearer liquid glass on training navigation. */
.nav-item>a{border-radius:18px;transition:background .22s,border-radius .22s,box-shadow .22s}
.nav-item:hover>a,.nav-item:focus-within>a{border-radius:20px;background:rgba(129,190,222,.16);backdrop-filter:blur(15px) saturate(165%);-webkit-backdrop-filter:blur(15px) saturate(165%);box-shadow:inset 0 1px rgba(255,255,255,.29),0 8px 22px rgba(24,85,117,.17)}
.dropdown{border-radius:24px!important;background:linear-gradient(135deg,rgba(118,165,190,.37),rgba(16,52,75,.67) 60%,rgba(18,58,80,.56))!important;backdrop-filter:blur(25px) saturate(160%)!important;-webkit-backdrop-filter:blur(25px) saturate(160%)!important;overflow:hidden}
.dropdown a:hover,.dropdown a:focus-visible{border-radius:17px!important}
/* 3. Move the hero subject right via image framing, never modify the source. */
.hero-image{background-position:58% center!important}
/* 4. Give each service description its own space and anchor the CTA below it. */
.services{height:auto;min-height:205px}
.services article{display:flex;flex-direction:column;min-height:205px;padding:18px 20px 18px!important;overflow:hidden}
.services article p{flex:0 0 auto;line-height:1.32}
.services article a{position:relative!important;left:auto!important;bottom:auto!important;display:inline-block;align-self:flex-start;margin-top:auto;padding-top:15px;line-height:1.2}
.services article:before{background:linear-gradient(135deg,rgba(11,48,69,.43),rgba(5,32,49,.56)),var(--pic) center/cover no-repeat!important}
.services article:hover:before{opacity:.84}
.services article:hover{backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%)}
/* 5. Feather both sides of the About photo into adjacent white content. */
.about-image{position:relative}
.about-image:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.76) 7%,rgba(255,255,255,0) 24%,rgba(255,255,255,0) 77%,rgba(255,255,255,.8) 94%,#fff 100%)}
/* 7. Allow the public-safety button to clear the following CTA section. */
.split{height:auto;min-height:390px;overflow:visible}
.split article{min-height:390px;overflow:hidden}
.panel-copy{padding-bottom:34px}
@media(max-width:1100px){.split article{min-height:420px}}
@media(max-width:700px){.site-header{padding-left:3vw}.hero-image{background-position:69% center!important}.services{min-height:0}.services article{min-height:175px}.about-image:after{background:linear-gradient(90deg,#fff,transparent 20%,transparent 80%,#fff)}.split article{min-height:450px}.panel-copy{padding-bottom:42px}}


/* HEATSS precision polish round 2: only five requested changes. */
/* Header logo closer to the left viewport edge; mobile retains a safe inset. */
@media(min-width:701px){.site-header{padding-left:0.85vw!important}}
@media(max-width:700px){.site-header{padding-left:2vw!important}}
/* Adjust framing of the same hero asset: do not alter or crop the original file. */
@media(min-width:701px){.hero-image{background-position:40% center!important}}
@media(max-width:700px){.hero-image{background-position:59% center!important}}
/* Restore less-rounded navigation shape, while improving translucent glass. */
.nav-item>a{border-radius:11px!important}
.nav-item:hover>a,.nav-item:focus-within>a{border-radius:12px!important;background:linear-gradient(145deg,rgba(183,223,242,.22),rgba(36,95,128,.13))!important;backdrop-filter:blur(22px) saturate(175%)!important;-webkit-backdrop-filter:blur(22px) saturate(175%)!important;border-color:rgba(189,231,251,.56)!important;box-shadow:inset 0 1px rgba(255,255,255,.48),inset 0 -1px rgba(154,214,241,.15),0 10px 28px rgba(0,20,35,.24)!important}
.dropdown{border-radius:17px!important;background:linear-gradient(135deg,rgba(128,180,207,.33),rgba(15,52,75,.64) 57%,rgba(10,43,63,.65))!important;backdrop-filter:blur(28px) saturate(175%)!important;-webkit-backdrop-filter:blur(28px) saturate(175%)!important;box-shadow:inset 0 1px rgba(255,255,255,.48),inset 0 0 22px rgba(200,237,255,.07),0 20px 44px rgba(0,0,0,.32)!important}
.dropdown a:hover,.dropdown a:focus-visible{border-radius:11px!important;background:linear-gradient(120deg,rgba(215,241,255,.30),rgba(125,190,224,.12))!important}
/* Services: retain corrected text/CTA flow; only polish glass layers. */
.services article:hover{background:linear-gradient(135deg,rgba(175,217,240,.10),rgba(14,54,76,.16))!important;backdrop-filter:blur(18px) saturate(170%)!important;-webkit-backdrop-filter:blur(18px) saturate(170%)!important;box-shadow:inset 0 1px rgba(255,255,255,.50),inset 0 0 22px rgba(220,244,255,.09),0 16px 32px rgba(0,0,0,.18)!important}
.services article:hover:before{opacity:.70!important}
.services article a{border:1px solid transparent;border-radius:12px;padding:9px 12px!important;margin-left:-12px;transition:background .22s,border-color .22s,box-shadow .22s,backdrop-filter .22s,color .22s}
.services article a:hover,.services article a:focus-visible{background:linear-gradient(135deg,rgba(228,246,255,.28),rgba(117,185,220,.12));border-color:rgba(214,242,255,.66);backdrop-filter:blur(18px) saturate(175%);-webkit-backdrop-filter:blur(18px) saturate(175%);box-shadow:inset 0 1px rgba(255,255,255,.54),0 5px 15px rgba(0,20,35,.22);outline:none}
/* Seven scenarios: ONLY existing arrow buttons get a raised glass-lens hover. */
.scenario .caption button{isolation:isolate}
.scenario .caption button:hover,.scenario .caption button:focus-visible{background:radial-gradient(circle at 28% 19%,rgba(231,249,255,.49),rgba(95,167,202,.29) 46%,rgba(7,39,61,.65) 100%)!important;border:1.5px solid rgba(231,250,255,.95)!important;backdrop-filter:blur(13px) saturate(185%)!important;-webkit-backdrop-filter:blur(13px) saturate(185%)!important;box-shadow:inset 0 2px 3px rgba(255,255,255,.72),inset 0 -4px 8px rgba(2,28,47,.42),0 0 0 2px rgba(169,226,251,.17),0 6px 17px rgba(1,17,32,.40)!important;text-shadow:0 1px 2px rgba(0,15,28,.55);outline:none}

/* HEATSS approved finishing touches: 2026-10-08; no scenario/layout/image asset changes. */
/* Shift the hero photograph as a whole, retaining the exact source image. */
@media(min-width:701px){.hero-image{transform:translateX(3.5%) scale(1.075);transform-origin:center center}}
@media(max-width:700px){.hero-image{transform:translateX(1.5%) scale(1.045);transform-origin:center center}}
/* Keep value icons and text unchanged, settle their group toward the About section's bottom. */
@media(min-width:901px){.about .values{align-content:end;padding-bottom:14px}}
/* Gold calls to action: existing gold and geometry, round corners and glass on hover. */
a.btn:not(.ghost){border-radius:15px;position:relative;isolation:isolate;overflow:hidden;transition:background .24s,border-radius .24s,box-shadow .24s,filter .24s,transform .24s,backdrop-filter .24s}
a.btn:not(.ghost):hover,a.btn:not(.ghost):focus-visible{background:linear-gradient(135deg,rgba(255,223,135,.91),rgba(247,173,25,.78) 58%,rgba(235,150,11,.86));backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);box-shadow:inset 0 2px 1px rgba(255,255,255,.72),inset 0 -3px 8px rgba(119,73,0,.18),0 8px 23px rgba(247,173,25,.27),0 0 0 1px rgba(255,238,193,.65);filter:none;outline:none}
a.btn:not(.ghost):hover:before,a.btn:not(.ghost):focus-visible:before{content:"";position:absolute;pointer-events:none;inset:1px 2px auto;height:43%;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.31),transparent)}
/* Footer: quiet social badges; no invented destination links. */
.footer-social{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.social-glass{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border:1px solid rgba(200,228,242,.28);border-radius:11px;color:#f7ad19;background:rgba(142,197,222,.055);transition:background .22s,box-shadow .22s,border-color .22s,transform .22s;cursor:default}
.social-glass svg{width:17px;height:17px}
.social-glass:hover{transform:translateY(-2px);background:linear-gradient(135deg,rgba(220,243,255,.26),rgba(57,122,158,.15));border-color:rgba(224,247,255,.72);backdrop-filter:blur(13px) saturate(165%);-webkit-backdrop-filter:blur(13px) saturate(165%);box-shadow:inset 0 1px rgba(255,255,255,.57),0 5px 16px rgba(0,0,0,.23)}
@media(max-width:900px){.footer-social{margin:0 auto}.about .values{align-content:end}}

/* Final two precision refinements: header logo blend and About values only. */
/* The logo's nearly-black navy pixels blend with the existing header navy;
   lettering, gold artwork, and sizing are untouched. */
.site-header .brand img{mix-blend-mode:lighten}
/* Place the four value statements halfway between their previous centered
   position and the most recent bottom-aligned position. */
@media(min-width:901px){.about .values{align-content:center;padding-top:42px;padding-bottom:14px}}

/* Requested final About-values horizontal refinement; desktop only. */
@media(min-width:901px){.about .values>div{transform:translateX(24px)}}

/* Navigation-only integration: match TRAINING liquid glass on other menu links.
   Pseudo-elements avoid changing the approved header sizing, spacing or links. */
.site-header nav>a:not(:first-child){isolation:isolate}
.site-header nav>a:not(:first-child)::before{
 content:"";position:absolute;z-index:-1;pointer-events:none;
 top:50%;left:-10px;right:-10px;height:48px;transform:translateY(-50%);
 border-radius:12px;border:1px solid transparent;
 background:transparent;opacity:0;
 transition:opacity .22s ease,background .22s ease,box-shadow .22s ease;
}
.site-header nav>a:not(:first-child):hover::before,
.site-header nav>a:not(:first-child):focus-visible::before{
 opacity:1;
 background:linear-gradient(145deg,rgba(183,223,242,.22),rgba(36,95,128,.13));
 backdrop-filter:blur(22px) saturate(175%);
 -webkit-backdrop-filter:blur(22px) saturate(175%);
 border-color:rgba(189,231,251,.56);
 box-shadow:inset 0 1px rgba(255,255,255,.48),inset 0 -1px rgba(154,214,241,.15),0 10px 28px rgba(0,20,35,.24);
}
@media(prefers-reduced-motion:reduce){.site-header nav>a:not(:first-child)::before{transition:none}}

/* Mobile QA: self-contained menu. Desktop layout and approved hover effects untouched. */
.heatss-mobile-toggle,.heatss-mobile-panel{display:none}
@media(max-width:900px){
.site-header{position:relative;z-index:100;justify-content:space-between;gap:10px}
.heatss-mobile-toggle{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;margin-left:auto;border:1px solid rgba(236,190,110,.48);border-radius:12px;background:rgba(19,59,78,.64);color:#f6d18a;cursor:pointer;position:relative;z-index:102;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.heatss-mobile-toggle svg{width:23px;height:23px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round}
.heatss-mobile-toggle:focus-visible,.heatss-mobile-panel a:focus-visible{outline:2px solid #f2bf69;outline-offset:3px}
.heatss-mobile-panel{display:none;position:absolute;top:100%;left:0;right:0;z-index:101;max-height:calc(100dvh - 82px);overflow-y:auto;overscroll-behavior:contain;background:rgba(5,31,47,.98);border-top:1px solid rgba(226,183,104,.3);border-bottom:1px solid rgba(226,183,104,.5);box-shadow:0 20px 38px rgba(0,0,0,.4);padding:12px clamp(18px,5vw,36px) 24px;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.heatss-mobile-panel.is-open{display:flex;flex-direction:column}
.heatss-mobile-panel a{display:block;padding:14px 12px;color:#f1f5f7;font-size:13px;font-weight:700;letter-spacing:.065em;border-bottom:1px solid rgba(208,226,232,.12);border-radius:7px}
.heatss-mobile-panel a:hover,.heatss-mobile-panel a:active,.heatss-mobile-panel a[aria-current="page"]{color:#f5cb7d;background:rgba(97,151,171,.18)}
.heatss-mobile-panel a.heatss-mobile-contact{margin-top:14px;text-align:center;border:1px solid rgba(242,192,107,.55);background:rgba(28,81,103,.56);color:#f8d08b;border-radius:12px}
.site-header>.btn.contact{display:none}
}
@media(prefers-reduced-motion:reduce){.heatss-mobile-panel *{transition:none!important}}

/* Mobile QA correction: prevent the injected mobile nav from inheriting desktop nav display. */
.site-header > nav.heatss-mobile-panel{display:none}
@media(max-width:900px){
 .site-header > nav.heatss-mobile-panel.is-open{display:flex}
 .site-header > nav:not(.heatss-mobile-panel){display:none}
}

/* Mobile-only QA fixes. Desktop rules and approved page content are untouched. */
@media (min-width:901px){
 .site-header>.heatss-mobile-toggle,.site-header>nav.heatss-mobile-panel,
 .site-header>nav.heatss-mobile-panel.is-open{display:none!important}
}
@media(max-width:900px){
 .site-header{position:relative!important;z-index:1000!important}
 .site-header>nav.heatss-mobile-panel{display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;width:100%!important;height:auto!important;max-height:calc(100dvh - 82px)!important;overflow-y:auto!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;padding:12px 20px 24px!important;box-sizing:border-box!important;background:rgba(5,31,47,.985)!important;z-index:1002!important;visibility:visible!important;transform:none!important}
 .site-header>nav.heatss-mobile-panel.is-open{display:flex!important}
 .site-header>nav.heatss-mobile-panel>a{display:block!important;position:relative!important;width:100%!important;box-sizing:border-box!important;height:auto!important;min-height:43px!important;padding:12px 14px!important;margin:0!important;line-height:1.4!important;white-space:normal!important;opacity:1!important;visibility:visible!important}
 .site-header>nav.heatss-mobile-panel>a::before,.site-header>nav.heatss-mobile-panel>a::after{display:none!important}
 .site-header>.heatss-mobile-toggle{display:flex!important;z-index:1003!important}
 /* The hero's copy must determine its height so its two CTA buttons cannot be clipped. */
 body:has(.hero) .hero{height:auto!important;min-height:600px!important;overflow:visible!important}
 body:has(.hero) .hero-image,body:has(.hero) .hero-overlay{inset:0!important}
 body:has(.hero) .hero-copy{width:min(100%,690px)!important;box-sizing:border-box!important;padding:48px 24px 44px!important;min-height:600px!important}
 body:has(.hero) .hero-actions{display:flex!important;flex-wrap:wrap!important;gap:12px!important;position:relative!important;z-index:3!important}
 body:has(.hero) .hero-actions .btn{max-width:100%;white-space:normal!important}
 /* Preserve glass affordances for touch, without relying on mouse hover. */
 .scenario:focus-within,.scenario.touch-active{border-color:rgba(191,233,252,.94)!important;box-shadow:0 0 0 2px rgba(127,207,239,.32),0 12px 28px rgba(0,19,31,.38),inset 0 1px rgba(255,255,255,.18)!important;backdrop-filter:blur(14px) saturate(155%);-webkit-backdrop-filter:blur(14px) saturate(155%)}
 .scenario:focus-within .caption,.scenario.touch-active .caption{background:linear-gradient(145deg,rgba(169,217,238,.26),rgba(8,42,64,.84))!important}
 .scenario:focus-within button,.scenario.touch-active button{display:flex!important}
}
@media(max-width:480px){
 body:has(.hero) .hero-copy{padding:38px 20px 38px!important}
 body:has(.hero) .hero-copy h1{font-size:clamp(42px,13vw,68px)!important;letter-spacing:.045em!important}
 body:has(.hero) .hero-actions .btn{font-size:13px!important;padding:13px 16px!important}
}

/* Requested mobile-only refinements; desktop visuals are intentionally unchanged. */
@media(max-width:900px){
 body:has(.hero) .hero-copy{padding-top:78px!important}
 .heatss-mobile-panel a.heatss-mobile-book{
  margin:12px 10px 4px!important;padding:15px 18px!important;
  text-align:center!important;color:#09283b!important;font-weight:900!important;
  border:1px solid rgba(255,225,150,.94)!important;border-radius:16px!important;
  background:linear-gradient(140deg,rgba(255,209,83,.99),rgba(246,166,18,.95))!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.55),inset 0 -2px 0 rgba(149,94,0,.2),0 8px 22px rgba(0,0,0,.25)!important;
  backdrop-filter:blur(10px) saturate(155%);-webkit-backdrop-filter:blur(10px) saturate(155%);
 }
 .heatss-mobile-panel a.heatss-mobile-book:active,.heatss-mobile-panel a.heatss-mobile-book:focus-visible{filter:brightness(1.07)}
 .philosophy{position:relative}
 .heatss-scenario-hint{position:absolute;right:6px;top:50%;transform:translateY(-50%);z-index:7;
  display:flex;align-items:center;justify-content:center;width:38px;height:66px;border-radius:19px;
  border:1px solid rgba(216,244,255,.75);color:#fff;font-size:28px;font-weight:800;
  background:linear-gradient(130deg,rgba(170,221,247,.38),rgba(6,40,64,.78));
  box-shadow:inset 0 1px rgba(255,255,255,.5),0 7px 22px rgba(0,19,34,.3);
  backdrop-filter:blur(10px) saturate(160%);-webkit-backdrop-filter:blur(10px) saturate(160%);
  cursor:pointer}
 .scenario-row .scenario.touch-active{transform:translateY(-2px);border-color:rgba(208,244,255,.9)!important;
  box-shadow:0 0 0 2px rgba(114,215,247,.38),0 7px 22px rgba(33,147,201,.27),inset 0 1px rgba(255,255,255,.25)!important}
 .scenario-row .scenario{cursor:pointer}
}
@media(max-width:480px){body:has(.hero) .hero-copy{padding-top:68px!important}}
@media(min-width:901px){.heatss-scenario-hint{display:none!important}}
@media(prefers-reduced-motion:reduce){.heatss-scenario-hint,.scenario-row .scenario{transition:none!important}}

/* Slim swipe indicator, visual only: never intercept scenario-card touches. */
@media(max-width:900px){
 .heatss-scenario-hint{width:18px!important;height:52px!important;right:3px!important;
 border-radius:12px!important;font-size:24px!important;pointer-events:none!important;
 box-shadow:inset 0 1px rgba(255,255,255,.4),0 3px 9px rgba(0,19,34,.2)!important}
}

/* Requested mobile hero refinement only: lower the entire text group and improve gold legibility. */
@media(max-width:900px){
 body:has(.hero) .hero-copy{padding-top:112px!important}
 .hero-copy .gold-kicker{color:#ffc43c!important;font-weight:950!important;letter-spacing:.025em!important;text-shadow:0 1px 0 rgba(89,47,0,.95),0 2px 5px rgba(0,0,0,.85),0 0 13px rgba(255,171,19,.25)!important;-webkit-text-stroke:.22px rgba(255,223,122,.85)}
}
@media(max-width:480px){body:has(.hero) .hero-copy{padding-top:102px!important}}

/* Scenario interaction repair, touch devices only. No desktop layout changes.
   Prevent simulated :hover from expanding the section and moving the tap target. */
@media (hover:none), (pointer:coarse){
 .philosophy.active{min-height:unset!important}
 .philosophy .scenario-row,.philosophy.active .scenario-row{
  height:280px!important;overflow-x:auto!important;overflow-y:hidden!important;
  align-items:stretch!important;touch-action:pan-x pan-y;
 }
 .scenario-row .scenario,.scenario-row:hover .scenario,
 .scenario-row .scenario:hover,.scenario-row .scenario.active-card,
 .scenario-row .scenario.touch-active{
  flex:0 0 auto!important;width:calc((100% - 12px)/2)!important;min-width:180px!important;
  height:100%!important;transform:none!important;box-sizing:border-box!important;
 }
 .scenario-row .scenario:hover:not(.touch-active) .caption{min-height:48px!important;padding:9px 10px!important}
 .scenario-row .scenario:hover:not(.touch-active) h3{font-size:12px!important}
 .scenario-row .scenario:hover:not(.touch-active) p,
 .scenario-row .scenario:hover:not(.touch-active) button{display:none!important}
 .scenario-row .scenario.touch-active .caption{min-height:110px!important;padding:12px!important}
 .scenario-row .scenario.touch-active h3{font-size:15px!important}
 .scenario-row .scenario.touch-active p{display:block!important;font-size:10px!important;line-height:1.3!important;margin:8px 40px 0 0!important}
 .scenario-row .scenario.touch-active button{
  display:flex!important;position:absolute!important;right:12px!important;bottom:12px!important;
  width:34px!important;height:34px!important;border-radius:50%!important;
  border:1px solid rgba(255,255,255,.75)!important;background:rgba(255,255,255,.08)!important;
  color:#fff!important;align-items:center!important;justify-content:center!important;
 }
 .philosophy.active .scenario .photo,
 .philosophy.active .scenario-row .scenario:hover .photo{inset:0 0 46px!important}
 .philosophy .scenario-row .scenario.touch-active .photo{inset:0 0 110px!important}
}
