/* ─── header ─────────────────────────────────────────────────────────── */
.hdr{position:sticky;top:0;z-index:20;background:rgba(245,246,248,.85);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo img{width:120px;height:auto}
.hdr-cta{min-height:40px;padding:8px 16px;font-size:.9rem}

/* ─── hero ───────────────────────────────────────────────────────────── */
.hero{padding:40px 0 32px;color:#fff}
.hero-in{display:flex;flex-direction:column;align-items:center;gap:20px}
.hero-copy{text-align:center;max-width:560px}
.hero h1{font-size:2rem}
.hl{background:linear-gradient(180deg,#fff 0%,var(--mint) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}
.num{white-space:nowrap}
.hero-sub{margin-top:12px;font-size:1rem;opacity:.95}
.hero-card{width:100%;max-width:448px;padding:24px;display:flex;flex-direction:column;gap:20px;color:var(--ink)}
.hero-card-title{font-size:1.5rem;text-align:center;font-weight:900}
.radios{display:flex;flex-direction:column;gap:10px}
.radio{position:relative;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--r-md);border:1px solid var(--line);background:#fff;cursor:pointer;transition:border-color .15s,background .15s}
.radio input{position:absolute;opacity:0;pointer-events:none}
.radio svg{width:22px;height:22px;fill:var(--ink-3);flex:none}
.radio span{flex:1;font-weight:700;font-size:1rem;color:var(--ink-2)}
.radio .tick{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);flex:none;position:relative}
.radio.is-on{border-color:transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(127deg,var(--sky) 8%,var(--mint) 86%) border-box;border:2px solid transparent;box-shadow:var(--shadow-1)}
.radio.is-on svg{fill:var(--forest)}
.radio.is-on span{color:var(--ink)}
.radio.is-on .tick{border-color:transparent;background:linear-gradient(127deg,var(--sky),var(--mint))}
.radio.is-on .tick::after{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9.6 16.2 5.4 12l-1.4 1.4 5.6 5.6 12-12-1.4-1.4z'/%3E%3C/svg%3E") center/14px no-repeat}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 8px}
@media(min-width:1024px){
  .hero{padding:0;margin:16px 32px;border-radius:var(--r-xl);overflow:hidden}
  .hero-in{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:56px 40px;gap:24px 40px}
  .hero-copy{text-align:start;flex:1 1 380px}
  .hero h1{font-size:2.6rem}
  .hero-card{flex:0 0 448px}
  .chips{width:100%;justify-content:flex-start}
}
@media(min-width:1180px){.hero{margin-inline:auto;max-width:var(--wrap)}}

/* ─── shared: section title, sliders, dots ───────────────────────────── */
.sec-title{text-align:center;font-size:1.5rem;margin:0 16px 24px}
.grad{background:linear-gradient(90deg,var(--navy),var(--forest));-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}
.slider-wrap{display:flex;flex-direction:column;align-items:center;gap:20px}
.slider{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 16px 12px;width:100%;max-width:var(--wrap);scrollbar-width:none;-webkit-overflow-scrolling:touch}
.slider::-webkit-scrollbar{display:none}
.slider>*{scroll-snap-align:start;flex:none}
.dots{display:flex;gap:16px}
.dots button{width:8px;height:8px;border-radius:50%;background:var(--line);transition:transform .2s,background .2s;padding:0}
.dots button:hover{transform:scale(1.15)}
.dots button.is-on{background:var(--forest)}
.slider-note{font-size:.75rem;color:var(--ink-3);text-align:center}
@media(min-width:768px){.sec-title{font-size:2rem}}

/* ─── reviews ────────────────────────────────────────────────────────── */
.reviews{padding:40px 0 32px}
.rv-cover{width:253px;min-height:208px;border-radius:24px;padding:32px 16px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}
.rv-score{display:flex;align-items:center;gap:12px}
.rv-score b{font-size:2.25rem;font-weight:900}
.leaf{width:14px;height:36px;background:url("img/leaves.svg") center/contain no-repeat}
.leaf.flip{transform:scaleX(-1)}
/* sticky bottom CTA — appears once the hero CTA scrolls out */
.sticky-cta{position:fixed;inset-inline:0;bottom:0;z-index:20;padding:0 16px 16px;pointer-events:none;transform:translateY(120%);transition:transform .3s}
.sticky-cta.is-on{transform:none}
.sticky-cta .btn{pointer-events:auto;width:100%;max-width:var(--wrap);margin-inline:auto;display:flex;box-shadow:0 8px 24px rgba(0,0,0,.18)}
@media(min-width:768px){.sticky-cta .btn{max-width:420px}}
.stars{display:flex;gap:2px;direction:ltr}
.stars i{width:16px;height:16px;background:#00B67A url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M8 10.9l2.4-.7 1 3.4L8 10.9Zm5.6-4.2H9.3L8 2.4 6.7 6.7H2.4l3.5 2.6-1.3 4.3L8 10.9l2.1-1.6 3.5-2.6Z'/%3E%3C/svg%3E") center/contain no-repeat}
.stars-lg i{width:18px;height:18px}
.rv-cover .mono{opacity:.9;margin-top:4px}
.rv-card{width:253px;min-height:208px;border-radius:16px;padding:20px;background:#fff;box-shadow:var(--shadow-1);display:flex;flex-direction:column;justify-content:space-between;gap:16px;text-align:start}
.rv-card p{color:var(--ink);font-size:.9rem;line-height:1.4;font-weight:500;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;margin-top:auto}
.rv-meta{display:flex;flex-direction:column;gap:2px}
.rv-meta span{font-size:11px;font-weight:700;letter-spacing:.01em}
.rv-meta .rv-name{color:var(--ink-2)}
.rv-meta .rv-time{color:var(--ink-3)}
@media(min-width:1024px){.slider{padding-inline:32px}}
@media(min-width:1180px){.slider{overflow:hidden;padding-inline:0}}

/* ─── how much + steps ───────────────────────────────────────────────── */
.howmuch{padding:8px 0 40px}
.howmuch-in{display:grid;gap:16px}
.steps{border-radius:var(--r-lg);padding:32px 24px;display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center}
.steps h2{font-size:1.75rem}
.steps-sub{opacity:.95}
.steps-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;align-items:center}
.steps-list li{display:flex;gap:10px;align-items:center;font-size:1rem}
.steps-list b{flex:none;width:28px;height:28px;border-radius:50%;background:var(--mint);color:var(--forest);display:grid;place-items:center;font-weight:900;font-size:.9rem}
.howmuch-card{padding:24px;display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center;background:var(--mint-100)}
.howmuch-card h2{font-size:1.5rem}
.howmuch-card .sub{color:var(--ink-2)}
.tbl{width:100%;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;text-align:start;margin-top:4px}
.tbl-head,.tbl-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px}
.tbl-head{background:#e3f6ec;font-size:.85rem;font-weight:700;color:var(--ink-2)}
.tbl-head span:last-child{color:var(--ink)}
.tbl-row{border-top:1px solid var(--line)}
.tbl-row>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tbl-row span{font-size:.9rem;font-weight:700;color:var(--ink-2)}
.tbl-row b{font-size:.95rem;font-weight:900;color:var(--ink);white-space:nowrap}
.tag{display:inline-flex;padding:4px 6px;border:1px solid var(--line);border-radius:4px;font-size:10px;font-weight:700;color:var(--ink-2);font-style:normal;letter-spacing:.04em}
.tbl-note{font-size:.8rem;color:var(--ink-3)}
@media(min-width:768px){.howmuch-card h2{font-size:1.9rem}.steps h2{font-size:2rem}}
@media(min-width:1024px){.howmuch-in{grid-template-columns:1fr 1fr;align-items:stretch}.steps{padding:48px 40px}.howmuch-card{padding:40px 32px;justify-content:center}}

/* ─── metrics ────────────────────────────────────────────────────────── */
.metrics{padding:32px 0 40px}
.metrics-head{display:flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;margin-bottom:24px;text-align:center}
.metrics-head svg{width:20px;height:20px;color:var(--forest);flex:none}
.metrics-head h2{font-size:1.25rem}
.hl-mint{color:var(--mint-600)}
.m-card{width:160px;min-width:160px;border-radius:var(--r-sm);background:#e8f6ef;overflow:hidden;display:flex;flex-direction:column}
img.m-ico{width:100%;height:120px;object-fit:cover;display:block}
.m-ico{height:120px;display:grid;place-items:center}
.m-ico svg{width:56px;height:56px;color:#fff}
.ico-1{background:linear-gradient(135deg,var(--navy),var(--forest))}
.ico-2{background:linear-gradient(135deg,var(--sky),var(--navy))}
.ico-3{background:linear-gradient(135deg,var(--mint),var(--forest))}
.ico-4{background:linear-gradient(135deg,var(--forest),var(--sky))}
.ico-5{background:linear-gradient(135deg,var(--mint-600),var(--navy))}
.m-card p{padding:12px 12px 20px;text-align:center;font-size:.9rem;font-weight:700;color:var(--ink);margin:auto 0}
@media(min-width:768px){
  .metrics-head h2{font-size:1.5rem}
  .m-card{width:376px;flex-direction:row;align-items:stretch}
  .m-ico{width:160px;height:auto;flex:none}
  img.m-ico{width:160px;height:auto;align-self:stretch}
  .m-card p{text-align:start;padding:12px 24px 12px 0;display:flex;align-items:center;font-size:1rem}
}

/* ─── fee ────────────────────────────────────────────────────────────── */
.fee{position:relative;min-height:629px;overflow:hidden;padding:48px 24px 24px;color:#fff;text-align:center;display:flex;justify-content:center}
.fee-bg,.fee-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.fee-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(18,70,103,.55) 0%,rgba(27,67,50,.55) 100%)}
.fee-in{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;max-width:720px}
.fee-top{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:16px}
.fee-chip{display:flex;align-items:center;gap:8px}
.fee-chip svg{width:20px;height:20px}
.fee h2{font-size:1.875rem;line-height:1.2}
.fee-lines{display:flex;flex-direction:column;gap:12px;font-size:1rem}
.fee-bottom{margin-top:128px;display:flex;flex-direction:column;align-items:center;gap:20px}
.fee-bottom p{max-width:560px;font-size:.9rem}
.fee-link{color:#fff;font-weight:700;font-size:.9rem;text-decoration:underline;text-underline-offset:4px}
@media(min-width:768px){.fee-lines{font-size:1.125rem}.fee-bottom p{font-size:1.125rem}}
@media(min-width:1024px){.fee{padding:80px 24px 64px}.fee h2{font-size:2.5rem}.fee-bottom{margin-top:80px}}

/* ─── faq ────────────────────────────────────────────────────────────── */
.faq{padding:32px 16px}
.faq-box{max-width:var(--wrap);margin-inline:auto;background:#eef2f4;border-radius:32px;padding:32px 24px;display:flex;flex-direction:column;gap:20px}
.faq-title h2{font-size:1.875rem;line-height:1.2}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;cursor:pointer;padding:16px 0;font-weight:700;font-size:1.05rem;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"";width:24px;height:24px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231B4332' d='M11.6 13.1 7.8 9.3a1.06 1.06 0 0 0-1.5 1.5l4.6 4.6a1 1 0 0 0 1.4 0l4.6-4.6a1.06 1.06 0 0 0-1.5-1.5z'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .2s}
.acc details[open] summary::after{transform:rotate(180deg)}
.acc details>div{padding:0 0 20px;color:var(--ink-2);display:flex;flex-direction:column;gap:10px}
.acc ul{margin:0;padding-inline-start:24px;display:flex;flex-direction:column;gap:6px}
.acc li::marker{color:var(--forest);font-weight:700}
.faq-more{color:var(--ink-2)}
.faq-more a{color:var(--navy);font-weight:700}
@media(min-width:1024px){
  .faq{padding:32px}
  .faq-box{display:grid;grid-template-columns:minmax(0,384px) 1fr;column-gap:32px;padding:96px 112px}
  .faq-title h2{font-size:2.5rem}
  .faq-more{grid-column:1/-1}
}

/* ─── authority ──────────────────────────────────────────────────────── */
.authority{padding:32px 16px;text-align:center;color:#fff}
.authority-in{display:flex;flex-direction:column;align-items:center;gap:14px}
.authority h2{font-size:1.5rem}
.authority .btn{width:100%}
.proof{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:4px}
.proof img{width:120px;height:auto}
.proof span{font-size:.9rem;font-weight:700}
@media(min-width:768px){.authority h2{font-size:2rem}.authority .btn{width:auto;font-size:1.05rem}}
@media(min-width:1024px){.authority{margin:0 32px 32px;border-radius:var(--r-lg);padding:40px 32px}.authority h2{font-size:2.5rem}}
@media(min-width:1180px){.authority{margin-inline:auto;max-width:var(--wrap)}}

/* ─── footer ─────────────────────────────────────────────────────────── */
.ftr{padding:32px 0 40px;border-top:1px solid var(--line)}
.ftr-in{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.ftr-logo{width:110px}
.ftr-links{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.9rem;color:var(--ink-2)}
.ftr-legal{font-size:.8rem;color:var(--ink-3);max-width:640px}
.ftr-copy{font-size:.8rem;color:var(--ink-3)}
