
:root{
  --red:#ee2327;
  --red-dark:#d61b1f;
  --green:#24b34b;
  --bg:#f5f5f5;
  --surface:#ffffff;
  --text:#111111;
  --muted:#585858;
  --line:#e7e7e7;
  --dark:#0d0d0d;
  --shadow:0 14px 32px rgba(0,0,0,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,sans-serif;
  background:#ffffff;
  color:var(--text);
}
img{display:block;max-width:100%}
a{color:inherit}
button,input{font:inherit}
.container{width:min(1440px,calc(100% - 40px));margin-inline:auto}

.site-header{
  position:sticky;top:0;z-index:90;background:#fff;border-bottom:1px solid var(--line);
}
.nav{
  min-height:54px;display:flex;align-items:center;gap:26px;
}
.brand img{height:40px;width:auto}
.main-nav{display:flex;gap:34px;margin-left:auto}
.main-nav a{
  text-decoration:none;color:#111;font-size:15px;font-weight:700;position:relative;
}
.main-nav a::after{
  content:"";position:absolute;left:0;right:100%;bottom:-16px;height:2px;background:var(--red);transition:.2s;
}
.main-nav a:hover::after,.main-nav a.active::after{right:0}
.cta-head{
  margin-left:18px;display:flex;align-items:center;gap:10px;
  background:var(--red);color:#fff;text-decoration:none;border-radius:4px;padding:10px 16px;
  min-width:168px;
}
.cta-head img{width:20px;height:20px}
.cta-head strong,.cta-head span{display:block;font-size:14px;line-height:1.1}
.cta-head strong{font-weight:800}
.cta-head span{font-weight:700}
.menu-toggle{
  display:none;margin-left:auto;width:44px;height:44px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;
}
.menu-toggle span{display:block;height:2px;background:#111;margin:5px 0}

.hero{position:relative;overflow:hidden;background:#111}
.hero-bg{
  position:absolute;inset:0;
}
.hero-bg img{
  width:100%;height:100%;object-fit:cover;object-position:center;
}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.84) 28%, rgba(0,0,0,.44) 48%, rgba(0,0,0,.15) 72%, rgba(0,0,0,.02) 100%);
}
.hero-grid{
  position:relative;z-index:2;
  display:grid;grid-template-columns:42% 58%;align-items:stretch;min-height:400px;
}
.hero-copy{
  padding:38px 0 28px 66px;color:#fff;display:flex;flex-direction:column;justify-content:center;
}
.eyebrow{
  margin:0 0 10px;font-size:14px;font-weight:800;letter-spacing:.36em;text-transform:uppercase;
}
.eyebrow-dark{color:#000}
.hero h1{
  margin:0 0 12px;font-size:66px;line-height:.98;font-weight:900;letter-spacing:-.05em;
}
.hero h1 span{color:var(--red);display:block}
.hero-text{
  margin:0;max-width:520px;color:#f0f0f0;font-size:18px;line-height:1.45;
}
.hero-features{
  margin-top:26px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:560px;
}
.hero-features article{
  display:grid;justify-items:start;gap:10px;padding:0 20px;border-right:1px solid rgba(255,255,255,.16);
}
.hero-features article:first-child{padding-left:0}
.hero-features article:last-child{border-right:0}
.hero-features img{width:28px;height:28px}
.hero-features span{font-size:14px;line-height:1.3;color:#fff}
.hero-cta{
  margin-top:20px;display:inline-flex;align-items:center;gap:10px;width:max-content;
  min-height:44px;padding:0 18px;background:var(--red);color:#fff;text-decoration:none;border-radius:4px;font-weight:800;
}
.hero-cta img{width:18px;height:18px}

.categories{
  background:var(--bg);padding:18px 0 28px;border-bottom:1px solid var(--line);
}
.categories-head{
  display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;margin-bottom:14px;
}
.categories-title{text-align:center}
.categories h2{
  margin:0;font-size:58px;line-height:1.02;font-weight:900;letter-spacing:-.04em;
}
.categories h2 span{color:var(--red)}
.btn-outline{
  border:1px solid #777;padding:15px 20px;border-radius:4px;text-decoration:none;font-size:15px;font-weight:700;background:#fff;
}
.categories-grid{
  display:grid;grid-template-columns:repeat(7,1fr);gap:18px;
}
.cat-card{
  background:#fff;border:1px solid #efefef;border-radius:4px;box-shadow:var(--shadow);
  padding:16px 14px 14px;min-height:166px;
}
.cat-card img{
  height:64px;width:100%;object-fit:contain;margin-bottom:14px;
}
.cat-card h3{
  margin:0 0 6px;font-size:18px;font-weight:800;
}
.cat-card p{
  margin:0;color:#555;font-size:14px;line-height:1.35;
}

.promo-strip{
  background:#0b0b0b;color:#fff;
}
.promo-grid{
  display:grid;grid-template-columns:34% 45% 21%;align-items:stretch;min-height:125px;
}
.promo-photo img{
  width:100%;height:100%;object-fit:cover;
}
.promo-icons{
  display:grid;grid-template-columns:repeat(3,1fr);align-items:center;
}
.promo-icons article{
  display:grid;justify-items:center;text-align:center;gap:10px;border-right:1px solid rgba(255,255,255,.14);padding:18px 10px;
}
.promo-icons article:last-child{border-right:0}
.promo-icons img{width:32px;height:32px}
.promo-icons span{font-size:16px;line-height:1.3;font-weight:500}
.promo-note{
  display:grid;place-items:center;background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.24));
}
.promo-note p{
  margin:0;color:#fff;font-family:Caveat,cursive;font-size:44px;line-height:1.02;transform:rotate(-4deg);
}
.promo-note p::after{
  content:"";display:block;width:90px;height:4px;background:var(--red);margin-top:4px;margin-left:auto;
}

