@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');:root{--red:#ee1018;--bg:#090a0c;--line:#343438}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:#fff;font-family:Montserrat,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}header{position:sticky;top:0;z-index:30;background:#090a0cf5;border-bottom:1px solid #27272b}.nav{max-width:1480px;margin:auto;padding:13px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:min(360px,39vw);height:auto;display:block}nav{display:flex;gap:36px;align-items:center}nav a{font-size:14px;padding:12px 0}nav a.active{border-bottom:3px solid var(--red)}nav a.contactnav{border:1px solid var(--red);border-radius:6px;padding:11px 25px}.menu{display:none;background:transparent;color:white;border:1px solid #555;padding:8px 12px;border-radius:5px}.wrap{max-width:1460px;margin:auto;padding:0 4%}.eyebrow{letter-spacing:5px;font-size:13px;font-weight:700;text-transform:uppercase}.eyebrow:after{content:'';display:inline-block;width:60px;height:2px;background:var(--red);vertical-align:middle;margin-left:18px}h1{font-size:clamp(40px,5vw,76px);line-height:1.07;margin:20px 0;font-weight:800;letter-spacing:-2px}h2{font-size:clamp(30px,3.5vw,52px);line-height:1.1;margin:12px 0 22px}h3{font-size:26px;margin:14px 0}p{line-height:1.5;font-size:18px}.muted{color:#e0e0e0}.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 29px;border-radius:5px;background:var(--red);border:2px solid var(--red);font-weight:700;cursor:pointer;transition:.2s}.btn:hover{filter:brightness(1.15)}.btn.outline{background:transparent;border-color:#ddd}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero{min-height:580px;display:flex;align-items:center;background:radial-gradient(ellipse at 82% 52%,#551017 0%,transparent 48%),#101012;overflow:hidden}.hero .wrap{width:100%;display:grid;grid-template-columns:48% 52%;align-items:center}.hero-copy{position:relative;z-index:2;padding:65px 0}.hero-image{height:550px;background:url('hero.jpg') center center/contain no-repeat;filter:contrast(1.07)}.ribbon{border-top:1px solid #29292c;border-bottom:1px solid #29292c;text-align:center;padding:21px 5%;letter-spacing:6px;font-weight:700;font-size:13px}.ribbon span{color:var(--red);padding:0 12px}.section{padding:58px 0}.redline{width:65px;height:3px;background:var(--red);margin:20px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{position:relative;overflow:hidden;background:#151518}.card img{width:100%;height:310px;object-fit:cover;display:block;transition:.3s}.card:hover img{transform:scale(1.04)}.card .overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#070708 95%);padding:55px 18px 17px;font-size:20px;font-weight:700;border-bottom:3px solid var(--red)}.card .overlay b{float:right}.feature{border-top:1px solid #242428;display:grid;grid-template-columns:55% 45%;align-items:center;gap:5%;padding-top:30px}.feature img{width:100%;height:300px;object-fit:cover}.feature p{max-width:480px}.redlink{color:#f22;font-weight:700}.cta{background:linear-gradient(115deg,#480b0f,#101012 30%,#121012 70%,#4d0a10);padding:42px 5%;text-align:center}.cta h2{margin:0 0 20px}.footer{border-top:1px solid #444;padding:23px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px}.footer img{width:275px;max-width:100%}.footer a{overflow-wrap:anywhere}.pageintro{padding:45px 0 22px;background:radial-gradient(ellipse at 80% 50%,#2a0d11,transparent 45%)}.pageintro h1{font-size:clamp(38px,4.2vw,64px);margin:12px 0 6px}.pageintro p{margin:0}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:40px}.product img{width:100%;height:280px;object-fit:cover;border-radius:5px}.product p{font-size:15px;min-height:60px}.product .btn{min-width:215px}.strip{display:flex;align-items:center;justify-content:center;gap:30px;flex-wrap:wrap;background:linear-gradient(100deg,#4b0d10,#111 30%,#111 70%,#480c10);padding:24px}.strip h2{font-size:32px;margin:0}.about-hero{display:grid;grid-template-columns:45% 55%;min-height:500px;align-items:center;background:radial-gradient(ellipse at 80% 70%,#390b0e,transparent 50%)}.about-hero .copy{padding:55px 0 55px 8%}.about-hero .copy p{font-size:19px}.about-hero img{width:100%;height:500px;object-fit:contain;object-position:center;background:#151316}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding:35px 0}.step strong{color:var(--red);font-size:35px}.step strong:after{content:'';display:inline-block;height:2px;background:var(--red);width:45%;margin-left:20px;vertical-align:middle}.step p{font-size:16px}.filters{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0}.filters button{color:white;background:transparent;border:1px solid #aaa;border-radius:5px;padding:11px 28px;cursor:pointer}.filters button.active{background:var(--red);border-color:var(--red)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.gallery .card img{height:270px}.gallery .wide{grid-column:span 2}.gallery .wide img{height:190px}.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:50px 0}.contactlinks{display:grid;gap:25px;margin:35px 0}.contactlinks a{font-weight:700;overflow-wrap:anywhere}.contactlinks span{color:var(--red);font-size:23px;margin-right:18px}.contactphoto{width:100%;height:245px;object-fit:cover}.contactform{border:1px solid #555;border-radius:14px;padding:35px;display:grid;gap:12px}.contactform label{font-weight:700}.contactform input,.contactform select,.contactform textarea{width:100%;background:#111;color:white;border:1px solid #aaa;border-radius:6px;padding:12px}.contactform textarea{height:115px;resize:vertical}.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:400!important}.consent input{width:auto}.hide{display:none!important}@media(max-width:800px){.nav{flex-wrap:wrap}.brand img{width:255px;max-width:70vw}.menu{display:block}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:14px}.hero .wrap,.about-hero,.contactgrid,.feature{grid-template-columns:1fr}.hero{min-height:0}.hero-copy{padding:60px 0 10px}.hero-image{height:320px}.cards,.products,.steps{grid-template-columns:1fr}.card img{height:280px}.feature{gap:20px}.about-hero .copy{padding:35px 6%}.about-hero img{height:320px}.gallery{grid-template-columns:repeat(2,1fr)}.gallery .card img{height:220px}.gallery .wide img{height:180px}.footer{justify-content:center;text-align:center}.contactgrid{gap:15px}.contactform{padding:20px}.ribbon{letter-spacing:2px;font-size:10px}}@media(max-width:460px){.gallery{grid-template-columns:1fr}.gallery .wide{grid-column:auto}.gallery .card img,.gallery .wide img{height:260px}.product img{height:230px}.hero-image{height:260px}h1{letter-spacing:-1px}}

