/* Babla Purka — стилі сайту (1:1 відтворення дизайну) */
:root{
  --blue:#1F5FAF;
  --blue-dark:#0E3F7E;
  --blue-mid:#174E92;
  --blue-light:#3D84E3;
  --blue-soft:#2F74D0;
  --navy:#0E1E30;
  --navy2:#16293F;
  --navy3:#1A3049;
  --navy-border:#2A4058;
  --navy-line:#1E3349;
  --bg:#F4F6F8;
  --text:#0F1A24;
  --muted:#5B6773;
  --muted2:#6B7785;
  --muted3:#4A5866;
  --border:#DDE2E7;
  --border2:#E6EAEE;
  --chip:#EAF1FA;
  --chip-blue2:#E6EDF5;
  --green:#2E7D4F;
  --line-blue:#C5D0DC;
  --sky:#8FB4E3;
  --sky2:#C9D6E5;
  --sky3:#8FA3B8;
  --font-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --font-mono:'SFMono-Regular',Consolas,'Liberation Mono',Menlo,monospace;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;line-height:1.5}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--blue-dark);text-decoration:underline}
img{max-width:100%;display:block}
input,select,textarea,button{font-family:inherit;font-size:15px}
h1,h2,h3,p{margin:0}
button{cursor:pointer}
.mono{font-family:var(--font-mono)}
.page{min-height:100vh;display:flex;flex-direction:column}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.wrap-md{max-width:1100px;margin:0 auto;padding:0 24px}
.wrap-sm{max-width:1000px;margin:0 auto;padding:0 24px}
.wrap-narrow{max-width:900px;margin:0 auto;padding:0 24px}
.wrap-article{max-width:780px;margin:0 auto;padding:0 24px}

/* top bar */
.topbar{background:var(--navy);color:var(--sky2);font-size:12.5px;padding:8px 24px;display:flex;justify-content:center;gap:28px;flex-wrap:wrap;letter-spacing:.01em}

