/* =========================================================
   Padmavati Agro Industries — Site Stylesheet
   Palette + type derived from company brochure
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&family=Cormorant+Garamond:wght@500;600;700&family=Montserrat:wght@400;500;600;700;800&display=swap');

:root{
  --forest: #0d3a1d;
  --forest-dark: #082611;
  --rice-green: #2c6015;
  --ivory: #fdfbee;
  --peach: #ffecce;
  --gold: #b78f5b;
  --gold-light: #d8b781;
  --logo-gold: #9a7c40;
  --ink: #14210f;
  --maroon: #6b1f24;
  --max: 1180px;
  --radius: 14px;
  --shadow: 0 10px 30px rgba(13,58,29,.12);
  --serif: 'Playfair Display', 'Cormorant Garamond', serif;
  --sans: 'Montserrat', sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  background:var(--ivory);
  line-height:1.6;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--serif);margin:0 0 .5em;color:var(--forest);line-height:1.15}
p{margin:0 0 1em}
.container{max-width:var(--max);margin:0 auto;padding:0 24px}
.section{padding:64px 0}
.section.tight{padding:40px 0}
.bg-ivory{background:var(--ivory)}
.bg-peach{background:var(--peach)}
.bg-forest{background:var(--forest);color:#f2ead9}
.bg-forest h1,.bg-forest h2,.bg-forest h3{color:#fff}
.center{text-align:center}

/* Eyebrow / kicker */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--sans);font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;font-size:.78rem;color:var(--gold);
  margin-bottom:14px;
}
.eyebrow::before{content:'';width:28px;height:2px;background:var(--gold)}

