/* =====================================================================
   Sohel Nursery — Theme refresh (loaded last)
   Goals: higher contrast, one visual language, calmer motion, clear hierarchy
   ===================================================================== */

:root{
  /* Brand */
  --sn-green-900:#0f3019;
  --sn-green-800:#173d1f;
  --sn-green-700:#1b5e20;
  --sn-green-600:#2e7d32;
  --sn-green-100:#e8f3e6;
  --sn-gold-500:#f0a500;
  --sn-gold-700:#9a6400;     /* gold text on light surfaces (AA) */
  /* Neutrals */
  --sn-ink:#1f2a20;
  --sn-ink-soft:#44544a;     /* muted text: ≥ 7:1 on cream */
  --sn-line:#dfe8dc;
  --sn-surface:#ffffff;
  --sn-canvas:#faf7ef;
  /* Shape & depth */
  --sn-radius-sm:10px;
  --sn-radius:16px;
  --sn-shadow-sm:0 1px 2px rgba(15,48,25,.06),0 4px 14px rgba(15,48,25,.06);
  --sn-shadow:0 2px 4px rgba(15,48,25,.06),0 12px 28px rgba(15,48,25,.10);
  --sn-focus:#173d1f;
  --sn-focus-halo:#f0a500;
}

/* ---------- Typography ---------- */
html{-webkit-text-size-adjust:100%}
body{color:var(--sn-ink);background:var(--sn-canvas)}
h1,h2,h3,h4{color:var(--sn-green-800);letter-spacing:-.005em}
h2{font-size:clamp(26px,3.2vw,34px);line-height:1.25;font-weight:800;margin:0 0 12px}
p{color:var(--sn-ink)}
.section-head p,.section-head .sub{color:var(--sn-ink-soft);max-width:62ch}
::selection{background:var(--sn-gold-500);color:var(--sn-green-900)}
a{text-underline-offset:3px}
main a:not([class]){text-decoration-thickness:1px}

/* ---------- Buttons: one solid system, clear states ---------- */
.btn{min-height:46px;border-radius:999px;letter-spacing:.01em;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease,color .2s ease}
.btn-primary{background:var(--sn-green-700);color:#fff;box-shadow:0 4px 12px rgba(27,94,32,.28)}
.btn-primary:hover{background:var(--sn-green-800);color:#fff}
.btn-gold{background:var(--sn-gold-500);color:var(--sn-green-900);box-shadow:0 4px 12px rgba(240,165,0,.28)}
.btn-gold:hover{background:#e09a00;color:var(--sn-green-900)}
.btn-ghost{background:#fff;color:var(--sn-green-700);border:1.5px solid var(--sn-green-700)}
.btn-ghost:hover{background:var(--sn-green-100)}
.btn:active{transform:translateY(1px)}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed;box-shadow:none}

/* ---------- Cards: consistent radius, hairline border, measured lift ---------- */
.cat-card,.prod-card,.branch-card,.feature-card,.service-card,.testi-card{
  border:1px solid var(--sn-line);border-radius:var(--sn-radius);background:var(--sn-surface);
  box-shadow:var(--sn-shadow-sm);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease
}
.cat-card:hover,.prod-card:hover,.branch-card:hover,.feature-card:hover,.service-card:hover{
  box-shadow:var(--sn-shadow);border-color:#c9dcc4
}

/* ---------- Section rhythm ---------- */
section{scroll-margin-top:84px}
@media (max-width:760px){ section{scroll-margin-top:72px} }

/* ---------- Focus: visible on light AND dark surfaces ---------- */
:focus-visible{outline:3px solid var(--sn-focus);outline-offset:2px;box-shadow:0 0 0 6px var(--sn-focus-halo)}

/* ---------- Motion: respect user preference everywhere ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/* ---- Brand logo icons (social & payment) ---- */
.sn-brand-ico{width:1.15em;height:1.15em;vertical-align:-.18em;object-fit:contain;display:inline-block;flex:none}

/* ---- Footer: consistent social buttons (icon + brand logos on one white circle) ---- */
.footer-social a{background:#fff!important;color:var(--sn-green-700);border:1px solid rgba(255,255,255,.4);overflow:hidden}
.footer-social a img{width:100%;height:100%;object-fit:cover;display:block}
.footer-social a .ic{width:20px;height:20px;stroke:currentColor;fill:none}
.footer-social a:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.25)}
.footer-social a:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 6px var(--sn-green-800)}
.site-footer .footer-social a{color:#1b5e20!important}
.site-footer .footer-social a .ic{stroke:#1b5e20!important}
