:root{
  --text:oklch(22% 0.015 95);
  --text-muted:oklch(45% 0.02 95);
  --text-muted2:oklch(30% 0.02 95);
  --bg:oklch(97% 0.012 95);
  --bg-alt:oklch(94% 0.025 140);
  --brand:oklch(48% 0.09 155);
  --brand-light:oklch(93% 0.035 155);
  --brand-dark:oklch(36% 0.09 155);
  --accent:oklch(62% 0.15 45);
  --border:oklch(88% 0.015 95);
  --border2:oklch(92% 0.01 95);
  --footer-bg:oklch(20% 0.015 95);
  --footer-border:oklch(30% 0.015 95);
  --footer-text:oklch(92% 0.008 95);
  --footer-text2:oklch(70% 0.01 95);
  --footer-text3:oklch(75% 0.01 95);
  --footer-text4:oklch(65% 0.01 95);
  --font-head: Poppins, "Segoe UI", system-ui, -apple-system, Arial, sans-serif;
  --font-body: "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);color:var(--text);background:var(--bg);min-height:100%}
a{color:inherit;text-decoration:none}
a:hover{color:var(--brand)}
input,textarea,select,button{font-family:var(--font-body)}
img{max-width:100%}

.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.wrap-narrow{max-width:900px;margin:0 auto;padding:0 24px}
.wrap-article{max-width:760px;margin:0 auto;padding:0 24px}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:oklch(99% 0.002 95 / 0.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.header-inner{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px}
.brand-badge{width:40px;height:40px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:700;font-size:14px;flex-shrink:0}
.brand-name{font-family:var(--font-head);font-weight:700;font-size:17px;line-height:1.15}
.brand-sub{font-size:12px;font-weight:500;color:var(--text-muted)}
.site-nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap;font-size:14px;font-weight:600}
.site-nav a{padding-bottom:2px}
.site-nav a.active{color:var(--brand);border-bottom:2px solid var(--accent)}
.header-actions{display:flex;align-items:center;gap:14px}
.phone-link{font-size:14px;font-weight:700;color:var(--text)}

.btn{display:inline-block;border-radius:999px;font-weight:700;cursor:pointer;border:none;text-align:center}
.btn-cta{background:var(--accent);color:#fff;padding:10px 20px;font-size:14px}
.btn-primary{background:var(--brand);color:#fff;padding:14px 26px;font-size:15px}
.btn-outline{border:2px solid var(--border);padding:12px 26px;font-size:15px;background:none;color:var(--text)}

/* Grids */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.grid-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.grid-hero-rev{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:center}
.grid-svc{display:grid;grid-template-columns:1fr 1.2fr;gap:44px;align-items:center}
.grid-svc-rev{display:grid;grid-template-columns:1.2fr 1fr;gap:44px;align-items:center}
.grid-shop{display:grid;grid-template-columns:2.2fr 1fr;gap:32px;align-items:start}

@media(max-width:900px){
  .grid-2,.grid-3,.grid-4,.grid-hero,.grid-hero-rev,.grid-svc,.grid-svc-rev,.grid-shop{grid-template-columns:1fr}
}

/* Cards */
.card{background:#fff;border:1px solid var(--border);border-radius:16px}
.pill{display:inline-block;background:var(--brand-light);color:var(--brand-dark);font-weight:700;font-size:13px;padding:6px 14px;border-radius:999px}

/* Footer */
.site-footer{background:var(--footer-bg);color:var(--footer-text)}
.footer-top{max-width:1200px;margin:0 auto;padding:56px 24px 28px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}
.footer-brand-row{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.footer-desc{font-size:13.5px;line-height:1.6;color:var(--footer-text2);margin:0 0 16px;max-width:280px}
.footer-social{display:flex;gap:10px}
.footer-social a{width:32px;height:32px;border-radius:50%;background:var(--footer-border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
.footer-col h4{font-family:var(--font-head);font-size:14px;margin:0 0 14px}
.footer-col-links{display:flex;flex-direction:column;gap:10px;font-size:13.5px;color:var(--footer-text3)}
.footer-bottom{max-width:1200px;margin:0 auto;padding:20px 24px;border-top:1px solid var(--footer-border);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px;color:var(--footer-text4)}
@media(max-width:860px){.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.footer-top{grid-template-columns:1fr}}

/* Cookie banner */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--footer-bg);color:#fff;padding:16px 24px;display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;z-index:100;font-size:13.5px}
.cookie-banner span{max-width:640px;line-height:1.5}
.cookie-banner a{text-decoration:underline;color:#fff}
.cookie-banner button{background:var(--accent);color:#fff;border:none;padding:10px 20px;border-radius:999px;font-weight:700;font-size:13.5px;cursor:pointer;flex-shrink:0}

/* Forms */
.field{padding:12px 14px;border:1px solid oklch(85% 0.015 95);border-radius:10px;font-size:14px;width:100%}
.field-sm{padding:10px 12px;border:1px solid oklch(85% 0.015 95);border-radius:8px;font-size:13px;width:100%}
