/* Klimavio s.r.o. — hlavný štýl webu */

:root{
  --bg:#f5f8f8;
  --ink:#0d1a22;
  --ink-2:#16242e;
  --ink-3:#1b2c37;
  --ink-border:#273a45;
  --accent:#1a6f96;
  --accent-hover:#2589b6;
  --accent-active:#12536f;
  --border:#dbe4e6;
  --border-2:#eef2f3;
  --panel:#f9fbfb;
  --muted:#5d7078;
  --muted-2:#41545e;
  --body-dark:#233440;
  --on-dark:#eef4f5;
  --on-dark-muted:#b8ccd3;
  --on-dark-muted-2:#9fbac4;
  --on-dark-muted-3:#7fb3c9;
  --on-dark-muted-4:#7f9aa4;
  --on-dark-muted-5:#8fb0bc;
  --on-dark-muted-6:#6d8894;
  --on-dark-border:#48606c;
  --star:#b06a2c;
  --danger:#a04a3a;
  --font-sans:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,'SFMono-Regular',Menlo,monospace;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--font-sans);
  -webkit-font-smoothing:antialiased;
  text-wrap:pretty;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
img{max-width:100%;display:block;}
a{color:var(--accent);text-decoration:none;}
a:hover{color:var(--accent-active);text-decoration:underline;}
input,select,textarea,button{font-family:inherit;font-size:15px;}
button{cursor:pointer;}
h1,h2,h3,p{margin:0;}
ul{margin:0;padding:0;list-style:none;}

@keyframes kv-rise{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}

.mono{font-family:var(--font-mono);}

/* ===== layout ===== */
.container{max-width:1240px;margin:0 auto;padding:0 24px;}
.container-narrow{max-width:1100px;margin:0 auto;padding:0 24px;}
.container-1000{max-width:1000px;margin:0 auto;padding:0 24px;}
.container-880{max-width:880px;margin:0 auto;padding:0 24px;}
.container-860{max-width:860px;margin:0 auto;padding:0 24px;}
.container-780{max-width:780px;margin:0 auto;padding:0 24px;}

main{flex:1;}
.page{padding:56px 24px 82px;}
.crumb{font-family:var(--font-mono);font-size:12px;color:var(--muted);margin-bottom:18px;}
.crumb a{color:var(--muted);}
.crumb a:hover{color:var(--accent);}

.grid{display:grid;gap:20px;}
.grid-2{grid-template-columns:1fr 1fr;}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
.gap-lg{gap:28px;}
.gap-xl{gap:56px;}

.flex{display:flex;}
.flex-col{display:flex;flex-direction:column;}
.items-center{align-items:center;}
.items-start{align-items:flex-start;}
.items-end{align-items:flex-end;}
.justify-between{justify-content:space-between;}
.flex-wrap{flex-wrap:wrap;}

/* ===== promo bar ===== */
.promo-bar{
  background:var(--ink);color:var(--on-dark-muted);
  font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  padding:9px 20px;text-align:center;
}

