/*
Theme Name:   Vaimulik Varandus Child
Theme URI:    https://vaimulikvarandus.ee
Description:  Divi lapseteema Vaimulik Varandus OÜ jaoks — navy/gold/cream disainisüsteem, Fraunces + Inter fondid.
Author:       Vaimulik Varandus OÜ
Template:     Divi
Version:      1.0.0
Text Domain:  vaimulik-varandus-child
*/

/* ============================================================
   Selle faili sisu pärineb algse saidi <style> plokist.
   Kõik klassinimed (topbar, hero, svc-card, pillar, cta-band jne)
   on samad, mida kasutavad Divi Builder paigutuste "Code" moodulid
   (vt /layouts/*.json). Ära muuda klassinimesid, kui ei muuda ka
   layout-failides olevat HTML-i.
   ============================================================ */


/* ============================================================
   VAIMULIK VARANDUS OÜ — Design tokens
   ============================================================ */
:root{
  --navy:        #0E1B32;
  --navy-2:      #172542;
  --navy-3:      #1F2F52;
  --cream:       #FBF8F2;
  --white:       #FFFFFF;
  --gold:        #D69A44;
  --gold-dark:   #B67C2C;
  --gold-light:  #F1D9AE;
  --ink:         #1B2233;
  --muted:       #6B7280;
  --line:        #E8E1D3;
  --line-dark:   #2A3A5C;

  --font-display: 'Fraunces', Georgia, serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

  --radius-s: 6px;
  --radius-m: 10px;
  --radius-l: 18px;
  --shadow-s: 0 2px 8px rgba(14,27,50,.06);
  --shadow-m: 0 12px 32px rgba(14,27,50,.10);
  --container: 1180px;
}

/* Safety net: any inline icon SVG without a more specific size rule
   falls back to a sane 1em box instead of its huge intrinsic size. */
svg{width:1em;height:1em;flex-shrink:0;vertical-align:-2px;}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
  line-height:1.6;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
h1,h2,h3,h4{font-family:var(--font-display);margin:0 0 .5em;line-height:1.15;font-weight:600;color:var(--navy);}
p{margin:0 0 1em;color:var(--muted);}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;}
.container{max-width:var(--container);margin:0 auto;padding:0 24px;}
.eyebrow{
  font-family:var(--font-body);
  font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-dark);display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;
}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--gold);display:inline-block;}
.section{padding:88px 0;}
.section-tight{padding:56px 0;}
.section-title{font-size:clamp(28px,3.4vw,40px);max-width:640px;}
.section-sub{max-width:560px;font-size:16.5px;}
.center{text-align:center;margin-left:auto;margin-right:auto;}
.two-col-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:44px;}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--font-body);font-weight:600;font-size:14.5px;letter-spacing:.01em;
  padding:15px 28px;border-radius:4px;border:1.5px solid transparent;cursor:pointer;
  transition:all .18s ease;white-space:nowrap;
}
.btn svg{width:16px;height:16px;flex-shrink:0;transition:transform .18s ease;}
.btn:hover svg{transform:translateX(3px);}
.btn-navy{background:var(--navy);color:var(--white);}
.btn-navy:hover{background:var(--navy-2);}
.btn-outline{background:transparent;border-color:var(--gold);color:var(--navy);}
.btn-outline:hover{background:var(--gold);color:var(--white);}
.btn-gold{background:var(--gold);color:var(--white);}
.btn-gold:hover{background:var(--gold-dark);}
.btn-block{width:100%;}
.btn-sm{padding:9px 16px;font-size:13px;}