.info-band{
  background:#fff;
}
.info-grid{
  display:grid;grid-template-columns:1.35fr 1fr 1.25fr 1.2fr .9fr;align-items:stretch;
}
.info-card,.social-card{
  min-height:118px;padding:18px 20px;display:grid;grid-template-columns:32px 1fr;gap:14px;align-items:start;border-right:1px solid var(--line);
}
.info-card h3{
  margin:0 0 8px;font-size:18px;font-weight:800;
}
.info-card p,.info-card small{
  margin:0;color:#555;line-height:1.4;
}
.info-card strong{
  display:block;margin:4px 0 10px;font-size:18px;
}
.info-map{
  padding:12px;border-right:1px solid var(--line);
  display:grid;place-items:center;
}
.info-map img{width:100%;height:100%;max-height:94px;object-fit:cover;border:1px solid #ddd}
.wa-btn{
  margin-top:8px;display:inline-flex;align-items:center;gap:9px;background:var(--green);color:#fff;text-decoration:none;border-radius:4px;padding:10px 14px;font-weight:700;width:max-content;
}
.wa-btn img{width:18px;height:18px}
.social-card{
  grid-template-columns:1fr;border-right:0;justify-items:center;align-content:center;
}
.social-links{
  display:flex;gap:14px;justify-content:center;margin-bottom:12px;
}
.social-links a{
  width:24px;height:24px;display:grid;place-items:center;text-decoration:none;color:#111;font-size:22px;font-weight:700;
}
.social-card p{
  margin:0;text-align:center;color:#a0a0a0;font-family:Caveat,cursive;font-size:40px;line-height:.95;
}

.site-footer{
  background:#090909;color:#fff;
}
.footer-grid{
  min-height:52px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;
}
.footer-brand img{height:38px;filter:brightness(100) saturate(0) invert(1);}
.footer-nav{
  display:flex;justify-content:center;gap:28px;flex-wrap:wrap;
}
.footer-nav a{
  text-decoration:none;color:#fff;font-size:14px;
}
.site-footer small{color:#d6d6d6;font-size:12px}

@media (max-width:1200px){
  .categories-grid{grid-template-columns:repeat(4,1fr)}
  .hero-grid{grid-template-columns:50% 50%}
  .info-grid{grid-template-columns:1fr 1fr}
  .social-card{grid-column:1/-1}
}
@media (max-width:900px){
  .menu-toggle{display:block}
  .main-nav{
    display:none;position:absolute;top:54px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 20px;
    flex-direction:column;align-items:flex-start;gap:18px;
  }
  .main-nav.open{display:flex}
  .cta-head{display:none}
  .hero-grid{grid-template-columns:1fr;min-height:520px}
  .hero-overlay{background:linear-gradient(180deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.62) 42%, rgba(0,0,0,.28) 100%)}
  .hero-copy{padding:30px 0 24px 10px}
  .hero h1{font-size:52px}
  .hero-features{grid-template-columns:repeat(2,1fr);gap:18px}
  .hero-features article{border-right:0;padding:0}
  .categories-head{grid-template-columns:1fr;justify-items:center}
  .categories h2{font-size:44px}
  .promo-grid{grid-template-columns:1fr}
  .promo-note{padding:12px 0}
  .footer-grid{grid-template-columns:1fr;justify-items:start;padding:12px 0}
  .footer-nav{justify-content:flex-start}
}
@media (max-width:560px){
  .container{width:calc(100% - 24px)}
  .brand img{height:34px}
  .hero h1{font-size:42px}
  .hero-text{font-size:16px}
  .categories-grid{grid-template-columns:1fr 1fr}
  .promo-icons{grid-template-columns:1fr}
  .promo-icons article{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}
  .promo-icons article:last-child{border-bottom:0}
  .info-grid{grid-template-columns:1fr}
  .info-card,.info-map,.social-card{border-right:0;border-bottom:1px solid var(--line)}
  .social-card{border-bottom:0}
  .social-card p{font-size:34px}
}