/* ===== header ===== */
.site-header{
  position:sticky;top:0;z-index:40;
  background:rgba(245,248,248,.92);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.header-inner{
  max-width:1240px;margin:0 auto;padding:14px 24px;
  display:flex;align-items:center;gap:28px;flex-wrap:wrap;
}
.logo{
  display:flex;align-items:baseline;gap:2px;flex-shrink:0;
  font-weight:800;font-size:22px;letter-spacing:-.02em;color:var(--ink);
}
.logo:hover{color:var(--ink);text-decoration:none;}
.logo .dot{width:7px;height:7px;background:var(--accent);border-radius:50%;display:inline-block;margin-left:3px;}
.main-nav{display:flex;gap:22px;flex:1;flex-wrap:wrap;font-size:14.5px;font-weight:600;}
.main-nav a{color:#16242e;}
.main-nav a:hover{color:var(--accent);text-decoration:none;}
.main-nav a.active{color:var(--accent);}
.header-actions{display:flex;align-items:center;gap:14px;flex-shrink:0;}
.header-phone{font-family:var(--font-mono);font-size:14px;color:var(--ink);font-weight:500;}
.header-phone:hover{color:var(--accent);}
.cart-link{
  cursor:pointer;border:1px solid var(--ink);border-radius:999px;padding:8px 16px;
  font-size:14px;font-weight:600;display:flex;gap:8px;align-items:center;color:var(--ink);
}
.cart-link:hover{background:var(--ink);color:var(--bg);text-decoration:none;}
.cart-count{
  background:var(--accent);color:#fff;border-radius:999px;min-width:20px;height:20px;
  display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-family:var(--font-mono);
}
.nav-toggle{display:none;}

/* ===== buttons ===== */
.btn{
  display:inline-block;cursor:pointer;border:none;border-radius:8px;font-weight:700;
  font-size:15.5px;padding:16px 30px;text-align:center;text-decoration:none;
}
.btn:hover{text-decoration:none;}
.btn-primary{background:var(--accent);color:#fff;}
.btn-primary:hover{background:var(--accent-hover);color:#fff;}
.btn-dark{background:var(--ink);color:#fff;}
.btn-dark:hover{background:var(--ink-2);color:#fff;}
.btn-outline-light{border:1px solid var(--on-dark-border);color:var(--on-dark);background:transparent;}
.btn-outline-light:hover{border-color:var(--on-dark);color:var(--on-dark);}
.btn-outline-dark{border:1px solid var(--ink);color:var(--ink);background:transparent;}
.btn-outline-dark:hover{background:var(--ink);color:var(--bg);}
.btn-sm{padding:9px 18px;font-size:14px;border-radius:7px;}
.btn-block{display:block;width:100%;}
.link-arrow{cursor:pointer;font-weight:700;color:var(--accent);white-space:nowrap;}
.link-arrow:hover{text-decoration:none;color:var(--accent-active);}

/* ===== hero ===== */
.hero{background:var(--ink);color:var(--on-dark);}
.hero-inner{
  max-width:1240px;margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;min-height:520px;
}
.hero-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark-muted-3);margin-bottom:22px;}
.hero h1{font-size:56px;line-height:1.04;letter-spacing:-.03em;font-weight:800;margin:0 0 22px;}
.hero-lead{font-size:18.5px;line-height:1.6;color:var(--on-dark-muted);max-width:520px;margin:0 0 32px;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px;}
.hero-stats{display:flex;gap:34px;flex-wrap:wrap;font-family:var(--font-mono);font-size:13px;color:var(--on-dark-muted-5);}
.hero-stats strong{display:block;font-size:26px;color:var(--on-dark);font-family:var(--font-sans);font-weight:800;}
.hero-media{
  height:420px;border-radius:12px;overflow:hidden;position:relative;
  border:1px solid var(--ink-border);
}
.hero-media img{width:100%;height:100%;object-fit:cover;}
.media-caption{
  position:absolute;left:18px;bottom:18px;font-family:var(--font-mono);font-size:12px;color:var(--on-dark-muted-3);
  background:rgba(13,26,34,.85);padding:8px 12px;border-radius:5px;
}

/* ===== trust strip ===== */
.trust-strip{background:#fff;border-bottom:1px solid var(--border);}
.trust-strip .grid-4{padding:26px 24px;}
.trust-item strong{display:block;font-size:15px;}
.trust-item span{font-size:14px;color:var(--muted);}

/* ===== section headers ===== */
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:38px;flex-wrap:wrap;}
.eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;}
.eyebrow-light{color:var(--on-dark-muted-3);}
h2.title{font-size:38px;line-height:1.1;letter-spacing:-.02em;margin:0;font-weight:800;}
.section{max-width:1240px;margin:0 auto;padding:82px 24px 20px;}
.section-pad{max-width:1240px;margin:0 auto;padding:82px 24px;}

/* ===== cards ===== */
.card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:28px;}
.card:hover{border-color:var(--accent);}
.card-plain{background:#fff;border:1px solid var(--border);border-radius:12px;padding:28px;}
.card-tag{font-family:var(--font-mono);font-size:12px;color:var(--accent);margin-bottom:14px;}
.card h3{margin:0 0 10px;font-size:20px;letter-spacing:-.01em;}
.card p{margin:0 0 16px;font-size:15px;line-height:1.6;color:var(--muted);}
.card-price{font-weight:700;font-size:15px;}

/* dark product cards (home featured) */
.product-dark{background:var(--ink-2);border:1px solid var(--ink-border);border-radius:12px;overflow:hidden;}
.product-dark .thumb{height:170px;overflow:hidden;}
.product-dark .thumb img{width:100%;height:100%;object-fit:cover;}
.product-dark .body{padding:22px;}
.product-dark .cat{font-family:var(--font-mono);font-size:11px;color:var(--on-dark-muted-3);margin-bottom:8px;}
.product-dark h3{margin:0 0 6px;font-size:18px;color:var(--on-dark);}
.product-dark p{margin:0 0 14px;font-size:14px;color:var(--on-dark-muted-2);line-height:1.55;}
.product-dark .row{display:flex;justify-content:space-between;align-items:center;}
.product-dark strong{font-size:20px;color:var(--on-dark);}

/* light e-shop product cards */
.product-card{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;}
.product-card .thumb{height:190px;overflow:hidden;position:relative;background:var(--panel);}
.product-card .thumb img{width:100%;height:100%;object-fit:cover;}
.product-card .badge{
  position:absolute;top:12px;left:12px;background:var(--ink);color:#fff;
  font-family:var(--font-mono);font-size:10.5px;padding:4px 9px;border-radius:4px;
}
.product-card .body{padding:22px;display:flex;flex-direction:column;flex:1;}
.product-card .cat{font-family:var(--font-mono);font-size:11px;color:var(--accent);margin-bottom:8px;}
.product-card h3{margin:0 0 8px;font-size:18.5px;letter-spacing:-.01em;}
.product-card p{margin:0 0 14px;font-size:14.5px;color:var(--muted);line-height:1.6;}
.product-card .specs{display:flex;flex-direction:column;gap:5px;margin-bottom:18px;}
.product-card .specs div{font-size:13.5px;color:var(--muted-2);font-family:var(--font-mono);}
.product-card .foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;}
.product-card .price{font-size:21px;}
.product-card .price-sub{font-size:12px;color:var(--muted);}

/* ===== steps ===== */
.steps-panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:48px;}
.steps-panel > p{color:var(--muted);margin:0 0 38px;font-size:16px;}
.step{border-top:2px solid var(--accent);padding-top:18px;}
.step .n{font-family:var(--font-mono);font-size:13px;color:var(--accent);margin-bottom:10px;}
.step h3{margin:0 0 8px;font-size:17px;}
.step p{margin:0;font-size:14.5px;line-height:1.6;color:var(--muted);}

/* ===== dark section ===== */
.section-dark{background:var(--ink);color:var(--on-dark);padding:78px 0;}
.section-dark-tight{background:var(--ink);color:var(--on-dark);padding:46px;border-radius:16px;}

/* ===== why list ===== */
.why-item{display:flex;gap:14px;align-items:flex-start;}
.why-dot{width:8px;height:8px;background:var(--accent);border-radius:50%;margin-top:7px;flex-shrink:0;}
.why-item span{font-size:15.5px;line-height:1.6;}

/* ===== media box (photo placeholder-style, now real photo) ===== */
.media-box{
  border-radius:14px;overflow:hidden;border:1px solid var(--border);position:relative;
}
.media-box img{width:100%;height:100%;object-fit:cover;}

/* ===== reviews ===== */
.review-card{border:1px solid var(--border);border-radius:12px;padding:26px;background:var(--panel);}
.review-card .stars{color:var(--star);font-size:14px;letter-spacing:2px;margin-bottom:12px;}
.review-card p{margin:0 0 18px;font-size:15.5px;line-height:1.65;color:var(--ink);}
.review-card .who{font-size:13.5px;color:var(--muted);font-family:var(--font-mono);}

/* ===== cities / badges / pills ===== */
.pill{border:1px solid var(--border);background:#fff;border-radius:999px;padding:9px 18px;font-size:14.5px;display:inline-block;}
.pill-btn{cursor:pointer;border:1px solid var(--border);background:#fff;border-radius:999px;padding:9px 20px;font-size:14.5px;font-weight:600;}
.pill-btn:hover{border-color:var(--accent);color:var(--accent);}
.pill-btn.active{border-color:var(--accent);color:var(--accent);background:#eaf4f8;}

/* ===== CTA banner ===== */
.cta-banner{
  background:var(--accent);color:#fff;border-radius:16px;padding:52px;
  display:flex;justify-content:space-between;align-items:center;gap:36px;flex-wrap:wrap;
}
.cta-banner h2{font-size:32px;margin:0 0 10px;letter-spacing:-.02em;}
.cta-banner p{margin:0;font-size:17px;color:#d6ecf5;max-width:620px;}
.cta-banner .btn-dark:hover{background:var(--ink-2);}

/* ===== forms ===== */
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px;}
.field{display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--muted-2);}
.field input,.field select,.field textarea{
  padding:11px 13px;border:1px solid var(--border);border-radius:7px;color:var(--ink);background:#fff;
}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:1px;}
.field textarea{resize:vertical;}
.checkbox-row{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--muted-2);margin-bottom:16px;}
.checkbox-row input{margin-top:3px;}
.checkbox-row a{color:var(--accent);font-weight:600;}
.form-panel{background:#fff;border:1px solid var(--border);border-radius:12px;padding:32px;}
.form-panel h2{font-size:20px;margin:0 0 18px;}
.form-error{display:none;background:#fdf1ef;border:1px solid #f0c9c1;color:var(--danger);border-radius:8px;padding:12px 16px;font-size:14px;margin-bottom:18px;}
.hp-field{position:absolute;left:-9999px;top:-9999px;opacity:0;height:0;width:0;overflow:hidden;}

/* ===== faq ===== */
.faq-item{background:#fff;border:1px solid var(--border);border-radius:10px;padding:22px 24px;}
.faq-q{cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;}
.faq-q strong{font-size:17px;letter-spacing:-.01em;}
.faq-sign{color:var(--accent);font-size:20px;font-weight:600;flex-shrink:0;}
.faq-a{margin:14px 0 0;font-size:16px;line-height:1.7;color:var(--muted-2);display:none;}
.faq-item.open .faq-a{display:block;}

/* ===== footer ===== */
.site-footer{background:var(--ink);color:var(--on-dark-muted-2);padding:64px 0 30px;margin-top:auto;}
.footer-grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;
  padding-bottom:44px;border-bottom:1px solid var(--ink-border);
}
.footer-logo{display:flex;align-items:baseline;gap:4px;margin-bottom:16px;}
.footer-logo span:first-child{font-weight:800;font-size:21px;color:var(--on-dark);letter-spacing:-.02em;}
.footer-logo .dot{width:6px;height:6px;background:var(--accent);border-radius:50%;display:inline-block;}
.footer-col p{font-size:14.5px;line-height:1.7;margin:0 0 16px;max-width:320px;color:var(--on-dark-muted-2);}
.footer-addr{font-family:var(--font-mono);font-size:13px;line-height:1.8;color:var(--on-dark-muted-4);}
.footer-heading{color:var(--on-dark);font-weight:700;font-size:14px;margin-bottom:14px;}
.footer-links{display:flex;flex-direction:column;gap:9px;font-size:14.5px;}
.footer-links a{color:var(--on-dark-muted-2);}
.footer-links a:hover{color:var(--on-dark);text-decoration:none;}
.footer-bottom{padding-top:22px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:13px;color:var(--on-dark-muted-6);}

/* ===== cookie banner ===== */
.cookie-banner{position:fixed;bottom:18px;left:18px;right:18px;z-index:60;display:none;justify-content:center;}
.cookie-banner.open{display:flex;}
.cookie-box{
  background:var(--ink);color:var(--on-dark);border-radius:14px;padding:26px 28px;max-width:900px;
  box-shadow:0 18px 50px rgba(0,0,0,.32);display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;
  animation:kv-rise .35s ease both;
}
.cookie-box strong{display:block;font-size:16px;margin-bottom:8px;}
.cookie-box p{margin:0;font-size:14px;line-height:1.65;color:var(--on-dark-muted);}
.cookie-box p a{cursor:pointer;color:var(--on-dark-muted-3);text-decoration:underline;}
.cookie-actions{display:flex;flex-direction:column;gap:10px;min-width:190px;}
.cookie-actions .btn{font-size:14.5px;padding:12px;}
.cookie-settings-link{cursor:pointer;font-size:13px;text-align:center;color:var(--on-dark-muted-4);background:none;border:none;}
.cookie-settings-link:hover{color:var(--on-dark);}

/* ===== article ===== */
.article-back{cursor:pointer;font-family:var(--font-mono);font-size:12px;color:var(--accent);margin-bottom:22px;display:inline-block;}
.article-meta{font-family:var(--font-mono);font-size:12px;color:var(--muted);margin-bottom:14px;}
.article h1{font-size:40px;letter-spacing:-.03em;line-height:1.12;margin:0 0 22px;}
.article-lead{font-size:19px;line-height:1.65;color:var(--muted-2);margin:0 0 32px;font-weight:500;}
.article-media{height:300px;border-radius:12px;overflow:hidden;margin-bottom:36px;}
.article-media img{width:100%;height:100%;object-fit:cover;}
.article-block{margin-bottom:26px;}
.article-block h2{font-size:25px;letter-spacing:-.02em;margin:0 0 12px;}
.article-block p{font-size:17px;line-height:1.75;color:var(--body-dark);margin:0;}
.article-cta{background:var(--ink);color:var(--on-dark);border-radius:12px;padding:34px;margin-top:40px;}
.article-cta h2{font-size:22px;margin:0 0 10px;}
.article-cta p{margin:0 0 20px;color:var(--on-dark-muted);font-size:16px;}

/* ===== blog list ===== */
.post-card{cursor:pointer;background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;display:block;color:inherit;}
.post-card:hover{border-color:var(--accent);text-decoration:none;color:inherit;}
.post-card .thumb{height:160px;overflow:hidden;}
.post-card .thumb img{width:100%;height:100%;object-fit:cover;}
.post-card .body{padding:24px;}
.post-card .meta{font-family:var(--font-mono);font-size:11.5px;color:var(--muted);margin-bottom:10px;}
.post-card h2{margin:0 0 10px;font-size:19px;letter-spacing:-.01em;line-height:1.3;}
.post-card p{margin:0 0 14px;font-size:14.5px;color:var(--muted);line-height:1.6;}
.post-card .more{color:var(--accent);font-weight:700;font-size:14px;}

/* ===== team / facts ===== */
.team-card{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.team-card .thumb{height:180px;overflow:hidden;}
.team-card .thumb img{width:100%;height:100%;object-fit:cover;}
.team-card .body{padding:20px;}
.team-card strong{font-size:16px;display:block;}
.team-card .role{font-size:13.5px;color:var(--accent);margin:4px 0 8px;font-family:var(--font-mono);}
.team-card p{margin:0;font-size:14px;color:var(--muted);line-height:1.55;}
.fact-row{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--border-2);font-size:15px;}
.fact-row span{color:var(--muted);}
.fact-row strong{font-family:var(--font-mono);}

/* ===== price list ===== */
.price-group{margin-bottom:40px;}
.price-group h2{font-size:22px;margin:0 0 14px;letter-spacing:-.01em;}
.price-table{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.price-row{display:flex;justify-content:space-between;gap:24px;padding:16px 22px;border-bottom:1px solid var(--border-2);align-items:center;}
.price-row:last-child{border-bottom:none;}
.price-row .name{font-size:15.5px;font-weight:600;}
.price-row .desc{font-size:13.5px;color:var(--muted);margin-top:3px;}
.price-row .amount{font-family:var(--font-mono);font-size:15px;white-space:nowrap;}

/* ===== cart / checkout ===== */
.cart-panel{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.cart-line{display:flex;gap:18px;padding:20px;border-bottom:1px solid var(--border-2);align-items:center;}
.cart-line .thumb{width:82px;height:66px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--panel);}
.cart-line .thumb img{width:100%;height:100%;object-fit:cover;}
.cart-line .info{flex:1;}
.cart-line .info strong{font-weight:700;font-size:16px;display:block;}
.cart-line .info .unit{font-size:13.5px;color:var(--muted);margin-top:3px;}
.qty-control{display:flex;align-items:center;gap:10px;}
.qty-btn{cursor:pointer;width:30px;height:30px;border:1px solid var(--border);border-radius:6px;display:flex;align-items:center;justify-content:center;font-weight:700;background:#fff;}
.qty-val{font-family:var(--font-mono);min-width:20px;text-align:center;}
.cart-line .line-total{width:100px;text-align:right;font-weight:700;font-family:var(--font-mono);}
.cart-remove{cursor:pointer;color:var(--danger);font-size:13px;font-weight:600;background:none;border:none;}
.cart-options{padding:20px;display:flex;justify-content:space-between;align-items:center;background:var(--panel);flex-wrap:wrap;gap:12px;}
.cart-options label{display:flex;gap:10px;align-items:center;font-size:15px;cursor:pointer;}
.summary-panel{background:var(--ink);color:var(--on-dark);border-radius:12px;padding:28px;}
.summary-panel h2{font-size:20px;margin:0 0 20px;}
.summary-row{display:flex;justify-content:space-between;font-size:15px;margin-bottom:10px;}
.summary-row span:first-child{color:var(--on-dark-muted-2);}
.summary-row .val{font-family:var(--font-mono);}
.summary-total{border-top:1px solid var(--ink-border);padding-top:16px;display:flex;justify-content:space-between;align-items:baseline;}
.summary-total strong:first-child{font-size:17px;}
.summary-total strong:last-child{font-size:26px;font-family:var(--font-mono);}
.summary-vat{font-size:12.5px;color:var(--on-dark-muted-4);margin-top:6px;}
.summary-note{font-size:12.5px;color:var(--on-dark-muted-4);line-height:1.6;margin:16px 0 0;}
.empty-cart{background:#fff;border:1px solid var(--border);border-radius:12px;padding:56px;text-align:center;}
.empty-cart p{font-size:17px;color:var(--muted-2);margin:0 0 22px;}

.summary-mini{background:#fff;border:1px solid var(--border);border-radius:12px;padding:26px;}
.summary-mini h2{font-size:17px;margin:0 0 16px;}
.summary-mini .row{display:flex;justify-content:space-between;gap:12px;font-size:14.5px;padding:9px 0;border-bottom:1px solid var(--border-2);}
.summary-mini .row .val{font-family:var(--font-mono);white-space:nowrap;}
.summary-mini .grand{border-top:1px solid var(--border);margin-top:8px;padding-top:14px;display:flex;justify-content:space-between;align-items:baseline;}
.summary-mini .grand strong:last-child{font-size:22px;font-family:var(--font-mono);}
.legal-note{font-size:12.5px;color:var(--muted);margin-top:16px;line-height:1.6;}

.order-done{background:#fff;border:1px solid var(--border);border-radius:14px;padding:60px;text-align:center;}
.order-done .eyebrow{margin-bottom:16px;}
.order-done h1{font-size:36px;margin:0 0 14px;letter-spacing:-.02em;}
.order-done p{font-size:17px;color:var(--muted-2);max-width:560px;margin:0 auto 26px;line-height:1.65;}

/* ===== contact ===== */
.contact-card{background:var(--ink);color:var(--on-dark);border-radius:12px;padding:30px;}
.contact-card h2{font-size:19px;margin:0 0 18px;}
.contact-info{display:flex;flex-direction:column;gap:12px;font-size:15.5px;line-height:1.5;}
.contact-info .label{color:var(--on-dark-muted-4);display:block;font-size:13px;}
.contact-info a{color:var(--on-dark);}
.contact-map{border-radius:12px;overflow:hidden;border:1px solid var(--border);height:240px;}
.contact-map iframe{width:100%;height:100%;border:0;display:block;}
.hours-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:26px;}
.hours-card h2{font-size:17px;margin:0 0 14px;}
.hours-row{display:flex;justify-content:space-between;font-size:15px;padding:7px 0;border-bottom:1px solid var(--border-2);}
.hours-row span:first-child{color:var(--muted);}
.notice-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:26px;font-size:14px;line-height:1.65;color:var(--muted-2);}
.notice-card strong{display:block;margin-bottom:8px;color:var(--ink);}
.sent-box{padding:40px 0;text-align:center;}
.sent-box h2{font-size:24px;margin:0 0 12px;}
.sent-box p{font-size:16px;color:var(--muted-2);margin:0;}

/* ===== legal pages ===== */
.legal-meta{font-family:var(--font-mono);font-size:12.5px;color:var(--muted);margin-bottom:38px;}
.legal-section{margin-bottom:30px;}
.legal-section h2{font-size:22px;letter-spacing:-.01em;margin:0 0 12px;}
.legal-section p{font-size:16px;line-height:1.75;color:var(--body-dark);margin:0 0 12px;}
.legal-contact{background:#fff;border:1px solid var(--border);border-radius:12px;padding:26px;font-size:14.5px;line-height:1.7;color:var(--muted-2);}

/* ===== 404 ===== */
.error-page{max-width:640px;margin:0 auto;padding:120px 24px;text-align:center;}
.error-page .code{font-family:var(--font-mono);font-size:14px;color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;}
.error-page h1{font-size:40px;margin:0 0 16px;letter-spacing:-.02em;}
.error-page p{font-size:17px;color:var(--muted-2);margin:0 0 30px;line-height:1.6;}

/* ===== dot list ===== */
.dot-list-item{display:flex;gap:10px;font-size:14.5px;color:var(--muted-2);}
.dot-list-item .dot{color:var(--accent);}
.dot-list-item2{display:flex;gap:12px;font-size:15.5px;line-height:1.6;color:var(--body-dark);}
.dot-list-item2 .dot{color:var(--accent);}

/* ===== responsive ===== */
@media (max-width:980px){
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .hero-inner{grid-template-columns:1fr;min-height:0;padding-top:48px;padding-bottom:48px;}
  .hero-media{height:280px;}
  .grid-2{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .cart-panel-grid{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .main-nav{
    display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);
    border-bottom:1px solid var(--border);padding:14px 24px;flex-direction:column;gap:14px;
  }
  .main-nav.open{display:flex;}
  .header-inner{position:relative;}
  .nav-toggle{
    display:inline-flex;margin-left:auto;background:none;border:1px solid var(--border);border-radius:8px;
    width:38px;height:38px;align-items:center;justify-content:center;font-size:18px;
  }
  .header-phone{display:none;}
  .grid-4{grid-template-columns:1fr;}
  .grid-3{grid-template-columns:1fr;}
  .hero h1{font-size:38px;}
  h2.title{font-size:28px;}
  .form-row{grid-template-columns:1fr;}
  .cta-banner{padding:32px;}
  .cta-banner h2{font-size:26px;}
  .footer-grid{grid-template-columns:1fr;}
  .steps-panel{padding:26px;}
  .steps-panel .grid-4{grid-template-columns:1fr 1fr;}
  .cookie-box{grid-template-columns:1fr;}
  .price-row{flex-direction:column;align-items:flex-start;gap:6px;}
  .price-row .amount{align-self:flex-end;}
}