/* ============ Topbar ============ */
.topbar{background:var(--navy);color:#C9D2E4;font-size:13px;}
.topbar .container{display:flex;align-items:center;justify-content:space-between;height:42px;}
.topbar-left{display:flex;gap:26px;align-items:center;}
.topbar-left a{display:flex;align-items:center;gap:7px;color:#C9D2E4;}
.topbar-left svg{width:14px;height:14px;color:var(--gold);}
.topbar-social{display:flex;gap:14px;}
.topbar-social a{width:15px;height:15px;color:#C9D2E4;}
.topbar-social svg{width:15px;height:15px;}

/* ============ Main nav ============ */
.navbar{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;}
.navbar .container{display:flex;align-items:center;justify-content:space-between;height:84px;gap:32px;}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.brand-mark{width:38px;height:38px;flex-shrink:0;}
.brand-text{font-family:var(--font-display);line-height:1.1;}
.brand-text b{display:block;font-size:16.5px;font-weight:700;color:var(--navy);letter-spacing:.02em;}
.brand-text span{display:block;font-size:11px;font-weight:500;color:var(--gold-dark);letter-spacing:.14em;font-family:var(--font-body);}
.nav-links{display:flex;gap:34px;align-items:center;}
.nav-links a{font-size:14.5px;font-weight:500;color:var(--ink);padding:6px 0;border-bottom:2px solid transparent;transition:.15s;}
.nav-links a:hover,.nav-links a.active{color:var(--gold-dark);border-color:var(--gold);}
.nav-right{display:flex;align-items:center;gap:20px;flex-shrink:0;}
.icon-btn{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--navy);transition:.15s;position:relative;}
.icon-btn:hover{background:var(--cream);}
.icon-btn svg{width:19px;height:19px;}
.cart-count{position:absolute;top:-2px;right:-2px;background:var(--gold);color:#fff;font-size:10px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.burger{display:none;width:38px;height:38px;align-items:center;justify-content:center;color:var(--navy);}
.burger svg{width:22px;height:22px;}

/* ============ Hero ============ */
.hero{padding:64px 0 0;overflow:hidden;}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.hero h1{font-size:clamp(38px,4.6vw,58px);letter-spacing:-.01em;}
.hero h1 em{font-style:normal;color:var(--gold);}
.hero h1 u{text-decoration:none;border-bottom:4px solid var(--gold-light);}
.hero-lede{font-size:17px;max-width:440px;margin-bottom:32px;}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:44px;}
.hero-collage{position:relative;display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:auto auto;gap:16px;}
.hero-collage img{border-radius:var(--radius-m);object-fit:cover;width:100%;height:100%;box-shadow:var(--shadow-m);}
.hero-collage .c1{grid-row:1/3;height:420px;}
.hero-collage .c2{height:202px;}
.hero-collage .c3{height:202px;}
.hero-badge{position:absolute;left:-18px;bottom:36px;background:var(--white);border-radius:var(--radius-m);box-shadow:var(--shadow-m);padding:14px 18px;display:flex;align-items:center;gap:12px;}
.hero-badge .num{font-family:var(--font-display);font-size:22px;color:var(--gold-dark);font-weight:700;}
.hero-badge .lbl{font-size:12px;color:var(--muted);}

/* Category strip */
.cat-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.cat-strip .container{display:flex;justify-content:space-between;padding:26px 24px;flex-wrap:wrap;gap:22px;}
.cat-item{display:flex;align-items:center;gap:10px;font-weight:600;font-size:14.5px;color:var(--navy);}
.cat-item .ic{width:34px;height:34px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;color:var(--gold-dark);flex-shrink:0;}
.cat-item .ic svg{width:17px;height:17px;}

/* Stats band */
.stats{background:var(--navy);color:#fff;}
.stats .container{display:grid;grid-template-columns:repeat(4,1fr);}
.stat{display:flex;align-items:center;gap:14px;padding:34px 24px;border-right:1px solid var(--line-dark);}
.stat:last-child{border-right:none;}
.stat .ic{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--gold);display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0;}
.stat .ic svg{width:22px;height:22px;}
.stat b{display:block;font-family:var(--font-display);font-size:24px;font-weight:700;}
.stat span{font-size:13px;color:#B9C3D9;}

/* Card grid — 4 pillars (teenused/meist/blogi/kontakt echo) */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.pillar{background:var(--navy);border-radius:var(--radius-l);padding:34px 30px;color:#fff;}
.pillar-alt{background:var(--white);border:1px solid var(--line);color:var(--ink);}
.pillar-tag{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;}
.pillar-alt .pillar-tag{color:var(--gold-dark);}
.pillar h3{color:#fff;font-size:20px;margin-bottom:16px;}
.pillar-alt h3{color:var(--navy);}
.pillar ul{margin-bottom:22px;}
.pillar li{display:flex;align-items:center;gap:9px;font-size:13.8px;color:#C9D2E4;padding:5px 0;}
.pillar-alt li{color:var(--muted);}
.pillar li svg{width:14px;height:14px;color:var(--gold);flex-shrink:0;}
.pillar-link{font-size:13.5px;font-weight:700;color:var(--gold);display:inline-flex;align-items:center;gap:6px;}
.pillar-alt .pillar-link{color:var(--gold-dark);}
.pillar-link svg{width:14px;height:14px;}

/* Services grid (icon cards) */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.svc-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-l);padding:36px 30px;transition:.2s;}
.svc-card:hover{border-color:var(--gold);box-shadow:var(--shadow-m);transform:translateY(-4px);}
.svc-ic{width:54px;height:54px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;color:var(--gold-dark);margin-bottom:20px;}
.svc-ic svg{width:26px;height:26px;}
.svc-card h3{font-size:19px;margin-bottom:10px;}
.svc-card p{font-size:14.5px;margin-bottom:18px;}

/* Testimonial */
.testi{background:var(--gold-light);border-radius:var(--radius-l);padding:56px;display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:center;}
.testi-quote{width:52px;height:52px;color:var(--gold-dark);flex-shrink:0;}
.testi-quote svg{width:100%;height:100%;}
.map-box svg{width:56px;height:56px;}
.qty-box button svg{width:14px;height:14px;}
.testi blockquote{font-family:var(--font-display);font-size:22px;color:var(--navy);margin:0 0 16px;font-weight:500;line-height:1.4;}
.testi cite{font-style:normal;font-weight:700;font-size:14px;color:var(--navy);}
.testi span{display:block;font-size:12.5px;color:var(--muted);}

/* Blog / posts */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.post-card{background:var(--white);border-radius:var(--radius-l);overflow:hidden;border:1px solid var(--line);transition:.2s;}
.post-card:hover{box-shadow:var(--shadow-m);transform:translateY(-4px);}
.post-thumb{position:relative;height:200px;overflow:hidden;}
.post-thumb img{width:100%;height:100%;object-fit:cover;}
.post-tag{position:absolute;top:14px;left:14px;background:var(--gold);color:#fff;font-size:11px;font-weight:700;padding:5px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em;}
.post-body{padding:24px;}
.post-date{font-size:12.5px;color:var(--gold-dark);font-weight:700;letter-spacing:.03em;margin-bottom:8px;display:block;}
.post-body h3{font-size:18px;margin-bottom:10px;}
.post-body p{font-size:14px;margin-bottom:14px;}
.post-link{font-size:13.5px;font-weight:700;color:var(--navy);display:inline-flex;align-items:center;gap:6px;}
.post-link svg{width:14px;height:14px;color:var(--gold);}

/* CTA band */
.cta-band{background:var(--navy);border-radius:var(--radius-l);padding:56px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.cta-band h2{color:#fff;font-size:28px;max-width:460px;margin:0 0 8px;}
.cta-band p{color:#B9C3D9;margin:0;max-width:420px;}
.cta-band .btn-gold{flex-shrink:0;}

/* ============ Footer ============ */
footer{background:var(--navy);color:#B9C3D9;padding-top:64px;}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;padding-bottom:48px;border-bottom:1px solid var(--line-dark);}
.foot-brand p{color:#96A2BE;font-size:14px;max-width:280px;}
.foot-social{display:flex;gap:12px;margin-top:18px;}
.foot-social a{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-dark);display:flex;align-items:center;justify-content:center;transition:.15s;}
.foot-social a:hover{background:var(--gold);border-color:var(--gold);}
.foot-social svg{width:15px;height:15px;}
footer h4{color:#fff;font-size:14.5px;margin-bottom:18px;letter-spacing:.02em;}
footer .foot-col li{margin-bottom:11px;}
footer .foot-col a{font-size:13.8px;color:#B9C3D9;}
footer .foot-col a:hover{color:var(--gold);}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;padding:22px 0;font-size:12.5px;color:#7C88A6;flex-wrap:wrap;gap:12px;}
.foot-bottom a{color:#7C88A6;}
.foot-bottom a:hover{color:var(--gold);}
.foot-legal{display:flex;gap:22px;}

/* ============ Breadcrumb / page header ============ */
.page-head{background:var(--navy);padding:54px 0 40px;color:#fff;position:relative;overflow:hidden;}
.page-head::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(214,154,68,.18),transparent 70%);}
.page-head h1{color:#fff;font-size:clamp(28px,3.4vw,38px);margin-bottom:8px;}
.breadcrumb{font-size:13px;color:#96A2BE;}
.breadcrumb a{color:#B9C3D9;}
.breadcrumb .sep{margin:0 8px;color:#5C6889;}
.breadcrumb .cur{color:var(--gold);}

/* ============ Shop layout ============ */
.shop-layout{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:start;}
.shop-side{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-l);padding:26px;position:sticky;top:104px;}
.shop-side h4{font-size:13.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--navy);margin-bottom:16px;}
.shop-cat{margin-bottom:28px;}
.shop-cat li a{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);padding:8px 0;border-bottom:1px solid var(--line);}
.shop-cat li a:hover,.shop-cat li a.active{color:var(--gold-dark);font-weight:600;}
.shop-cat li a span{color:#B7BFCB;font-size:12.5px;}
.price-range{display:flex;flex-direction:column;gap:12px;}
.range-row{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);}
input[type=range]{width:100%;accent-color:var(--gold);}
.shop-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;flex-wrap:wrap;gap:14px;}
.shop-toolbar p{margin:0;font-size:14px;}
.select-sort{border:1px solid var(--line);border-radius:6px;padding:10px 14px;font-size:13.5px;font-family:var(--font-body);color:var(--navy);background:var(--white);}
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.prod-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-m);overflow:hidden;transition:.2s;position:relative;}
.prod-card:hover{box-shadow:var(--shadow-m);transform:translateY(-3px);border-color:var(--gold);}
.prod-thumb{height:190px;display:flex;align-items:center;justify-content:center;background:var(--cream);overflow:hidden;}
.prod-thumb img{width:100%;height:100%;object-fit:cover;}
.prod-badge{position:absolute;top:12px;left:12px;background:var(--navy);color:#fff;font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase;}
.prod-body{padding:18px 18px 20px;}
.prod-body h4{font-family:var(--font-body);font-weight:600;font-size:14.5px;color:var(--ink);margin-bottom:6px;min-height:38px;}
.prod-price{font-weight:700;color:var(--gold-dark);font-size:16px;margin-bottom:12px;display:block;}
.prod-old{color:#B7BFCB;text-decoration:line-through;font-weight:500;font-size:13px;margin-right:6px;}
.pagination{display:flex;justify-content:center;gap:8px;margin-top:44px;}
.pagination a{width:38px;height:38px;border-radius:6px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:13.5px;font-weight:600;color:var(--navy);}
.pagination a.active,.pagination a:hover{background:var(--navy);color:#fff;border-color:var(--navy);}

/* ============ Product detail ============ */
.pd-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.pd-gallery-main{border-radius:var(--radius-l);overflow:hidden;height:420px;background:var(--white);border:1px solid var(--line);margin-bottom:14px;}
.pd-gallery-main img{width:100%;height:100%;object-fit:cover;}
.pd-thumbs{display:flex;gap:12px;}
.pd-thumbs img{width:76px;height:76px;object-fit:cover;border-radius:8px;border:1.5px solid var(--line);cursor:pointer;}
.pd-thumbs img.active{border-color:var(--gold);}
.pd-info .stars{color:var(--gold);font-size:14px;display:flex;gap:4px;align-items:center;margin-bottom:14px;}
.pd-info .stars span{color:var(--muted);font-size:13px;margin-left:6px;}
.pd-title{font-size:28px;margin-bottom:10px;}
.pd-price{font-size:26px;font-weight:700;color:var(--gold-dark);font-family:var(--font-display);margin-bottom:18px;}
.pd-desc{font-size:14.5px;margin-bottom:24px;}
.pd-meta{border-top:1px solid var(--line);padding-top:18px;margin-bottom:24px;}
.pd-meta div{display:flex;gap:10px;font-size:13.5px;margin-bottom:8px;}
.pd-meta b{color:var(--navy);min-width:110px;font-weight:600;}
.pd-meta span{color:var(--muted);}
.qty-row{display:flex;align-items:center;gap:16px;margin-bottom:20px;}
.qty-box{display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.qty-box button{width:38px;height:44px;background:var(--cream);border:none;font-size:16px;cursor:pointer;color:var(--navy);}
.qty-box input{width:44px;height:44px;border:none;text-align:center;font-size:14px;font-family:var(--font-body);}
.pd-trust{display:flex;gap:24px;margin-top:26px;flex-wrap:wrap;}
.pd-trust div{display:flex;align-items:center;gap:9px;font-size:12.8px;color:var(--muted);}
.pd-trust svg{width:18px;height:18px;color:var(--gold-dark);}

/* ============ Contact / forms ============ */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;}
.contact-info-card{background:var(--navy);border-radius:var(--radius-l);padding:38px;color:#fff;}
.contact-info-card h3{color:#fff;font-size:20px;margin-bottom:22px;}
.cinfo-row{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line-dark);}
.cinfo-row:last-of-type{border-bottom:none;}
.cinfo-row .ic{width:38px;height:38px;border-radius:50%;background:rgba(214,154,68,.15);color:var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cinfo-row .ic svg{width:17px;height:17px;}
.cinfo-row b{display:block;font-size:13.5px;color:#fff;margin-bottom:2px;}
.cinfo-row span{font-size:13.5px;color:#96A2BE;}
.map-box{margin-top:22px;border-radius:var(--radius-m);overflow:hidden;height:160px;background:linear-gradient(135deg,#233458,#152140);display:flex;align-items:center;justify-content:center;color:var(--gold);}
.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-l);padding:38px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.field label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:7px;}
.field input,.field textarea,.field select{
  width:100%;border:1px solid var(--line);border-radius:6px;padding:13px 15px;font-family:var(--font-body);
  font-size:14px;color:var(--ink);background:var(--cream);transition:.15s;
}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--gold);background:var(--white);}
.field textarea{resize:vertical;min-height:120px;}

/* ============ About page ============ */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center;}
.about-media{position:relative;}
.about-media img{border-radius:var(--radius-l);height:460px;object-fit:cover;width:100%;}
.about-media .float-card{position:absolute;bottom:-24px;right:-24px;background:var(--white);border-radius:var(--radius-m);box-shadow:var(--shadow-m);padding:20px 24px;text-align:center;}
.about-media .float-card b{display:block;font-family:var(--font-display);font-size:26px;color:var(--gold-dark);}
.about-media .float-card span{font-size:12px;color:var(--muted);}
.value-row{display:flex;gap:14px;margin-bottom:18px;}
.value-row .ic{width:42px;height:42px;border-radius:10px;background:var(--cream);color:var(--gold-dark);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.value-row .ic svg{width:20px;height:20px;}
.value-row h4{font-size:15.5px;margin-bottom:4px;color:var(--navy);}
.value-row p{font-size:13.8px;margin:0;}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.team-card{text-align:center;}
.team-card img{border-radius:var(--radius-l);height:220px;object-fit:cover;margin-bottom:16px;width:100%;}
.team-card h4{font-size:15.5px;margin-bottom:2px;}
.team-card span{font-size:12.5px;color:var(--gold-dark);font-weight:600;}

/* ============ Timeline (Meist / history) ============ */
.timeline{position:relative;padding-left:34px;}
.timeline::before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:var(--line);}
.tl-item{position:relative;padding-bottom:36px;}
.tl-item::before{content:"";position:absolute;left:-34px;top:2px;width:14px;height:14px;border-radius:50%;background:var(--gold);border:3px solid var(--white);box-shadow:0 0 0 2px var(--gold);}
.tl-item b{color:var(--gold-dark);font-size:13px;letter-spacing:.04em;display:block;margin-bottom:4px;}
.tl-item h4{font-size:16.5px;margin-bottom:6px;}
.tl-item p{font-size:14px;margin:0;}

/* ============ Blog single ============ */
.post-hero{height:380px;border-radius:var(--radius-l);overflow:hidden;margin-bottom:36px;}
.post-hero img{width:100%;height:100%;object-fit:cover;}
.post-content{max-width:760px;margin:0 auto;font-size:16px;color:var(--ink);}
.post-content p{color:var(--ink);font-size:16px;}
.post-content h2{margin-top:1.5em;font-size:24px;}
.post-content blockquote{border-left:3px solid var(--gold);padding-left:20px;font-family:var(--font-display);font-size:19px;color:var(--navy);margin:1.6em 0;}
.author-box{display:flex;gap:16px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:36px 0;max-width:760px;margin-left:auto;margin-right:auto;}
.author-box img{width:56px;height:56px;border-radius:50%;object-fit:cover;}
.author-box b{display:block;font-size:14.5px;color:var(--navy);}
.author-box span{font-size:13px;}

/* ============ 404 & cart & misc ============ */
.empty-state{text-align:center;padding:80px 24px;}
.empty-state .ic{width:88px;height:88px;border-radius:50%;background:var(--cream);color:var(--gold-dark);display:flex;align-items:center;justify-content:center;margin:0 auto 24px;}
.empty-state .ic svg{width:40px;height:40px;}
.cart-table{width:100%;border-collapse:collapse;}
.cart-table th{text-align:left;font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:0 0 14px;border-bottom:1px solid var(--line);}
.cart-table td{padding:18px 0;border-bottom:1px solid var(--line);font-size:14.5px;vertical-align:middle;}
.cart-prod{display:flex;gap:16px;align-items:center;}
.cart-prod img{width:64px;height:64px;border-radius:8px;object-fit:cover;}
.cart-prod b{display:block;font-size:14.5px;color:var(--navy);}
.cart-summary{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-l);padding:30px;}
.sum-row{display:flex;justify-content:space-between;font-size:14.5px;color:var(--muted);padding:10px 0;}
.sum-row.total{border-top:1px solid var(--line);margin-top:8px;padding-top:16px;font-size:17px;font-weight:700;color:var(--navy);}

/* ============ Responsive ============ */
@media(max-width:1080px){
  .hero-grid,.about-grid,.contact-grid,.pd-grid{grid-template-columns:1fr;}
  .pillars,.svc-grid,.prod-grid,.team-grid{grid-template-columns:repeat(2,1fr);}
  .stats .container{grid-template-columns:repeat(2,1fr);}
  .shop-layout{grid-template-columns:1fr;}
  .shop-side{position:static;}
  .post-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:760px){
  .nav-links{display:none;}
  .burger{display:flex;}
  .topbar-left a:nth-child(3){display:none;}
  .pillars,.svc-grid,.prod-grid,.team-grid,.post-grid,.foot-grid{grid-template-columns:1fr;}
  .stats .container{grid-template-columns:1fr 1fr;}
  .stat{border-right:none;border-bottom:1px solid var(--line-dark);}
  .hero-collage{grid-template-columns:1fr;}
  .hero-collage .c1{height:260px;}
  .cta-band{flex-direction:column;text-align:center;}
  .form-row{grid-template-columns:1fr;}
  .section{padding:56px 0;}
}