.lede{font-size:1.1rem;color:#3a4a34;max-width:64ch}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 26px;border-radius:999px;font-weight:700;font-size:.92rem;
  border:2px solid transparent;cursor:pointer;transition:.2s ease;
  font-family:var(--sans);letter-spacing:.02em;
}
.btn-primary{background:var(--gold);color:#fff}
.btn-primary:hover{background:var(--forest)}
.btn-outline{border-color:var(--forest);color:var(--forest);background:transparent}
.btn-outline:hover{background:var(--forest);color:#fff}
.btn-ghost-light{border-color:#fff;color:#fff}
.btn-ghost-light:hover{background:#fff;color:var(--forest)}
.btn-sm{padding:9px 18px;font-size:.8rem}

/* ============ HEADER / NAV (glass) ============ */
.site-header{
  position:sticky;top:0;z-index:500;
  background:transparent;
  padding:16px 0;
  transition:padding .3s ease;
}
.nav-wrap{
  max-width:var(--max);margin:0 auto;padding:10px 14px 10px 18px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  background:rgba(9,38,19,.62);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  backdrop-filter:blur(18px) saturate(160%);
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  box-shadow:0 10px 34px rgba(8,30,15,.22);
  background:rgba(6,26,13,.82);
  box-shadow:0 12px 30px rgba(8,30,15,.32);
  transition:background .3s ease, box-shadow .3s ease, border-radius .3s ease;
}
/* .site-header.scrolled .nav-wrap{
  background:rgba(6,26,13,.82);
  box-shadow:0 12px 30px rgba(8,30,15,.32);
} */
.brand-lockup{display:flex;align-items:center;gap:10px}
.brand-lockup img{height:42px;width:auto;border-radius:50%;border:1.5px solid rgba(255,255,255,.5)}
.brand-lockup .word{font-family:var(--sans);font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--logo-gold);font-size:1.08rem;line-height:1.1}
.brand-lockup .word small{display:flex;align-items:center;gap:8px;font-family:var(--serif);font-weight:500;font-style:normal;text-transform:none;letter-spacing:.1em;font-size:.68rem;color:var(--logo-gold);margin-top:4px}
.brand-lockup .word small::before{content:'';width:16px;height:1px;background:var(--logo-gold);flex:none}

.main-nav{display:flex;align-items:center;gap:24px}
.main-nav a{font-size:.85rem;font-weight:600;color:#f2ead9;position:relative;padding:6px 0}
/*.main-nav > a::after,.main-nav > .has-dropdown > a::after{*/
/*  content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--gold-light);*/
/*  transition:width .25s ease;*/
/*}*/
/*.main-nav > a:hover::after,.main-nav > .has-dropdown > a:hover::after{width:100%}*/
.main-nav a:hover{color:var(--gold-light)}
.has-dropdown{position:relative;padding-bottom:14px;margin-bottom:-14px}
.dropdown{
  position:absolute;top:100%;left:0;background:#fff;min-width:220px;
  box-shadow:var(--shadow);border-radius:10px;padding:8px;margin-top:10px;
  opacity:0;visibility:hidden;transform:translateY(6px);transition:.18s ease;
}
.has-dropdown:hover .dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.dropdown a{display:block;padding:9px 12px;border-radius:6px;font-size:.85rem;color:var(--ink)}
.dropdown a:hover{background:var(--peach);color:var(--forest)}
.nav-cta{display:flex;align-items:center;gap:12px}
.nav-cta .btn-primary{background:var(--gold);color:#1c130a}
.nav-cta-mobile{display:none !important}

.nav-toggle{
  display:none;background:none;border:none;cursor:pointer;padding:8px;
  border-radius:8px;transition:background .2s ease;-webkit-tap-highlight-color:transparent;
  position:relative;z-index:1002;
}
.nav-toggle:hover,.nav-toggle:focus-visible{background:rgba(255,255,255,.14)}
.nav-toggle span{
  display:block;width:22px;height:2px;background:#f2ead9;margin:5px 0;border-radius:2px;
  transition:transform .25s ease, opacity .2s ease;
}
.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.active span:nth-child(2){opacity:0}
.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:920px){
  body.nav-open{overflow:hidden}
  .main-nav{
    position:fixed;inset:0;width:100vw;height:100vh;z-index:1001;
    background:linear-gradient(160deg,var(--forest-dark),var(--forest) 70%);
    -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
    flex-direction:column;align-items:center;justify-content:center;
    padding:90px 28px 40px;gap:4px;
    opacity:0;visibility:hidden;transform:scale(1.04);
    transition:opacity .35s ease, transform .35s ease, visibility 0s linear .35s;
    overflow-y:auto;
  }
  .main-nav.open{opacity:1;visibility:visible;transform:scale(1);transition:opacity .35s ease, transform .35s ease}
  .main-nav a{color:#f2ead9;width:100%;max-width:340px;padding:14px 4px;border-bottom:1px solid rgba(255,255,255,.12);
    text-align:center;font-size:1.05rem;}
  .main-nav > a,.main-nav > .has-dropdown{width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center}
  .dropdown{position:static;background:transparent;box-shadow:none;opacity:1;visibility:visible;transform:none;display:none;padding-left:0;margin-top:0;width:100%}
  .dropdown a{text-align:center;color:#dcd3b8;border-bottom:none;font-size:.92rem;padding:10px 4px}
  .has-dropdown.open .dropdown{display:block}
  .nav-cta{display:none}
  .main-nav a.nav-cta-mobile{
    display:inline-flex !important;align-items:center;justify-content:center;
    background:var(--gold);color:#1c130a;font-weight:700;
    border-radius:999px;padding:13px 30px;margin-top:16px;
    border-bottom:none;width:auto;max-width:none;
  }
  .main-nav a.nav-cta-mobile:hover{background:var(--gold-light);color:#1c130a}
  .nav-toggle{display:block}
  .nav-toggle.active span{background:#f2ead9}
  .nav-toggle.active:hover{background:rgba(255,255,255,.16)}
}

/* ============ HERO ============ */
/* All three layers (image, tint, text) sit in the same grid cell. Grid's
   default track sizing makes the row as tall as the tallest layer — so if
   the text/pillars ever need more room than the image's natural height
   (small screens, long content), the whole hero grows to fit them instead
   of the text spilling out past the image. The tint always fills that full
   height too, so there's never a "naked" gap below the picture. */
.hero{display:grid}
.hero-banner{grid-area:1/1;width:100%;align-self:center;overflow:hidden;background:var(--forest-dark)}
.hero-banner img{width:100%;height:auto;display:block}
.hero-tint{grid-area:1/1;background:rgba(6,20,9,.56);pointer-events:none}
.hero-main{
  grid-area:1/1;z-index:2;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:24px 16px;
}
.hero-badge{
  display:inline-block;font-family:var(--serif);font-weight:700;color:#fff;
  border:2px solid var(--gold-light);border-radius:999px;padding:7px 20px;font-size:.82rem;
  letter-spacing:.08em;margin-bottom:16px;background:rgba(0,0,0,.18);
}
.hero-main h1{font-size:clamp(2rem,4vw,2.75rem);margin-bottom:.25em;color:#fff;line-height:1.15}
.hero-main .sub{font-size:1.05rem;color:#f2ead9;font-weight:600;margin-bottom:18px}
.pillars{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;margin-top:24px}
.pillar{display:flex;flex-direction:column;align-items:center;gap:7px;width:104px}
.pillar .ic{
  width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.3);
  display:flex;align-items:center;justify-content:center;font-size:1.25rem;
}
.pillar span{font-size:.75rem;font-weight:700;text-align:center;color:#fff;letter-spacing:.02em}
.hero-ctas{display:flex;gap:14px;justify-content:center;margin-top:22px;flex-wrap:wrap}
@media(max-width:700px){
  .hero-badge{margin-bottom:12px;padding:6px 16px;font-size:.72rem}
  .hero-main h1{margin-bottom:.2em}
  .hero-main .sub{margin-bottom:14px;font-size:.95rem}
  .hero-ctas{margin-top:14px}
  .pillars{gap:8px;margin-top:16px;flex-wrap:nowrap;width:100%}
  .pillar{width:auto;flex:1 1 0;min-width:0}
  .pillar .ic{width:36px;height:36px;font-size:1rem;margin:0 auto}
  .pillar span{font-size:.62rem;line-height:1.15}
}
@media(max-width:360px){
  .hero-main{padding:16px 10px}
  .hero-badge{margin-bottom:8px}
  .hero-main .sub{margin-bottom:10px}
  .hero-ctas{margin-top:10px}
  .pillars{gap:5px;margin-top:12px}
  .pillar .ic{width:30px;height:30px;font-size:.9rem}
  .pillar span{font-size:.55rem}
}

/* ============ STATS STRIP ============ */
.stats-strip{background:var(--forest);padding:34px 0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat{text-align:center;color:#fff}
.stat .num{font-family:var(--serif);font-size:2.1rem;font-weight:700;color:var(--gold-light)}
.stat .label{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:#dcd3b8;margin-top:2px}
@media(max-width:700px){.stats-grid{grid-template-columns:repeat(2,1fr)}}

/* ============ CARD GRIDS ============ */
.grid{display:grid;gap:20px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:920px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr);gap:12px}}
@media(max-width:420px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}

/* Product grid specifically: smaller cards, more per row on larger screens */
#product-grid.grid-3{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){#product-grid.grid-3{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){#product-grid.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:420px){#product-grid.grid-3{grid-template-columns:repeat(2,1fr);gap:10px}}

.card{
  background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);
  border:1px solid rgba(13,58,29,.06);transition:.2s ease;
  display:flex;flex-direction:column;height:100%;
}
.card:hover{transform:translateY(-4px)}
.card img{
  width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;
  display:block;background:#f2ede0;image-rendering:auto;flex-shrink:0;
}
.card .body{padding:18px 20px 22px}
.card h3{font-size:1.05rem;margin-bottom:6px}
.card p{font-size:.88rem;color:#4b5a45;margin-bottom:14px}

/* Product cards: compact, evenly spaced, Enquire button always sits in the
   same place at the bottom of every card no matter how long the text is */
#product-grid .card{display:flex;flex-direction:column;height:100%;text-align:left}
#product-grid .card .body{
  padding:14px 16px 16px;display:flex;flex-direction:column;flex:1;
}
#product-grid .card .tag{margin-bottom:10px}
#product-grid .card h3{font-size:.93rem;margin-bottom:6px;line-height:1.3}
#product-grid .card p{font-size:.8rem;line-height:1.55;margin-bottom:12px}
#product-grid .card .variant-row{margin-bottom:14px}
#product-grid .card .enquire-btn{
  margin-top:auto;padding:9px 16px;font-size:.76rem;
}
@media(max-width:600px){
  #product-grid .card .body{padding:12px 14px 14px}
  #product-grid .card h3{font-size:.84rem}
  #product-grid .card p{font-size:.74rem;margin-bottom:10px}
  #product-grid .card .enquire-btn{padding:8px 14px;font-size:.72rem}
}

/* Section image block (full brochure crops) */
.figure{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.figure img{width:100%}
.two-col{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
@media(max-width:860px){.two-col{grid-template-columns:1fr}}
.two-col.reverse{grid-template-columns:1fr 1.1fr}
.two-col.reverse .figure{order:2}
@media(max-width:860px){.two-col.reverse .figure{order:0}}

/* Plant photo now stays visible on every device — no more hide/duplicate switch. */
.figure-mobile-wrap{display:none}

/* ============ TIMELINE ============ */
.timeline{position:relative;margin-top:40px;padding-left:32px;border-left:3px solid var(--gold)}
.tl-item{position:relative;padding-bottom:36px}
.tl-item:last-child{padding-bottom:0}
.tl-item::before{
  content:'';position:absolute;left:-40px;top:2px;width:16px;height:16px;
  border-radius:50%;background:var(--gold);border:3px solid var(--ivory);box-shadow:0 0 0 2px var(--gold);
}
.tl-year{font-family:var(--serif);font-weight:700;color:var(--forest);font-size:1.3rem}
.tl-item p{margin-top:4px;color:#3a4a34}

/* ============ LEADERSHIP ============ */
.leader-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:26px 30px}
.leader-card{text-align:center;width:230px}
.leader-card .ph{
  display:block;width:130px;height:130px;border-radius:50%;margin:0 auto 14px;
  object-fit:cover;object-position:50% 15%;border:4px solid var(--peach);box-shadow:var(--shadow);
}
.leader-card h4{font-size:.95rem;margin-bottom:2px;color:var(--forest)}
.leader-card .role{font-size:.76rem;color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:600px){
  .leader-card{width:150px}
  .leader-card .ph{width:110px;height:110px}
}

/* ============ TAG / BADGE ============ */
.tag{
  display:inline-block;background:var(--forest);color:#fff;font-size:.72rem;font-weight:700;
  padding:4px 12px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase;
}
.tag.gold{background:var(--gold)}
.tag.size-tag{background:transparent;color:var(--forest);border:1.5px solid var(--forest);margin-left:6px}

/* ============ PRODUCT FILTER + LIST ============ */
.filter-bar{
  display:flex;flex-wrap:wrap;gap:14px;background:#fff;border-radius:var(--radius);
  padding:20px;box-shadow:var(--shadow);margin-bottom:34px;align-items:flex-end;
}
.filter-field{display:flex;flex-direction:column;gap:6px;min-width:170px}
.filter-field label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--forest)}
.filter-field select,.filter-field input{
  padding:10px 12px;border-radius:8px;border:1.5px solid #dcd6bf;font-family:var(--sans);font-size:.88rem;background:var(--ivory);
}
.filter-reset{background:none;border:none;color:var(--maroon);font-weight:700;font-size:.8rem;cursor:pointer;padding:10px 4px}
.product-count{font-size:.85rem;color:#5c6a56;margin-bottom:18px}

.product-card .variant-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.variant-pill{
  font-size:.72rem;font-weight:600;background:var(--peach);color:var(--forest);padding:5px 12px;
  border-radius:999px;border:1.5px solid transparent;cursor:pointer;font-family:var(--sans);
  transition:.15s ease;
}
.variant-pill:hover{background:var(--gold-light);color:#1c130a}
.variant-pill.active{background:var(--forest);color:#fff;border-color:var(--forest)}
.product-card .pc-active-img{transition:opacity .15s ease}
.enquire-btn{width:100%}
.empty-state{
  text-align:center;padding:60px 20px;color:#5c6a56;background:#fff;border-radius:var(--radius);
}

/* ============ CERT GRID ============ */
.cert-figure{margin-bottom:44px}
.cert-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}
@media(max-width:700px){.cert-list{grid-template-columns:1fr 1fr}}
.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:8px}
@media(max-width:860px){.cert-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.cert-grid{grid-template-columns:1fr}}
.cert-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(13,58,29,.06);transition:.2s ease}
.cert-card:hover{transform:translateY(-4px)}
.cert-card .cert-img-wrap{background:#f4f1e2;padding:16px;display:flex;align-items:center;justify-content:center;min-height:220px}
.cert-card img{width:100%;height:auto;display:block;border-radius:5px;box-shadow:0 3px 12px rgba(0,0,0,.1)}
.cert-card .body{padding:16px 18px 20px;text-align:center}
.cert-card h3{font-size:.95rem;margin-bottom:4px;color:var(--forest)}
.cert-card p{font-size:.78rem;color:#6f7a63;margin:0}
.cert-chip{
  background:#fff;border:1.5px solid var(--peach);border-radius:12px;padding:16px;
  text-align:center;font-weight:700;color:var(--forest);font-size:.86rem;
}

/* ============ CTA BAND ============ */
.cta-band{
  background:linear-gradient(135deg,var(--forest),var(--forest-dark));
  color:#fff;border-radius:24px;padding:52px 40px;text-align:center;
}
.cta-band h2{color:#fff}
.cta-band p{color:#d9d0b3;max-width:56ch;margin:0 auto 26px}

/* ============ FOOTER ============ */
.site-footer{background:var(--forest);color:#e8e2cc;padding:56px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr .85fr 1.15fr;gap:30px;margin-bottom:40px}
@media(max-width:1000px){.footer-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:640px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.footer-grid{grid-template-columns:1fr}}
.site-footer h4{color:#fff;font-family:var(--sans);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}
.site-footer .fbrand{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.site-footer .fbrand img{height:46px;border-radius:50%}
.site-footer .fbrand .word{font-family:var(--sans);font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--logo-gold);font-size:1.1rem;line-height:1.1}
.site-footer .fbrand .word small{display:flex;align-items:center;gap:8px;font-family:var(--serif);font-weight:500;font-style:normal;text-transform:none;letter-spacing:.1em;font-size:.7rem;color:var(--logo-gold);margin-top:4px}
.site-footer .fbrand .word small::before{content:'';width:16px;height:1px;background:var(--logo-gold);flex:none}
.site-footer p{color:#c7c0a4;font-size:.88rem}
.site-footer a{color:#c7c0a4;font-size:.88rem;display:block;margin-bottom:9px}
.site-footer a:hover{color:var(--gold-light)}
.foot-contact li{list-style:none;font-size:.86rem;color:#c7c0a4;margin-bottom:13px;display:flex;gap:10px;align-items:flex-start;line-height:1.4}
.foot-contact li .ic{flex-shrink:0;color:var(--gold-light);margin-top:2px;display:inline-flex}
.social-row{display:flex;gap:12px;margin-top:14px}
.social-row a{
  width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:center;font-size:.9rem;margin:0;
}
.map-embed{border-radius:12px;overflow:hidden;margin-top:14px;filter:grayscale(.2) sepia(.15)}
.foot-bottom{
  border-top:1px solid rgba(255,255,255,.12);padding-top:20px;text-align:center;
  font-size:.78rem;color:#9fa091;
}

/* ============ FLOATING BUTTONS ============ */
.float-stack{position:fixed;right:20px;bottom:20px;z-index:900;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.fab-whatsapp{
  width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;
  justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.25);font-size:1.6rem;color:#fff;
}
.fab-whatsapp:hover{transform:scale(1.06)}
.fab-brochure{
  width:58px;height:58px;border-radius:50%;background:var(--gold);color:#fff;border:none;
  cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.22);display:flex;align-items:center;justify-content:center;
  position:relative;transition:background .2s ease, transform .2s ease;text-decoration:none;
}
.fab-brochure svg{width:26px;height:26px}
.fab-brochure:hover{background:var(--forest);transform:scale(1.06)}
.fab-brochure::after{
  content:"View Brochure";position:absolute;right:72px;top:50%;transform:translateY(-50%);
  background:var(--forest);color:#fff;padding:7px 14px;border-radius:8px;font-size:.76rem;font-weight:700;
  white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease, right .2s ease;box-shadow:var(--shadow);
}
.fab-brochure:hover::after{opacity:1;right:68px}
@media(max-width:600px){
  .float-stack{right:14px;bottom:14px}
  .fab-whatsapp{width:50px;height:50px;font-size:1.35rem}
  .fab-brochure{width:50px;height:50px}
  .fab-brochure svg{width:22px;height:22px}
  .fab-brochure::after{display:none}
}

/* ============ EXHIBITION PHOTO GALLERY ============ */
.expo-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.expo-photo{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/3}
.expo-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.expo-photo:hover img{transform:scale(1.08)}
@media(max-width:920px){.expo-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.expo-gallery{grid-template-columns:1fr;gap:16px}}

/* ============ INFRASTRUCTURE PHOTO GALLERY ============ */
.infra-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:860px){.infra-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.infra-gallery{grid-template-columns:1fr;gap:16px}}

/* ============ PAGE HEADER (inner pages) ============ */
.page-head{padding:56px 0 40px;text-align:center;background:var(--peach)}
.page-head h1{font-size:clamp(1.9rem,4vw,2.7rem)}
.breadcrumb{font-size:.78rem;color:var(--rice-green);font-weight:700;margin-bottom:12px}
.breadcrumb a{color:var(--forest)}

/* ============ SUBNAV (About tabs etc) ============ */
.subnav{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:22px}
.subnav a{
  padding:9px 18px;border-radius:999px;background:#fff;font-weight:700;font-size:.82rem;
  border:1.5px solid var(--forest);color:var(--forest);
}
.subnav a.active,.subnav a:hover{background:var(--forest);color:#fff}

/* ============ RECIPE CARD ============ */
.recipe-card .meta{display:flex;gap:14px;font-size:.78rem;color:var(--gold);font-weight:700;margin-bottom:8px}

/* ============ ADMIN ============ */
.admin-shell{max-width:960px;margin:0 auto;padding:40px 24px}
.admin-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}
.admin-table th,.admin-table td{padding:12px 14px;border-bottom:1px solid #eee6cf;font-size:.85rem;text-align:left}
.admin-table th{background:var(--forest);color:#fff;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}
.admin-form{background:#fff;border-radius:14px;box-shadow:var(--shadow);padding:24px;margin-bottom:30px}
.admin-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.admin-form label{font-size:.75rem;font-weight:700;color:var(--forest);text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:5px}
.admin-form input,.admin-form select,.admin-form textarea{
  width:100%;padding:10px 12px;border:1.5px solid #dcd6bf;border-radius:8px;font-family:var(--sans);font-size:.88rem;
}
.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.notice{padding:12px 16px;border-radius:8px;background:var(--peach);color:var(--forest);font-size:.85rem;font-weight:600;margin-bottom:18px}

/* ---- Admin: per-type rows (Creamy Sella / Golden Sella / Steam / Raw ...) ---- */
.type-rows{display:flex;flex-direction:column;gap:10px;margin-bottom:8px}
.type-row{
  display:grid;grid-template-columns:1fr 1fr .8fr 1.3fr auto;gap:10px;align-items:start;
  background:var(--ivory);border:1.5px solid #eee6cf;border-radius:10px;padding:12px;
}
.type-row input,.type-row textarea{width:100%;padding:9px 10px;border:1.5px solid #dcd6bf;border-radius:7px;font-family:var(--sans);font-size:.85rem}
.type-row textarea{resize:vertical;min-height:40px}
.type-row .type-thumb{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--gold-light);margin-bottom:6px;display:block}
.type-row-remove{background:none;border:none;color:var(--maroon);font-weight:700;cursor:pointer;font-size:.85rem;padding:6px}
@media(max-width:760px){.type-row{grid-template-columns:1fr}}
.admin-form h3 + p.hint{font-size:.78rem;color:#6f7a63;margin:-6px 0 14px}
.notice.warn{background:#fdecea;color:var(--maroon)}
.icon-btn{background:none;border:none;cursor:pointer;font-size:.95rem;color:var(--maroon);font-weight:700}

/* ============ ENTRANCE ANIMATION ============ */
html{opacity:0}
html.pa-ready{opacity:1;transition:opacity .35s ease}

@keyframes paFadeSlideUp{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes paFadeIn{
  from{opacity:0}
  to{opacity:1}
}

.pa-reveal{
  animation:paFadeSlideUp .65s cubic-bezier(.22,.7,.35,1) both;
}
.pa-reveal-item{
  animation:paFadeSlideUp .55s cubic-bezier(.22,.7,.35,1) both;
}

/* Logo mark gets a gentle scale-in for a nicer entrance */
.brand-lockup img{
  animation:paLogoPop .7s cubic-bezier(.22,.9,.35,1.2) both;
}
@keyframes paLogoPop{
  from{opacity:0;transform:scale(.75)}
  to{opacity:1;transform:scale(1)}
}

@media (prefers-reduced-motion:reduce){
  html{opacity:1}
  .pa-reveal,.pa-reveal-item,.brand-lockup img{animation:none;opacity:1;transform:none}
}

/* ============ BRAND LOGOS ============ */
.brand-logo-img{max-width:210px;width:100%;height:auto;margin-bottom:18px;display:block}
.card .brand-logo-strip{
  padding:18px 20px 0;display:flex;align-items:center;justify-content:center;background:#fff;
}
.card .brand-logo-strip img{max-height:56px;width:auto}

/* ============ SCROLL REVEAL (on-scroll, repeatable per page load) ============ */
.sr{opacity:0;transform:translateY(34px);transition:opacity .75s cubic-bezier(.22,.7,.35,1),transform .75s cubic-bezier(.22,.7,.35,1);will-change:opacity,transform}
.sr.sr-in{opacity:1;transform:translateY(0)}
.sr-scale{opacity:0;transform:scale(.9);transition:opacity .7s cubic-bezier(.22,.7,.35,1),transform .7s cubic-bezier(.22,.7,.35,1)}
.sr-scale.sr-in{opacity:1;transform:scale(1)}
.sr-left{opacity:0;transform:translateX(-40px);transition:opacity .75s cubic-bezier(.22,.7,.35,1),transform .75s cubic-bezier(.22,.7,.35,1)}
.sr-left.sr-in{opacity:1;transform:translateX(0)}
.sr-right{opacity:0;transform:translateX(40px);transition:opacity .75s cubic-bezier(.22,.7,.35,1),transform .75s cubic-bezier(.22,.7,.35,1)}
.sr-right.sr-in{opacity:1;transform:translateX(0)}
@media(prefers-reduced-motion:reduce){
  .sr,.sr-scale,.sr-left,.sr-right{opacity:1;transform:none;transition:none}
}

/* ============ BRAND SHOWCASE (centered, logos only) ============ */
.brand-showcase{display:flex;flex-wrap:nowrap;justify-content:center;align-items:flex-start;gap:70px}
.brand-item{display:flex;flex-direction:column;align-items:center;gap:22px;flex:1 1 0;min-width:0;max-width:230px}
.brand-logo-big{max-height:110px;width:auto;max-width:100%;object-fit:contain;transition:transform .25s ease}
.brand-item:hover .brand-logo-big{transform:scale(1.06)}
.brand-item .btn-sm{white-space:nowrap}
@media(max-width:700px){
  .brand-showcase{gap:18px}
  .brand-logo-big{max-height:66px}
  .brand-item{gap:12px}
  .brand-item .btn-sm{padding:7px 10px;font-size:.68rem}
}
@media(max-width:460px){
  .brand-showcase{gap:8px}
  .brand-logo-big{max-height:50px}
  .brand-item .btn-sm{padding:6px 7px;font-size:.6rem}
}

/* ============ CERTIFICATION CIRCLES (home page teaser) ============ */
.cert-circle-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:28px;
  max-width:840px;margin:0 auto;
}
@media(max-width:760px){.cert-circle-grid{grid-template-columns:repeat(3,1fr);gap:20px}}
@media(max-width:480px){.cert-circle-grid{grid-template-columns:repeat(2,1fr)}}
.cert-circle{
  aspect-ratio:1/1;border-radius:50%;background:#fff;
  box-shadow:var(--shadow);border:1.5px solid rgba(13,58,29,.08);
  display:flex;align-items:center;justify-content:center;text-align:center;
  padding:16%;transition:transform .25s ease,box-shadow .25s ease;
}
.cert-circle:hover{transform:translateY(-7px) scale(1.05);box-shadow:0 18px 36px rgba(13,58,29,.2)}
.cert-circle span{font-weight:800;font-size:.78rem;letter-spacing:.02em;color:var(--forest);line-height:1.2}
.cert-circle img{max-width:100%;max-height:100%;object-fit:contain}

/* ============ GLOBAL PRESENCE MAP FIGURE ============ */
.global-map-figure{max-width:920px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}
.global-map-figure img{width:100%;display:block}

/* ============ WORLD MAP (real geographic outline, accurate lat/long projection, animated routes) ============ */
.wm-wrap{
  background:#fff;border-radius:22px;box-shadow:var(--shadow);
  padding:18px 18px 10px;border:1px solid rgba(13,58,29,.06);
}
.wm-svg{width:100%;height:auto;display:block;overflow:visible}
.wm-land{fill:#d3e3c2;stroke:#b9d1a1;stroke-width:.6;stroke-linejoin:round}
.wm-route{
  fill:none;stroke:var(--gold);stroke-width:1.1;opacity:.55;
  stroke-dasharray:var(--dash,600);stroke-dashoffset:var(--dash,600);
  animation:paDrawRoute 1.4s ease-out forwards;
}
.wm-pin-circle{fill:var(--gold);stroke:#fff;stroke-width:2;filter:drop-shadow(0 1px 3px rgba(13,58,29,.35))}
.wm-pin-flag{font-size:9px;pointer-events:none}
.wm-pin{opacity:0;animation:paPinIn .45s ease-out forwards}
.wm-hub-glow{fill:var(--gold);opacity:.28;animation:paHubPulse 2.6s ease-in-out infinite}
.wm-hub-circle{fill:#fff;stroke:var(--gold);stroke-width:2.5;filter:drop-shadow(0 2px 4px rgba(13,58,29,.3))}
.wm-caption{text-align:center;font-size:.76rem;color:#7c8570;padding:10px 0 4px;letter-spacing:.02em}
@keyframes paDrawRoute{to{stroke-dashoffset:0}}
@keyframes paPinIn{to{opacity:1}}
@keyframes paHubPulse{
  0%,100%{r:9;opacity:.28}
  50%{r:14;opacity:.1}
}
@media(prefers-reduced-motion:reduce){
  .wm-route{animation:none;stroke-dashoffset:0}
  .wm-pin{animation:none;opacity:1}
  .wm-hub-glow{animation:none}
}
@media(max-width:600px){
  .wm-wrap{padding:12px 10px 6px;border-radius:16px}
  .wm-pin-flag{display:none}
  .wm-pin-circle{r:6}
}

/* ============ CERTIFICATION BADGE ROW (circular seals, home + cert page) ============ */
.cert-badge-grid{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:26px;
    max-width:920px;
    margin:0 auto;
}

.cert-badge-item{
    width:130px;   /* adjust according to your design */
}
@media(max-width:820px){.cert-badge-grid{grid-template-columns:repeat(4,1fr);gap:20px}}
@media(max-width:520px){.cert-badge-grid{grid-template-columns:repeat(3,1fr);gap:16px}}
.cert-badge{
  background:#fff;border-radius:50%;aspect-ratio:1/1;box-shadow:var(--shadow);
  border:1px solid rgba(13,58,29,.07);display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;overflow:hidden;
}
.cert-badge:hover{transform:translateY(-6px) scale(1.05);box-shadow:0 18px 34px rgba(13,58,29,.2)}
.cert-badge img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.cert-badge-label{margin-top:10px;text-align:center;font-size:.72rem;font-weight:700;color:var(--forest);letter-spacing:.02em}
.cert-badge-item{display:flex;flex-direction:column;align-items:center}

/* ============ CERT DOCUMENT CARDS (with real PDF thumbnails) ============ */
.cert-doc-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:22px}
.cert-doc-card{flex:0 1 calc(25% - 16.5px)}
@media(max-width:920px){.cert-doc-card{flex-basis:calc(33.333% - 14.667px)}}
@media(max-width:680px){.cert-doc-card{flex-basis:calc(50% - 11px)}}
@media(max-width:420px){.cert-doc-card{flex-basis:100%}}
.cert-doc-card{
  background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);
  border:1px solid rgba(13,58,29,.06);
  text-align:center;
}
.cert-doc-thumb{background:#f4f1e2;padding:12px;display:flex;align-items:center;justify-content:center;min-height:190px}
.cert-doc-thumb img{max-height:220px;width:auto;max-width:100%;box-shadow:0 3px 14px rgba(0,0,0,.14);border-radius:3px}
.cert-doc-card .body{padding:14px 14px 18px}
.cert-doc-card h3{font-size:.92rem;margin-bottom:3px}
.cert-doc-card p{font-size:.74rem;color:#6f7a63;margin:0}

/* ============ TIMELINE V2 (centered spine, alternating sides) ============ */
.timeline-v2{position:relative;max-width:940px;margin:50px auto 0}
.timeline-v2::before{
  content:'';position:absolute;left:50%;top:0;bottom:0;width:3px;
  background:linear-gradient(var(--gold-light),var(--gold) 15%,var(--gold) 85%,var(--gold-light));
  transform:translateX(-50%);
}
.tlv2-row{display:grid;grid-template-columns:1fr 46px 1fr;align-items:center;margin-bottom:6px;position:relative}
.tlv2-card{
  grid-row:1;
  background:#fff;border-radius:14px;box-shadow:var(--shadow);border:1px solid rgba(13,58,29,.06);
  padding:18px 22px;
}
.tlv2-row:nth-child(odd) .tlv2-card{grid-column:1;text-align:right}
.tlv2-row:nth-child(odd) .tlv2-spacer{grid-column:3;grid-row:1}
.tlv2-row:nth-child(even) .tlv2-card{grid-column:3;text-align:left}
.tlv2-row:nth-child(even) .tlv2-spacer{grid-column:1;grid-row:1}
.tlv2-dot{
  grid-row:1;grid-column:2;width:20px;height:20px;border-radius:50%;background:var(--gold);
  border:4px solid var(--ivory);box-shadow:0 0 0 2px var(--gold);justify-self:center;position:relative;z-index:2;
}
.tlv2-year{font-family:var(--serif);font-weight:700;color:var(--forest);font-size:1.35rem;margin-bottom:4px}
.tlv2-title{font-weight:700;color:var(--gold);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.tlv2-card p{margin:0;color:#3a4a34;font-size:.9rem}
@media(max-width:760px){
  .timeline-v2::before{left:20px}
  .tlv2-row{grid-template-columns:46px 1fr;margin-bottom:20px}
  .tlv2-row:nth-child(odd) .tlv2-card,.tlv2-row:nth-child(even) .tlv2-card{grid-column:2;text-align:left}
  .tlv2-row:nth-child(odd) .tlv2-spacer,.tlv2-row:nth-child(even) .tlv2-spacer{display:none}
  .tlv2-dot{grid-column:1;justify-self:center}
}


/* ============ TIMELINE V3 — horizontal, slanted curve, content alternating above/below ============
   Coordinate space: a 1000 x 300 virtual grid. The SVG path and every dot are placed using the
   SAME (x,y) points expressed as percentages, so the line always passes exactly through the dots
   no matter how the container is resized. */
.gct-wrap{position:relative;margin-top:70px;max-width:1080px;margin-left:auto;margin-right:auto;padding:0 6px;height:300px}
.gct-curve{position:absolute;left:0;top:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible}
.gct-curve path{fill:none;stroke:var(--gold);stroke-width:2.5;stroke-linecap:round;opacity:.6;stroke-dasharray:7 9}

.gct-point{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);z-index:1}
.gct-dot{
  width:15px;height:15px;border-radius:50%;background:var(--gold);
  border:3px solid var(--ivory);box-shadow:0 0 0 2px var(--gold);
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
}
.gct-card{
  position:absolute;left:50%;transform:translateX(-50%);
  background:#fff;border-radius:14px;box-shadow:var(--shadow);border:1px solid rgba(13,58,29,.06);
  padding:14px 16px;width:180px;text-align:center;
}
.gct-point.gct-top .gct-card{bottom:calc(100% + 20px)}
.gct-point.gct-bottom .gct-card{top:calc(100% + 20px)}
.gct-stem{position:absolute;left:50%;width:2px;background:var(--gold-light);transform:translateX(-50%)}
.gct-point.gct-top .gct-stem{bottom:50%;height:20px}
.gct-point.gct-bottom .gct-stem{top:50%;height:20px}

.gct-year{font-family:var(--serif);font-weight:700;color:var(--forest);font-size:1.1rem;margin-bottom:4px}
.gct-card p{margin:0;color:#3a4a34;font-size:.82rem;line-height:1.4}

@media(max-width:820px){
  .gct-wrap{height:auto;margin-top:20px}
  .gct-curve,.gct-stem{display:none}
  .gct-track{position:relative;padding-left:30px}
  .gct-track::before{content:'';position:absolute;left:9px;top:6px;bottom:6px;width:3px;background:var(--gold)}
  .gct-point{position:relative;left:auto !important;top:auto !important;transform:none;margin-bottom:26px;display:flex;align-items:flex-start}
  .gct-point:last-child{margin-bottom:0}
  .gct-dot{position:absolute;left:-27px;top:4px;transform:none}
  .gct-card{position:static;transform:none;width:auto;max-width:none;text-align:left;margin-left:14px;bottom:auto !important;top:auto !important}
}

/* ============ TECH PARTNERS + FACILITY STRIP (Who We Are page) ============ */
.tech-strip{background:var(--peach);padding:46px 0;border-top:1px solid rgba(13,58,29,.08)}
.tech-strip-grid{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:center;
}
.tech-strip .stat{text-align:center;color:var(--forest)}
.tech-strip .stat .num{font-family:var(--serif);font-size:2.4rem;font-weight:700;color:var(--forest);line-height:1}
.tech-strip .stat .label{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:var(--rice-green);margin-top:6px}
.tech-partners-block{
  text-align:center;border-left:1px solid rgba(13,58,29,.14);padding-left:30px;
}
.tech-partners-label{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--rice-green);margin-bottom:16px}
.tech-partners-logos{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}
.tech-partner-logo{
  background:#fff;border-radius:12px;padding:14px 22px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 20px rgba(13,58,29,.14);height:70px;min-width:150px;border:1px solid rgba(13,58,29,.06);
}
.tech-partner-logo img{max-height:38px;max-width:170px;width:auto;height:auto;display:block}
@media(max-width:760px){
  .tech-strip-grid{grid-template-columns:1fr 1fr;gap:26px 16px}
  .tech-partners-block{grid-column:1/-1;border-left:none;border-top:1px solid rgba(13,58,29,.14);padding-left:0;padding-top:24px;margin-top:4px}
  .tech-partner-logo{height:58px;min-width:120px}
  .tech-partner-logo img{max-height:30px;max-width:130px}
}

/* ============ REGION CARD ICONS (Global Presence page) ============ */
.region-card .body{text-align:center}
.region-card p{margin-bottom:0}
.region-icon{
  width:64px;height:64px;border-radius:50%;background:var(--ivory);color:var(--forest);
  display:flex;align-items:center;justify-content:center;margin:22px auto 6px;padding:14px;
  box-shadow:0 6px 14px rgba(13,58,29,.12);border:1px solid rgba(13,58,29,.06);
}
.region-icon svg{width:100%;height:100%}

/* ============ TIMELINE V2 — connector stem from card to spine dot ============ */
.tlv2-card{position:relative}
.tlv2-card::after{
  content:'';position:absolute;top:50%;width:24px;height:2px;background:var(--gold-light);
  transform:translateY(-50%);
}
.tlv2-row:nth-child(odd) .tlv2-card::after{right:-24px}
.tlv2-row:nth-child(even) .tlv2-card::after{left:-24px}
@media(max-width:760px){
  .tlv2-card::after{left:-24px;right:auto}
}

/* ============ WATERFALL SCROLL REVEAL (Legacy timeline + Global exhibitions) ============ */
.wf-item{opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.9,.32,1)}
.wf-item.wf-in{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){
  .wf-item{opacity:1;transform:none;transition:none}
}

/* ============ BRAND CARDS (brands.html) — logo fits fully, never cropped ============ */
.card.brand-card img{
  aspect-ratio:auto;height:170px;object-fit:contain;object-position:center;
  padding:26px 30px 10px;background:#fff;box-sizing:border-box;
}
.card.brand-card .body{text-align:center}

/* ============ PRODUCT GRID (brand pages — clickable product cards) ============ */
.product-grid{
  display:flex;flex-wrap:nowrap;justify-content:center;gap:18px;margin:18px 0 10px;
}
.product-card{
  display:block;background:#fff;border-radius:var(--radius);overflow:hidden;
  box-shadow:var(--shadow);border:1px solid rgba(13,58,29,.06);
  text-align:center;transition:transform .22s ease,box-shadow .22s ease;
  flex:1 1 0;min-width:0;
}
@media(max-width:920px){
  .product-grid{flex-wrap:wrap}
  .product-card{flex:0 1 calc(33.333% - 12px);min-width:150px;}
}
@media(max-width:600px){
  .product-card{flex:0 1 calc(50% - 9px);min-width:130px;}
}
.product-card:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(13,58,29,.18)}
.product-card .pc-img-wrap{
  aspect-ratio:1/1;background:var(--ivory);display:flex;align-items:center;justify-content:center;
  padding:16px;box-sizing:border-box;
}
.product-card .pc-img-wrap img{
  width:100%;height:100%;object-fit:contain;object-position:center;
}
.product-card .pc-name{
  display:block;padding:12px 14px 18px;font-weight:700;color:var(--forest);
  font-size:.9rem;font-family:var(--sans);line-height:1.3;
}

/* ============ PRODUCT DETAIL PAGE ============ */
.product-detail-figure{
  border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);
  background:var(--ivory);display:flex;align-items:center;justify-content:center;
  padding:30px;box-sizing:border-box;
}
.product-detail-figure img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center}
.product-tagline{
  font-size:1.02rem;color:var(--maroon);font-style:italic;margin:-6px 0 18px;
}
.spec-table{width:100%;border-collapse:collapse;margin:6px 0 22px;background:#fff;
  border-radius:10px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(13,58,29,.06);
}
.spec-table th,.spec-table td{text-align:left;padding:13px 18px;font-size:.92rem;
  border-bottom:1px solid rgba(13,58,29,.08);
}
.spec-table tr:last-child th,.spec-table tr:last-child td{border-bottom:none}
.spec-table th{width:40%;color:var(--forest);font-weight:700;background:var(--peach);
  font-family:var(--sans);letter-spacing:.01em;
}
.spec-table td{color:#3a4a34}

/* ============ BRAND LOGO AT TOP OF PAGE-HEAD (replaces plain text brand name) ============ */
.brand-logo-hero{display:block;margin:8px auto 4px;max-height:96px;width:auto}
.brand-logo-hero-sm{display:block;margin:4px auto 2px;max-height:56px;width:auto}
.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* ============ PRODUCT DETAIL PAGE — image left, content right ============ */
.product-detail-centered{max-width:1040px;margin:0 auto}
.product-detail-centered .product-detail-figure{max-height:440px}
