
:root{--red:#8B1E2E;--red-700:#6F1825;--bg:#F5F7FA;--text:#2F3A3F;--white:#fff}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Open Sans',Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.6}
h1,h2,h3{font-family:'Montserrat',sans-serif;margin:0 0 .6rem}
h1{font-size:clamp(2.2rem,3.2vw,3.2rem);line-height:1.1}
h2{font-size:clamp(1.6rem,2.4vw,2.2rem)}
.container{max-width:1120px;margin:0 auto;padding:1rem}
.section{padding:2rem 1rem;scroll-margin-top:96px}
@media(max-width:960px){ .section{scroll-margin-top:84px} }

.topbar{position:sticky;top:0;background:var(--white);border-bottom:1px solid #e9edf2;z-index:20}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.brand img{height:56px;width:auto}
.nav{display:flex;align-items:center;gap:1rem}
.nav a{text-decoration:none;color:var(--text)}

.btn{display:inline-block;padding:.85rem 1.1rem;border-radius:14px;border:1px solid transparent;font-weight:700;text-decoration:none;line-height:1}
.btn-primary, a.btn-primary, .nav .btn-primary, .btn-primary:link, .btn-primary:visited{background:var(--red) !important;color:#fff !important}
.btn-primary:hover{background:var(--red-700) !important}
.btn-secondary{background:#fff;color:var(--text);border-color:#e2e6ea}

.hamburger{display:none;background:none;border:0;width:44px;height:44px;position:relative;border-radius:10px}
.hamburger span{position:absolute;left:10px;right:10px;height:2px;background:#2F3A3F;transition:.2s}
.hamburger span:nth-child(1){top:14px}
.hamburger span:nth-child(2){top:20px}
.hamburger span:nth-child(3){top:26px}

.hero{background:linear-gradient(to bottom,rgba(0,0,0,.45),rgba(0,0,0,.35)),var(--hero) center/cover no-repeat;color:#fff}
.hero-inner{padding:clamp(3rem,8vw,6rem) 1rem}
.lead{font-size:1.1rem;opacity:.95;max-width:720px}
.hero-bullets{display:flex;gap:1rem;list-style:none;padding:0;margin:1rem 0 1.2rem;flex-wrap:wrap}
.cta-row{display:flex;gap:.8rem;flex-wrap:wrap}

.cards.three{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.card{background:#fff;border-radius:16px;padding:1rem;box-shadow:0 10px 24px rgba(0,0,0,.06)}
.card img{width:100%;height:180px;object-fit:cover;border-radius:12px;margin-bottom:.6rem}

.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:.5rem}
.benefit{background:#fff;border-radius:16px;padding:1rem;text-align:center;box-shadow:0 8px 22px rgba(0,0,0,.05)}
.benefit .num{font-family:'Montserrat';font-size:2rem;display:block}
.calm{display:block;margin:1rem auto 0;max-width:100%;height:auto;border-radius:16px;box-shadow:0 8px 22px rgba(0,0,0,.05)}

.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:1.2rem;align-items:start}
.contact-form{background:#fff;padding:1rem;border-radius:16px;box-shadow:0 8px 22px rgba(0,0,0,.05);font-family:'Open Sans',Arial,sans-serif}
.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.contact-form input,.contact-form textarea{width:100%;padding:.9rem;border:1px solid #e2e6ea;border-radius:10px;font-size:1rem}
.contact-form textarea{min-height:150px}
.contact-form ::placeholder{color:#9aa3ab;opacity:1}
.contact-form .btn-primary{margin-top:.4rem}

.footer{background:#0F1114;color:#D0D5DD;margin-top:2rem}
.foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 1rem}
.foot nav a{color:#D0D5DD;text-decoration:none;margin-left:1rem}
.copy{opacity:.8}
.footer .brand img{height:64px;width:auto;filter:invert(1) brightness(2) saturate(0)}

.cta-mobile{display:none}
@media (max-width:960px){
  .hamburger{display:block}
  .nav{display:none;position:absolute;top:64px;right:12px;left:12px;background:#fff;border:1px solid #e9edf2;border-radius:12px;padding:.8rem;box-shadow:0 10px 24px rgba(0,0,0,.1);flex-direction:column;gap:.6rem}
  .nav.open{display:flex}
  .cta-mobile{display:inline-block}
  .cards.three{grid-template-columns:1fr}
  .benefits{grid-template-columns:1fr}
  .contact{grid-template-columns:1fr}
  .foot{flex-direction:column;align-items:flex-start;gap:.4rem}
  .foot nav{display:flex;gap:.8rem;flex-wrap:wrap;margin-left:0}
}

.cookie-banner{position:fixed;left:1rem;right:1rem;bottom:1rem;background:#fff;box-shadow:0 10px 24px rgba(0,0,0,.2);border-radius:14px;padding:1rem;z-index:1000}
.cookie-actions{display:flex;gap:.6rem;flex-wrap:wrap}
.cookie-actions .btn{flex:1 1 auto;text-align:center}
