:root {
    --kw-ink: #0f172a;
    --kw-teal: #134e4a;
    --kw-teal-soft: #0f766e;
    --kw-gold: #fbbf24;
    --kw-cream: #faf9f5;
    --kw-mist: #eef2f1;
    --kw-line: #dde5e3;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Plus Jakarta Sans', sans-serif; color:#29313c; background:var(--kw-cream); line-height:1.65; }
img { max-width:100%; display:block; }
a { text-decoration:none; color:inherit; }
.kw-wrap { width:92%; max-width:1160px; margin-inline:auto; }

.kw-topbar { background:var(--kw-teal); color:#fff; font-size:.82rem; padding:.45rem 0; }
.kw-topbar .kw-wrap { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.kw-topbar span { display:inline-flex; align-items:center; gap:6px; }

.kw-nav { position:sticky; top:0; z-index:50; background:rgba(249,250,247,.92); backdrop-filter:blur(10px); border-bottom:1px solid var(--kw-line); }
.kw-nav .kw-wrap { display:flex; align-items:center; justify-content:space-between; padding:.8rem 0; }
.kw-brand { display:flex; align-items:center; gap:.6rem; font-weight:800; font-size:1.12rem; color:var(--kw-teal); }
.kw-brand img { height:30px; width:auto; }
.kw-menu { display:flex; gap:1.4rem; list-style:none; font-weight:600; font-size:.92rem; }
.kw-menu a { color:var(--kw-ink); transition:.25s; }
.kw-menu a:hover { color:var(--kw-teal-soft); }
.kw-cta { background:var(--kw-teal); color:#fff; padding:.55rem 1.1rem; border-radius:999px; font-weight:700; font-size:.86rem; transition:.25s; }
.kw-cta:hover { background:var(--kw-teal-soft); }
.kw-burger { display:none; background:none; border:0; font-size:1.6rem; color:var(--kw-teal); cursor:pointer; }

.kw-hero { padding:3.4rem 0 4rem; overflow:hidden; }
.kw-hero .kw-wrap { display:grid; grid-template-columns:1.05fr .95fr; gap:2.6rem; align-items:center; }
.kw-hero-badge { display:inline-block; background:var(--kw-mist); color:var(--kw-teal); border:1px solid var(--kw-line); border-radius:999px; padding:.3rem .9rem; font-size:.8rem; font-weight:700; margin-bottom:1.1rem; }
.kw-hero h1 { font-size:clamp(1.9rem, 4.4vw, 3.1rem); font-weight:800; color:var(--kw-ink); line-height:1.18; margin-bottom:1rem; }
.kw-hero h1 span { color:var(--kw-teal-soft); }
.kw-hero p { color:#52606d; max-width:52ch; margin-bottom:1.6rem; }
.kw-hero-actions { display:flex; gap:.9rem; flex-wrap:wrap; }
.kw-btn { display:inline-flex; align-items:center; gap:.5rem; padding:.85rem 1.5rem; border-radius:999px; font-weight:700; font-size:.95rem; transition:.25s; }
.kw-btn-wa { background:#25d366; color:#fff; }
.kw-btn-wa:hover { transform:translateY(-2px); box-shadow:0 10px 24px rgba(37,211,102,.35); }
.kw-btn-ghost { border:2px solid var(--kw-teal); color:var(--kw-teal); }
.kw-btn-ghost:hover { background:var(--kw-teal); color:#fff; }
.kw-hero-media { position:relative; }
.kw-hero-media img { border-radius:26px; box-shadow:0 24px 60px rgba(15,23,42,.18); aspect-ratio:4/3; object-fit:cover; }
.kw-hero-float { position:absolute; left:-1.2rem; bottom:1.4rem; background:#fff; border-radius:16px; box-shadow:0 14px 34px rgba(15,23,42,.16); padding:.7rem 1.1rem; display:flex; gap:.7rem; align-items:center; }
.kw-hero-float img { border-radius:12px; object-fit:cover; }
.kw-hero-float b { font-size:1.25rem; color:var(--kw-teal); display:block; line-height:1.1; }
.kw-hero-float small { color:#64748b; font-size:.78rem; }

.kw-strip { background:var(--kw-teal); color:#fff; }
.kw-strip .kw-wrap { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; padding:1.4rem 0; text-align:center; }
.kw-strip b { font-size:1.35rem; color:var(--kw-gold); display:block; }
.kw-strip small { font-size:.84rem; opacity:.92; }

.kw-sec { padding:3.6rem 0; }
.kw-sec-head { text-align:center; max-width:640px; margin:0 auto 2.4rem; }
.kw-eyebrow { text-transform:uppercase; letter-spacing:.14em; font-size:.76rem; font-weight:800; color:var(--kw-teal-soft); }
.kw-sec-head h2 { font-size:clamp(1.55rem,3vw,2.2rem); color:var(--kw-ink); font-weight:800; margin:.5rem 0 .6rem; }
.kw-sec-head p { color:#5b6b7b; font-size:.96rem; }

.kw-reasons { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1.2rem; }
.kw-reason { background:#fff; border:1px solid var(--kw-line); border-radius:18px; padding:1.4rem 1.3rem; transition:.28s; }
.kw-reason:hover { transform:translateY(-5px); box-shadow:0 16px 34px rgba(15,23,42,.1); }
.kw-reason i { font-style:normal; font-size:1.2rem; }
.kw-reason b { display:block; color:var(--kw-ink); font-size:1.02rem; margin:.7rem 0 .3rem; }
.kw-reason p { font-size:.88rem; color:#64748b; }

.kw-list { display:flex; flex-direction:column; gap:.8rem; }
.kw-model-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; background:#fff; border:1px solid var(--kw-line); border-radius:14px; padding:1.1rem 1.3rem; transition:.25s; }
.kw-model-row:hover { border-color:var(--kw-teal-soft); box-shadow:0 10px 24px rgba(15,23,42,.08); }
.kw-model-row h3 { font-size:1.05rem; color:var(--kw-ink); font-weight:800; }
.kw-model-row ul { list-style:none; display:flex; gap:1rem; flex-wrap:wrap; font-size:.85rem; color:#52606d; }
.kw-model-row ul li::before { content:"✓ "; color:var(--kw-teal-soft); font-weight:800; }
.kw-model-row a { background:var(--kw-teal); color:#fff; padding:.55rem 1.1rem; border-radius:999px; font-weight:700; font-size:.85rem; white-space:nowrap; transition:.25s; }
.kw-model-row a:hover { background:var(--kw-teal-soft); }

.kw-price { background:#fff; }
.kw-price table { width:100%; border-collapse:collapse; background:#fff; border-radius:18px; overflow:hidden; box-shadow:0 10px 30px rgba(15,23,42,.08); }
.kw-price th { background:var(--kw-teal); color:#fff; text-align:left; padding:.9rem 1.1rem; font-size:.9rem; }
.kw-price td { padding:.85rem 1.1rem; border-bottom:1px solid var(--kw-mist); font-size:.93rem; }
.kw-price tr:nth-child(even) td { background:#f8faf9; }
.kw-price-note { margin-top:1rem; font-size:.84rem; color:#64748b; text-align:center; }

.kw-proof { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:1rem; }
.kw-proof img { width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:16px; transition:.3s; }
.kw-proof img:hover { transform:scale(1.03); box-shadow:0 16px 36px rgba(15,23,42,.18); }

.kw-lokal { display:grid; grid-template-columns:1fr 1fr; gap:2rem; align-items:center; }
.kw-lokal-card { background:#fff; border-radius:20px; padding:1.8rem; border:1px solid var(--kw-line); }
.kw-lokal-card h3 { color:var(--kw-ink); font-size:1.25rem; margin-bottom:1rem; }
.kw-lokal-card p { font-size:.92rem; color:#52606d; margin-bottom:.6rem; display:flex; gap:.6rem; }
.kw-lokal-map { border-radius:20px; overflow:hidden; box-shadow:0 16px 40px rgba(15,23,42,.14); line-height:0; }
.kw-lokal-map iframe { width:100%; height:100%; min-height:330px; border:0; }

.kw-contact { background:var(--kw-teal); position:relative; overflow:hidden; }
.kw-contact::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 85% 20%, rgba(251,191,36,.18), transparent 45%); }
.kw-contact .kw-wrap { position:relative; text-align:center; padding:3.4rem 0; max-width:720px; }
.kw-contact h2 { color:#fff; font-size:clamp(1.6rem,3.2vw,2.3rem); font-weight:800; }
.kw-contact p { color:#9fd8d2; margin:1rem 0 1.8rem; }
.kw-contact-links { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }
.kw-btn-light { background:#fff; color:var(--kw-teal); }
.kw-btn-light:hover { transform:translateY(-2px); box-shadow:0 10px 24px rgba(0,0,0,.25); }

.kw-foot { background:var(--kw-ink); color:#94a3b8; padding:2.2rem 0; font-size:.86rem; }
.kw-foot .kw-wrap { display:flex; justify-content:space-between; gap:1.4rem; flex-wrap:wrap; }
.kw-foot a { color:#dbeafe; }

.kw-wa-float { position:fixed; right:1.2rem; bottom:1.2rem; z-index:60; width:58px; height:58px; border-radius:50%; background:#25d366; color:#fff; display:grid; place-items:center; box-shadow:0 12px 28px rgba(37,211,102,.45); transition:.25s; }
.kw-wa-float:hover { transform:scale(1.08); }
.kw-wa-float svg { width:30px; height:30px; fill:#fff; }

.kw-reveal { opacity:0; transform:translateY(22px); transition:opacity .8s ease, transform .8s ease; }
.kw-reveal.kw-in { opacity:1; transform:none; }

@media (max-width:900px) {
    .kw-hero .kw-wrap { grid-template-columns:1fr; }
    .kw-hero-media { order:-1; }
    .kw-menu { display:none; position:absolute; top:100%; left:0; right:0; background:#fff; flex-direction:column; padding:1rem 6%; border-bottom:1px solid var(--kw-line); box-shadow:0 24px 40px rgba(15,23,42,.14); }
    .kw-menu.kw-open { display:flex; }
    .kw-burger { display:block; }
    .kw-strip .kw-wrap { grid-template-columns:1fr; gap:.8rem; }
    .kw-lokal { grid-template-columns:1fr; }
}
@media (max-width:520px) {
    .kw-topbar .kw-wrap { justify-content:center; }
}
.kw-page-head { text-align:center; max-width:660px; margin:0 auto 2.2rem; }
.kw-page-head h1 { font-size:clamp(1.7rem,3.2vw,2.4rem); color:var(--kw-ink); font-weight:800; margin:.5rem 0 .6rem; }
.kw-page-head p { color:#5b6b7b; font-size:.96rem; }
.kw-banner { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; margin:0 auto 2.2rem; }
.kw-banner div { background:#fff; border:1px solid var(--kw-line); border-radius:16px; padding:1.2rem; text-align:center; }
.kw-banner b { color:var(--kw-teal); font-size:1.05rem; display:block; margin-bottom:.3rem; }
.kw-banner span { color:#64748b; font-size:.85rem; }
.kw-calc { background:#fff; border:1px solid var(--kw-line); border-radius:18px; padding:1.6rem 1.5rem; max-width:600px; margin:0 auto; }
.kw-calc label { display:block; font-size:.84rem; font-weight:600; color:#52606d; margin:.8rem 0 .35rem; }
.kw-calc input, .kw-calc select { width:100%; padding:.7rem .9rem; border:1px solid var(--kw-line); border-radius:10px; font:inherit; background:#fbfbf8; }
.kw-calc .kw-btn { margin-top:1.2rem; width:100%; justify-content:center; border:0; cursor:pointer; }
.kw-calc-out { margin-top:1.2rem; background:var(--kw-mist); border-radius:12px; padding:1rem 1.1rem; font-size:.92rem; line-height:1.9; color:var(--kw-ink); }
.kw-calc-out b { color:var(--kw-teal); }
.kw-preview { display:flex; flex-direction:column; gap:.8rem; }
.kw-link-more { text-align:center; margin-top:1.6rem; }