/* Mobile-first refinements: 2026-11 */
html{overflow-x:clip}body{overflow-x:clip}img{max-width:100%}
@media(max-width:900px){
 .nav{padding:12px 5%;flex-wrap:nowrap;position:relative;min-height:70px}
 .brand{flex:1;min-width:0}.brand img{width:min(290px,68vw);max-width:100%}
 .menu{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;min-width:44px;flex-shrink:0;cursor:pointer}
 nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;background:#101013;border-bottom:1px solid #4b2024;padding:8px 5% 18px;box-shadow:0 15px 25px #000a;z-index:50}
 nav.open{display:flex;flex-direction:column;gap:2px;align-items:stretch}
 nav a{display:block;padding:14px 12px;border-bottom:1px solid #28282d;font-size:15px}
 nav a.active{border-bottom:1px solid #28282d;color:#ff3d44;border-left:3px solid var(--red)}
 nav a.contactnav{margin-top:8px;text-align:center}
 .wrap{padding-left:5%;padding-right:5%}
 .hero .wrap{grid-template-columns:1fr;display:flex;flex-direction:column;align-items:stretch}
 .hero-copy{padding:44px 0 10px}
 .hero-copy h1{font-size:clamp(40px,9vw,64px)}
 .hero-copy p{font-size:clamp(15px,3.7vw,19px)}
 .hero-image{height:clamp(290px,65vw,460px);width:100%;background-position:center;background-size:contain}
 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .products{grid-template-columns:repeat(2,minmax(0,1fr))}
 .steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
 .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .gallery .wide{grid-column:span 2}
 .contactgrid{grid-template-columns:1fr;gap:22px}
 .contactform{max-width:100%;padding:22px}
 .about-hero{grid-template-columns:1fr}
 .about-hero .copy{padding:38px 5% 12px}
 .about-hero img{height:350px;object-fit:contain;object-position:center}
 .feature{grid-template-columns:1fr;gap:24px}
 .feature img{height:260px}
 .footer{display:grid;grid-template-columns:1fr 1fr;gap:18px;text-align:left;padding:26px 5%}
 .footer img{width:min(270px,100%)}
 .ribbon{font-size:11px;letter-spacing:2px;line-height:1.9}
}
@media(max-width:600px){
 .nav{min-height:64px}
 .brand img{width:min(225px,65vw)}
 .eyebrow{font-size:10px;letter-spacing:2.4px}
 .eyebrow:after{width:30px;margin-left:9px}
 h1{font-size:clamp(36px,10vw,52px);letter-spacing:-1.5px}
 h2{font-size:clamp(28px,7.5vw,38px)}
 h3{font-size:22px}
 p{font-size:15px}
 .hero-copy{padding:35px 0 0}
 .hero-copy h1{font-size:clamp(40px,11vw,55px);margin:16px 0}
 .hero-copy p br{display:none}
 .hero-image{height:300px;margin-top:8px}
 .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
 .actions .btn{padding:12px 9px;text-align:center;font-size:13px;min-width:0}
 .section{padding:35px 0}
 .cards{grid-template-columns:1fr;gap:15px}
 .card img{height:245px}
 .feature img{height:215px}
 .products{grid-template-columns:1fr;gap:28px}
 .product img{height:240px}
 .product p{min-height:0}
 .product .btn{width:100%;min-width:0}
 .steps{grid-template-columns:1fr;gap:16px}
 .step{padding:12px 0;border-bottom:1px solid #29292c}
 .step strong{font-size:30px}
 .about-hero img{height:280px}
 .about-hero .copy p{font-size:15px}
 .pageintro{padding:30px 0 18px}
 .pageintro h1{font-size:clamp(35px,9vw,49px)}
 .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .filters button{padding:12px 7px;font-size:13px}
 .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .gallery .card img{height:175px}
 .gallery .wide img{height:165px}
 .gallery .overlay{font-size:12px;padding:38px 9px 10px}
 .contactgrid{padding:25px 0}
 .contactlinks{gap:17px;margin:24px 0}
 .contactlinks a{font-size:13px}
 .contactlinks span{font-size:19px;margin-right:8px}
 .contactphoto{height:185px}
 .contactform{padding:18px 15px;border-radius:9px}
 .contactform input,.contactform select,.contactform textarea{font-size:16px;min-height:44px}
 .strip{padding:26px 5%;gap:14px;text-align:center}
 .strip h2{font-size:25px}
 .strip .btn{width:100%}
 .cta{padding:35px 5%}
 .footer{grid-template-columns:1fr;text-align:center;justify-items:center;gap:17px}
 .footer a{max-width:100%;font-size:12px}
 .ribbon{font-size:9px;letter-spacing:1px;padding:14px 3%}
 .ribbon span{padding:0 4px}
}
@media(max-width:370px){
 .brand img{width:190px}
 .menu{font-size:12px;padding:7px}
 .actions{grid-template-columns:1fr}
 .hero-image{height:250px}
 .gallery{grid-template-columns:1fr}
 .gallery .wide{grid-column:auto}
 .gallery .card img,.gallery .wide img{height:230px}
}



/* Mobile-first refinements: 2026-11 */
html{overflow-x:clip}body{overflow-x:clip}img{max-width:100%}
@media(max-width:900px){
 .nav{padding:12px 5%;flex-wrap:nowrap;position:relative;min-height:70px}
 .brand{flex:1;min-width:0}.brand img{width:min(290px,68vw);max-width:100%}
 .menu{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;min-width:44px;flex-shrink:0;cursor:pointer}
 nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;background:#101013;border-bottom:1px solid #4b2024;padding:8px 5% 18px;box-shadow:0 15px 25px #000a;z-index:50}
 nav.open{display:flex;flex-direction:column;gap:2px;align-items:stretch}
 nav a{display:block;padding:14px 12px;border-bottom:1px solid #28282d;font-size:15px}
 nav a.active{border-bottom:1px solid #28282d;color:#ff3d44;border-left:3px solid var(--red)}
 nav a.contactnav{margin-top:8px;text-align:center}
 .wrap{padding-left:5%;padding-right:5%}
 .hero .wrap{grid-template-columns:1fr;display:flex;flex-direction:column;align-items:stretch}
 .hero-copy{padding:44px 0 10px}
 .hero-copy h1{font-size:clamp(40px,9vw,64px)}
 .hero-copy p{font-size:clamp(15px,3.7vw,19px)}
 .hero-image{height:clamp(290px,65vw,460px);width:100%;background-position:center;background-size:contain}
 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .products{grid-template-columns:repeat(2,minmax(0,1fr))}
 .steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
 .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .gallery .wide{grid-column:span 2}
 .contactgrid{grid-template-columns:1fr;gap:22px}
 .contactform{max-width:100%;padding:22px}
 .about-hero{grid-template-columns:1fr}
 .about-hero .copy{padding:38px 5% 12px}
 .about-hero img{height:350px;object-fit:contain;object-position:center}
 .feature{grid-template-columns:1fr;gap:24px}
 .feature img{height:260px}
 .footer{display:grid;grid-template-columns:1fr 1fr;gap:18px;text-align:left;padding:26px 5%}
 .footer img{width:min(270px,100%)}
 .ribbon{font-size:11px;letter-spacing:2px;line-height:1.9}
}
@media(max-width:600px){
 .nav{min-height:64px}
 .brand img{width:min(225px,65vw)}
 .eyebrow{font-size:10px;letter-spacing:2.4px}
 .eyebrow:after{width:30px;margin-left:9px}
 h1{font-size:clamp(36px,10vw,52px);letter-spacing:-1.5px}
 h2{font-size:clamp(28px,7.5vw,38px)}
 h3{font-size:22px}
 p{font-size:15px}
 .hero-copy{padding:35px 0 0}
 .hero-copy h1{font-size:clamp(40px,11vw,55px);margin:16px 0}
 .hero-copy p br{display:none}
 .hero-image{height:300px;margin-top:8px}
 .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
 .actions .btn{padding:12px 9px;text-align:center;font-size:13px;min-width:0}
 .section{padding:35px 0}
 .cards{grid-template-columns:1fr;gap:15px}
 .card img{height:245px}
 .feature img{height:215px}
 .products{grid-template-columns:1fr;gap:28px}
 .product img{height:240px}
 .product p{min-height:0}
 .product .btn{width:100%;min-width:0}
 .steps{grid-template-columns:1fr;gap:16px}
 .step{padding:12px 0;border-bottom:1px solid #29292c}
 .step strong{font-size:30px}
 .about-hero img{height:280px}
 .about-hero .copy p{font-size:15px}
 .pageintro{padding:30px 0 18px}
 .pageintro h1{font-size:clamp(35px,9vw,49px)}
 .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .filters button{padding:12px 7px;font-size:13px}
 .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .gallery .card img{height:175px}
 .gallery .wide img{height:165px}
 .gallery .overlay{font-size:12px;padding:38px 9px 10px}
 .contactgrid{padding:25px 0}
 .contactlinks{gap:17px;margin:24px 0}
 .contactlinks a{font-size:13px}
 .contactlinks span{font-size:19px;margin-right:8px}
 .contactphoto{height:185px}
 .contactform{padding:18px 15px;border-radius:9px}
 .contactform input,.contactform select,.contactform textarea{font-size:16px;min-height:44px}
 .strip{padding:26px 5%;gap:14px;text-align:center}
 .strip h2{font-size:25px}
 .strip .btn{width:100%}
 .cta{padding:35px 5%}
 .footer{grid-template-columns:1fr;text-align:center;justify-items:center;gap:17px}
 .footer a{max-width:100%;font-size:12px}
 .ribbon{font-size:9px;letter-spacing:1px;padding:14px 3%}
 .ribbon span{padding:0 4px}
}
@media(max-width:370px){
 .brand img{width:190px}
 .menu{font-size:12px;padding:7px}
 .actions{grid-template-columns:1fr}
 .hero-image{height:250px}
 .gallery{grid-template-columns:1fr}
 .gallery .wide{grid-column:auto}
 .gallery .card img,.gallery .wide img{height:230px}
}

/* Exact mobile composition based on approved five-page sketches */
@media(max-width:600px){
 body{font-size:15px}
 .nav{padding:12px 5%;gap:9px}
 .brand img{width:min(260px,69vw)}
 .menu{border:1px solid #ee1018;border-radius:7px;font-size:0;width:44px;height:43px;padding:0}
 .menu::before{content:'☰';font-size:26px;line-height:1}
 .menu[aria-expanded=true]::before{content:'✕';font-size:25px}
 .hero{background:radial-gradient(ellipse at 70% 60%,#521117,#101012 65%);min-height:0}
 .hero .wrap{position:relative;min-height:560px}
 .hero-copy{position:relative;z-index:2;padding-top:34px}
 .hero-copy h1{max-width:90%;font-size:clamp(40px,11vw,58px)}
 .hero-copy p{max-width:310px}
 .hero-image{position:relative;height:260px;margin-top:0;background-size:contain;background-position:center}
 .actions{grid-template-columns:1fr 1fr;max-width:420px}
 .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .cards .card img{height:clamp(115px,34vw,190px)}
 .cards .card .overlay{font-size:clamp(10px,2.7vw,15px);padding:30px 6px 8px}
 .cards .card .overlay b{display:none}
 .feature{grid-template-columns:1fr}
 .feature img{height:205px}
 .feature h2{font-size:32px}
 .pageintro{padding-top:35px}
 .products{grid-template-columns:1fr;gap:20px}
 .product{border:1px solid #29292c;border-radius:10px;overflow:hidden;padding-bottom:17px}
 .product img{height:210px;border-radius:0;object-fit:cover}
 .product h3,.product p{margin-left:15px;margin-right:15px}
 .product .btn{width:calc(100% - 30px);margin:0 15px}
 .about-hero{display:flex;flex-direction:column}
 .about-hero .copy{padding:35px 5% 12px}
 .about-hero img{height:300px;object-fit:contain;background:#111}
 .steps{display:grid;grid-template-columns:1fr;padding:22px 5%}
 .gallery{grid-template-columns:1fr;gap:12px}
 .gallery .wide{grid-column:auto}
 .gallery .card img,.gallery .wide img{height:225px;object-fit:cover}
 .gallery .overlay{font-size:18px;padding:55px 14px 13px}
 .filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 .filters button{padding:10px 2px;font-size:11px}
 .contactgrid{grid-template-columns:1fr}
 .contactform{margin-bottom:20px}
 .footer{grid-template-columns:1fr;justify-items:center;text-align:center}
 .footer img{width:min(285px,78vw)}
 .footer a{font-size:12px}
}
@media(max-width:390px){
 .brand img{width:min(225px,67vw)}
 .cards .card img{height:110px}
 .cards .card .overlay{font-size:10px}
 .filters button{font-size:10px}
}
