/* Roche Cleaning: fresh teal + sunny accent, rounded and friendly */
:root{
  --font-head:"Poppins",system-ui,sans-serif;--font-body:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;--fs-body:1rem;
  --bg:#ffffff;--bg-alt:#effaf9;--card:#ffffff;--ink:#334155;--ink-strong:#0b3b38;--muted:#5b6b7a;--line:#d9efed;
  --brand:#0f766e;--accent:#0f766e;--accent-dark:#115e59;--on-accent:#fff;--eyebrow:#0f766e;--focus:#14b8a6;
  --radius:22px;--radius-btn:999px;--radius-input:14px;--cta-bg:#0f766e;--ring:rgba(20,184,166,.25);--max:1180px;--sun:#f59e0b
}
h1{font-size:clamp(2.3rem,5vw,3.6rem);font-weight:700;letter-spacing:-.02em}
.section-title{font-weight:700;letter-spacing:-.01em}
.btn--soft{background:#e6f7f5;color:var(--brand)}.btn--light{background:#fff;color:var(--brand)}
.site-header{background:rgba(255,255,255,.96);position:sticky;top:0;z-index:50;box-shadow:0 2px 16px rgba(15,118,110,.08)}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:74px;flex-wrap:wrap}
.logo{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none}
.logo__bubble{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#0f766e);color:#fff}
.logo__text{font-weight:700;font-size:1.35rem;color:var(--ink-strong)}.logo__text span{color:var(--brand);font-weight:500;margin-left:.2em}
.site-nav ul{list-style:none;display:flex;align-items:center;gap:.3rem;margin:0;padding:0}
.site-nav a:not(.btn){display:block;padding:.55rem 1rem;border-radius:999px;color:var(--ink);text-decoration:none;font-weight:500}
.site-nav a:not(.btn):hover,.site-nav a[aria-current]{background:var(--bg-alt);color:var(--brand)}
.site-nav .btn{margin-left:.5rem}
@media (max-width:900px){.site-nav{width:100%;padding-bottom:1rem}.site-nav ul{flex-direction:column;align-items:stretch}.site-nav .btn{margin:.4rem 0 0}}
.pill-label{display:inline-flex;align-items:center;gap:.4rem;background:#e6f7f5;color:var(--brand);font-weight:600;font-size:.85rem;padding:.35rem .9rem;border-radius:999px;margin-bottom:1rem}
.pill-label .icon{width:1em;height:1em}
.hero{background:linear-gradient(160deg,#e9fbf8 0%,#d4f3ef 55%,#fff6e0 100%);position:relative;color:var(--bg)}
.hero__inner{display:grid;grid-template-columns:1.05fr .95fr;gap:2.5rem;align-items:center;padding-block:clamp(3rem,7vw,5.5rem) clamp(4rem,8vw,6.5rem);color:var(--ink)}
@media (max-width:900px){.hero__inner{grid-template-columns:1fr}}
.hero__actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.8rem 0 1.4rem}
.hero__ticks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;font-weight:500}.hero__ticks li{display:flex;gap:.4rem;align-items:center}.hero__ticks .icon{color:var(--brand)}
.blob{border-radius:42% 58% 55% 45%/48% 42% 58% 52%;overflow:hidden;box-shadow:0 30px 60px rgba(15,118,110,.18);background:#fff}
.wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:50px;color:#fff;display:block}
.center-head{text-align:center;max-width:46rem;margin:0 auto 2.4rem}.center-head .lead{margin-inline:auto;color:var(--muted)}.center{text-align:center;margin-top:2rem}
.svc-tile{display:flex;flex-direction:column;gap:.5rem;padding:1.6rem;border-radius:var(--radius);background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:transform .2s,box-shadow .2s}
.svc-tile:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,118,110,.12)}
.svc-tile__icon{display:grid;place-items:center;width:3.6rem;height:3.6rem;border-radius:18px;background:#e6f7f5;color:var(--brand);margin-bottom:.4rem}
.svc-tile h3{font-size:1.1rem;margin:0;color:var(--ink-strong)}.svc-tile p{margin:0;font-size:.93rem;color:var(--muted)}
.section--tint{background:var(--bg-alt)}
.rounded-art img{border-radius:var(--radius);box-shadow:0 20px 50px rgba(15,118,110,.12)}
.why-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}@media (max-width:560px){.why-grid{grid-template-columns:1fr}}
.why-grid li{display:flex;gap:.8rem}.why-grid__icon{display:grid;place-items:center;flex:none;width:2.6rem;height:2.6rem;border-radius:12px;background:#fff;color:var(--sun);box-shadow:0 4px 12px rgba(0,0,0,.05)}
.why-grid h3{font-size:1rem;margin:0 0 .15rem}.why-grid p{margin:0;font-size:.92rem;color:var(--muted)}
.steps-row{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1.5rem}
.steps-row li{text-align:center;padding:1.8rem 1.4rem;border-radius:var(--radius);background:linear-gradient(180deg,#f3fcfb,#fff);border:1px solid var(--line)}
.steps-row__n{display:inline-grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--sun);color:#3b2a00;font-weight:700;font-size:1.2rem;margin-bottom:.8rem}
.steps-row h3{font-size:1.15rem}.steps-row p{margin:0;color:var(--muted)}
.areas{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}@media (max-width:800px){.areas{grid-template-columns:1fr}}
.tag-list li{background:#fff}
.page-hero{background:linear-gradient(160deg,#e9fbf8,#d4f3ef);padding-block:clamp(2.5rem,6vw,4.2rem);text-align:center}
.page-hero .lead{margin-inline:auto;color:var(--muted)}.page-hero .eyebrow{display:inline-block;background:#fff;padding:.3rem .9rem;border-radius:999px;letter-spacing:.06em}
.card{border-radius:var(--radius)}.card--service .card__icon{display:grid;place-items:center;width:3.4rem;height:3.4rem;border-radius:16px;background:#e6f7f5}
.panel{background:#f3fcfb}
.cta-band{background:linear-gradient(120deg,#0f766e,#14b8a6)}.cta-band .btn--primary{background:var(--sun);color:#3b2a00}.cta-band .btn--primary:hover{background:#fbbf24}
.notice{border-radius:16px}
.site-footer{color:#0b3b38;margin-top:0}.wave--footer{position:static;height:40px;color:#0b3b38;margin-bottom:-1px}
.footer-inner{background:#0b3b38;color:#b9dcd8;padding-top:2.5rem}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem}@media (max-width:800px){.footer-grid{grid-template-columns:1fr}}
.site-footer h2{color:#fff;font-size:1rem;margin-top:.4rem}.site-footer ul{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.4rem}
.site-footer a:not(.btn){color:#d6f1ee;text-decoration:none}.site-footer a:not(.btn):hover{color:#fff}
.logo--footer .logo__text{color:#fff}.logo--footer .logo__text span{color:#7fe3d6}.logo--footer{margin-bottom:1rem}
.footer-bottom{border-top:1px solid #1d5a55;margin-top:2rem;padding:1.2rem 0;font-size:.85rem}.footer-bottom p{margin:0}
