:root{
  --teal:#0E5C61;
  --teal-dark:#06474C;
  --coral:#FD7461;
  --coral-dark:#E85C48;
  --cream:#F3F2EF;
  --page-bg:#EBEBE7;
  --ink:#0E5C61;
  --body-text:#3A6E70;
  --card-text:#2E4D4E;
  --radius:20px;
  --max-width:1180px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--body-text);
  background:var(--page-bg);
  line-height:1.55;
}
img{max-width:100%;display:block;}
h1,h2,h3{color:var(--ink);font-weight:800;letter-spacing:-0.01em;margin:0 0 .5em;}
p{margin:0 0 1em;}
.wrap{max-width:var(--max-width);margin:0 auto;padding:0 24px;}
.coral{color:var(--coral);}
.center{text-align:center;}
.visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* HEADER */
.site-header{padding:28px 0 8px;background:var(--page-bg);}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.logo-header{height:48px;width:auto;}
.pill{
  display:inline-flex;align-items:center;gap:8px;
  background:#fff;color:var(--teal);
  padding:10px 18px;border-radius:999px;font-weight:600;font-size:.9rem;
  box-shadow:0 2px 10px rgba(14,92,97,.08);
}

/* HERO */
.hero{padding:32px 0 0;}
.hero-inner{display:flex;align-items:center;gap:48px;flex-wrap:wrap;}
.hero-text{flex:1 1 460px;min-width:280px;}
.hero-image{flex:1 1 380px;min-width:260px;max-width:460px;margin:0 auto;}
h1{font-size:clamp(2rem,4.2vw,2.9rem);line-height:1.12;}
.lead{font-size:1.1rem;max-width:46ch;}
.deuren{display:flex;align-items:center;gap:10px;color:var(--teal);font-weight:600;margin-bottom:22px;}
.heart-outline{color:var(--coral);flex-shrink:0;}

.signup-form{display:flex;gap:0;max-width:520px;flex-wrap:wrap;border-radius:999px;overflow:hidden;box-shadow:0 4px 18px rgba(14,92,97,.08);}
.signup-form input[type=email]{
  flex:1 1 220px;border:none;padding:16px 20px;font-size:1rem;background:#fff;color:var(--ink);min-width:0;
}
.signup-form input[type=email]:focus{outline:2px solid var(--teal);outline-offset:-2px;}
.signup-form .hp-field{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.signup-form button{
  border:none;background:var(--coral);color:#fff;font-weight:700;
  padding:16px 26px;font-size:.95rem;cursor:pointer;white-space:nowrap;
  transition:background .15s ease;
}
.signup-form button:hover{background:var(--coral-dark);}
.signup-form button:disabled{opacity:.7;cursor:default;}
.form-note{font-size:.85rem;color:var(--body-text);margin-top:10px;margin-bottom:0;}
.form-note.success{color:var(--teal);font-weight:700;}
.form-note.error{color:#B5451B;font-weight:700;}

/* TEAL BAND */
.band-teal{background:var(--teal);color:#fff;padding:56px 0;margin-top:40px;}
.band-teal-inner{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:28px;align-items:start;}
.band-teal-text h2{color:#fff;font-size:1.6rem;}
.band-teal-text p{color:rgba(255,255,255,.85);}
.band-teal .card{color:#fff;}
.band-teal .card h3{color:#fff;font-size:1.05rem;}
.band-teal .card p{color:rgba(255,255,255,.8);font-size:.92rem;}
.icon{display:inline-flex;width:40px;height:40px;margin-bottom:14px;}
.icon svg{width:100%;height:100%;}
.icon-coral{color:var(--coral);}

/* LIGHT BAND */
.band-light{padding:64px 0;}
.band-light h2{font-size:1.8rem;margin-bottom:40px;}
.grid-6{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 28px;}
.feature h3{font-size:1.05rem;color:var(--ink);}
.feature p{font-size:.92rem;color:var(--card-text);}
.badge{
  display:inline-flex;align-items:center;justify-content:center;
  width:64px;height:64px;border-radius:50%;margin-bottom:16px;
}
.badge svg{width:30px;height:30px;}
.badge-teal{background:#DCE7E6;color:var(--teal);}
.badge-coral{background:#FCE3DD;color:var(--coral);}

/* SIGNUP STRIP */
.signup-strip{padding:0 24px 48px;}
.signup-strip-inner{
  background:#DCE7E6;border-radius:24px;padding:36px 40px;
  display:flex;align-items:center;gap:28px;flex-wrap:wrap;
  max-width:calc(var(--max-width) - 48px);
}
.signup-strip-icon{
  width:56px;height:56px;border-radius:50%;background:var(--teal);color:#fff;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.signup-strip-icon svg{width:26px;height:26px;}
.signup-strip-text{flex:1 1 260px;}
.signup-strip-text h2{font-size:1.3rem;margin-bottom:6px;}
.signup-strip-text p{margin:0;font-size:.95rem;}
.signup-strip-form{flex:1 1 380px;}
.signup-strip-form .form-note{text-align:left;}

/* FOOTER */
.site-footer{background:var(--teal-dark);color:#fff;padding:22px 0;}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;}
.logo-footer{height:34px;width:auto;}
.copyright{margin:0;font-size:.88rem;color:rgba(255,255,255,.85);}
.socials{display:flex;gap:10px;}
.social-link{
  width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.12);
  display:flex;align-items:center;justify-content:center;color:#fff;
  transition:background .15s ease;
}
.social-link:hover{background:rgba(255,255,255,.24);}
.social-link svg{width:17px;height:17px;}

/* RESPONSIVE */
@media (max-width:960px){
  .band-teal-inner{grid-template-columns:1fr 1fr;}
  .band-teal-text{grid-column:1 / -1;}
  .grid-6{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
  .hero-inner{flex-direction:column-reverse;}
  .signup-form{flex-direction:column;border-radius:16px;}
  .signup-form button{border-radius:0 0 14px 14px;}
  .signup-form input[type=email]{border-radius:14px 14px 0 0;}
  .band-teal-inner{grid-template-columns:1fr;}
  .grid-6{grid-template-columns:1fr;}
  .signup-strip-inner{padding:28px 22px;}
  .footer-inner{justify-content:center;text-align:center;}
}
