:root{--navy:#052846;--deep:#031f38;--gold:#f5b43f;--ink:#102b49;--white:#fff}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--navy);color:var(--white);font-family:Arial,Helvetica,sans-serif}
a{transition:opacity .2s ease,background-color .2s ease}
a:hover{opacity:.86}

.site-header{height:66px;background:#fff;color:var(--ink);display:flex;align-items:center}
.header-inner{width:100%;height:100%;padding:0 5.1%;display:grid;grid-template-columns:290px 1fr 218px;align-items:center}
.brand{display:flex;align-items:center;height:100%}
.brand img{display:block;width:245px;height:auto}
.nav{display:flex;justify-content:center;gap:42px;font-size:14px;font-weight:600}
.nav a{color:#17324f;text-decoration:none;padding:23px 0 18px;position:relative}
.nav a.active{font-weight:700}
.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:11px;height:2px;background:var(--gold)}
.quote-btn{justify-self:end;display:inline-flex;align-items:center;min-height:38px;padding:12px 17px;background:#f8b844;color:#17324f;text-decoration:none;border-radius:3px;font-size:13px;font-weight:700;line-height:1}
.quote-btn span{margin-left:9px}

.hero{position:relative;overflow:hidden;background:var(--navy)}
.hero-image{width:100%;height:auto;display:block;object-fit:contain;object-position:center top}
.left-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,31,58,.92) 0%,rgba(0,31,58,.78) 17%,rgba(0,31,58,.34) 31%,rgba(0,31,58,.04) 45%,rgba(0,31,58,0) 62%);pointer-events:none}
.hero-copy{position:absolute;z-index:3;top:0;left:0;width:31.5%;padding-top:6.2%;margin-left:3.15%}
.eyebrow{position:relative;top:-8px;margin-bottom:20px;font-size:14px;letter-spacing:2.15px;font-weight:500}
.eyebrow b{color:var(--gold);font-size:15px;margin:0 9px}
h1{margin:0;font-size:55px;line-height:.98;font-weight:500;letter-spacing:-1.8px}
h1 span{display:block}
h1 .gold{color:var(--gold);font-weight:700}
.headline-rule{width:64px;height:3px;background:var(--gold);margin:12px 0 14px}
.hero-copy>p{margin:0;width:395px;max-width:100%;font-size:15px;line-height:1.42}
.tagline{width:max-content;margin-top:11px;font-family:"Brush Script MT","Lucida Handwriting","Segoe Script",cursive;font-size:34px;font-style:italic;line-height:1;letter-spacing:.2px;transform:rotate(-3deg);transform-origin:left center;white-space:nowrap}
.tagline-swoosh{width:286px;height:2px;margin-top:5px;background:linear-gradient(90deg,transparent,#f4b43e 8%,#f4b43e 92%,transparent);transform:skewX(-18deg) rotate(-4deg);transform-origin:left center}
.hero-actions{display:flex;gap:11px;margin-top:18px}
.btn{height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;border-radius:3px;text-decoration:none;font-size:13px;font-weight:700}
.btn.primary{background:#f8b844;color:#17324f}
.btn.primary span{margin-left:16px}
.btn.secondary{color:#fff;border:1px solid rgba(255,255,255,.8);background:rgba(2,37,67,.22)}
.hero-services{width:392px;max-width:100%;margin-top:20px;display:grid;grid-template-columns:1fr 1px 1fr 1px 1fr;align-items:start}
.divider{height:58px;margin-top:3px;background:rgba(255,255,255,.55)}
.mini{text-align:center}
.mini svg{width:35px;height:35px;display:block;margin:0 auto 7px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.mini span{display:block;font-family:Arial,Helvetica,sans-serif;font-size:10px;line-height:1.35;letter-spacing:.2px}
.top-label{position:absolute;z-index:3;top:2.1%;text-align:center;color:#0d2b48;text-transform:uppercase;font-weight:800}
.top-label strong{display:block;font-size:16px;line-height:1.02;letter-spacing:.8px}
.top-label strong:after{content:"";display:block;width:32px;height:2px;margin:7px auto 8px;background:var(--gold)}
.top-label span{display:block;font-size:10px;line-height:1.08;letter-spacing:.45px}
.facility-label{left:40.2%;width:13.5%}
.engineering-label{left:61.3%;width:16%}
.logistics-label{left:79.4%;width:15%}
.hero:after{content:"";position:absolute;z-index:2;left:0;right:0;bottom:-1px;height:78px;background:linear-gradient(180deg,rgba(4,39,67,0),rgba(4,39,67,.2) 35%,rgba(5,40,70,.72) 78%,#052846);pointer-events:none}

.services-home{position:relative;overflow:hidden;margin-top:-1px;padding:18px 23px 22px;background:#052846 url("assets/master1-services-background.png") center top/100% 100% no-repeat;color:#fff}
.services-inner{position:relative;z-index:2;width:calc(100% - 2px);margin:auto}
.services-heading{text-align:center;max-width:850px;margin:0 auto 14px}
.section-eyebrow{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:3px;margin-bottom:7px}
.services-heading h2{margin:0;font-size:29px;line-height:1.15;font-weight:400;letter-spacing:-.5px}
.services-heading h2 span{color:var(--gold);font-weight:500}
.services-heading p{max-width:760px;margin:8px auto 0;font-size:14px;line-height:1.45;color:rgba(255,255,255,.92)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{position:relative;overflow:hidden;border:1px solid rgba(77,130,166,.48);border-radius:9px;background:linear-gradient(180deg,rgba(5,42,70,.52),rgba(2,31,55,.96));box-shadow:0 12px 26px rgba(0,0,0,.14)}
.service-card>img{display:block;width:100%;aspect-ratio:1.72/1;object-fit:cover;object-position:center;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 68%,rgba(0,0,0,.9) 77%,rgba(0,0,0,.25) 94%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 68%,rgba(0,0,0,.9) 77%,rgba(0,0,0,.25) 94%,transparent 100%)}
.service-card-body{position:relative;z-index:2;min-height:190px;margin-top:-78px;padding:87px 18px 15px;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(2,31,55,0),rgba(2,31,55,.44) 22%,rgba(2,31,55,.9) 52%,rgba(2,31,55,.99))}
.service-card-title-row{display:flex;align-items:center;gap:13px}
.service-card-title-row .service-icon-master{width:50px;height:54px;flex:0 0 50px;display:block;fill:none;stroke:var(--gold);stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
.service-card h3{margin:0;font-size:18px;line-height:1.05;font-weight:500}
.service-card-rule{width:42px;height:2px;margin:10px 0 12px;background:var(--gold)}
.service-card p{max-width:290px;margin:0;color:rgba(255,255,255,.92);font-size:13px;line-height:1.45}
.service-card a{margin-top:auto;padding-top:18px;color:var(--gold);text-decoration:none;font-size:13px;font-weight:700}
.service-card a span{margin-left:10px;font-size:18px}
.explore-services{width:max-content;margin:14px auto 0;padding:12px 28px;display:flex;align-items:center;gap:16px;border:1.5px solid #f5a928;border-radius:9px;background:rgba(2,31,55,.38);color:#fff;text-decoration:none;font-size:13px;font-weight:600}
.explore-services span{font-size:18px}

.why-sunray{position:relative;min-height:clamp(245px,25.8vw,350px);margin-top:-1px;padding:clamp(18px,2.1vw,29px) 28px 20px;overflow:hidden;background:#041f39 url("assets/why-background-clean.webp") center/cover no-repeat;color:#fff}
.why-sunray:before,.why-sunray:after{content:"";position:absolute;z-index:1;pointer-events:none;border:2px solid rgba(245,180,63,.58);border-left-color:transparent;border-top-color:transparent;border-radius:50%;filter:drop-shadow(0 0 8px rgba(245,180,63,.24))}
.why-sunray:before{width:110%;height:78%;left:-64%;top:-48%;transform:rotate(8deg)}
.why-sunray:after{width:82%;height:72%;right:-35%;top:-34%;transform:rotate(-10deg)}
.why-inner{position:relative;z-index:2;max-width:calc(100% - 10px);margin:auto}
.why-sunray h2{margin:3px 0 5px;font-family:Georgia,"Times New Roman",serif;font-size:34px;line-height:1.08;font-weight:600}
.why-intro{margin:0 auto 16px;font-size:13px;line-height:1.35}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.why-grid article{padding:0 22px;border-right:1px solid rgba(255,255,255,.55)}
.why-grid article:last-child{border-right:0}
.why-grid svg{width:38px;height:38px;fill:none;stroke:var(--gold);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.why-grid h3{margin:4px 0;font-family:Georgia,"Times New Roman",serif;font-size:17px}
.why-grid p{margin:0;font-size:12px;line-height:1.3}

.requirements{min-height:clamp(137px,15vw,203px);display:grid;grid-template-columns:54% 46%;overflow:hidden;background:#fff;color:#17314f}
.requirements-copy{padding:clamp(16px,1.8vw,24px) 3.2% 11px}
.requirements-kicker{color:#657991;font-size:10px;font-weight:700;letter-spacing:2.4px}
.requirements h2{margin:4px 0 6px;font-family:Georgia,"Times New Roman",serif;font-size:26px;line-height:1.05}
.requirements p{max-width:650px;margin:0;font-size:12px;line-height:1.35}
.requirements-visual{min-height:clamp(137px,15vw,203px);background:url("assets/requirements-right.jpg") 40% center/cover no-repeat}

.support-cta{min-height:clamp(69px,7vw,95px);padding:9px 3.4%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#06243e;border-bottom:1px solid rgba(255,255,255,.78);color:#fff}
.support-copy{display:flex;align-items:center;gap:13px}
.support-copy svg{width:38px;height:38px;fill:none;stroke:var(--gold);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;flex:none}
.support-copy h2{margin:0 0 2px;font-family:Georgia,"Times New Roman",serif;font-size:20px}
.support-copy p{margin:0;font-size:11px}
.support-actions{display:flex;gap:12px;flex:none}
.support-actions .btn{min-width:136px}
.support-actions .primary{min-width:165px}

.site-footer{min-height:clamp(198px,18.5vw,250px);padding:27px 5% 35px;display:grid;grid-template-columns:1.05fr 1.1fr 1.25fr;align-items:start;gap:30px;background:#041d35;color:#fff}
.footer-brand img{display:block;width:clamp(245px,20vw,285px);height:auto}
.footer-center{text-align:center;padding-top:5px}
.footer-center nav{display:flex;justify-content:center;align-items:center;gap:12px}
.footer-center nav a{color:#fff;text-decoration:none;font-size:12px}
.footer-center nav span{opacity:.55}
.footer-pillars{margin-top:14px;font-size:10px;letter-spacing:2px}
.footer-pillars b{padding:0 9px;color:var(--gold)}
.footer-right{text-align:right}
.footer-script{display:inline-block;font-family:"Brush Script MT","Segoe Script",cursive;font-size:27px;font-style:italic;transform:rotate(-4deg)}
.footer-line{width:220px;height:2px;margin:5px 0 15px auto;background:linear-gradient(90deg,transparent,var(--gold))}
.footer-right small{font-size:10px}

@media(min-width:1000px){.services-inner{width:calc(100% - 2px)}
.service-grid{gap:clamp(18px,1.8vw,26px)}
.service-card-body{min-height:clamp(190px,17vw,250px);padding:clamp(87px,7vw,98px) 28px 22px}
.service-card-title-row{gap:18px}
.service-card-title-row .service-icon-master{width:56px;height:56px;flex-basis:56px}
.service-card h3{font-size:20px}
.service-card p,.service-card a{font-size:14px}
}

@media(max-width:1200px){.hero-copy{width:34%;padding-top:5.4%;margin-left:5.2%}
h1{font-size:47px}
.tagline{font-size:30px}
.tagline-swoosh{width:252px}
.hero-copy>p{font-size:14px}
.hero-services{width:365px}
}

@media(max-width:900px){.site-header{height:64px}
.header-inner{grid-template-columns:1fr auto;padding:0 20px}
.brand img{width:190px}
.nav{display:none}
.quote-btn{font-size:12px;padding:11px 13px}
.hero{min-height:620px}
.hero-image{position:absolute;width:auto;height:100%;max-width:none;left:50%;transform:translateX(-50%);object-fit:cover}
.left-shade{background:linear-gradient(90deg,rgba(0,31,58,.97),rgba(0,31,58,.82) 58%,rgba(0,31,58,.22))}
.hero-copy{width:82%;padding-top:45px;margin-left:6%}
.top-label{display:none}
h1{font-size:48px}
.hero-copy>p{font-size:15px}
.hero-services{width:390px}
.services-home{padding:42px 20px 48px;background-size:auto 100%}
.service-grid{grid-template-columns:1fr}
.service-card{max-width:620px;width:100%;margin:auto}
.services-heading h2{font-size:26px}
.why-sunray{height:auto;min-height:0;padding:34px 20px 30px}
.why-grid{grid-template-columns:repeat(2,1fr);row-gap:28px}
.why-grid article:nth-child(2){border-right:0}
.why-sunray h2{font-size:30px}
.requirements{grid-template-columns:1fr}
.requirements-copy{padding:28px 24px}
.requirements-visual{min-height:210px}
.support-cta{padding:18px 22px;flex-direction:column;align-items:flex-start}
.site-footer{grid-template-columns:1fr;text-align:center;padding-bottom:35px}
.footer-brand img{margin:auto}
.footer-center{order:2}
.footer-right{order:3;text-align:center}
.footer-line{margin-left:auto;margin-right:auto}
}

@media(max-width:560px){.quote-btn{display:none}
.header-inner{display:flex;justify-content:center}
.hero{min-height:660px}
.hero-copy{width:90%;margin-left:5%;padding-top:38px}
h1{font-size:43px}
.tagline{font-size:28px}
.hero-services{width:100%}
.hero-actions{flex-wrap:wrap}
.why-grid{grid-template-columns:1fr}
.why-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.25);padding:0 10px 18px}
.why-grid article:last-child{border-bottom:0}
.why-intro br,.why-grid br{display:none}
.support-actions{flex-wrap:wrap}
.footer-center nav{gap:8px}
}

/* Master 1 correction: preserve original assets; crop only their display windows. */
@font-face{font-family:SunrayScript;src:url('assets/sunray-script.otf') format('opentype');font-display:swap}
.tagline,.footer-script{font-family:SunrayScript,cursive;font-style:normal}
.site-header{height:clamp(66px,5.6vw,82px)}
.header-inner{grid-template-columns:28% 1fr 23%;padding:0 5.2%}
.brand{position:relative;overflow:hidden;width:100%;height:100%}
.brand img{position:absolute;width:143%;max-width:none;left:-18%;height:auto}
.hero-copy{margin-left:5.2%;padding-top:4%;width:30%}
.hero-copy>p{width:100%;font-size:clamp(14px,1.32vw,19px);line-height:1.36}
h1{font-size:clamp(43px,4.1vw,62px);line-height:1.02}
.eyebrow{font-size:clamp(11px,1.12vw,16px);margin-bottom:14px}
.tagline{font-weight:400;font-size:clamp(25px,2.8vw,39px)}
.hero-services{margin-top:22px}
.hero:after{height:14%;background:linear-gradient(transparent,#03213b)}
.services-home{background-color:#03213b;padding:24px 2.4% 30px}
.services-home:before,.services-home:after{content:"";position:absolute;left:0;right:0;pointer-events:none;z-index:1;height:45px}
.services-home:before{top:0;background:linear-gradient(#03213b,transparent)}
.services-home:after{bottom:0;background:linear-gradient(transparent,#03213b)}
.services-heading{max-width:100%;margin-bottom:20px}
.services-heading h2{font-size:clamp(26px,2.7vw,40px)}
.services-heading p{max-width:85%;font-size:clamp(14px,1.35vw,19px)}
.service-grid{gap:1.4%}
.service-photo{position:relative;width:100%;aspect-ratio:1.88;overflow:hidden;mask-image:linear-gradient(#000 0%,#000 76%,transparent 100%)}
.service-photo img{display:block;width:100%;height:auto;max-width:none;transform:scale(1.045);transform-origin:center top}
.service-card:first-child .service-photo img{margin-top:-2%}
.service-card-body{margin-top:-10px;padding:0 5.5% 20px;min-height:0;background:transparent;display:grid;grid-template-columns:1fr}
.service-card-title-row{gap:14px;align-items:center}
.service-card-title-row .service-icon-master{width:50px;height:50px;flex-basis:50px}
.service-card h3{font-size:clamp(17px,1.6vw,23px);font-weight:400}
.service-card p{margin-left:64px;max-width:none;font-size:clamp(14px,1.25vw,18px);line-height:1.35;min-height:3em}
.service-card-rule{margin:8px 0 0;width:42px}
.service-card a{font-size:clamp(14px,1.3vw,18px);padding-top:20px}
.why-sunray{background:#03213b url('assets/why-mountains-v16.png') center/100% 100% no-repeat;padding:25px 2.5% 24px;min-height:0;text-align:center}
.why-sunray:before{inset:0 0 auto;width:100%;height:30px;border:0;border-radius:0;transform:none;filter:none;background:linear-gradient(#03213b,transparent)}
.why-sunray:after{display:none}
.why-sunray h2{font-size:clamp(30px,3.2vw,46px);margin:8px 0}
.why-intro{font-size:clamp(14px,1.4vw,20px);margin-bottom:30px}
.why-grid article{padding:0 15px}
.why-grid svg{width:44px;height:44px}
.why-grid h3{font-size:clamp(17px,1.6vw,23px);margin:8px 0}
.why-grid p{font-size:clamp(14px,1.25vw,18px);line-height:1.35}
.requirements{position:relative;grid-template-columns:48% 52%;min-height:0}
.requirements-copy{position:relative;z-index:2;padding:18px 0 18px 7%;background:linear-gradient(90deg,#fff 90%,rgba(255,255,255,.94))}
.requirements h2{font-size:clamp(25px,2.4vw,35px)}
.requirements p{font-size:clamp(13px,1.2vw,17px)}
.requirements-visual{position:relative;min-height:0;background-size:122% 100%;background-position:right center}
.requirements-visual:before{content:"";position:absolute;inset:0 auto 0 0;width:16%;background:linear-gradient(90deg,#fff,rgba(255,255,255,.85) 40%,transparent)}
.support-copy h2{font-size:clamp(20px,2vw,29px)}
.support-copy p{font-size:clamp(12px,1.05vw,15px)}
.site-footer{background:#041d35;min-height:clamp(210px,21vw,300px)}
.footer-brand{display:block;position:relative;overflow:hidden;width:100%;height:76px}
.footer-brand img{width:112%;height:auto;position:absolute;left:-9%;top:-5px}
.footer-center nav a{font-size:14px}
.footer-script{font-weight:400}
@media(max-width:900px){
 .site-header{height:100px}.header-inner{grid-template-columns:1fr auto;grid-template-rows:64px 36px;padding:0 20px}.brand{width:240px}.nav{display:flex;grid-row:2;grid-column:1/-1;gap:28px;font-size:14px}.nav a{padding:4px 0 10px}.nav a.active:after{bottom:3px}.quote-btn{grid-row:1;grid-column:2}
 .hero-copy{width:82%;margin-left:6%;padding-top:40px}.hero-copy>p{max-width:395px;font-size:16px}.hero:after{height:70px}.eyebrow{font-size:13px}
 .service-grid{gap:22px}.service-card{max-width:560px}.service-card h3{font-size:21px}.service-card p,.service-card a{font-size:16px}.service-photo{aspect-ratio:1.88}
 .why-sunray{padding:30px 20px;background-size:cover}.why-intro{font-size:16px}.why-grid h3{font-size:20px}.why-grid p{font-size:16px}
 .requirements{grid-template-columns:1fr}.requirements-copy{padding:25px}.requirements p{font-size:16px}.requirements-visual{height:auto;aspect-ratio:3.5;background-size:122% 100%}.requirements-visual:before{width:10%;background:linear-gradient(90deg,#fff,transparent)}
 .footer-brand{width:290px;margin:auto}.footer-center nav a{font-size:14px}
}
@media(max-width:560px){.header-inner{display:grid;grid-template-columns:1fr}.brand{margin:auto}.hero-copy{width:90%;margin-left:5%}.why-grid{grid-template-columns:1fr}.service-card p{margin-left:64px}.requirements-visual:before{width:10%}}
.service-card:nth-child(2) .service-photo img{width:104%;margin-left:-3%;transform:none}
.service-card:nth-child(3) .service-photo img{width:107%;margin-left:-6%;transform:none}

/* v17: bounded composition on wide monitors, without stretching artwork. */
body{background:#03213b}
.header-inner{max-width:1440px;margin-inline:auto}
.brand{width:255px;max-width:100%;height:64px}
.brand img{width:360px;left:-45px;max-width:none}
.hero{max-width:1440px;margin-inline:auto}
.services-inner,.why-inner{width:100%;max-width:1320px;margin-inline:auto}
.services-home{background:#03213b radial-gradient(ellipse at 50% 45%,#042640 0%,#03213b 72%);}
.services-heading p{max-width:900px}
.why-sunray{background-size:1440px auto;background-position:center top;background-color:#03213b}
.requirements{padding-inline:max(0px,calc((100% - 1440px)/2));background:#fff}
.support-cta{padding-inline:max(3.4%,calc((100% - 1320px)/2))}
.site-footer{padding-inline:max(5%,calc((100% - 1320px)/2));min-height:220px;padding-bottom:48px;grid-template-columns:1fr 1.2fr 1.2fr}
.footer-brand{width:245px;max-width:100%;height:70px;isolation:isolate;background:#041d35}
.footer-brand img{width:280px;left:-20px;top:-4px;mix-blend-mode:lighten}
.tagline{width:100%;white-space:normal;font-size:clamp(25px,2.25vw,32px);line-height:1.12;letter-spacing:0}
.tagline-swoosh{max-width:90%}
.footer-script{font-size:26px}
@media(min-width:1440px){
 .hero-copy{padding-top:57.6px}
 .eyebrow{font-size:16px}
 h1{font-size:59px}
 .hero-copy>p{font-size:19px}
 .services-heading h2{font-size:38px}
 .services-heading p{font-size:18px}
 .service-card h3{font-size:22px}
 .service-card p,.service-card a{font-size:17px}
 .why-sunray h2{font-size:44px}
 .why-intro{font-size:19px}
 .why-grid h3{font-size:22px}
 .why-grid p{font-size:17px}
 .requirements h2{font-size:34px}
 .requirements p{font-size:16px}
}
@media(max-width:1100px) and (min-width:901px){
 .header-inner{grid-template-columns:230px 1fr 190px;padding-inline:3%}
 .nav{gap:24px}
 .brand{width:225px}.brand img{width:325px;left:-42px}
 .hero-actions{gap:8px}.hero-actions .btn{font-size:12px;padding-inline:12px}
 .support-cta{flex-wrap:wrap}.support-actions{margin-left:auto}
 .site-footer{gap:18px;padding-inline:3%}.footer-brand{width:220px}.footer-brand img{width:255px}
 .footer-center nav{gap:8px}.footer-script{font-size:23px}
}
@media(max-width:900px){
 .hero{margin-inline:0}.brand{width:230px}.brand img{width:330px;left:-43px}
 .tagline{max-width:390px;font-size:30px}
 .why-sunray{background-size:auto 100%}
 .requirements{padding-inline:0}
 .site-footer{grid-template-columns:1fr;min-height:0;padding:28px 24px 40px}
 .footer-brand{margin-inline:auto}
}
@media(max-width:400px){.tagline{font-size:26px}.eyebrow{font-size:11px;letter-spacing:1.3px}.eyebrow b{margin-inline:6px}.service-card p{margin-left:0}}

/* v18: three requested local corrections only. */
.hero-shirt-retouch{position:absolute;top:0;left:0;width:100%;height:auto;pointer-events:none}
.requirements-copy{padding-left:20px}
.requirements-visual{align-self:start;aspect-ratio:3.53;min-height:0;background-position:right top;background-size:122% auto}
@media(max-width:900px){
 .hero-shirt-retouch{width:auto;height:100%;max-width:none;left:50%;transform:translateX(-50%)}
 .requirements-copy{padding-left:20px}
 .requirements-visual{height:auto;aspect-ratio:3.53;background-position:right top;background-size:122% auto}
}

/* v19: preserve the entire helmet artwork at every viewport. */
.requirements-visual{background:none;aspect-ratio:auto;height:auto;min-height:0;align-self:start;overflow:visible}
.requirements-visual:before{display:none}
.requirements-visual img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;object-position:center top}

/* v20: aligned hero copy and shared handwritten brand lettering. */
.hero-copy{text-align:left}
.hero-copy .eyebrow{top:0;margin-left:0;margin-bottom:16px;white-space:nowrap;font-size:clamp(11px,1.02vw,14px);letter-spacing:1.65px}
.hero-copy h1,.hero-copy>p,.hero-copy .headline-rule,.hero-copy .hero-actions{margin-left:0}
.hero-copy>p{max-width:350px;width:95%;font-size:clamp(14px,1.2vw,17px);line-height:1.42}
.tagline-art{position:relative;display:block;width:100%;max-width:350px;aspect-ratio:4/1;overflow:hidden;transform:none;margin:10px 0 0;font-size:0;line-height:0}
.tagline-art img{position:static;display:block;width:100%;height:auto;max-width:100%;filter:none}
.hero-actions{margin-top:12px;justify-content:flex-start}
.footer-script.tagline-art{width:300px;max-width:100%;margin:0 0 12px auto}
/* v21: consistent photo edges and visible transition accents. */
.services-gold-edges{position:absolute;inset:0 auto auto 50%;transform:translateX(-50%);width:min(100%,1440px);height:clamp(100px,12.5vw,180px);pointer-events:none;z-index:1;opacity:.65;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.service-photo{border-radius:inherit}
.service-card:nth-child(2) .service-photo img{margin-top:-1.6%}
.service-card:nth-child(3) .service-photo img{margin-top:-1.6%}
/* v22: blend the bounded hero into the full-width navy canvas. */
/* v23: clean scalable lettering, consistent controls and compact banner. */
/* v25: use genuine handwriting when installed; retain offline fallback. */
.tagline-script{position:relative;font-family:SunrayScript,cursive;font-size:clamp(24px,2.2vw,31px);font-weight:400;line-height:1.15;letter-spacing:-.4px;white-space:nowrap;width:100%;max-width:350px;margin:18px 0 14px;transform:rotate(-4deg);transform-origin:left center;color:#fff}
.tagline-script svg{display:block;width:100%;height:15px;margin-top:-3px}
.footer-script.tagline-script{font-size:27px;max-width:310px;margin:8px 0 20px auto}
.btn,.quote-btn,.explore-services{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-weight:600}
.service-card-title-row .service-icon-master{stroke-width:3.5}
.why-grid svg{stroke-width:4}
.why-grid article:first-child svg{fill:var(--gold);stroke-width:1.5}
.why-grid article:nth-child(3) svg rect{fill:var(--gold)}
@media(min-width:901px){
 .requirements{grid-template-columns:54% 46%;align-items:start}
 .requirements-copy{padding:14px 12px 12px 20px}
 .requirements h2{font-size:clamp(25px,2.15vw,31px)}
 .requirements p{font-size:clamp(13px,1.08vw,15px);line-height:1.35}
}
@media(max-width:900px){.footer-script.tagline-script{margin-inline:auto}}
@media(max-width:400px){.tagline-script{font-size:24px}}
.hero-copy .tagline-script,.footer-right .tagline-script{display:block;font-family:"Segoe Script","Bradley Hand","Brush Script MT",SunrayScript,cursive;font-style:normal;font-weight:400;font-size:clamp(18px,1.65vw,24px);letter-spacing:-.8px;line-height:1.5;white-space:normal;text-wrap:balance}
.footer-right{min-width:0;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.footer-right .tagline-script{margin:4px 0 0;max-width:330px}
.footer-right small{display:block;position:static;width:100%;font:10px/1.5 Arial,Helvetica,sans-serif;margin:0;clear:both}
@media(max-width:900px){.footer-right{align-items:center;text-align:center}}
@media(min-width:1441px){
 .hero:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,#03213b 0%,rgba(3,33,59,0) 8%,rgba(3,33,59,0) 92%,#03213b 100%)}
}
@media(max-width:900px){.hero-copy>p{font-size:16px;max-width:350px}.hero-copy .eyebrow{font-size:12px;letter-spacing:1.4px}.footer-script.tagline-art{margin-inline:auto}}
@media(max-width:400px){.hero-copy .eyebrow{font-size:10px;letter-spacing:1px}.hero-copy .eyebrow b{margin-inline:5px}.tagline-art{max-width:310px}}
