:root{
  --ink:#0F1E1A;--forest:#134E3A;--forest-2:#1B6B50;--amber:#FF5A1F;--amber-dark:#E24810;
  --bg:#F4F7F4;--card:#FFFFFF;--line:#E1E8E3;--muted:#5B6B63;--white:#FFFFFF;
  --radius:16px;--shadow:0 4px 24px rgba(15,30,26,.08);--shadow-lg:0 18px 48px rgba(15,30,26,.16);
  --maxw:1160px;--display:"Bricolage Grotesque",system-ui,sans-serif;--body:"Inter",system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--body);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--display);line-height:1.1;letter-spacing:-.02em;font-weight:700}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:15px;padding:14px 22px;border-radius:999px;cursor:pointer;border:none;transition:transform .15s,box-shadow .15s,background .15s;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-amber{background:var(--amber);color:#fff;box-shadow:0 6px 18px rgba(255,90,31,.32)}
.btn-amber:hover{background:var(--amber-dark);box-shadow:0 10px 26px rgba(255,90,31,.4)}
.btn-ghost{background:transparent;color:var(--forest);border:1.5px solid var(--line)}
.btn-ghost:hover{border-color:var(--forest);background:#fff}
.btn-white{background:#fff;color:var(--forest)}
.btn-white:hover{background:#eef4f0}
.eyebrow{font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--amber)}

.topbar{background:var(--ink);color:#dfe9e3;font-size:13px;font-weight:500}
.topbar .wrap{display:flex;align-items:center;justify-content:center;gap:22px;padding:8px 22px;flex-wrap:wrap}
.topbar b{color:#fff}
.dot{width:9px;height:9px;border-radius:50%;background:#3ee089;display:inline-block;animation:pulse 1.8s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(62,224,137,.55)}70%{box-shadow:0 0 0 8px rgba(62,224,137,0)}100%{box-shadow:0 0 0 0 rgba(62,224,137,0)}}

header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 22px;max-width:var(--maxw);margin:0 auto}
.logo{display:flex;align-items:center;gap:11px;font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.02em;color:var(--ink)}
.logo .mark{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,var(--forest),var(--forest-2));display:grid;place-items:center;color:#fff;flex:none}
.logo span{color:var(--amber)}
.menu{display:flex;align-items:center;gap:4px;list-style:none}
.menu a{font-weight:600;font-size:14.5px;color:var(--ink);padding:9px 12px;border-radius:9px;transition:background .15s,color .15s;cursor:pointer}
.menu a:hover{background:#eef4f0;color:var(--forest)}
.menu a.active{color:var(--forest);background:#e6f0ea}
.nav-cta{display:flex;align-items:center;gap:10px}
.mobile-nav{display:none;position:relative}
.mobile-nav summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#eef4f0;color:var(--forest);font-size:25px;font-weight:800;cursor:pointer}
.mobile-nav summary::-webkit-details-marker{display:none}
.mobile-nav-panel{position:absolute;right:0;top:52px;width:min(280px,calc(100vw - 28px));padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px rgba(10,39,31,.18);display:flex;flex-direction:column;z-index:90}
.mobile-nav-panel a{padding:13px 14px;border-radius:9px;font-weight:700;color:var(--ink)}
.mobile-nav-panel a:hover{background:#eef4f0;color:var(--forest)}
.phone-btn{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:15px;color:var(--forest)}
.phone-btn .ico{width:34px;height:34px;border-radius:50%;background:#e6f0ea;display:grid;place-items:center;color:var(--forest)}

section{padding:74px 0}
.section-head{max-width:680px;margin-bottom:40px}
.section-head h2{font-size:clamp(28px,4vw,42px);margin:12px 0}
.section-head p{color:var(--muted);font-size:17px}

.subhero{background:linear-gradient(180deg,#0F1E1A,#123024);color:#fff;padding:56px 0}
.subhero .eyebrow{color:var(--amber)}
.subhero h1{font-size:clamp(30px,4.6vw,48px);color:#fff;margin:12px 0 14px}
.subhero p{color:#c4d6cc;font-size:18px;max-width:640px}
.crumbs{font-size:13px;color:#8fa89c;margin-bottom:18px}
.crumbs a{cursor:pointer;color:#b7cec2}
.crumbs a:hover{color:#fff}

.article{display:grid;grid-template-columns:1.6fr .9fr;gap:44px;align-items:start}
.prose h2{font-size:28px;margin:8px 0 14px}
.prose h3{font-size:20px;margin:26px 0 10px;color:var(--forest)}
.prose p{color:#40514a;font-size:16px;margin-bottom:14px}
.prose ul{margin:0 0 16px 2px;list-style:none;display:flex;flex-direction:column;gap:9px}
.prose ul li{display:flex;gap:11px;align-items:flex-start;color:#40514a;font-size:15.5px}
.prose ul li::before{content:"";width:20px;height:20px;border-radius:50%;background:#e6f0ea;flex:none;margin-top:2px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23134E3A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}
.qtags{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 8px}
.qtag{background:#e6f0ea;color:var(--forest);font-weight:600;font-size:13px;padding:6px 12px;border-radius:999px}
.sidebar{position:sticky;top:96px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}
.sidebar h3{font-size:19px;margin-bottom:6px}
.sidebar p{color:var(--muted);font-size:14px;margin-bottom:16px}
.sidebar .price{font-family:var(--display);font-weight:800;font-size:15px;color:var(--forest);background:#e6f0ea;border-radius:10px;padding:12px 15px;margin-bottom:16px;text-align:center}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;transition:transform .18s,box-shadow .18s,border-color .18s;cursor:pointer;display:block}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:transparent}
.card .ico-box{width:52px;height:52px;border-radius:13px;background:#e6f0ea;display:grid;place-items:center;font-size:26px;margin-bottom:16px}
.card h3{font-size:20px;margin-bottom:8px}
.card p{color:var(--muted);font-size:14.5px;margin-bottom:14px}
.card .more{font-weight:700;font-size:14px;color:var(--amber);display:inline-flex;align-items:center;gap:6px}

.zones-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
.zone{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 18px;font-weight:600;display:flex;align-items:center;gap:10px;transition:border-color .15s,transform .15s}
a.zone:hover{border-color:var(--forest);transform:translateY(-2px)}
.zone svg{color:var(--amber);flex:none}

.faq{max-width:820px;margin:0 auto}
.qa{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}
.qa button{width:100%;text-align:left;background:none;border:none;padding:19px 22px;font-family:var(--display);font-weight:600;font-size:17px;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px}
.qa .ans{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--muted);font-size:15px}
.qa .ans div{padding:0 22px 20px}
.qa.open .ans{max-height:320px}
.qa .chev{transition:transform .25s;color:var(--amber);flex:none;font-family:var(--body);font-weight:700}
.qa.open .chev{transform:rotate(45deg)}

.cta-band{background:linear-gradient(120deg,var(--amber),var(--amber-dark));color:#fff;border-radius:24px;padding:48px;text-align:center;box-shadow:var(--shadow-lg)}
.cta-band h2{font-size:clamp(26px,3.6vw,38px);color:#fff}
.cta-band p{font-size:17px;color:#ffe6da;margin:12px auto 26px;max-width:560px}
.cta-band .row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

footer{background:var(--ink);color:#b7cec2;padding:60px 0 26px}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:36px;margin-bottom:42px}
footer .logo{color:#fff}
footer h4{color:#fff;font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}
.footer-cookie-link{appearance:none;background:none;border:0;padding:0;color:#b9cec4;font:inherit;cursor:pointer;text-align:left}
.footer-cookie-link:hover{color:#fff}
footer ul{list-style:none;display:flex;flex-direction:column;gap:10px}
footer ul li a{font-size:14.5px;cursor:pointer;transition:color .15s}
footer ul li a:hover{color:#fff}
footer .about{font-size:14.5px;line-height:1.7;margin:14px 0 0;max-width:320px}
.foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:#89a598}
.foot-bottom a{color:#b7cec2}
.foot-bottom a:hover{color:#fff}

.mobile-call{display:none;position:fixed;bottom:0;left:0;right:0;z-index:70;background:#fff;border-top:1px solid var(--line);padding:10px 14px;gap:10px;box-shadow:0 -4px 20px rgba(0,0,0,.08)}
.mobile-call .btn{flex:1;justify-content:center}
.cookie-banner[hidden],.cookie-details[hidden]{display:none!important}
.cookie-banner{position:fixed;inset:0;z-index:10000;background:rgba(6,27,20,.66);display:flex;align-items:flex-end;justify-content:center;padding:18px}
.cookie-panel{width:min(760px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 22px 70px rgba(0,0,0,.3);color:var(--ink)}
.cookie-panel h2{font-size:23px;margin-bottom:8px}.cookie-panel p{color:var(--muted);font-size:14px;margin-bottom:18px}
.cookie-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.cookie-details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}
.cookie-line{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}
.cookie-line span{display:flex;flex-direction:column}.cookie-line small{color:var(--muted);margin-top:3px}.cookie-line input{width:22px;height:22px;accent-color:var(--forest)}
.legal-copy h2{margin-top:32px}.legal-copy h2:first-child{margin-top:0}

@media(max-width:940px){
  .article{grid-template-columns:1fr;gap:30px}
  .sidebar{position:static}
  .menu,.phone-btn{display:none}
  .mobile-nav{display:block}
  .foot-grid{grid-template-columns:1fr 1fr;gap:28px}
}
@media(max-width:600px){
  .nav{padding:10px;gap:6px}
  .logo{font-size:15.5px;gap:6px;white-space:nowrap;min-width:0}
  .logo .mark{width:32px;height:32px;border-radius:9px}
  .nav-cta{gap:6px;flex:none}
  .nav-cta>.btn{display:inline-flex;padding:11px 13px;border-radius:12px;font-size:14px;white-space:nowrap;box-shadow:0 7px 18px rgba(255,92,34,.2)}
  .mobile-nav summary{width:40px;height:40px}
  section{padding:52px 0}
  .cta-band{padding:34px 22px}
  .foot-grid{grid-template-columns:1fr}
  .topbar .wrap{gap:12px;font-size:12px}
  .mobile-call{display:flex}
  body{padding-bottom:66px}
  .cookie-actions .btn{width:100%;justify-content:center}
  .cookie-line{align-items:flex-start}
  .cookie-panel{max-height:86vh;overflow:auto}
}
@media(max-width:380px){
  .nav{padding-inline:8px;gap:4px}
  .logo{font-size:14px;gap:5px}
  .logo .mark{width:30px;height:30px}
  .nav-cta{gap:4px}
  .nav-cta>.btn{padding:10px 11px;font-size:13px}
  .mobile-nav summary{width:38px;height:38px;font-size:23px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}}