/* header */
header.site-header{background:#FFFFFF;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}
.header-inner{max-width:1240px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;cursor:pointer}
.logo-mark{width:34px;height:34px;border-radius:9px;background:var(--blue);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.logo-mark span{width:14px;height:14px;border-radius:50%;border:3px solid #FFFFFF;display:block}
.logo-text{display:flex;flex-direction:column;line-height:1.05}
.logo-text b{font-weight:800;font-size:19px;letter-spacing:-.02em}
.logo-text small{font-family:var(--font-mono);font-size:10.5px;color:var(--muted2)}
nav.main-nav{display:flex;gap:4px;flex-wrap:wrap;flex:1;justify-content:center}
nav.main-nav a{padding:8px 12px;border-radius:8px;font-size:14.5px;font-weight:600;cursor:pointer;color:#33414E;text-decoration:none;display:inline-block}
nav.main-nav a:hover{background:#EEF2F6;text-decoration:none}
nav.main-nav a.active{color:var(--blue);background:var(--chip)}
.cart-btn{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:10px;background:var(--text);color:#FFFFFF;cursor:pointer;font-weight:700;font-size:14px;text-decoration:none}
.cart-btn:hover{background:var(--blue);text-decoration:none}
.cart-count{background:#FFFFFF;color:var(--text);border-radius:20px;min-width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:12px;padding:0 6px}
.cart-total{font-weight:500;color:var(--sky2)}

main{flex:1}

/* hero */
.hero{background:var(--navy);color:#FFFFFF}
.hero-grid{max-width:1240px;margin:0 auto;padding:72px 24px 80px;display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:48px;align-items:center}
.kicker{font-family:var(--font-mono);font-size:12px;color:var(--sky);letter-spacing:.08em;text-transform:uppercase;margin-bottom:20px}
.kicker.blue{color:var(--blue)}
.hero h1{font-size:clamp(38px,5vw,62px);line-height:1.02;letter-spacing:-.035em;margin:0 0 22px;font-weight:800;text-wrap:balance}
.hero p{font-size:18px;line-height:1.6;color:var(--sky2);margin:0 0 32px;max-width:520px;text-wrap:pretty}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}
.btn-primary{padding:15px 26px;background:var(--blue-soft);color:#fff;border-radius:10px;font-weight:700;cursor:pointer;border:0;text-decoration:none;display:inline-block}
.btn-primary:hover{background:var(--blue-light);text-decoration:none;color:#fff}
.btn-outline-dark{padding:15px 26px;border:1px solid var(--navy-border);border-radius:10px;font-weight:700;cursor:pointer;color:#fff;text-decoration:none;display:inline-block}
.btn-outline-dark:hover{background:#16293F;text-decoration:none;color:#fff}
.hero-stats{display:flex;gap:36px;margin-top:44px;flex-wrap:wrap}
.hero-stats div b{display:block;font-size:26px;font-weight:800}
.hero-stats div span{font-size:13px;color:var(--sky3)}
.hero-photo{aspect-ratio:5/4;border-radius:18px;overflow:hidden;border:1px solid var(--navy-border)}
.hero-photo img{width:100%;height:100%;object-fit:cover}

/* generic section */
section.sec{max-width:1240px;margin:0 auto;padding:56px 24px 24px}
section.sec.first{padding-top:72px}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.sec-head h2{font-size:34px;letter-spacing:-.03em;margin:0}
.sec-head .more{font-weight:700;color:var(--blue);cursor:pointer;text-decoration:none}
.section-label{font-family:var(--font-mono);font-size:12px;color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}

/* topics grid */
.grid-topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.topic-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:10px;min-height:150px;text-decoration:none;color:inherit}
.topic-card:hover{border-color:var(--blue);box-shadow:0 8px 24px rgba(15,26,36,.06);text-decoration:none}
.topic-card .num{font-family:var(--font-mono);font-size:12px;color:var(--muted2)}
.topic-card .name{font-weight:800;font-size:19px;letter-spacing:-.01em;color:var(--text)}
.topic-card .desc{font-size:14px;color:var(--muted);line-height:1.5}

/* product grid/card */
.grid-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.product-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.product-photo{aspect-ratio:1/1;position:relative;display:block;overflow:hidden;background:#EDF1F5}
.product-photo img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;top:12px;left:12px;background:var(--blue);color:#fff;font-size:11.5px;font-weight:700;padding:4px 9px;border-radius:20px}
.product-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.product-cat{font-size:12px;color:var(--muted2);font-weight:600}
.product-name{font-weight:700;font-size:16px;line-height:1.3;color:var(--text);text-decoration:none}
.product-name:hover{text-decoration:underline}
.product-short{font-size:13.5px;color:var(--muted);line-height:1.5;flex:1}
.product-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:10px}
.price{font-weight:800;font-size:18px}
.unit{font-size:11px;color:var(--muted2)}
.btn-add{padding:9px 14px;background:var(--chip);color:var(--blue);border-radius:8px;font-weight:700;font-size:13.5px;cursor:pointer;border:0;white-space:nowrap}
.btn-add:hover{background:var(--blue);color:#fff}

/* article grid/card */
.grid-articles{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}
.article-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;display:block}
.article-card:hover{box-shadow:0 10px 30px rgba(15,26,36,.08);text-decoration:none}
.article-photo{aspect-ratio:16/9;overflow:hidden;background:#EDF1F5}
.article-photo img{width:100%;height:100%;object-fit:cover}
.article-body{padding:20px 22px 24px}
.article-meta{display:flex;gap:10px;font-size:12.5px;color:var(--muted2);font-weight:600;margin-bottom:10px;flex-wrap:wrap}
.article-meta .cat{color:var(--blue)}
.article-title{font-weight:800;font-size:20px;line-height:1.25;letter-spacing:-.015em;margin-bottom:10px;color:var(--text)}
.article-lead{font-size:14.5px;color:var(--muted);line-height:1.55}

/* promo cards */
.promo-grid{max-width:1240px;margin:0 auto;padding:56px 24px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px}
.promo-card{border-radius:18px;padding:36px;display:flex;flex-direction:column;gap:14px}
.promo-card.blue{background:var(--blue);color:#fff}
.promo-card.white{background:#fff;border:1px solid var(--border)}
.promo-card .kicker2{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.promo-card.blue .kicker2{color:#BFD5F2}
.promo-card.white .kicker2{color:var(--blue)}
.promo-card .ttl{font-size:28px;font-weight:800;letter-spacing:-.025em;line-height:1.15}
.promo-card .txt{font-size:15.5px;line-height:1.6}
.promo-card.blue .txt{color:#DCE8F7}
.promo-card.white .txt{color:var(--muted)}
.promo-card .go{align-self:flex-start;margin-top:8px;padding:13px 22px;border-radius:10px;font-weight:700;cursor:pointer;text-decoration:none;border:0}
.promo-card.blue .go{background:#fff;color:var(--blue)}
.promo-card.white .go{background:var(--text);color:#fff}

/* steps */
.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:14px;overflow:hidden}
.step{background:#fff;padding:26px}
.step .n{font-size:40px;font-weight:800;color:#C5D3E3;letter-spacing:-.04em}
.step .t{font-weight:800;font-size:18px;margin:8px 0}
.step .d{font-size:14.5px;color:var(--muted);line-height:1.55}

/* faq */
.faq-list{display:flex;flex-direction:column;gap:10px}
.faq-item{background:#fff;border:1px solid var(--border);border-radius:12px}
.faq-q{padding:18px 22px;display:flex;justify-content:space-between;gap:16px;cursor:pointer;font-weight:700;font-size:16px;background:none;border:0;width:100%;text-align:left;color:var(--text)}
.faq-q .sign{color:var(--blue);font-size:20px;line-height:1}
.faq-a{padding:0 22px 20px;color:var(--muted);line-height:1.65;font-size:15px;display:none}
.faq-item.open .faq-a{display:block}

/* newsletter */
.newsletter-wrap{max-width:1240px;margin:0 auto;padding:64px 24px 80px}
.newsletter-box{background:var(--chip-blue2);border-radius:20px;padding:44px;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:32px;align-items:center}
.newsletter-box h2{font-size:30px;letter-spacing:-.03em;margin:0 0 10px}
.newsletter-box .desc{color:#4A5866;line-height:1.6}
.form-inline{display:flex;flex-direction:column;gap:12px}
.form-row{display:flex;gap:10px;flex-wrap:wrap}
.input{flex:1;min-width:200px;padding:14px 16px;border:1px solid var(--line-blue);border-radius:10px;font-size:15px;background:#fff}
.btn-submit{padding:14px 22px;border:0;background:var(--blue);color:#fff;border-radius:10px;font-weight:700;font-size:15px;cursor:pointer}
.btn-submit:hover{background:var(--blue-mid)}
.check-label{display:flex;gap:10px;font-size:13px;color:#4A5866;line-height:1.5;align-items:flex-start}
.check-label input{margin-top:3px}
.success-box{background:#fff;border-radius:12px;padding:22px;font-weight:700;color:var(--blue)}

/* breadcrumb */
.crumb{font-size:13px;color:var(--muted2);margin-bottom:10px}
.crumb a{color:var(--muted2);text-decoration:none;cursor:pointer}
.crumb a:hover{color:var(--blue);text-decoration:underline}
.page-head{padding:48px 24px 0}
.page-title{font-size:42px;letter-spacing:-.035em;margin:0 0 8px}
.page-lead{color:var(--muted);margin:0 0 28px;font-size:16px;max-width:640px;line-height:1.6}

/* chips */
.chip-row{display:flex;gap:8px;flex-wrap:wrap}
.chip{padding:9px 15px;border-radius:30px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:#fff;color:#33414E;text-decoration:none;display:inline-block}
.chip.active{background:var(--text);color:#fff;border-color:var(--text)}
.chip:hover{text-decoration:none}

/* shop toolbar */
.shop-toolbar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px;align-items:center}
.select{padding:10px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;background:#fff}
.shop-count{font-size:13px;color:var(--muted2);margin-bottom:14px}

/* product detail */
.pd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:48px}
.pd-photo{aspect-ratio:1/1;border-radius:18px;overflow:hidden;border:1px solid var(--border)}
.pd-photo img{width:100%;height:100%;object-fit:cover}
.pd-info{display:flex;flex-direction:column;gap:16px}
.pd-cat{font-size:13px;color:var(--blue);font-weight:700}
.pd-title{font-size:38px;letter-spacing:-.03em;margin:0;line-height:1.1}
.pd-desc{font-size:16px;color:var(--muted);line-height:1.65}
.pd-price-row{display:flex;align-items:baseline;gap:14px}
.pd-price{font-size:34px;font-weight:800}
.pd-price-note{font-size:13px;color:var(--muted2)}
.qty-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.qty-box{display:flex;align-items:center;border:1px solid var(--line-blue);border-radius:10px;background:#fff}
.qty-box button{width:44px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;border:0;background:none}
.qty-box .val{width:36px;text-align:center;font-weight:700}
.btn-add-big{padding:15px 28px;background:var(--blue);color:#fff;border-radius:10px;font-weight:700;cursor:pointer;border:0;font-size:15px}
.btn-add-big:hover{background:var(--blue-mid)}
.stock{font-size:13.5px;color:var(--green);font-weight:600}
.use-box{background:#fff;border:1px solid var(--border);border-radius:14px;padding:22px}
.use-box .t{font-weight:800;margin-bottom:8px}
.use-box .d{font-size:15px;color:#4A5866;line-height:1.65}
.safety-note{font-size:12.5px;color:var(--muted2);line-height:1.6}
.related-title{font-size:26px;letter-spacing:-.02em;margin:56px 0 20px}
.grid-related{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.related-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px;cursor:pointer;display:flex;gap:14px;align-items:center;text-decoration:none;color:inherit}
.related-card:hover{border-color:var(--blue);text-decoration:none}
.related-thumb{width:60px;height:60px;flex-shrink:0;border-radius:8px;overflow:hidden;background:#EDF1F5}
.related-thumb img{width:100%;height:100%;object-fit:cover}
.related-card .rname{font-weight:700;font-size:14.5px;line-height:1.3}
.related-card .rprice{font-weight:800;margin-top:4px}

/* article page */
.article-page{max-width:780px;margin:0 auto;padding:48px 24px 40px}
.art-meta{display:flex;gap:10px;font-size:13px;color:var(--muted2);font-weight:600;margin-bottom:14px;flex-wrap:wrap}
.art-meta .cat{color:var(--blue)}
.art-title{font-size:clamp(32px,4.4vw,46px);letter-spacing:-.035em;line-height:1.08;margin:0 0 18px;text-wrap:balance}
.art-lead{font-size:19px;line-height:1.6;color:#4A5866;margin:0 0 28px;text-wrap:pretty}
.art-photo{aspect-ratio:16/8;border-radius:16px;overflow:hidden;margin-bottom:36px}
.art-photo img{width:100%;height:100%;object-fit:cover}
.art-body h2{font-size:25px;letter-spacing:-.02em;margin:34px 0 12px}
.art-body p{font-size:17px;line-height:1.75;color:#24313D;margin:0 0 16px;text-wrap:pretty}
.tip-box{background:var(--chip-blue2);border-radius:14px;padding:22px 24px;margin-top:32px}
.tip-box .t{font-weight:800;margin-bottom:6px}
.tip-box .d{font-size:15.5px;line-height:1.6;color:#33414E}
.art-disclaimer{font-size:12.5px;color:var(--muted2);margin-top:26px;line-height:1.6}
.art-products{max-width:780px;margin:0 auto;padding:0 24px 80px}
.art-products h3{font-size:20px;margin:0 0 14px}
.ap-list{display:flex;flex-direction:column;gap:10px}
.ap-row{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px;display:flex;gap:14px;align-items:center}
.ap-thumb{width:56px;height:56px;flex-shrink:0;border-radius:8px;overflow:hidden;background:#EDF1F5}
.ap-thumb img{width:100%;height:100%;object-fit:cover}
.ap-row .apname{flex:1;font-weight:700;font-size:15px;color:var(--text);text-decoration:none}
.ap-row .apname:hover{text-decoration:underline}
.ap-row .apprice{font-weight:800}
.back-link{margin-top:28px;font-weight:700;color:var(--blue);cursor:pointer;display:inline-block}

/* plan page */
.season-box{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px}
.season-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:8px}
.season-head .name{font-size:24px;font-weight:800;letter-spacing:-.02em}
.season-head .intro{color:var(--muted);margin-top:4px;font-size:15px}
.season-progress{font-family:var(--font-mono);font-size:13px;color:var(--blue)}
.progress-bar{height:6px;background:#EEF2F6;border-radius:6px;margin:18px 0 22px;overflow:hidden}
.progress-bar .fill{height:6px;background:var(--blue)}
.task-list{display:flex;flex-direction:column;gap:8px}
.task{display:flex;gap:14px;padding:14px 16px;border-radius:10px;border:1px solid var(--border2);cursor:pointer;background:#fff;border:0;width:100%;text-align:left}
.task:hover{border:1px solid var(--blue)}
.task-box{width:22px;height:22px;flex-shrink:0;border-radius:6px;border:2px solid var(--blue);background:#fff;color:#fff;font-size:13px;display:flex;align-items:center;justify-content:center;font-weight:800}
.task-box.on{background:var(--blue)}
.task.done{background:#F3F7FC}
.task .tt{font-weight:700;color:var(--text)}
.task .td{font-size:14px;color:var(--muted);line-height:1.5;margin-top:2px}

/* advisor */
.goal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:28px}
.goal-card{padding:18px;border-radius:12px;cursor:pointer;border:2px solid var(--border);background:#fff;text-decoration:none;color:inherit;display:block}
.goal-card.active{border-color:var(--blue)}
.goal-card .gt{font-weight:800;color:var(--text)}
.goal-card .gd{font-size:13px;color:var(--muted);margin-top:4px;line-height:1.45}
.level-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.adv-box{background:var(--navy);color:#fff;border-radius:18px;padding:30px}
.adv-kicker{font-family:var(--font-mono);font-size:12px;color:var(--sky);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.adv-title{font-size:24px;font-weight:800;letter-spacing:-.02em;margin-bottom:20px}
.adv-list{display:flex;flex-direction:column;gap:10px}
.adv-row{display:flex;gap:14px;align-items:center;padding:14px 16px;background:var(--navy2);border-radius:10px;text-decoration:none;color:#fff}
.adv-row .step{font-family:var(--font-mono);color:var(--sky);font-size:13px}
.adv-row .nm{flex:1;font-weight:700}
.adv-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}
.adv-foot .sum{font-size:18px}

/* about */
.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-bottom:36px}
.about-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:22px}
.about-card .t{font-weight:800;margin-bottom:6px}
.about-card .d{font-size:14.5px;color:var(--muted);line-height:1.55}
.about-photo{aspect-ratio:16/7;border-radius:16px;overflow:hidden;margin-bottom:32px}
.about-photo img{width:100%;height:100%;object-fit:cover}
.op-box{background:#fff;border:1px solid var(--border);border-radius:14px;padding:24px;font-size:15px;line-height:1.75;color:#33414E}
.op-box .t{font-weight:800;margin-bottom:8px;color:var(--text)}

/* contact */
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}
.contact-col{display:flex;flex-direction:column;gap:14px}
.contact-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:24px;line-height:1.8;font-size:15.5px}
.contact-card .t{font-weight:800;font-size:18px;margin-bottom:6px}
.contact-card.small{font-size:14.5px;color:#33414E}
.contact-note{background:var(--chip-blue2);border-radius:14px;padding:22px;font-size:14px;line-height:1.65;color:#33414E}
.map-ph{aspect-ratio:16/9;border-radius:14px;background:repeating-linear-gradient(135deg,#E3E8EE 0 10px,#EDF1F5 10px 20px);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;color:var(--muted2);text-align:center;padding:12px}
.contact-form-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:28px}
.contact-form-card h2{font-weight:800;font-size:20px;margin-bottom:14px}
.field-group{display:flex;flex-direction:column;gap:14px}
textarea.input{resize:vertical;min-width:auto;width:100%}
select.input{width:100%}

/* cart */
.cart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;align-items:start}
.cart-items{display:flex;flex-direction:column;gap:10px}
.cart-row{background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.cart-thumb{width:64px;height:64px;border-radius:8px;flex-shrink:0;overflow:hidden;background:#EDF1F5}
.cart-thumb img{width:100%;height:100%;object-fit:cover}
.cart-row .ci-name{flex:1;min-width:140px}
.cart-row .ci-name b{font-weight:700;display:block}
.cart-row .ci-name span{font-size:13px;color:var(--muted2)}
.cart-qty{display:flex;align-items:center;border:1px solid var(--line-blue);border-radius:8px}
.cart-qty button{width:34px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;border:0;background:none;font-size:16px}
.cart-qty .val{width:28px;text-align:center;font-weight:700}
.cart-line{font-weight:800;min-width:80px;text-align:right}
.cart-remove{color:var(--muted2);cursor:pointer;font-size:13px;text-decoration:underline;border:0;background:none}
.cart-summary{background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:12px;position:sticky;top:96px}
.cart-summary .row{display:flex;justify-content:space-between}
.cart-summary .note{font-size:13.5px;color:var(--muted)}
.cart-empty{background:#fff;border:1px solid var(--border);border-radius:16px;padding:48px;text-align:center}
.cart-empty .t{font-size:20px;font-weight:800;margin-bottom:8px}
.cart-empty .d{color:var(--muted);margin-bottom:22px}
.btn-block{display:block;width:100%;padding:15px;background:var(--blue);color:#fff;border-radius:10px;font-weight:700;cursor:pointer;text-align:center;margin-top:6px;border:0;text-decoration:none}
.btn-block:hover{background:var(--blue-mid);text-decoration:none;color:#fff}
.link-center{text-align:center;font-size:14px;color:var(--blue);cursor:pointer;font-weight:600;text-decoration:none;display:block}

/* checkout */
.checkout-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:24px;align-items:start}
.checkout-col{display:flex;flex-direction:column;gap:20px}
.checkout-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:12px}
.checkout-card .t{font-weight:800;font-size:18px}
.checkout-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.checkout-form-grid .full{grid-column:1/-1}
.ship-opt,.pay-opt{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:10px;cursor:pointer;border:2px solid var(--border)}
.ship-opt.active,.pay-opt.active{border-color:var(--blue)}
.order-summary{display:flex;justify-content:space-between;gap:12px;font-size:14.5px}
.order-total{display:flex;justify-content:space-between;font-size:20px;font-weight:800;border-top:1px solid var(--border2);padding-top:12px}
.order-sub{display:flex;justify-content:space-between;font-size:14.5px;border-top:1px solid var(--border2);padding-top:12px}
.vat-note{font-size:12.5px;color:var(--muted2);text-align:right}
.btn-checkout{padding:16px;border:0;background:var(--blue);color:#fff;border-radius:10px;font-weight:800;font-size:15.5px;cursor:pointer;margin-top:6px;width:100%}
.btn-checkout:hover{background:var(--blue-mid)}
.order-done{background:#fff;border:1px solid var(--border);border-radius:16px;padding:48px;text-align:center;max-width:640px;margin:0 auto}
.order-check{width:56px;height:56px;border-radius:50%;background:var(--blue);color:#fff;font-size:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}

/* legal */
.legal-grid{max-width:1100px;margin:0 auto;padding:48px 24px 80px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:36px;align-items:start}
.legal-side{background:#fff;border:1px solid var(--border);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:2px;max-width:320px}
.legal-side .lbl{font-family:var(--font-mono);font-size:11.5px;color:var(--muted2);text-transform:uppercase;letter-spacing:.08em;padding:10px 12px}
.legal-side a{padding:10px 12px;border-radius:8px;cursor:pointer;font-size:14.5px;font-weight:600;text-decoration:none;color:#33414E;display:block}
.legal-side a:hover{background:#EEF2F6;text-decoration:none}
.legal-side a.active{color:var(--blue);background:var(--chip)}
.legal-content{grid-column:span 2;min-width:0}
.legal-content h1{font-size:38px;letter-spacing:-.03em;margin:0 0 8px;line-height:1.1}
.legal-date{font-size:13px;color:var(--muted2);margin-bottom:24px}
.legal-content h2{font-size:20px;letter-spacing:-.01em;margin:28px 0 10px}
.legal-content p{font-size:15.5px;line-height:1.75;color:#24313D;margin:0 0 12px;text-wrap:pretty}

/* footer */
footer.site-footer{background:var(--navy);color:var(--sky2);margin-top:auto}
.footer-grid{max-width:1240px;margin:0 auto;padding:56px 24px 28px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:36px}
.footer-col{display:flex;flex-direction:column;gap:9px;font-size:14px}
.footer-col .brand{font-weight:800;font-size:20px;color:#fff}
.footer-col .about-txt{font-size:14px;line-height:1.65;color:var(--sky3)}
.footer-col .colhead{font-weight:700;color:#fff;margin-bottom:4px}
.footer-col a{color:var(--sky2);text-decoration:none;cursor:pointer}
.footer-col a:hover{color:#fff;text-decoration:none}
.footer-bottom{max-width:1240px;margin:0 auto;padding:20px 24px 32px;border-top:1px solid var(--navy-line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12.5px;color:#7F93A8;line-height:1.6}

/* toast */
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--text);color:#fff;padding:14px 20px;border-radius:12px;font-weight:600;font-size:14.5px;z-index:60;box-shadow:0 12px 30px rgba(0,0,0,.25);display:none;gap:16px;align-items:center}
.toast.show{display:flex}
.toast a{color:var(--sky);cursor:pointer;font-weight:700;text-decoration:none}

/* cookie banner */
.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;max-width:560px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;z-index:50;box-shadow:0 20px 50px rgba(15,26,36,.18);display:none}
.cookie-banner.show{display:block}
.cookie-banner .t{font-weight:800;font-size:17px;margin-bottom:6px}
.cookie-banner .d{font-size:14px;color:#4A5866;line-height:1.6;margin-bottom:16px}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}
.btn-cookie-accept{padding:11px 18px;background:var(--blue);color:#fff;border-radius:9px;font-weight:700;font-size:14px;cursor:pointer;border:0}
.btn-cookie-deny{padding:11px 18px;background:#EEF2F6;color:var(--text);border-radius:9px;font-weight:700;font-size:14px;cursor:pointer;border:0}
.btn-cookie-settings{padding:11px 18px;color:var(--blue);font-weight:700;font-size:14px;cursor:pointer;background:none;border:0}

/* generic page section used by simple pages */
.page-section{max-width:1240px;margin:0 auto;padding:48px 24px 80px}
.page-section.md{max-width:1100px}
.page-section.sm{max-width:1000px}
.page-section.narrow{max-width:900px}

.visually-hidden{position:absolute;left:-9999px}

@media (max-width:640px){
  .header-inner{gap:12px}
  nav.main-nav{order:3;width:100%;justify-content:flex-start}
  .legal-content{grid-column:1/-1}
}
