/* Inno Goodies — brand design system */
:root{
  --ink:#16233A; --teal:#17A398; --teal-d:#0f8479; --coral:#E8734A;
  --cream:#FBFAF7; --text:#1D2733; --muted:#6B7683; --line:#E9E4DB; --card:#ffffff;
}
body{ background:var(--cream); color:var(--text); font-family:'Inter',sans-serif; }
h1,h2,h3,h4,.ig-serif{ font-family:'Fraunces',serif; color:var(--ink); letter-spacing:-.01em; }
a{ color:var(--teal-d); }
.ig-wrap{ max-width:1220px; margin:0 auto; padding:0 24px; }

/* header polish */
.site-title, .ast-site-title-wrap .site-title, .site-description{ display:none!important; }
.ast-site-identity{ display:flex; align-items:center; }
.custom-logo-link img, .custom-logo{ max-width:190px!important; height:auto!important; }
.ast-primary-header-bar{ border-bottom:1px solid var(--line); }
.main-header-menu .menu-link{ font-weight:500; font-size:15px; letter-spacing:.2px; }
.ast-site-header-cart .ast-cart-menu-wrap{ color:var(--ink); }

/* generic section */
.ig-section{ padding:72px 0; }
.ig-section.alt{ background:#fff; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.ig-eyebrow{ font-family:'Inter',sans-serif; text-transform:uppercase; letter-spacing:3.5px; font-size:12.5px; font-weight:600; color:var(--teal-d); margin:0 0 10px; }
.ig-h2{ font-size:38px; line-height:1.1; margin:0 0 14px; }
.ig-lead{ color:var(--muted); font-size:17px; max-width:620px; margin:0 auto; }
.ig-center{ text-align:center; }

/* buttons */
.ig-btn{ display:inline-block; background:var(--ink); color:#fff!important; font-weight:600; font-size:15px;
  padding:14px 28px; border-radius:8px; text-decoration:none!important; transition:.18s; border:0; letter-spacing:.2px; }
.ig-btn:hover,.ig-cat,.ig-pcard{ text-decoration:none!important; }
.ig-pcard .nm,.ig-cat .lbl b{ text-decoration:none!important; }
.ig-btn:hover{ background:var(--teal); transform:translateY(-1px); }
.ig-btn.ghost{ background:transparent; color:var(--ink)!important; border:1.5px solid var(--ink); }
.ig-btn.ghost:hover{ background:var(--ink); color:#fff!important; }
.ig-btn.light{ background:#fff; color:var(--ink)!important; }

/* HERO */
.ig-hero{ position:relative; background:var(--ink); overflow:hidden; }
.ig-hero-inner{ display:grid; grid-template-columns:1.05fr 1.35fr; align-items:stretch; min-height:520px; }
.ig-hero-copy{ padding:76px 56px; display:flex; flex-direction:column; justify-content:center; background:var(--cream); }
.ig-hero-copy h1{ font-size:56px; line-height:1.03; margin:8px 0 18px; }
.ig-hero-copy .grad{ color:var(--teal-d); }
.ig-hero-copy p{ color:var(--muted); font-size:18px; line-height:1.55; max-width:440px; margin:0 0 28px; }
.ig-hero-cta{ display:flex; gap:14px; flex-wrap:wrap; }
.ig-hero-media{ background-size:cover; background-position:center; }

/* value props */
.ig-vp{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.ig-vp .vp{ text-align:center; padding:6px 8px; }
.ig-vp .vp .ic{ width:44px;height:44px; margin:0 auto 12px; color:var(--teal-d); }
.ig-vp .vp h4{ font-size:16px; margin:0 0 6px; font-family:'Inter',sans-serif; font-weight:700; color:var(--ink); }
.ig-vp .vp p{ margin:0; font-size:14px; color:var(--muted); line-height:1.5; }

/* category grid */
.ig-cats{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:38px; }
.ig-cat{ position:relative; border-radius:14px; overflow:hidden; aspect-ratio:4/3; display:block; text-decoration:none;
  background:#fff; border:1px solid var(--line); }
.ig-cat img{ width:100%; height:100%; object-fit:cover; transition:.35s; display:block; }
.ig-cat:hover img{ transform:scale(1.05); }
.ig-cat .lbl{ position:absolute; left:0; right:0; bottom:0; padding:18px 20px;
  background:linear-gradient(to top, rgba(22,35,58,.82), rgba(22,35,58,0)); }
.ig-cat .lbl b{ color:#fff; font-family:'Fraunces',serif; font-size:20px; font-weight:600; display:block; }
.ig-cat .lbl span{ color:#cfe6e2; font-size:13px; }

/* featured products grid */
.ig-prod{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:38px; }
.ig-pcard{ background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; text-decoration:none;
  display:flex; flex-direction:column; transition:.2s; }
.ig-pcard:hover{ box-shadow:0 12px 30px rgba(22,35,58,.09); transform:translateY(-3px); }
.ig-pcard .thumb{ aspect-ratio:1/1; background:#f4f2ee; }
.ig-pcard .thumb img{ width:100%;height:100%;object-fit:cover; display:block; }
.ig-pcard .meta{ padding:16px 16px 18px; }
.ig-pcard .cat{ font-size:11.5px; text-transform:uppercase; letter-spacing:2px; color:var(--teal-d); font-weight:600; }
.ig-pcard .nm{ font-family:'Fraunces',serif; color:var(--ink); font-size:17px; margin:5px 0 8px; line-height:1.2; }
.ig-pcard .pr{ font-weight:700; color:var(--ink); font-size:16px; }

/* editorial split */
.ig-split{ display:grid; grid-template-columns:1fr 1fr; gap:0; align-items:center; background:#fff; border:1px solid var(--line); border-radius:16px; overflow:hidden; }
.ig-split .txt{ padding:56px 52px; }
.ig-split .img{ min-height:380px; background-size:cover; background-position:center; }

/* CTA band */
.ig-band{ background:var(--ink); border-radius:18px; padding:56px; text-align:center; }
.ig-band h2{ color:#fff; font-size:34px; margin:0 0 12px; }
.ig-band p{ color:#b9c4d6; margin:0 auto 26px; max-width:520px; font-size:16.5px; }

/* content pages */
.ig-doc{ max-width:820px; margin:0 auto; padding:56px 24px; }
.ig-doc h1{ font-size:42px; margin:0 0 8px; }
.ig-doc .sub{ color:var(--muted); margin:0 0 34px; font-size:16px; }
.ig-doc h2{ font-size:24px; margin:34px 0 10px; }
.ig-doc p,.ig-doc li{ color:#3a4655; line-height:1.7; font-size:16px; }
.ig-doc a{ color:var(--teal-d); }
.ig-contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:22px; margin:24px 0; }
.ig-contact-grid .cbox{ background:#fff; border:1px solid var(--line); border-radius:12px; padding:22px 24px; }
.ig-contact-grid .cbox b{ color:var(--ink); display:block; margin-bottom:6px; font-size:15px; }
.ig-contact-grid .cbox span{ color:var(--muted); font-size:15px; }

@media (max-width:880px){
  .ig-hero-inner{ grid-template-columns:1fr; }
  .ig-hero-media{ min-height:280px; order:-1; }
  .ig-hero-copy{ padding:48px 28px; }
  .ig-hero-copy h1{ font-size:40px; }
  .ig-vp{ grid-template-columns:repeat(2,1fr); gap:28px; }
  .ig-cats{ grid-template-columns:repeat(2,1fr); }
  .ig-prod{ grid-template-columns:repeat(2,1fr); }
  .ig-split{ grid-template-columns:1fr; }
  .ig-split .img{ min-height:240px; }
  .ig-h2,.ig-hero-copy h1{ font-size:34px; }
  .ig-contact-grid{ grid-template-columns:1fr; }
}
