/* =====================================================
   Theme: Organic — Amritaya Farms
   Premium Natural Products · Warm Earth & Gold
   Developed by: Meld Techo (www.meldtecho.com)
   ===================================================== */

:root {
  --g-dark:    #1A2E10;
  --g-mid:     #2C4A1A;
  --g-light:   #3D6624;
  --gold:      #C8960C;
  --gold-lt:   #E5B020;
  --gold-pale: #F5D98A;
  --cream:     #fff4d3;
  --cream-d:   #f5e8b0;
  --cream-dd:  #eddfa0;
  --brown:     #5C3D11;
  --text:      #1C1C1C;
  --muted:     #6B6455;
  --white:     #FFFFFF;
  --border:    #e8d88a;
  --shadow:    rgba(28,46,16,.14);
  --warm-dark: #1E1A0E;
  --warm-mid:  #2D2510;
}

/* Font variables */
:root {
  --font-heading: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-body:    'Manrope', system-ui, -apple-system, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
body {
  font-family: var(--font-body);
  /* background: #fff4d3; */
  color: var(--text);
  margin: 0;
  line-height: 1.6;
}
img { display: block; max-width: 100%; }
a { transition: all .2s; }

/* ══════════════════════════════════
   ANNOUNCEMENT BAR
══════════════════════════════════ */
.org-announce {
  background: var(--gold);
  color: #fff;
  text-align: center;
  padding: 9px 48px;
  font-size: 13px; font-weight: 500; letter-spacing: .4px;
  position: relative;
  display: none !important;
}
.org-announce .org-close-bar {
  position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
  background: none; border: none; color: #fff; font-size: 16px; cursor: pointer;
}

/* ══════════════════════════════════
   NAVBAR
══════════════════════════════════ */
.org-navbar {
  background: var(--white);
  border-bottom: 1px solid var(--border);
  padding: 0 32px;
  position: sticky; top: 0; z-index: 1000;
  box-shadow: 0 2px 16px rgba(0,0,0,.07);
}
.org-navbar-inner {
  display: flex; align-items: center; justify-content: space-between;
  max-width: 1280px; margin: 0 auto; height: 68px;
}
/* Logo — transparent PNG wordmark (AMRITAYA FARMS gold text) */
.org-logo { text-decoration: none; display: flex; align-items: center; }
.org-logo-wordmark {
  height: 44px;
  width: auto;
  display: block;
  object-fit: contain;
}

/* Nav links */
.org-nav-links {
  display: flex; align-items: center; gap: 28px;
  list-style: none; margin: 0; padding: 0;
}
.org-nav-links a {
  font-family: var(--font-body);
  color: var(--text); text-decoration: none; font-size: 14px; font-weight: 500;
  padding: 6px 0; border-bottom: 2px solid transparent; transition: all .2s;
}
.org-nav-links a:hover, .org-nav-links a.active {
  color: var(--g-dark); border-bottom-color: var(--gold);
}

/* Nav actions */
.org-nav-actions { display: flex; align-items: center; gap: 14px; }
.org-icon-btn {
  background: none; border: none; color: var(--text); font-size: 18px;
  cursor: pointer; position: relative; padding: 4px 6px; text-decoration: none; transition: color .2s;
}
.org-icon-btn:hover { color: var(--g-dark); }
.org-icon-badge {
  position: absolute; top: -4px; right: -4px;
  background: var(--gold); color: #fff;
  font-size: 9px; font-weight: 800; border-radius: 50%;
  width: 16px; height: 16px; display: flex; align-items: center; justify-content: center;
}
.org-order-btn {
  font-family: var(--font-body);
  font-weight: 600;
  background: var(--gold); color: var(--white);
  padding: 10px 24px; border-radius: 50px;
  font-size: 14px;
  text-decoration: none; white-space: nowrap; border: none; cursor: pointer;
  transition: background .2s; letter-spacing: .4px;
}
.org-order-btn:hover { background: var(--gold-lt); color: #fff; }
.org-hamburger {
  display: none; flex-direction: column; gap: 5px; cursor: pointer; background: none; border: none; padding: 4px;
}
.org-hamburger span { display: block; width: 22px; height: 2px; background: var(--text); border-radius: 2px; }

/* Account dropdowns */
.org-account-dropdown { position: relative; }
.org-account-trigger {
  align-items: center; background: #fff; border: 1px solid #dcd9d0; border-radius: 50%;
  color: #1f2f22; cursor: pointer; display: inline-flex; font-size: 18px; height: 33px;
  justify-content: center; padding: 0; transition: .2s ease; width: 33px;
}
.org-account-trigger:hover,
.org-account-dropdown.show .org-account-trigger { background: var(--g-dark); border-color: var(--g-dark); color: #fff; }
.org-nav-cart { margin-left: -3px; }
.org-account-menu {
  border: 1px solid #e6e3db; border-radius: 11px; box-shadow: 0 12px 30px rgba(31, 43, 30, .16);
  margin-top: 10px; min-width: 238px; overflow: hidden; padding: 0; right: -8px;
}
.org-account-menu-head { align-items: center; display: flex; gap: 9px; padding: 14px 14px 11px; }
.org-account-menu-head span:last-child { display: grid; gap: 2px; }
.org-account-menu-head strong { color: #252b24; font-size: 12px; font-weight: 800; }
.org-account-menu-head small { color: #77766f; font-size: 10px; line-height: 1.35; }
.org-account-menu-avatar {
  align-items: center; background: #ecf3e8; border-radius: 50%; color: var(--g-dark); display: flex;
  flex: 0 0 29px; font-size: 13px; height: 29px; justify-content: center;
}
.org-account-signin {
  background: var(--gold); border-radius: 6px; color: #fff !important; display: block; font: 800 11px var(--font-body);
  margin: 0 14px 11px; padding: 9px 12px; text-align: center; text-decoration: none;
}
.org-account-signin:hover { background: var(--gold-lt); color: #fff; }
.org-account-menu-links { border-top: 1px solid #efede7; padding: 5px 0; }
.org-account-menu-links a, .org-account-menu-footer a {
  align-items: center; color: #343934; display: flex; font-size: 11px; gap: 11px; padding: 7px 14px; text-decoration: none;
}
.org-account-menu-links a:hover { background: #f4f7f1; color: var(--g-dark); }
.org-account-menu-links i, .org-account-menu-footer i { color: #5d665a; font-size: 12px; text-align: center; width: 13px; }
.org-account-menu-footer { border-top: 1px solid #efede7; padding: 4px 0; }
.org-account-menu-footer a { color: #b54e50; font-weight: 700; }
.org-account-menu-footer a i { color: #b54e50; }
.org-account-menu-footer a:hover { background: #fff6f5; color: #923739; }
@media (max-width: 640px) {
  .org-account-menu { min-width: 224px; right: -27px; }
}

/* ══════════════════════════════════
   OUR STORY — farm journal editorial
══════════════════════════════════ */
.story-page { --story-ink:#24342a; --story-sage:#536652; --story-paper:#f6f1e7; --story-line:#d8cdb9; background:var(--story-paper); color:var(--story-ink); overflow:hidden; }
.story-wrap { max-width:1180px; margin:0 auto; padding-left:32px; padding-right:32px; }
.story-hero { min-height:650px; position:relative; display:flex; align-items:center; color:#fff; isolation:isolate; }
.story-hero-image { position:absolute; inset:0; z-index:-2; background:url('/assets/theme_organic/hero-banner.png') center/cover no-repeat; animation:story-drift 16s ease-in-out infinite alternate; }
.story-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(22,31,19,.9) 0%,rgba(22,31,19,.7) 38%,rgba(22,31,19,.12) 76%),linear-gradient(0deg,rgba(12,20,12,.45),transparent 45%); }
.story-hero-inner { width:min(1180px,100%); padding:100px 32px 120px; margin:auto; }
.story-crumbs { display:flex; gap:12px; align-items:center; font-size:11px; letter-spacing:1px; margin-bottom:60px; text-transform:uppercase; color:rgba(255,255,255,.65); }
.story-crumbs a { color:inherit; text-decoration:none; }
.story-crumbs a:hover { color:#fff; }
.story-kicker { color:#bd8a32; font-size:11px; font-weight:800; letter-spacing:3px; text-transform:uppercase; margin:0 0 18px; }
.story-hero .story-kicker { color:#dfb65c; }
.story-hero h1 { font-family:var(--font-heading); font-size:clamp(54px,8vw,100px); line-height:.9; letter-spacing:-2px; font-weight:600; margin:0 0 28px; max-width:760px; }
.story-hero h1 em, .story-final h2 em { color:#d7ac50; font-style:italic; font-weight:400; }
.story-hero-copy { font-size:16px; line-height:1.75; max-width:465px; color:rgba(255,255,255,.82); margin:0 0 32px; }
.story-button { align-items:center; display:inline-flex; gap:20px; font-size:13px; font-weight:800; letter-spacing:1px; padding:15px 23px; text-decoration:none; text-transform:uppercase; transition:transform .25s,background .25s; }
.story-button:hover { transform:translateY(-3px); }
.story-button-light { border:1px solid rgba(255,255,255,.6); color:#fff; }
.story-button-light:hover { background:#fff; color:var(--story-ink); }
.story-button-gold { background:#bd8a32; color:#fff; }
.story-button-gold:hover { background:#d2a14b; color:#fff; }
.story-hero-note { position:absolute; right:32px; bottom:32px; writing-mode:vertical-rl; font-size:10px; letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,.75); }
.story-hero-note span { color:#d7ac50; margin-bottom:10px; }
.story-intro { display:grid; grid-template-columns:150px minmax(0,1fr) minmax(260px,390px); gap:54px; padding-top:125px; padding-bottom:130px; align-items:start; }
.story-intro-aside { display:flex; gap:15px; color:var(--story-sage); font-size:10px; font-weight:800; letter-spacing:2px; text-transform:uppercase; writing-mode:vertical-rl; }
.story-rule { height:60px; width:1px; background:#bd8a32; }
.story-intro-copy h2, .story-section-head h2, .story-proof-copy h2 { font-family:var(--font-heading); font-size:clamp(36px,4.5vw,59px); line-height:1.03; font-weight:500; letter-spacing:-1px; margin:0 0 25px; }
.story-intro-copy p, .story-proof-copy>p { color:#667064; font-size:16px; line-height:1.8; max-width:540px; margin:0 0 14px; }
.story-signoff { display:flex; align-items:center; gap:16px; margin-top:28px; color:#8b887d; font-size:11px; text-transform:uppercase; letter-spacing:1px; }
.story-signature { font-family:var(--font-heading); font-style:italic; font-size:27px; text-transform:none; letter-spacing:0; color:#bd8a32; }
.story-intro-image { margin:30px 0 0; position:relative; }
.story-intro-image img { width:100%; aspect-ratio:4/5; object-fit:cover; }
.story-intro-image figcaption { font-size:11px; color:#7c8177; padding-top:12px; }
.story-values { background:#314738; color:#fff; padding:105px 0 110px; position:relative; }
.story-values::before { content:""; position:absolute; inset:0; opacity:.16; background:linear-gradient(135deg,transparent 45%,#d3ad64 45.2%,transparent 45.5%); background-size:34px 34px; pointer-events:none; }
.story-section-head { position:relative; }
.story-values .story-kicker { color:#d8ae5a; }
.story-values .story-section-head h2 { max-width:550px; color:#fff; }
.story-values-grid { display:grid; grid-template-columns:1.1fr 1fr 1fr; gap:50px; margin-top:65px; position:relative; }
.story-values-grid article { border-top:1px solid rgba(255,255,255,.3); padding-top:20px; }
.story-value-number { color:#d6ac57; font:600 13px var(--font-body); letter-spacing:1px; }
.story-values-grid h3 { font:600 25px var(--font-heading); margin:28px 0 10px; color:#fff; }
.story-values-grid p { font-size:14px; line-height:1.7; color:rgba(255,255,255,.68); margin:0; max-width:270px; }
.story-craft { padding-top:120px; padding-bottom:125px; }
.story-section-head-centered { text-align:center; }
.story-section-head-centered h2 { margin-bottom:15px; }
.story-section-head-centered>p:last-child { color:#7a8176; font-size:15px; margin:0; }
.story-craft-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:18px; margin-top:65px; }
.story-craft-step { min-width:0; }
.story-craft-photo { aspect-ratio:1; overflow:hidden; border-radius:50%; margin-bottom:19px; border:1px solid #c4b89f; padding:5px; }
.story-craft-photo img { width:100%; height:100%; object-fit:cover; border-radius:50%; transition:transform .5s; }
.story-craft-step:hover img { transform:scale(1.08); }
.story-craft-step>span { color:#bd8a32; font-size:11px; font-weight:800; letter-spacing:1px; }
.story-craft-step h3 { font:600 19px var(--font-heading); margin:7px 0 5px; }
.story-craft-step p { color:#788076; font-size:12px; line-height:1.5; margin:0; }
.story-proof { background:#e8e0d1; display:grid; grid-template-columns:1fr 1fr; align-items:stretch; }
.story-proof-image { min-height:590px; }
.story-proof-image img { width:100%; height:100%; object-fit:cover; }
.story-proof-copy { padding:100px clamp(35px,7vw,110px); }
.story-proof-copy h2 { font-size:clamp(36px,4vw,55px); }
.story-proof-list { margin-top:38px; border-top:1px solid #cfc2ac; }
.story-proof-list>div { display:flex; align-items:center; gap:16px; padding:17px 0; border-bottom:1px solid #cfc2ac; }
.story-proof-list img { width:42px; height:42px; object-fit:contain; }
.story-proof-list span { display:grid; gap:2px; }
.story-proof-list strong { font-size:13px; }
.story-proof-list small { font-size:11px; color:#7e8076; }
.story-reviews { padding-top:120px; padding-bottom:130px; }
.story-review-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:55px; }
.story-review { min-height:355px; background-size:cover; background-position:center; position:relative; color:#fff; }
.story-review-shade { position:absolute; inset:0; background:linear-gradient(0deg,rgba(21,31,20,.94),rgba(21,31,20,.05) 75%); }
.story-review-content { position:absolute; inset:auto 25px 24px; }
.story-review-avatar { width:39px; height:39px; display:grid; place-items:center; background:#d1a554; color:#fff; font-weight:800; border-radius:50%; margin-bottom:18px; }
.story-review-quote { font:500 21px/1.25 var(--font-heading); margin:0 0 18px; }
.story-review strong { font-size:12px; display:block; }
.story-review small { font-size:10px; color:rgba(255,255,255,.65); }
.story-review small span { color:#e0b761; }
.story-final { background:#263b2b url('/assets/theme_organic/flagship-product.jpg') center/cover; min-height:540px; position:relative; color:#fff; }
.story-final::before { content:""; position:absolute; inset:0; background:rgba(22,37,25,.78); }
.story-final-inner { position:relative; max-width:800px; margin:auto; text-align:center; padding:120px 24px; }
.story-final h2 { font:500 clamp(40px,6vw,75px)/.98 var(--font-heading); letter-spacing:-1px; margin:0 0 25px; }
.story-final p:not(.story-kicker) { font-size:15px; color:rgba(255,255,255,.75); margin:0 0 30px; }
@keyframes story-drift { from { transform:scale(1); } to { transform:scale(1.04); } }
@media (prefers-reduced-motion: reduce) {
  .story-hero-image { animation:none; }
  .story-button, .story-craft-photo img { transition:none; }
}
@media (max-width: 900px) {
  .story-intro { grid-template-columns:70px 1fr; gap:28px; }
  .story-intro-image { grid-column:2; max-width:390px; }
  .story-craft-grid { grid-template-columns:repeat(3,1fr); row-gap:38px; }
  .story-proof-copy { padding:70px 35px; }
  .story-values-grid { gap:28px; }
}
@media (max-width: 640px) {
  .story-hero { min-height:620px; }
  .story-hero-inner { padding:65px 24px 100px; }
  .story-crumbs { margin-bottom:52px; }
  .story-hero h1 { font-size:clamp(52px,16vw,76px); }
  .story-hero-note { right:18px; bottom:20px; }
  .story-wrap { padding-left:22px; padding-right:22px; }
  .story-intro { display:block; padding-top:75px; padding-bottom:80px; }
  .story-intro-aside { writing-mode:horizontal-tb; margin-bottom:35px; align-items:center; }
  .story-rule { width:42px; height:1px; }
  .story-intro-image { margin-top:42px; }
  .story-values { padding:75px 0; }
  .story-values-grid { display:block; margin-top:35px; }
  .story-values-grid article { margin-top:30px; }
  .story-craft { padding-top:75px; padding-bottom:85px; }
  .story-craft-grid { grid-template-columns:repeat(2,1fr); gap:32px 16px; margin-top:42px; }
  .story-craft-step h3 { font-size:17px; }
  .story-proof { display:block; }
  .story-proof-image { min-height:320px; }
  .story-proof-copy { padding:70px 22px; }
  .story-reviews { padding-top:75px; padding-bottom:80px; }
  .story-review-grid { grid-template-columns:1fr; margin-top:35px; }
  .story-review { min-height:330px; }
  .story-final-inner { padding:90px 22px; }
  .story-final h2 { font-size:clamp(41px,12vw,62px); }
}

/* ══════════════════════════════════
   HERO SECTION
══════════════════════════════════ */
.org-hero {
  /* Real farm photo background with left-dark gradient so text is readable */
  background-image:
    linear-gradient(to right,
      rgba(4,3,1,.93) 0%,
      rgba(4,3,1,.85) 22%,
      rgba(4,3,1,.60) 40%,
      rgba(4,3,1,.20) 58%,
      rgba(4,3,1,.00) 72%
    ),
    url('/assets/theme_organic/hero-banner.png');
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  min-height: 580px;
  display: flex; align-items: center;
  overflow: hidden; position: relative;
}
.org-hero::before { display: none; }
.org-hero-inner {
  max-width: 1280px; margin: 0 auto; padding: 72px 32px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center;
  position: relative; z-index: 1; width: 100%;
}
/* Hero left */
.org-hero-label {
  display: inline-block;
  background: rgba(200,150,12,.15); border: 1px solid rgba(200,150,12,.5);
  color: var(--gold-pale); font-size: 10px; font-weight: 700;
  letter-spacing: 3px; text-transform: uppercase;
  padding: 5px 16px; border-radius: 20px; margin-bottom: 22px;
}
.org-hero h1 {
  font-family: var(--font-heading);
  font-size: clamp(38px, 5.2vw, 64px); font-weight: 700;
  color: var(--white); line-height: 1.1; margin: 0 0 18px;
  text-transform: uppercase; letter-spacing: 1.5px;
}
.org-hero h1 em { color: var(--gold-lt); font-style: normal; display: block; }
.org-hero-sub {
  font-family: var(--font-body);
  font-weight: 400;
  color: rgba(255,255,255,.75); font-size: 15px; line-height: 1.7;
  margin: 0 0 30px; max-width: 420px;
}
/* Hero badges row */
.org-badges {
  display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 36px;
}
.org-badge-item {
  display: flex; align-items: center; gap: 8px;
  color: rgba(255,255,255,.85); font-size: 12px; font-weight: 500; line-height: 1.3;
}
.org-badge-icon {
  width: 36px; height: 36px; border-radius: 50%;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2);
  display: flex; align-items: center; justify-content: center;
  font-size: 16px; flex-shrink: 0;
}
/* Hero CTAs */
.org-hero-cta { display: flex; gap: 14px; flex-wrap: wrap; }
.org-btn-primary {
  font-family: var(--font-body);
  font-weight: 600;
  background: var(--gold); color: var(--white);
  padding: 13px 32px; border-radius: 50px; font-size: 15px;
  text-decoration: none; border: none; cursor: pointer;
  display: inline-flex; align-items: center; gap: 8px;
  letter-spacing: .4px; transition: all .25s;
}
.org-btn-primary:hover { background: var(--gold-lt); color: #fff; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(200,150,12,.4); }
.org-btn-outline {
  font-family: var(--font-body);
  font-weight: 600;
  background: transparent; color: var(--white);
  padding: 13px 28px; border-radius: 50px; font-size: 15px;
  text-decoration: none; border: 2px solid rgba(255,255,255,.35);
  display: inline-flex; align-items: center; gap: 8px; transition: all .25s;
}
.org-btn-outline:hover { border-color: rgba(255,255,255,.7); background: rgba(255,255,255,.08); color: #fff; }

/* Hero right — stamp only (product comes from the background photo) */
.org-hero-img-wrap {
  position: relative;
  display: flex; justify-content: flex-end; align-items: flex-start;
  padding-top: 10px;
}
.org-hero-img-wrap::before,
.org-hero-img-wrap::after { display: none; }
/* Hide placeholder product img — the bg photo already shows the jar */
.org-hero-img-wrap > img { display: none; }
/* Stamp badge */
.org-hero-badge-stamp {
  position: absolute; top: 16px; right: 0; z-index: 2;
  background: var(--gold); color: #fff;
  width: 100px; height: 100px; border-radius: 50%;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  font-weight: 800; font-size: 9px; text-align: center; line-height: 1.25;
  box-shadow: 0 6px 24px rgba(200,150,12,.5);
  text-transform: uppercase; letter-spacing: 1px;
  border: 3px solid rgba(255,255,255,.3);
}
.org-hero-badge-stamp .pct { font-size: 28px; font-weight: 900; line-height: 1; }

/* ══════════════════════════════════
   FEATURE CARDS BAR
   — floats over hero bottom as a rounded white card
══════════════════════════════════ */
.org-features {
  background: #1a2b0a;          /* dark green card */
  margin: -60px 40px 0;
  border-radius: 20px;
  padding: 0 24px;
  position: relative; z-index: 10;
  box-shadow: 0 8px 32px rgba(0,0,0,.28), 0 2px 8px rgba(0,0,0,.12);
}
.org-features-inner { max-width: 1200px; margin: 0 auto; }
.org-features-grid {
  display: grid; grid-template-columns: repeat(5, 1fr); gap: 0;
}
/* Each card = horizontal flex: icon LEFT, text RIGHT */
.org-feature-card {
  display: flex; align-items: center; gap: 14px;
  text-align: left; padding: 20px 20px;
  border-right: 1px solid rgba(255,255,255,.10);
}
.org-feature-card:last-child { border-right: none; }
/* SVG icon wrapper — fixed size, gold colour, no auto margins */
.feat-icon-wrap {
  width: 40px; height: 40px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  color: #c8960c;
}
.feat-svg { width: 36px; height: 36px; display: block; }
/* Text stack */
.feat-body { display: flex; flex-direction: column; }
.org-feature-card h4 { font-size: 13px; font-weight: 700; color: #ffffff; margin: 0 0 3px; line-height: 1.3; }
.org-feature-card p  { font-size: 11px; color: rgba(255,255,255,.65); margin: 0; line-height: 1.5; }

/* ══════════════════════════════════
   SECTION HELPERS
══════════════════════════════════ */
.org-section { padding: 64px 32px; }
.org-section-inner { max-width: 1280px; margin: 0 auto; }
.org-section-label {
  display: block; text-align: center; font-size: 11px; font-weight: 700;
  letter-spacing: 4px; text-transform: uppercase; color: var(--gold); margin-bottom: 10px;
}
.org-section-title {
  font-family: var(--font-heading);
  font-size: clamp(26px, 3vw, 38px); font-weight: 700; color: var(--text);
  text-align: center; margin: 0 0 52px; line-height: 1.25;
}
.org-section-title .leaf { font-size: 24px; margin-left: 8px; }
.org-view-all {
  color: var(--gold); font-size: 13px; font-weight: 600; text-decoration: none;
  display: inline-flex; align-items: center; gap: 4px;
}
.org-view-all:hover { color: var(--g-dark); }

/* ══════════════════════════════════
   PROCESS STEPS — FARM TO HOME
══════════════════════════════════ */
.org-process { background: #ffffff; padding-top: 40px; padding-bottom: 56px; }

/* THE AMRITAYA WAY label — flanked by decorative lines */
.org-process .org-section-label {
  display: flex; align-items: center; justify-content: center; gap: 14px;
  font-size: 10px; letter-spacing: 3px; color: var(--text); opacity: .7;
}
.org-process .org-section-label::before,
.org-process .org-section-label::after {
  content: '';
  width: 64px; height: 1px;
  background: currentColor;
  display: block;
}

/* Section title — larger, elegant */
.org-process .org-section-title {
  font-size: clamp(28px, 3.2vw, 42px);
  color: var(--text);
  margin-bottom: 36px;
}

/* Steps row */
.org-process-steps {
  display: flex; align-items: flex-start; justify-content: center;
  gap: 0; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 8px;
}
.org-process-step { text-align: center; flex: 1; min-width: 140px; padding: 0 8px; }
.org-process-arrow {
  display: flex; align-items: center; padding-top: 42px; flex-shrink: 0;
  color: #bbb; font-size: 18px; font-weight: 300;
}

/* Circular step image — 130px, warm golden border */
.org-process-img {
  width: 140px; height: 140px; border-radius: 50%; overflow: hidden;
  margin: 0 auto 16px;
  border: 3px solid #c8a45a;
  background: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 42px;
  box-shadow: 0 6px 24px rgba(0,0,0,.10), 0 0 0 2px rgba(200,164,90,.14);
}
.org-process-img img { width: 100%; height: 100%; object-fit: cover; }

/* Step label row: "01  Gir Cow" — number in gold, name bold, same line */
.org-process-step-label {
  display: flex; align-items: baseline; justify-content: center; gap: 6px;
  margin-bottom: 5px;
}
.org-process-num {
  font-size: 12px; font-weight: 700; color: var(--gold);
  font-family: var(--font-body); line-height: 1;
}
.org-process-name { font-size: 14px; font-weight: 700; color: var(--text); margin: 0; line-height: 1.3; }
.org-process-desc { font-size: 12px; color: var(--muted); margin: 0; line-height: 1.45; }

/* "Know The Full Process" — brand gold pill */
.org-process-cta { text-align: center; margin-top: 40px; }
.org-process-cta .org-btn-primary {
  background: var(--gold) !important;
  border-radius: 50px;
  padding: 14px 40px;
  font-size: 15px; font-weight: 600; letter-spacing: .3px;
  color: #fff;
}

/* ══════════════════════════════════
   PRODUCT CARDS
══════════════════════════════════ */
.org-products-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
}
.org-product-card {
  background: var(--white); border-radius: 16px; overflow: hidden;
  border: 1px solid var(--border); transition: all .3s;
  display: flex; flex-direction: column;
}
.org-product-card:hover {
  box-shadow: 0 10px 36px rgba(28,46,16,.14); transform: translateY(-5px); border-color: var(--gold);
}
.org-product-img {
  background: var(--cream); height: 200px; overflow: hidden;
  display: flex; align-items: center; justify-content: center; position: relative;
}
.org-product-img img { max-height: 180px; max-width: 100%; object-fit: contain; transition: transform .4s; }
.org-product-card:hover .org-product-img img { transform: scale(1.07); }
.org-product-badge {
  position: absolute; top: 10px; left: 10px;
  background: var(--gold); color: #fff; font-size: 10px; font-weight: 700;
  padding: 3px 10px; border-radius: 20px;
}
.org-product-body { padding: 16px; flex: 1; display: flex; flex-direction: column; }
.org-product-name { font-weight: 600; font-size: 14px; color: var(--text); margin: 0 0 6px; line-height: 1.3; }
.org-product-rating { display: flex; align-items: center; gap: 3px; margin-bottom: 10px; }
.org-star { color: var(--gold); font-size: 13px; }
.org-rating-count { font-size: 11px; color: var(--muted); margin-left: 4px; }
.org-product-price { display: flex; align-items: baseline; gap: 8px; margin-bottom: 14px; margin-top: auto; }
.org-price-current { font-size: 19px; font-weight: 700; color: var(--g-dark); }
.org-price-old { font-size: 13px; color: var(--muted); text-decoration: line-through; }
.org-price-discount {
  font-size: 10px; background: #e8f5e9; color: #2E7D32;
  padding: 2px 8px; border-radius: 20px; font-weight: 700;
}
.org-product-actions { display: flex; gap: 8px; }
.org-add-cart {
  font-family: var(--font-body);
  font-weight: 600;
  flex: 1; background: var(--g-dark); color: #fff; border: none;
  padding: 10px 12px; border-radius: 50px; font-size: 13px;
  cursor: pointer; transition: background .2s; text-align: center; text-decoration: none; display: block;
}
.org-add-cart:hover { background: var(--g-mid); color: #fff; }
.org-wish-btn {
  background: var(--cream); border: 1px solid var(--border); color: var(--text);
  padding: 10px 12px; border-radius: 8px; font-size: 14px; cursor: pointer; transition: all .2s;
}
.org-wish-btn:hover { background: #fef2f2; border-color: #e57373; color: #e57373; }

/* ══════════════════════════════════
   FLAGSHIP PRODUCT — 3 COLUMN CARD
   (card with margins — doesn't touch edges)
══════════════════════════════════ */
.org-flagship {
  /* background: var(--cream);       /* outer page bg — visible as margin */ */
  padding: 8px 32px 32px;         /* outer breathing room */
}
/* The card itself */
.org-flagship-card {
  background: linear-gradient(135deg, #0c2306 0%, #163509 45%, #0c2306 100%);
  border-radius: 24px;
  overflow: hidden;
  position: relative;
  max-width: 1280px; margin: 0 auto;
  box-shadow: 0 12px 48px rgba(10,35,6,.35);
}
/* Vignette */
.org-flagship-card::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse at 50% 50%, rgba(0,0,0,0) 30%, rgba(0,0,0,.25) 100%);
  pointer-events: none; z-index: 0;
}
/* Bokeh */
.org-flagship-card::after {
  content: '';
  position: absolute; inset: 0; pointer-events: none; z-index: 0;
  background:
    radial-gradient(circle 80px at 8% 20%,  rgba(60,120,20,.30) 0%, transparent 70%),
    radial-gradient(circle 55px at 15% 78%,  rgba(40,100,15,.22) 0%, transparent 70%),
    radial-gradient(circle 90px at 88% 15%,  rgba(50,110,18,.28) 0%, transparent 70%),
    radial-gradient(circle 60px at 92% 82%,  rgba(35,95,12,.20)  0%, transparent 70%);
}
.org-flagship-inner {
  padding: 0 32px 0 32px;
  display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 0; align-items: stretch;
  position: relative; z-index: 1;
  min-height: 420px;
}
/* Left column — flex col, vertically centered */
.org-flagship-left {
  display: flex; flex-direction: column; justify-content: center;
  padding: 36px 24px 36px 0;
}
/* Left */
.org-flagship-label {
  display: inline-block;
  background: rgba(200,150,12,.15); border: 1px solid rgba(200,150,12,.4);
  color: var(--gold-pale); font-size: 9px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase;
  padding: 4px 14px; border-radius: 20px; margin-bottom: 16px;
}
.org-flagship-left h2 {
  font-family: var(--font-heading);
  font-size: clamp(28px, 3vw, 40px); font-weight: 800; color: var(--white);
  margin: 0 0 14px; line-height: 1.15;
}
.org-flagship-sub { font-size: 13px; color: rgba(255,255,255,.62); line-height: 1.7; margin: 0 0 24px; }
.org-flagship-benefits { list-style: none; padding: 0; margin: 0 0 28px; }
.org-flagship-benefits li {
  display: flex; align-items: center; gap: 10px;
  font-size: 13px; color: rgba(255,255,255,.82); padding: 7px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.org-flagship-benefits li:last-child { border-bottom: none; }
.org-flagship-benefits .chk {
  width: 20px; height: 20px; border-radius: 50%;
  background: #3d6b1e; color: #fff; font-size: 11px; font-weight: 700;
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
/* Center — full-height banner, fills grid cell edge-to-edge */
.org-flagship-center {
  position: relative; overflow: hidden;
  /* no padding so image bleeds to card top/bottom */
}
/* Golden glow halo over the jar */
.org-flagship-center::before {
  content: '';
  position: absolute;
  width: 120%; height: 120%; border-radius: 50%;
  background: radial-gradient(circle,
    rgba(255,215,60,.50)  0%,
    rgba(240,180,20,.32) 28%,
    rgba(210,140,10,.14) 52%,
    transparent          72%);
  top: 50%; left: 50%; transform: translate(-50%,-50%);
  z-index: 2; pointer-events: none;
}
/* Side-fade vignette: left and right edges merge into card bg */
.org-flagship-center::after {
  content: '';
  position: absolute; inset: 0; pointer-events: none; z-index: 3;
  background:
    linear-gradient(to right,  rgba(10,32,5,1) 0%, transparent 18%, transparent 82%, rgba(10,32,5,1) 100%),
    linear-gradient(to bottom, rgba(10,32,5,.5) 0%, transparent 15%, transparent 88%, rgba(10,32,5,.5) 100%);
}
.org-flagship-center img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover; object-position: center 25%;
  z-index: 1;
  filter: brightness(1.02) saturate(1.08);
}
/* Right — pricing card (WHITE card matching reference) */
.org-flagship-right {
  background: #fff; border: 1px solid rgba(0,0,0,.08);
  border-radius: 20px; padding: 28px 26px;
  box-shadow: 0 8px 40px rgba(0,0,0,.18);
  margin: 28px 0 28px 16px; /* vertical breathing room inside card */
  align-self: center;
}
.org-bestseller-badge {
  display: inline-block;
  background: var(--gold); color: #fff;
  font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase;
  padding: 4px 14px; border-radius: 20px; margin-bottom: 14px;
}
.org-flagship-right h3 {
  font-family: var(--font-heading);
  font-size: 20px; font-weight: 700; color: #1a1a1a; margin: 0 0 4px; line-height: 1.2;
}
.org-flagship-right .size { font-size: 13px; color: #888; margin-bottom: 12px; }
/* Stars */
.org-flagship-stars { display: flex; align-items: center; gap: 6px; margin-bottom: 16px; }
.org-flagship-stars .stars { color: var(--gold); font-size: 16px; letter-spacing: 1px; }
.org-flagship-stars .count { font-size: 12px; color: #888; }
/* Price */
.org-flagship-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.org-flagship-price .now { font-size: 30px; font-weight: 800; color: #1a1a1a; }
.org-flagship-price .was { font-size: 16px; color: #bbb; text-decoration: line-through; }
.org-flagship-price .off {
  font-size: 11px; background: #e8f5e1; color: #3d7a1e;
  padding: 3px 10px; border-radius: 20px; font-weight: 700; border: 1px solid #c5e5ae;
}
/* Delivery rows */
.org-flagship-delivery {
  display: flex; flex-direction: column; gap: 10px; margin-bottom: 20px;
  border-top: 1px solid #f0f0f0; border-bottom: 1px solid #f0f0f0; padding: 14px 0;
}
.org-flagship-delivery-row {
  display: flex; align-items: center; gap: 12px;
}
.org-flagship-delivery-icon {
  width: 34px; height: 34px; border-radius: 50%; background: #f5f5f5;
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  font-size: 16px;
}
.org-flagship-delivery-text .title { font-size: 13px; font-weight: 600; color: #1a1a1a; line-height: 1.2; }
.org-flagship-delivery-text .sub   { font-size: 11px; color: #888; }
.org-flagship-add-btn {
  font-family: var(--font-body);
  font-weight: 600;
  display: block; width: 100%; background: var(--gold); color: #fff;
  border: none; padding: 14px 20px; border-radius: 50px;
  font-size: 15px; cursor: pointer; text-align: center; text-decoration: none;
  transition: background .2s; margin-bottom: 12px; letter-spacing: .4px;
}
.org-flagship-add-btn:hover { background: var(--gold-lt); color: #fff; }
.org-flagship-subscribe {
  font-size: 11px; color: #999; text-align: center;
}

/* ══════════════════════════════════
   FLOATING TRUST OVERLAP STRIP
   Overlaps between flagship card bottom and reviews
══════════════════════════════════ */
.org-trust-overlap {
  padding: 0 64px;          /* match flagship outer margins */
  margin-top: -28px;        /* float UP over the flagship card's bottom edge */
  position: relative; z-index: 30;
}
.org-trust-overlap-inner {
  max-width: 1216px; margin: 0 auto;  /* match flagship card max-width */
  /* background: #fff; */
  border-radius: 14px;
  background: var(--cream);       
  padding: 0;
  display: flex; align-items: stretch;
  box-shadow: 0 6px 28px rgba(0,0,0,.14), 0 1px 4px rgba(0,0,0,.08);
  overflow: hidden;
}
.org-trust-ov-item {
  flex: 1; display: flex; align-items: center; gap: 12px;
  padding: 18px 20px;
  border-right: 1px solid #ece8e0;
}
.org-trust-ov-item:last-child { border-right: none; }
/* Small thin-border icon circle */
.org-trust-ov-icon {
  width: 40px; height: 40px; border-radius: 50%;
  background: #f7f4ee; border: 1px solid #d8d0c0;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px; flex-shrink: 0;
}
.org-trust-ov-text { display: flex; flex-direction: column; gap: 1px; }
.org-trust-ov-metric { font-size: 15px; font-weight: 800; color: #1a2b0a; line-height: 1.15; }
.org-trust-ov-label  { font-size: 11px; color: #8a7e6a; line-height: 1.35; }

/* ══════════════════════════════════
   REVIEWS
══════════════════════════════════ */
/* .org-reviews { background: #f5efe0; } */
.org-reviews-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
}
/* Card: no padding — image flush at bottom */
.org-review-card {
  background: var(--white); border-radius: 16px; padding: 0;
  border: 1px solid #e8dfc8;
  display: flex; flex-direction: column;
  box-shadow: 0 2px 16px rgba(0,0,0,.06);
  overflow: hidden;
}
/* Content area (avatar + stars + text) */
.org-review-content {
  padding: 20px 20px 14px; display: flex; flex-direction: column; gap: 10px; flex: 1;
}
.org-review-top { display: flex; align-items: center; gap: 12px; }
.org-reviewer-avatar {
  width: 44px; height: 44px; border-radius: 50%; overflow: hidden; flex-shrink: 0;
  background: var(--g-dark); display: flex; align-items: center; justify-content: center;
  font-size: 17px; font-weight: 700; color: #fff; border: 2px solid var(--gold);
}
.org-reviewer-avatar img { width: 100%; height: 100%; object-fit: cover; }
.org-reviewer-info { flex: 1; }
.org-reviewer-name { font-size: 14px; font-weight: 700; color: var(--text); margin: 0 0 1px; }
.org-reviewer-loc { font-size: 12px; color: var(--muted); margin: 0; }
.org-review-stars { color: var(--gold); font-size: 14px; letter-spacing: 1px; }
.org-review-text {
  font-size: 13px; color: #4a4a4a; line-height: 1.6;
  margin: 0; flex: 1;
}
/* Full-width food photo strip at card bottom */
.org-review-footer-img {
  width: 100%; height: 110px; overflow: hidden; flex-shrink: 0;
}
.org-review-footer-img img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}

/* ══════════════════════════════════
   CTA BANNER
══════════════════════════════════ */
.org-cta {
  /* push photo right so warm scene shows right, dark area is left */
  background: url('/assets/theme_organic/flagship-product-portrait.jpg') right center / cover no-repeat;
  padding: 70px 48px;
  position: relative; overflow: hidden;
}
/* Left-to-right: very dark on left (text readable), transparent on right (photo shows) */
.org-cta::before {
  content: '';
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(to right,
    rgba(10,6,2,.95)  0%,
    rgba(10,6,2,.90) 25%,
    rgba(10,6,2,.65) 45%,
    rgba(10,6,2,.22) 65%,
    transparent       80%);
}
.org-cta-inner {
  max-width: 1280px; margin: 0 auto; width: 100%;
  position: relative; z-index: 1;
}
/* Text constrained to left ~42% so photo shows on right */
.org-cta-left { max-width: 480px; }
.org-cta h2 {
  font-family: var(--font-heading);
  font-size: clamp(24px, 3.2vw, 38px); font-weight: 800; color: #fff; margin: 0 0 10px; line-height: 1.2;
}
.org-cta p { font-size: 15px; color: rgba(255,255,255,.68); margin: 0 0 26px; }
/* CTA button — gold pill with arrow */
.org-cta-btn {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--gold); color: #fff;
  font-family: var(--font-body); font-size: 14px; font-weight: 600;
  padding: 11px 28px; border-radius: 50px; text-decoration: none;
  letter-spacing: .3px; transition: background .2s;
}
.org-cta-btn:hover { background: var(--gold-lt); color: #fff; }

/* ══════════════════════════════════
   FOOTER TRUST ROW
══════════════════════════════════ */
.org-footer-trust {
  background: var(--white); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
  padding: 24px 32px;
}
.org-footer-trust-inner {
  max-width: 1280px; margin: 0 auto;
  display: flex; justify-content: center; flex-wrap: wrap; gap: 0;
}
.org-footer-trust-item {
  display: flex; align-items: center; gap: 12px;
  padding: 12px 36px; border-right: 1px solid var(--border); flex: 1; min-width: 180px;
}
.org-footer-trust-item:last-child { border-right: none; }
.org-footer-trust-icon { font-size: 26px; flex-shrink: 0; color: var(--g-dark); }
.org-footer-trust-text .ttl { font-size: 13px; font-weight: 700; color: var(--text); }
.org-footer-trust-text .sub { font-size: 11px; color: var(--muted); }

/* ══════════════════════════════════
   FOOTER
══════════════════════════════════ */
.org-footer { background: var(--g-dark); color: rgba(255,255,255,.75); }
.org-footer-top {
  max-width: 1280px; margin: 0 auto; padding: 56px 32px 40px;
  display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1.5fr; gap: 40px;
}
.org-footer-logo-wrap { margin-bottom: 14px; }
.org-footer-logo-wrap img { height: 52px; filter: brightness(0) invert(1); }
.org-footer-logo-name {
  font-family: var(--font-heading);
  font-size: 20px; font-weight: 800; color: #fff; display: block; margin-bottom: 2px;
}
.org-footer-logo-tag { font-size: 11px; color: var(--gold); letter-spacing: 1px; text-transform: uppercase; }
.org-footer-about { font-size: 13px; line-height: 1.7; color: rgba(255,255,255,.58); margin: 12px 0 20px; }
.org-footer-app { display: flex; gap: 10px; flex-wrap: wrap; }
.org-footer-app a img { height: 34px; border-radius: 6px; }
.org-footer-col h5 {
  font-size: 12px; font-weight: 700; color: #fff; letter-spacing: 2px; text-transform: uppercase;
  margin: 0 0 18px; padding-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.12);
}
.org-footer-col ul { list-style: none; padding: 0; margin: 0; }
.org-footer-col ul li { margin-bottom: 10px; }
.org-footer-col ul li a {
  color: rgba(255,255,255,.6); text-decoration: none; font-size: 13px; transition: color .2s;
}
.org-footer-col ul li a:hover { color: var(--gold-lt); }
.org-footer-newsletter-label { font-size: 13px; color: rgba(255,255,255,.6); margin: 0 0 12px; }
.org-newsletter-form { display: flex; border-radius: 8px; overflow: hidden; }
.org-newsletter-form input {
  flex: 1; padding: 11px 14px; border: 1px solid rgba(255,255,255,.15); border-right: none;
  background: rgba(255,255,255,.08); color: #fff; font-size: 13px; outline: none;
}
.org-newsletter-form input::placeholder { color: rgba(255,255,255,.35); }
.org-newsletter-form button {
  background: var(--gold); color: #fff; border: none; padding: 11px 16px;
  font-size: 13px; font-weight: 700; cursor: pointer; transition: background .2s;
}
.org-newsletter-form button:hover { background: var(--gold-lt); }
.org-footer-social { display: flex; gap: 10px; margin-top: 16px; }
.org-footer-social a {
  width: 34px; height: 34px; border-radius: 50%;
  background: rgba(255,255,255,.1); display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,.65); text-decoration: none; font-size: 14px; transition: all .2s;
}
.org-footer-social a:hover { background: var(--gold); color: #fff; }
.org-footer-bottom {
  border-top: 1px solid rgba(255,255,255,.08);
  max-width: 1280px; margin: 0 auto; padding: 18px 32px;
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px;
}
.org-footer-bottom p { margin: 0; font-size: 12px; color: rgba(255,255,255,.35); }
.org-footer-bottom-links { display: flex; gap: 20px; }
.org-footer-bottom-links a { font-size: 12px; color: rgba(255,255,255,.35); text-decoration: none; transition: color .2s; }
.org-footer-bottom-links a:hover { color: var(--gold-lt); }

/* ══════════════════════════════════
   MOBILE NAV
══════════════════════════════════ */
.org-mobile-overlay {
  display: none; position: fixed; inset: 0; background: rgba(0,0,0,.5);
  z-index: 1100; opacity: 0; transition: opacity .3s;
}
.org-mobile-overlay.active { display: block; opacity: 1; }
.org-mobile-nav {
  position: fixed; top: 0; left: -300px; bottom: 0; width: 280px;
  background: var(--white); z-index: 1200; transition: left .3s; overflow-y: auto;
}
.org-mobile-nav.active { left: 0; }
.org-mobile-nav-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 20px; border-bottom: 1px solid var(--border);
}
.org-mobile-nav-close { background: none; border: none; font-size: 22px; cursor: pointer; color: var(--text); }
.org-mobile-nav ul { list-style: none; padding: 16px; margin: 0; }
.org-mobile-nav ul li a {
  display: block; padding: 12px 8px; color: var(--text); text-decoration: none;
  font-size: 15px; font-weight: 500; border-bottom: 1px solid var(--border);
}
.org-mobile-nav ul li a:hover { color: var(--g-dark); }
.org-mobile-nav-footer { padding: 16px; }
.org-mobile-nav-footer .org-order-btn { width: 100%; text-align: center; display: block; padding: 13px; }

/* ══════════════════════════════════
   MISC
══════════════════════════════════ */
.org-loader {
  position: fixed; inset: 0; background: rgba(255,255,255,.85);
  z-index: 9999; display: none; align-items: center; justify-content: center;
}
.org-loader.show { display: flex; }
.org-loader-ring {
  width: 50px; height: 50px; border: 4px solid var(--border);
  border-top-color: var(--g-dark); border-radius: 50%; animation: org-spin .8s linear infinite;
}
@keyframes org-spin { to { transform: rotate(360deg); } }
.org-back-top {
  position: fixed; bottom: 28px; right: 28px; z-index: 500;
  background: var(--g-dark); color: #fff; border: none;
  width: 42px; height: 42px; border-radius: 50%;
  font-size: 18px; cursor: pointer;
  display: none; align-items: center; justify-content: center; transition: background .2s;
  box-shadow: 0 4px 16px rgba(0,0,0,.2);
}
.org-back-top.visible { display: flex; }
.org-back-top:hover { background: var(--gold); }
.org-flash-wrap { background: var(--cream-d); border-radius: 16px; padding: 32px 24px; }
.org-section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; }
.org-section-header h3 { font-family: var(--font-heading); font-size: 24px; font-weight: 700; color: var(--text); margin: 0; }
.org-banner-section { background: var(--cream); }
.org-banner-section .owl-carousel .item { border-radius: 16px; overflow: hidden; }
.org-banner-section .owl-carousel .item img { width: 100%; max-height: 420px; object-fit: cover; }

/* ══════════════════════════════════
   INNER PAGE — SHARED
══════════════════════════════════ */
.org-page-header {
  background: var(--g-dark);
  padding: 28px 32px;
}
.org-page-header-inner { max-width: 1280px; margin: 0 auto; }
.org-breadcrumb {
  display: flex; align-items: center; gap: 8px;
  font-size: 12px; margin-bottom: 8px;
}
.org-breadcrumb a { color: rgba(255,255,255,.65); text-decoration: none; }
.org-breadcrumb a:hover { color: var(--gold-pale); }
.org-breadcrumb span { color: rgba(255,255,255,.4); }
.org-page-title {
  font-family: var(--font-heading);
  font-size: clamp(22px,2.5vw,34px); font-weight: 700;
  color: #fff; margin: 0; line-height: 1.2;
}
.org-empty-state { text-align: center; padding: 64px 32px; }
.org-empty-icon { font-size: 48px; margin-bottom: 16px; }
.org-empty-state h3 { font-family: var(--font-heading); font-size: 24px; color: var(--g-dark); margin: 0 0 8px; }
.org-empty-state p { color: var(--muted); margin: 0 0 24px; }
.org-pagination { padding: 24px 0; display: flex; justify-content: center; }

/* ══════════════════════════════════
   SHOP / PRODUCT LISTING PAGE
══════════════════════════════════ */
.org-shop-wrap { background: #fff; padding: 32px 32px 64px; }
.org-shop-inner { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: 280px 1fr; gap: 32px; align-items: start; }
/* Sidebar */
.org-shop-sidebar {}
.org-sidebar-card { background: #fff; border: 1px solid #ece6d8; border-radius: 16px; overflow: hidden; }
.org-sidebar-section { padding: 18px 20px; border-bottom: 1px solid #ece6d8; }
.org-sidebar-section:last-child { border-bottom: none; }
.org-sidebar-heading { font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--g-dark); margin-bottom: 12px; }
.org-sidebar-select { width: 100%; padding: 8px 12px; border: 1px solid #ddd; border-radius: 8px; font-size: 13px; font-family: var(--font-body); color: var(--text); background: #fff; cursor: pointer; }
.org-price-filter { display: flex; align-items: center; gap: 8px; }
.org-price-input { flex: 1; padding: 7px 10px; border: 1px solid #ddd; border-radius: 8px; font-size: 13px; width: 0; }
.org-price-sep { color: var(--muted); font-size: 12px; flex-shrink: 0; }
.org-price-apply { background: var(--gold); color: #fff; border: none; border-radius: 8px; padding: 7px 12px; cursor: pointer; font-size: 14px; flex-shrink: 0; }
.org-sidebar-search { width: 100%; padding: 8px 12px; border: 1px solid #ddd; border-radius: 8px; font-size: 13px; font-family: var(--font-body); margin-bottom: 10px; }
.org-sidebar-list { list-style: none; padding: 0; margin: 0; max-height: 220px; overflow-y: auto; }
.org-sidebar-list li { display: flex; align-items: center; justify-content: space-between; padding: 7px 4px; border-bottom: 1px solid #f0ece6; font-size: 13px; color: var(--text); cursor: pointer; }
.org-sidebar-list li:hover { color: var(--g-dark); font-weight: 600; }
.org-sidebar-list li:last-child { border-bottom: none; }
.org-sidebar-sub { color: var(--muted); font-size: 12px; }
.org-sidebar-badge { font-size: 10px; background: var(--cream-d); color: var(--g-dark); padding: 2px 7px; border-radius: 20px; font-weight: 700; }
/* Toolbar */
.org-shop-toolbar { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; padding-bottom: 16px; border-bottom: 1px solid #f0ece6; flex-wrap: wrap; }
.org-filter-btn { display: flex; align-items: center; gap: 6px; padding: 8px 16px; background: var(--g-dark); color: #fff; border: none; border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer; font-family: var(--font-body); }
.org-shop-count { font-size: 14px; color: var(--muted); flex: 1; }
.org-shop-sort { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--muted); }
.org-sort-select { padding: 7px 12px; border: 1px solid #ddd; border-radius: 8px; font-size: 13px; font-family: var(--font-body); cursor: pointer; }
/* Product quick-action overlay */
.org-product-quick-actions {
  position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%) translateY(8px);
  display: flex; gap: 6px; opacity: 0; transition: all .25s; pointer-events: none;
}
.org-product-card:hover .org-product-quick-actions { opacity: 1; transform: translateX(-50%) translateY(0); pointer-events: auto; }
.org-quick-btn {
  background: rgba(255,255,255,.92); border: 1px solid #e0d8c8; color: var(--text);
  width: 34px; height: 34px; border-radius: 50%; font-size: 15px; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 2px 8px rgba(0,0,0,.12);
}
.org-quick-btn:hover { background: var(--gold); color: #fff; border-color: var(--gold); }

/* ══════════════════════════════════
   ACCOUNT / PROFILE PAGES
══════════════════════════════════ */
.org-account-wrap { max-width: 1280px; margin: 0 auto; padding: 40px 32px 64px; }
.org-account-wrap .row { gap: 0; }
/* Sidebar nav */
.org-account-sidebar {}
.org-account-nav { background: #fff; border: 1px solid #ece6d8; border-radius: 16px; overflow: hidden; position: sticky; top: 100px; }
.org-account-nav-user { display: flex; align-items: center; gap: 12px; padding: 20px; background: var(--g-dark); }
.org-account-avatar { width: 50px; height: 50px; border-radius: 50%; overflow: hidden; flex-shrink: 0; border: 2px solid var(--gold); }
.org-account-avatar img { width: 100%; height: 100%; object-fit: cover; }
.org-account-name { font-size: 14px; font-weight: 700; color: #fff; line-height: 1.2; }
.org-account-email { font-size: 11px; color: rgba(255,255,255,.6); }
.org-account-links { display: flex; flex-direction: column; }
.org-account-links a { display: flex; align-items: center; gap: 10px; padding: 13px 20px; font-size: 13px; font-weight: 500; color: var(--text); text-decoration: none; border-bottom: 1px solid #f4f0e8; transition: all .15s; }
.org-account-links a:last-child { border-bottom: none; }
.org-account-links a:hover { background: #fdf8ef; color: var(--g-dark); }
.org-account-links a.active { background: #fdf8ef; color: var(--g-dark); font-weight: 700; border-left: 3px solid var(--gold); }
.org-account-links a.org-account-logout { color: #c0392b; }
.org-account-links a.org-account-logout:hover { background: #fff5f5; }
.org-nav-icon { font-size: 16px; width: 20px; text-align: center; flex-shrink: 0; }
/* Account content panel */
.org-account-panel { background: #fff; border: 1px solid #ece6d8; border-radius: 16px; overflow: hidden; }
.org-account-panel-header { display: flex; align-items: center; justify-content: space-between; padding: 18px 24px; border-bottom: 1px solid #f0ece6; }
.org-account-panel-header h3 { font-family: var(--font-heading); font-size: 20px; font-weight: 700; color: var(--g-dark); margin: 0; }
.org-account-panel-count { font-size: 12px; background: var(--cream); color: var(--g-dark); padding: 4px 12px; border-radius: 20px; font-weight: 600; }
/* Orders list */
.org-orders-list { padding: 0 8px; }
.org-order-row { display: grid; grid-template-columns: auto auto 1fr auto auto; gap: 0; align-items: center; padding: 16px 16px; border-bottom: 1px solid #f4f0e8; transition: background .15s; }
.org-order-row:hover { background: #fdf8ef; }
.org-order-row:last-child { border-bottom: none; }
.org-order-col { display: flex; flex-direction: column; gap: 3px; padding: 0 12px; }
.org-order-label { font-size: 10px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--muted); }
.org-order-val { font-size: 14px; font-weight: 600; color: var(--text); }
.org-order-total { color: var(--g-dark); font-size: 15px; font-weight: 700; }
.org-order-status { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 20px; font-size: 11px; font-weight: 700; text-transform: capitalize; letter-spacing: .3px; }
.org-order-status--success { background: #e8f5e1; color: #2e7d32; }
.org-order-status--danger  { background: #fdecea; color: #c62828; }
.org-order-status--info    { background: #e3f2fd; color: #1565c0; }
.org-order-actions { display: flex; gap: 6px; padding: 0 8px; }
.org-btn-outline-sm { padding: 6px 14px; border: 1.5px solid var(--g-dark); color: var(--g-dark); border-radius: 50px; font-size: 12px; font-weight: 600; text-decoration: none; background: none; cursor: pointer; transition: all .2s; font-family: var(--font-body); }
.org-btn-outline-sm:hover { background: var(--g-dark); color: #fff; }
.org-btn-danger-sm { padding: 6px 14px; border: 1.5px solid #c62828; color: #c62828; border-radius: 50px; font-size: 12px; font-weight: 600; text-decoration: none; background: none; cursor: pointer; transition: all .2s; font-family: var(--font-body); }
.org-btn-danger-sm:hover { background: #c62828; color: #fff; }

/* ══════════════════════════════════
   ORDER TRACKING PAGE
══════════════════════════════════ */
.org-track-search { max-width: 600px; margin: 0 auto 40px; }
.org-track-search-row { display: flex; gap: 10px; }
.org-track-input { flex: 1; padding: 12px 18px; border: 1.5px solid #ddd; border-radius: 50px; font-size: 14px; font-family: var(--font-body); }
.org-track-input:focus { outline: none; border-color: var(--gold); }
.org-track-summary { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin-bottom: 36px; }
.org-track-summary-item { background: #fff; border: 1px solid #ece6d8; border-radius: 12px; padding: 16px 18px; display: flex; flex-direction: column; gap: 6px; }
.org-track-label { font-size: 10px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--muted); }
.org-track-val { font-size: 16px; font-weight: 700; color: var(--g-dark); }
.org-track-progress { display: flex; align-items: flex-start; justify-content: center; margin-bottom: 40px; padding: 32px; background: #fff; border: 1px solid #ece6d8; border-radius: 16px; gap: 0; overflow-x: auto; }
.org-track-step { display: flex; flex-direction: column; align-items: center; flex: 1; position: relative; min-width: 100px; }
.org-track-step-icon { width: 52px; height: 52px; border-radius: 50%; background: #f0ece6; border: 2px solid #ddd; display: flex; align-items: center; justify-content: center; font-size: 22px; z-index: 1; transition: all .3s; }
.org-track-step.done .org-track-step-icon { background: var(--gold); border-color: var(--gold); }
.org-track-step.current .org-track-step-icon { background: var(--g-dark); border-color: var(--g-dark); box-shadow: 0 0 0 4px rgba(26,46,16,.2); }
.org-track-step-line { position: absolute; top: 26px; left: 50%; width: 100%; height: 2px; background: #ddd; z-index: 0; }
.org-track-step-line.last { display: none; }
.org-track-step.done + .org-track-step .org-track-step-line,
.org-track-step.done .org-track-step-line { background: var(--gold); }
.org-track-step-label { margin-top: 10px; font-size: 12px; font-weight: 600; color: var(--muted); text-align: center; }
.org-track-step.done .org-track-step-label,
.org-track-step.current .org-track-step-label { color: var(--g-dark); font-weight: 700; }
.org-track-items { background: #fff; border: 1px solid #ece6d8; border-radius: 16px; overflow: hidden; }
.org-track-item { display: flex; align-items: center; gap: 16px; padding: 16px 24px; border-bottom: 1px solid #f4f0e8; }
.org-track-item:last-child { border-bottom: none; }
.org-track-item-img { width: 64px; height: 64px; object-fit: cover; border-radius: 10px; border: 1px solid #ece6d8; flex-shrink: 0; }
.org-track-item-info { flex: 1; display: flex; flex-direction: column; gap: 4px; }
.org-track-item-name { font-size: 14px; font-weight: 600; color: var(--text); text-decoration: none; }
.org-track-item-name:hover { color: var(--g-dark); }
.org-track-item-var { font-size: 11px; color: var(--muted); }
.org-track-item-qty { font-size: 12px; color: var(--muted); }
.org-track-item-price { font-size: 15px; font-weight: 700; color: var(--g-dark); flex-shrink: 0; }
.org-track-totals { padding: 20px 24px; background: #fdf8ef; border-top: 1px solid #ece6d8; }
.org-track-total-row { display: flex; justify-content: space-between; padding: 6px 0; font-size: 14px; color: var(--text); border-bottom: 1px solid rgba(0,0,0,.06); }
.org-track-total-row:last-child { border-bottom: none; }
.org-track-total-final { font-size: 16px; font-weight: 800; color: var(--g-dark); padding-top: 12px; margin-top: 6px; border-top: 2px solid var(--gold) !important; }

/* ══════════════════════════════════
   TRACK ORDER FORM PAGE
══════════════════════════════════ */
.org-track-wrap { background: #f7f3ec; min-height: 60vh; display: flex; align-items: center; justify-content: center; padding: 64px 32px; }
.org-track-form-card { background: #fff; border: 1px solid #ece6d8; border-radius: 20px; padding: 48px 44px; max-width: 520px; width: 100%; text-align: center; box-shadow: 0 4px 32px rgba(26,43,10,.07); }
.org-track-form-icon { font-size: 52px; margin-bottom: 16px; }
.org-track-form-title { font-family: var(--font-heading); font-size: 22px; font-weight: 700; color: var(--g-dark); margin: 0 0 28px; line-height: 1.3; }
.org-track-form { text-align: left; display: flex; flex-direction: column; gap: 18px; }
.org-track-form-group { display: flex; flex-direction: column; gap: 6px; }
.org-track-form-label { font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--muted); }
.org-track-form-note { font-size: 12px; color: var(--muted); margin: 24px 0 0; line-height: 1.6; }

/* ══════════════════════════════════
   CART PAGE
══════════════════════════════════ */
.org-cart-wrap { background: #fff; padding: 40px 32px 64px; }
.org-cart-inner { max-width: 1200px; margin: 0 auto; }
.org-cart-title { font-family: var(--font-heading); font-size: 28px; font-weight: 700; color: var(--g-dark); margin: 0 0 28px; }

/* ============================================================
   CART + CHECKOUT REDESIGN — reference-matched storefront surfaces
   The cart partial is shared with the default theme; these selectors
   deliberately style its existing hooks without changing its behavior.
   ============================================================ */
.org-page-header {
  background:
    linear-gradient(90deg, rgba(6,31,13,.98), rgba(13,49,22,.94)),
    url('/assets/theme_organic/hero-banner.png') center / cover;
  padding: 25px 32px 28px;
  position: relative;
  overflow: hidden;
}
.org-page-header::after {
  content: '';
  position: absolute; right: 9%; bottom: -45px; width: 210px; height: 150px;
  border: 1px solid rgba(196,157,74,.2); border-radius: 55% 45% 50% 40%;
  transform: rotate(-25deg); pointer-events: none;
}
.org-page-title { letter-spacing: -.02em; }
.org-page-kicker {
  margin: 10px 0 0; color: rgba(246,235,195,.84); font-size: 12px;
  position: relative; z-index: 1;
}
.org-page-kicker i { color: var(--gold-pale); margin-right: 5px; }
.org-cart-wrap { background: #fbfaf7; padding: 20px 32px 56px; }
.org-cart-inner { max-width: 1200px; }
.org-cart-inner > .feature_header { display: none; }
.org-cart-inner > .row { margin-left: -8px; margin-right: -8px; }
.org-cart-inner > .row > section,
.org-cart-inner > .row > aside { padding-left: 8px; padding-right: 8px; }
.org-cart-inner .cart_information,
.org-cart-inner .__cart-total {
  background: #fff; border: 1px solid #e5e1d8; border-radius: 11px;
  box-shadow: 0 3px 14px rgba(33,47,28,.045);
}
.org-cart-inner .cart_information { margin-bottom: 14px !important; overflow: hidden; }
.org-cart-inner .cart_information .card-header {
  background: #fff; border: 0; padding: 23px 20px 11px; font-size: 13px;
}
.org-cart-inner .cart_information .card-header a { color: var(--g-dark); text-decoration: underline; }
.org-cart-inner .__cart-table { margin-bottom: 0; }
.org-cart-inner .__cart-table thead { background: #f8f7f3; }
.org-cart-inner .__cart-table thead th {
  border: 0; color: #534f45; font-size: 10px; letter-spacing: .04em;
  text-transform: uppercase; padding: 12px 10px; white-space: nowrap;
}
.org-cart-inner .__cart-table tbody td {
  border-top: 1px solid #efede8; color: #24251f; font-size: 13px;
  padding: 17px 10px; vertical-align: middle;
}
.org-cart-inner .__cart-table tbody td:first-child,
.org-cart-inner .__cart-table thead th:first-child { padding-left: 20px; }
.org-cart-inner .__cart-table tbody td:last-child,
.org-cart-inner .__cart-table thead th:last-child { padding-right: 20px; }
.org-cart-inner .__cart-table tbody td a { color: var(--g-dark); font-weight: 600; }
.org-cart-inner .__img-62 {
  width: 92px; height: 78px; border-radius: 8px; object-fit: cover;
  border: 1px solid #e8e1d5;
}
.org-cart-inner .__cart-input {
  width: 80px; height: 38px; padding: 0 10px; border: 1px solid #d9d6cf;
  border-radius: 7px; background: #fff; color: #222; font: 600 13px var(--font-body);
}
.org-cart-inner .__cart-table .text-accent { color: var(--g-dark) !important; font-weight: 700; }
.org-cart-inner .__cart-table strike { color: #999; font-size: 11px; }
.org-cart-inner .cart_information .form-control,
.org-cart-inner #order_note {
  border: 1px solid #dedbd4; border-radius: 8px; box-shadow: none;
  font-family: var(--font-body); font-size: 13px;
}
.org-cart-inner #order_note { min-height: 74px; padding: 12px; }
.org-cart-inner .btn--primary {
  background: var(--g-dark); border: 0; border-radius: 8px; color: #fff;
  font-family: var(--font-body); font-size: 12px; font-weight: 700;
  padding: 11px 17px; text-decoration: none;
}
.org-cart-inner .btn--primary:hover { background: var(--g-mid); color: #fff; }
.org-cart-inner .__cart-total { padding: 22px 20px 18px; position: sticky; top: 88px; }
.org-cart-inner .__cart-total .cart_total { padding: 0; }
.org-cart-inner .__cart-total .cart_total::before {
  content: '▢  Order Summary'; display: block; color: var(--g-dark);
  font: 700 17px var(--font-heading); margin-bottom: 16px;
}
.org-cart-inner .__cart-total .cart_title { color: #373832; font-size: 12px; }
.org-cart-inner .__cart-total .cart_value { color: #22251e; font-size: 12px; font-weight: 700 !important; }
.org-cart-inner .__cart-total hr { border-color: #e6e2da; }
.org-cart-inner .__cart-total .cart_total > .d-flex:last-of-type .cart_title,
.org-cart-inner .__cart-total .cart_total > .d-flex:last-of-type .cart_value {
  color: var(--g-dark); font-size: 20px; font-weight: 800 !important;
}
.org-cart-inner .__cart-total #coupon-code-ajax {
  display: flex; gap: 0; margin: 15px 0 5px;
}
.org-cart-inner .__cart-total #coupon-code-ajax .form-group { flex: 1; margin: 0; }
.org-cart-inner .__cart-total #coupon-code-ajax .input_code {
  height: 34px; border-radius: 7px 0 0 7px; font-size: 11px;
}
.org-cart-inner .__cart-total #coupon-code-ajax button {
  width: 66px; height: 34px; padding: 0; border-radius: 0 7px 7px 0;
  background: var(--g-dark); font-size: 11px;
}
.org-cart-inner .order-summery-footer-image { width: 30px; height: 30px; object-fit: contain; }
.org-cart-inner .deal-title { color: #3d4238; font-size: 10px; line-height: 1.3; }

/* Checkout */
.org-checkout-wrap { max-width: 1200px; padding: 20px 24px 58px; grid-template-columns: 1fr 365px; gap: 18px; }
.org-checkout-steps {
  background: #fff; border: 1px solid #e5e1d8; border-radius: 11px; padding: 14px 22px;
  margin-bottom: 18px; box-shadow: 0 2px 10px rgba(33,47,28,.035);
}
.org-checkout-section { border-color: #e5e1d8; border-radius: 12px; padding: 20px 18px; margin-bottom: 16px; box-shadow: 0 2px 10px rgba(33,47,28,.025); }
.org-checkout-section-title { font-size: 19px; margin-bottom: 3px; }
.org-checkout-section-title i { font-family: FontAwesome; font-size: 16px; margin-right: 8px; color: var(--g-dark); }
.org-checkout-section-note { margin: 0 0 16px; color: #7b796f; font-size: 12px; }
.org-address-list { gap: 10px; }
.org-address-card { background: #fff; border-color: #e0ded6; border-radius: 9px; padding: 15px 16px; }
.org-address-card:has(input:checked) { border-color: #b5c4a5; background: #f7faf4; box-shadow: inset 0 0 0 1px #d9e4d1; }
.org-address-type-badge { background: #e7f0e1; color: var(--g-dark); border-radius: 4px; }
.org-address-detail { font-size: 12px; }
.org-new-address-form { background: #fbfaf7; border-color: #e5e1d8; }
.org-checkout-nav-back {
  display: inline-flex; align-items: center; border: 1px solid #dedbd4; border-radius: 8px;
  padding: 10px 17px; color: #30372e; font-size: 12px;
}
.org-checkout-nav .org-btn-primary { border-radius: 8px !important; background: var(--g-dark); }
.org-checkout-wrap > aside .__cart-total {
  background: #fff; border: 1px solid #e5e1d8; border-radius: 12px; padding: 21px;
  position: sticky; top: 88px; box-shadow: 0 3px 14px rgba(33,47,28,.045);
}
.org-checkout-wrap > aside .cart_total::before {
  content: '▢  Order Summary'; display: block; color: var(--g-dark);
  font: 700 18px var(--font-heading); margin-bottom: 19px;
}
.org-checkout-wrap > aside .cart_title { font-size: 12px; color: #383a32; }
.org-checkout-wrap > aside .cart_value { font-size: 12px; color: #22251e; font-weight: 700 !important; }
.org-checkout-wrap > aside #coupon-code-ajax { display:flex; gap:0; margin-top: 13px; }
.org-checkout-wrap > aside #coupon-code-ajax .form-group { flex:1; margin:0; }
.org-checkout-wrap > aside #coupon-code-ajax .input_code { height:34px; border-radius:7px 0 0 7px; font-size:11px; }
.org-checkout-wrap > aside #coupon-code-ajax button { height:34px; width:68px; padding:0; border-radius:0 7px 7px 0; background:var(--g-dark); font-size:11px; }
.org-checkout-wrap > aside .deal-title { font-size: 10px; color:#3d4238; }
.org-checkout-wrap > aside .order-summery-footer-image { width:30px; height:30px; object-fit:contain; }

@media (max-width: 768px) {
  .org-page-header { padding: 20px 16px 22px; }
  .org-cart-wrap { padding: 14px 12px 42px; }
  .org-cart-inner > .row { margin-left: -4px; margin-right: -4px; }
  .org-cart-inner > .row > section,
  .org-cart-inner > .row > aside { padding-left: 4px; padding-right: 4px; }
  .org-cart-inner .__cart-total { position: static; margin-top: 14px; }
  .org-cart-inner .__cart-table { min-width: 640px; }
  .org-cart-inner .table-responsive { border: 0; }
  .org-cart-inner .__img-62 { width: 70px; height: 64px; }
  .org-cart-inner .__cart-table tbody td { padding: 13px 8px; }
  .org-checkout-wrap { padding: 14px 12px 42px; gap: 14px; }
  .org-checkout-steps { padding: 12px 8px; }
  .org-checkout-step { gap: 5px; font-size: 11px; }
  .org-cstep-line { flex-basis: 12px; }
  .org-checkout-section { padding: 17px 13px; }
  .org-checkout-wrap > aside .__cart-total { position: static; }
  .org-checkout-nav { align-items: stretch; }
  .org-checkout-nav-back { justify-content: center; }
}
@media (max-width: 420px) {
  .org-checkout-step span:last-child { font-size: 10px; }
  .org-cstep-num { width: 25px; height: 25px; }
  .org-address-card { padding: 13px 11px; gap: 9px; }
}

/* ══════════════════════════════════
   RESPONSIVE
══════════════════════════════════ */
@media (max-width: 1024px) {
  .org-features-grid { grid-template-columns: repeat(3, 1fr); }
  .org-features-grid .org-feature-card:nth-child(3) { border-right: none; }
  .org-products-grid { grid-template-columns: repeat(3, 1fr); }
  .org-flagship-inner { grid-template-columns: 1fr 1fr; }
  .org-flagship-center { display: none; }
  .org-footer-top { grid-template-columns: 1fr 1fr 1fr; }
  .org-trust-inner { flex-wrap: wrap; }
  .org-trust-item { min-width: 140px; }
  .org-shop-inner { grid-template-columns: 240px 1fr; }
  .org-track-summary { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 768px) {
  .org-nav-links, .org-order-btn { display: none; }
  .org-hamburger { display: flex; }
  .org-hero-inner { grid-template-columns: 1fr; }
  .org-hero-img-wrap { display: none; }
  .org-hero { min-height: auto; }
  .org-features-grid { grid-template-columns: repeat(2, 1fr); }
  .org-features-grid .org-feature-card { border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); }
  .org-features-grid .org-feature-card:nth-child(even) { border-right: none; }
  .org-products-grid { grid-template-columns: repeat(2, 1fr); }
  .org-reviews-grid { grid-template-columns: 1fr; }
  .org-flagship-inner { grid-template-columns: 1fr; }
  .org-flagship-center { display: block; }
  .org-process-steps { flex-wrap: wrap; justify-content: center; }
  .org-process-arrow { display: none; }
  .org-footer-top { grid-template-columns: 1fr 1fr; }
  .org-trust-item { border-right: none; padding: 14px 16px; }
  .org-cta-inner { grid-template-columns: 1fr; text-align: center; }
  .org-footer-trust-item { border-right: none; padding: 12px 16px; }
  /* Inner pages */
  .org-shop-inner { grid-template-columns: 1fr; }
  .org-shop-sidebar { display: none; }
  .org-account-wrap { padding: 24px 16px 48px; }
  .org-account-sidebar { margin-bottom: 24px; }
  .org-account-nav { position: static; }
  .org-order-row { grid-template-columns: 1fr 1fr; gap: 8px; }
  .org-track-summary { grid-template-columns: 1fr 1fr; }
  .org-track-progress { gap: 0; padding: 20px 12px; }
  .org-track-step { min-width: 70px; }
  .org-track-form-card { padding: 32px 24px; }
  .org-shop-wrap { padding: 20px 16px 48px; }
}
@media (max-width: 480px) {
  .org-features-grid { grid-template-columns: 1fr 1fr; }
  .org-products-grid { grid-template-columns: 1fr 1fr; }
  .org-footer-top { grid-template-columns: 1fr; }
  .org-footer-bottom { flex-direction: column; text-align: center; }
  .org-flagship-inner { grid-template-columns: 1fr; }
  .org-order-row { grid-template-columns: 1fr; }
  .org-track-summary { grid-template-columns: 1fr; }
  .org-order-actions { flex-direction: row; }
  .org-page-header { padding: 20px 16px; }
  .org-account-wrap { padding: 16px 12px 40px; }
}

/* ============================================================
   CART + SHIPPING PAGE REBUILD
   These selectors intentionally come last: the previous theme's
   generic checkout rules load earlier and must not override the
   dedicated organic checkout structure.
   ============================================================ */
.org-page-header { min-height: 112px; padding: 22px max(32px, calc((100vw - 1200px) / 2)) 25px; }
.org-page-header-inner { position: relative; z-index: 1; max-width: 1200px; margin: 0 auto; }
.org-page-title { margin: 7px 0 0; color: #fff; font-size: 31px; line-height: 1.1; }
.org-breadcrumb { margin: 0; }
.org-breadcrumb, .org-breadcrumb a { color: rgba(255,255,255,.75); font-size: 12px; }
.org-breadcrumb span { color: rgba(255,255,255,.85); }

.org-cart-wrap { background: #fbfaf7; padding: 20px 24px 8px; }
.org-cart-inner { max-width: 1200px; }
.org-cart-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 18px; align-items: start; }
.org-cart-content { min-width: 0; }
.org-cart-card, .org-order-summary, .org-cart-note {
  background: #fff; border: 1px solid #e8e4db; border-radius: 12px; box-shadow: 0 2px 14px rgba(24,35,21,.035);
}
.org-cart-card { overflow: hidden; margin-bottom: 14px; }
.org-cart-card-header { padding: 21px 19px 12px; color: #262921; font-size: 13px; }
.org-cart-card-header a { color: var(--g-dark); font-weight: 800; text-decoration: underline; }
.org-cart-table-scroll { overflow-x: auto; padding: 0 19px; }
.org-cart-table { width: 100%; min-width: 640px; border-collapse: collapse; table-layout: auto; }
.org-cart-table th { background: #f6f5f1; color: #383a33; font-size: 10px; font-weight: 800; letter-spacing: .02em; padding: 12px 10px; text-transform: uppercase; text-align: left; white-space: nowrap; }
.org-cart-table td { border-bottom: 1px solid #eeeae2; color: #23251f; font-size: 12px; padding: 17px 10px; vertical-align: middle; }
.org-cart-table tr:last-child td { border-bottom: 0; }
.org-cart-index { width: 38px; text-align: center; }
.org-cart-product { display: flex; align-items: center; gap: 11px; min-width: 180px; }
.org-cart-product-image { flex: 0 0 92px; height: 80px; overflow: hidden; border-radius: 7px; border: 1px solid #e9e4da; background: #f8f6f1; }
.org-cart-product-image img { height: 100%; width: 100%; object-fit: cover; }
.org-cart-product-name { display: block; color: #273326; font-size: 12px; font-weight: 700; line-height: 1.45; text-decoration: none; }
.org-cart-product-name:hover { color: var(--gold); }
.org-cart-variation { display: block; color: #77756d; font-size: 10px; margin-top: 3px; }
.org-cart-money { color: var(--g-dark); font-size: 13px; font-weight: 800; white-space: nowrap; }
.org-cart-table del { color: #9a968d; display: block; font-size: 10px; margin-top: 3px; }
.org-cart-quantity { width: 80px; height: 36px; border: 1px solid #dcd9d2; border-radius: 7px; color: #272a24; font: 600 13px var(--font-body); padding: 0 9px; }
.org-cart-remove { background: none; border: 0; color: #bd5252; cursor: pointer; font-size: 16px; padding: 5px; }
.org-cart-remove:hover { color: #8d2525; }
.org-cart-delivery { align-items: center; border-top: 1px solid #eeeae2; display: flex; gap: 11px; padding: 15px 19px; }
.org-cart-delivery-global { background: #fff; border: 1px solid #e8e4db; border-radius: 11px; margin: 0 0 14px; }
.org-cart-delivery-icon { align-items: center; background: #eef4e9; border-radius: 50%; color: var(--g-dark); display: flex; flex: 0 0 34px; height: 34px; justify-content: center; }
.org-cart-delivery-label { display: grid; flex: 1; }
.org-cart-delivery-label strong { color: #2a2d28; font-size: 12px; }
.org-cart-delivery-label span { color: #7d7b73; font-size: 10px; }
.org-cart-delivery select { background: #fff; border: 1px solid #dedbd4; border-radius: 7px; color: #343630; font: 600 11px var(--font-body); max-width: 290px; padding: 9px 30px 9px 10px; }
.org-cart-note { margin: 14px 0; padding: 15px 18px; }
.org-cart-note label { color: #363832; display: block; font-size: 12px; font-weight: 700; margin-bottom: 8px; }
.org-cart-note label span { color: #88857d; font-weight: 400; }
.org-cart-note textarea { border: 1px solid #dfddd7; border-radius: 8px; display: block; font: 12px var(--font-body); min-height: 74px; padding: 11px; resize: vertical; width: 100%; }
.org-cart-note textarea:focus { border-color: var(--g-mid); box-shadow: 0 0 0 3px rgba(44,74,26,.09); outline: 0; }
.org-cart-actions { align-items: center; display: flex; justify-content: space-between; padding: 4px 0 14px; }
.org-cart-continue, .org-cart-checkout { align-items: center; border-radius: 8px; display: inline-flex; font: 700 12px var(--font-body); gap: 8px; justify-content: center; min-height: 42px; padding: 0 17px; text-decoration: none; }
.org-cart-continue { background: #fff; border: 1px solid #dbd8d0; color: #2c332b; }
.org-cart-continue:hover { border-color: var(--g-dark); color: var(--g-dark); }
.org-cart-checkout { background: var(--g-dark); border: 1px solid var(--g-dark); color: #fff; cursor: pointer; min-width: 172px; }
.org-cart-checkout:hover { background: var(--g-mid); }
.org-cart-empty { background: #fff; border: 1px solid #e8e4db; border-radius: 12px; color: #746f65; padding: 40px; text-align: center; }

.org-order-summary { padding: 20px; position: sticky; top: 82px; }
.org-order-summary h2 { align-items: center; color: #1f3321; display: flex; font: 700 18px var(--font-heading); gap: 10px; margin: 0 0 16px; }
.org-order-summary h2 i { font-size: 16px; }
.org-summary-products { border-bottom: 1px solid #ece9e2; margin-bottom: 12px; padding-bottom: 9px; }
.org-summary-product { align-items: center; display: grid; gap: 9px; grid-template-columns: 43px 1fr auto; padding: 4px 0 10px; }
.org-summary-product img { background: #f5f3ed; border: 1px solid #e9e4da; border-radius: 5px; height: 43px; object-fit: cover; width: 43px; }
.org-summary-product strong, .org-summary-product span { display: block; line-height: 1.3; }
.org-summary-product strong { color: #2d302a; font-size: 11px; }
.org-summary-product span { color: #77746b; font-size: 10px; margin-top: 2px; }
.org-summary-product b { font-size: 11px; white-space: nowrap; }
.org-summary-totals { border-bottom: 1px solid #ece9e2; padding: 3px 0 10px; }
.org-summary-totals > div { display: flex; font-size: 12px; justify-content: space-between; padding: 5px 0; }
.org-summary-totals span { color: #3d4039; }
.org-summary-totals b { color: #20231e; font-weight: 700; }
.org-summary-coupon { display: flex; margin: 14px 0; }
.org-summary-coupon > div { align-items: center; border: 1px solid #dcd9d1; border-radius: 7px 0 0 7px; display: flex; flex: 1; padding: 0 9px; }
.org-summary-coupon i { color: #65705e; font-size: 13px; }
.org-summary-coupon input { border: 0; font: 11px var(--font-body); height: 34px; min-width: 0; outline: 0; padding: 0 8px; width: 100%; }
.org-summary-coupon button { background: var(--g-dark); border: 0; border-radius: 0 7px 7px 0; color: #fff; cursor: pointer; font: 700 11px var(--font-body); padding: 0 15px; }
.org-summary-grand-total { align-items: end; display: flex; justify-content: space-between; padding: 0 0 14px; }
.org-summary-grand-total span { color: #272a25; display: grid; font-size: 14px; font-weight: 800; }
.org-summary-grand-total small { color: #77746d; font-size: 9px; font-weight: 400; margin-top: 1px; }
.org-summary-grand-total strong { color: var(--g-dark); font-size: 21px; line-height: 1; }
.org-summary-assurances { background: linear-gradient(135deg, #f1f6ed, #f8f8f2); border-radius: 9px; display: grid; gap: 12px; padding: 14px 11px; }
.org-summary-assurances > div { align-items: center; display: flex; gap: 10px; }
.org-summary-assurances i { align-items: center; background: #e6f0df; border-radius: 50%; color: var(--g-dark); display: flex; font-size: 13px; height: 28px; justify-content: center; width: 28px; }
.org-summary-assurances span { display: grid; }
.org-summary-assurances strong { color: #30352d; font-size: 11px; }
.org-summary-assurances small { color: #6e7169; font-size: 9px; }
.org-cart-assurances { background: #fff; border: 1px solid #e8e4db; border-radius: 10px; display: grid; gap: 0; grid-template-columns: repeat(4, 1fr); margin: 2px auto 55px; max-width: 1200px; }
.org-cart-assurances > div { align-items: center; display: flex; gap: 12px; justify-content: center; min-height: 64px; padding: 10px; position: relative; }
.org-cart-assurances > div + div::before { background: #e1ddd5; content: ''; height: 35px; left: 0; position: absolute; width: 1px; }
.org-cart-assurances i { color: var(--g-dark); font-size: 20px; }
.org-cart-assurances span { display: grid; }
.org-cart-assurances strong { color: #2f342c; font-size: 10px; }
.org-cart-assurances small { color: #747169; font-size: 9px; }

.org-checkout-wrap { background: #fbfaf7; gap: 18px; grid-template-columns: minmax(0, 1fr) 340px; max-width: none; padding: 20px max(24px, calc((100vw - 1200px) / 2)) 58px; }
.org-checkout-main { min-width: 0; }
.org-checkout-steps { background: #fff; border: 1px solid #e8e4db; border-radius: 11px; box-shadow: 0 2px 14px rgba(24,35,21,.03); margin: 0 0 18px; padding: 16px 30px; }
.org-checkout-step { color: #2c2f2a; font-size: 12px; justify-content: flex-start; }
.org-checkout-step.done { color: #2c2f2a; }
.org-checkout-step.active { color: var(--g-dark); font-weight: 800; }
.org-cstep-num { border-color: #d9d8d3; font-size: 11px; height: 28px; width: 28px; }
.org-checkout-step.done .org-cstep-num { border-color: #8ba281; color: var(--g-dark); }
.org-checkout-step.active .org-cstep-num { background: var(--g-dark); border-color: var(--g-dark); }
.org-cstep-line { background: #d9d8d3; flex: 0 1 105px; height: 1px; margin: 0 12px; }
.org-checkout-section { background: #fff; border: 1px solid #e8e4db; border-radius: 12px; box-shadow: 0 2px 14px rgba(24,35,21,.03); margin-bottom: 16px; padding: 20px 18px; }
.org-checkout-section-title { color: #263126; font-size: 19px; margin: 0 0 4px; }
.org-checkout-section-note { margin: 0 0 15px; }
.org-address-card { border-color: #e3e0d8; border-radius: 9px; padding: 14px 15px; }
.org-address-card:has(input:checked) { background: #f7faf4; border-color: #b8c7ad; box-shadow: inset 0 0 0 1px #d8e2d0; }
.org-address-card:has(input:checked)::after { align-items: center; background: #e7f0e1; border-radius: 50%; color: var(--g-dark); content: '\f00c'; display: flex; font-family: FontAwesome; font-size: 10px; height: 22px; justify-content: center; width: 22px; }
.org-address-type-badge { background: #e8f1e2; border-radius: 4px; color: var(--g-dark); }
.org-address-edit { border: 1px solid #e4e0d9; border-radius: 5px; color: #565b52; font-size: 11px; padding: 4px 7px; }
.org-checkout-nav { margin-top: 20px; }
.org-checkout-next { align-items: flex-end; display: grid; gap: 5px; justify-items: end; }
.org-checkout-next .org-btn-primary { border-radius: 8px !important; border: 0; cursor: pointer; font-size: 12px; min-height: 42px; padding: 0 22px; }
.org-checkout-next small { color: #6f706a; font-size: 10px; }
.org-checkout-next small i { margin-right: 4px; }
.org-checkout-wrap .org-order-summary { top: 82px; }

@media (max-width: 900px) {
  .org-cart-layout, .org-checkout-wrap { grid-template-columns: 1fr; }
  .org-order-summary { position: static; }
  .org-checkout-wrap { padding-left: 16px; padding-right: 16px; }
}
@media (max-width: 640px) {
  .org-page-header { padding-left: 16px; padding-right: 16px; }
  .org-page-title { font-size: 27px; }
  .org-cart-wrap { padding: 14px 12px 6px; }
  .org-cart-card-header, .org-cart-table-scroll { padding-left: 12px; padding-right: 12px; }
  .org-cart-table td, .org-cart-table th { padding-left: 7px; padding-right: 7px; }
  .org-cart-product-image { flex-basis: 65px; height: 60px; }
  .org-cart-table { min-width: 580px; }
  .org-cart-delivery { align-items: stretch; flex-wrap: wrap; }
  .org-cart-delivery select { max-width: none; width: 100%; }
  .org-cart-actions { align-items: stretch; flex-direction: column-reverse; gap: 10px; }
  .org-cart-continue, .org-cart-checkout { width: 100%; }
  .org-cart-assurances { grid-template-columns: repeat(2, 1fr); margin: 0 12px 36px; }
  .org-cart-assurances > div + div::before { display: none; }
  .org-checkout-steps { padding: 12px; }
  .org-checkout-step { flex: 0 0 auto; font-size: 10px; gap: 6px; }
  .org-cstep-line { flex: 1 1 10px; margin: 0 6px; }
  .org-checkout-nav { align-items: stretch; flex-direction: column-reverse; }
  .org-checkout-nav-back { justify-content: center; }
  .org-checkout-next { justify-items: stretch; }
  .org-checkout-next .org-btn-primary { width: 100%; }
  .org-checkout-next small { text-align: center; }
}

/* ============================================================
   STATIC PAGES — shared container & prose
   ============================================================ */
.org-static-section { padding: 64px 24px; background: #fff; }
.org-static-container { max-width: 960px; margin: 0 auto; }
.org-static-prose { font-size: 16px; line-height: 1.85; color: #3a3228; }
.org-static-prose h2 { font-family: var(--font-heading); font-size: clamp(26px,4vw,38px); color: var(--g-dark); margin: 0 0 20px; font-weight: 600; }
.org-static-prose h3 { font-family: var(--font-heading); font-size: clamp(20px,3vw,28px); color: var(--g-dark); margin: 32px 0 12px; }
.org-static-prose p { margin: 0 0 18px; }
.org-static-prose ul, .org-static-prose ol { padding-left: 22px; margin: 0 0 18px; }
.org-static-prose li { margin-bottom: 8px; }
.org-static-prose strong { color: var(--g-dark); }
.org-static-prose a { color: var(--g-dark); text-decoration: underline; }
.org-policy-wrap { max-width: 780px; }

/* section divider */
.org-section-divider { text-align: center; padding: 32px 0; color: var(--gold); font-size: 20px; letter-spacing: 12px; }

/* dark bg section (used in our-story why-bilona) */
.org-dark-section { background: var(--g-dark); padding: 80px 24px; }
.org-dark-section .org-static-container { max-width: 960px; margin: 0 auto; }
.org-section-eyebrow { font-family: var(--font-body); font-size: 11px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); margin-bottom: 12px; }
.org-section-heading { font-family: var(--font-heading); font-size: clamp(28px,4vw,44px); font-weight: 600; margin: 0 0 20px; }

/* Why Bilona cards */
.org-why-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-top: 16px; }
.org-why-card { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); border-radius: 16px; padding: 28px 24px; }
.org-why-icon { font-size: 32px; margin-bottom: 14px; }
.org-why-card h4 { font-family: var(--font-heading); font-size: 20px; color: var(--gold); margin: 0 0 10px; font-weight: 600; }
.org-why-card p { font-size: 14px; color: rgba(255,255,255,.72); line-height: 1.7; margin: 0; }

/* ============================================================
   COMING SOON PAGE
   ============================================================ */
.org-coming-soon-wrap { min-height: 60vh; display: flex; align-items: center; justify-content: center; padding: 80px 24px; background: linear-gradient(160deg, #f8f5ee 0%, #fff 100%); }
.org-coming-soon-inner { max-width: 560px; text-align: center; }
.org-coming-soon-badge { display: inline-block; background: var(--gold); color: var(--g-dark); font-size: 11px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; padding: 6px 18px; border-radius: 50px; margin-bottom: 24px; }
.org-coming-soon-title { font-family: var(--font-heading); font-size: clamp(32px,5vw,52px); color: var(--g-dark); margin: 0 0 16px; font-weight: 600; line-height: 1.1; }
.org-coming-soon-sub { font-size: 17px; color: var(--text-muted); line-height: 1.7; margin: 0 0 36px; }
.org-coming-soon-features { display: flex; justify-content: center; gap: 28px; flex-wrap: wrap; margin-bottom: 12px; }
.org-csf-item { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: var(--g-dark); }
.org-csf-icon { font-size: 18px; }

/* ============================================================
   FAQ ACCORDION
   ============================================================ */
.org-faq-list { display: flex; flex-direction: column; gap: 12px; }
.org-faq-item { border: 1px solid #e8e0d0; border-radius: 14px; overflow: hidden; background: #fff; transition: box-shadow .2s; }
.org-faq-item.open { box-shadow: 0 4px 24px rgba(37,87,52,.08); }
.org-faq-question { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 22px; background: none; border: none; cursor: pointer; font-family: var(--font-heading); font-size: 18px; font-weight: 600; color: var(--g-dark); text-align: left; }
.org-faq-icon { flex-shrink: 0; font-size: 22px; font-weight: 400; color: var(--gold); line-height: 1; }
.org-faq-answer { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
.org-faq-answer-inner { padding: 0 22px 20px; font-size: 15px; line-height: 1.75; color: #5a5040; }
.org-faq-item.open .org-faq-question { color: var(--gold); }

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.org-contact-grid { display: grid; grid-template-columns: 340px 1fr; gap: 56px; align-items: start; }
.org-contact-info-title { font-family: var(--font-heading); font-size: 26px; color: var(--g-dark); margin: 0 0 28px; font-weight: 600; }
.org-contact-detail { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 22px; }
.org-contact-icon { width: 38px; height: 38px; border-radius: 50%; background: rgba(37,87,52,.08); display: flex; align-items: center; justify-content: center; color: var(--g-dark); flex-shrink: 0; font-size: 15px; }
.org-contact-detail strong { display: block; font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted); margin-bottom: 3px; }
.org-contact-detail a, .org-contact-detail span { font-size: 15px; color: #3a3228; text-decoration: none; }
.org-contact-detail a:hover { color: var(--g-dark); text-decoration: underline; }
.org-whatsapp-cta { display: inline-flex; align-items: center; margin-top: 24px; background: #25D366; color: #fff; padding: 12px 22px; border-radius: 50px; font-size: 14px; font-weight: 600; font-family: var(--font-body); text-decoration: none; transition: opacity .2s; }
.org-whatsapp-cta:hover { opacity: .88; color: #fff; }
/* Form */
.org-contact-form-wrap { background: #faf8f4; border-radius: 20px; padding: 36px; }
.org-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.org-form-group { display: flex; flex-direction: column; margin-bottom: 18px; }
.org-form-group label { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted); margin-bottom: 6px; }
.org-form-control { padding: 12px 16px; border: 1.5px solid #e0d8c8; border-radius: 10px; font-family: var(--font-body); font-size: 15px; color: #2a2218; background: #fff; transition: border-color .2s; outline: none; }
.org-form-control:focus { border-color: var(--g-dark); }
.org-form-control.is-invalid { border-color: #e53e3e; }
textarea.org-form-control { resize: vertical; min-height: 120px; }
.org-alert-success { background: #f0fff4; border: 1px solid #9ae6b4; color: #276749; padding: 14px 18px; border-radius: 10px; margin-bottom: 20px; font-size: 14px; }
.org-alert-error { background: #fff5f5; border: 1px solid #feb2b2; color: #c53030; padding: 14px 18px; border-radius: 10px; margin-bottom: 20px; font-size: 14px; }

/* ============================================================
   CORPORATE GIFTING PAGE
   ============================================================ */
.org-gift-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; margin-top: 40px; }
.org-gift-card { border: 1px solid #e8e0d0; border-radius: 16px; padding: 28px 24px; background: #faf8f4; transition: box-shadow .2s; }
.org-gift-card:hover { box-shadow: 0 6px 28px rgba(37,87,52,.1); }
.org-gift-icon { font-size: 32px; margin-bottom: 12px; }
.org-gift-card h4 { font-family: var(--font-heading); font-size: 20px; color: var(--g-dark); margin: 0 0 8px; font-weight: 600; }
.org-gift-card p { font-size: 14px; color: var(--text-muted); line-height: 1.7; margin: 0; }

/* ============================================================
   RESPONSIVE — static pages
   ============================================================ */
@media (max-width: 768px) {
  .org-why-grid { grid-template-columns: 1fr 1fr; }
  .org-contact-grid { grid-template-columns: 1fr; gap: 32px; }
  .org-form-row { grid-template-columns: 1fr; }
  .org-gift-grid { grid-template-columns: 1fr; }
  .org-static-section { padding: 48px 16px; }
  .org-dark-section { padding: 56px 16px; }
  .org-contact-form-wrap { padding: 24px 18px; }
}
@media (max-width: 480px) {
  .org-why-grid { grid-template-columns: 1fr; }
  .org-coming-soon-features { gap: 16px; }
}

/* ============================================================
   AUTH PAGES — Login & Register
   ============================================================ */
.org-auth-wrap {
  display: grid;
  grid-template-columns: 420px 1fr;
  min-height: calc(100vh - 130px);
}
.org-auth-brand {
  background: var(--g-dark);
  position: relative;
  overflow: hidden;
}
.org-auth-brand::before {
  content: '';
  position: absolute; inset: 0;
  background:
    radial-gradient(circle 120px at 10% 20%, rgba(200,150,12,.18) 0%, transparent 70%),
    radial-gradient(circle 80px at 90% 80%, rgba(200,150,12,.14) 0%, transparent 70%);
  pointer-events: none;
}
.org-auth-brand-inner {
  position: relative; z-index: 1;
  padding: 52px 44px;
  display: flex; flex-direction: column; height: 100%;
}
.org-auth-logo { margin-bottom: 48px; }
.org-auth-tagline { flex: 1; }
.org-auth-tagline h2 {
  font-family: var(--font-heading);
  font-size: clamp(30px, 3vw, 42px);
  color: #fff; font-weight: 600; line-height: 1.2; margin: 0 0 18px;
}
.org-auth-tagline h2 em { color: var(--gold); font-style: normal; }
.org-auth-tagline p { color: rgba(255,255,255,.62); font-size: 15px; line-height: 1.75; margin: 0; }
.org-auth-trust { margin-top: 40px; display: flex; flex-direction: column; gap: 14px; }
.org-auth-trust-item {
  display: flex; align-items: center; gap: 12px;
  font-size: 13px; color: rgba(255,255,255,.75); font-weight: 500;
}
.org-auth-trust-item span:first-child { font-size: 18px; }
/* Form panel */
.org-auth-form-panel {
  background: #faf8f4;
  display: flex; align-items: center; justify-content: center;
  padding: 48px 24px;
}
.org-auth-form-inner {
  width: 100%; max-width: 440px;
  background: #fff; border-radius: 20px;
  padding: 40px 36px;
  box-shadow: 0 4px 32px rgba(0,0,0,.06);
}
.org-auth-form-header { margin-bottom: 28px; }
.org-auth-form-header h1 {
  font-family: var(--font-heading);
  font-size: 32px; color: var(--g-dark); font-weight: 600; margin: 0 0 6px;
}
.org-auth-form-header p { font-size: 14px; color: var(--text-muted); margin: 0; }
/* Auth divider */
.org-auth-divider {
  display: flex; align-items: center; gap: 12px;
  margin: 20px 0; color: var(--text-muted); font-size: 12px;
}
.org-auth-divider::before, .org-auth-divider::after {
  content: ''; flex: 1; height: 1px; background: #e8e0d0;
}
/* Social buttons */
.org-auth-social { display: flex; gap: 10px; flex-wrap: wrap; }
.org-auth-social-btn {
  flex: 1; min-width: 100px; padding: 10px 14px;
  border: 1.5px solid #e0d8c8; border-radius: 10px;
  font-size: 13px; font-weight: 600; font-family: var(--font-body);
  color: #3a3228; text-decoration: none; text-align: center;
  background: #faf8f4; transition: border-color .2s;
  display: flex; align-items: center; justify-content: center; gap: 6px;
}
.org-auth-social-btn:hover { border-color: var(--g-dark); color: var(--g-dark); }

/* ============================================================
   PRODUCT DETAILS PAGE
   ============================================================ */
.org-pd-wrap { max-width: 1280px; margin: 0 auto; padding: 32px 32px 64px; }
.org-pd-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; margin-bottom: 64px; }
/* Gallery */
.org-pd-gallery { position: sticky; top: 80px; }
.org-pd-main-img {
  background: #f8f5ee; border-radius: 16px; overflow: hidden;
  aspect-ratio: 1; display: flex; align-items: center; justify-content: center;
  margin-bottom: 12px;
}
.org-pd-hero-img { width: 100%; height: 100%; object-fit: contain; }
.cz-preview-item { display: none !important; width: 100%; height: 100%; align-items: center; justify-content: center; }
.cz-preview-item.active { display: flex !important; }
.org-pd-thumbs { display: flex; gap: 8px; flex-wrap: wrap; }
.org-pd-thumb {
  width: 72px; height: 72px; border-radius: 10px; overflow: hidden;
  border: 2px solid transparent; cursor: pointer; text-decoration: none; flex-shrink: 0;
  background: #f8f5ee;
}
.org-pd-thumb.active { border-color: var(--g-dark); }
.org-pd-thumb img { width: 100%; height: 100%; object-fit: contain; }
/* Info */
.org-pd-name {
  font-family: var(--font-heading);
  font-size: clamp(24px, 3vw, 36px); font-weight: 600; color: var(--g-dark);
  margin: 0 0 12px; line-height: 1.2;
}
.org-pd-meta { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; flex-wrap: wrap; }
.org-pd-rating { display: flex; align-items: center; gap: 3px; }
.org-pd-rating .org-star { color: #ddd; font-size: 16px; }
.org-pd-rating .org-star.filled { color: var(--gold); }
.org-pd-rating-val { font-weight: 700; font-size: 14px; color: var(--g-dark); margin-left: 4px; }
.org-pd-rating-count { font-size: 12px; color: var(--text-muted); }
.org-pd-meta-sep { color: #ddd; }
.org-pd-orders-count { font-size: 12px; color: var(--text-muted); }
/* Price */
.org-pd-price-wrap { display: flex; align-items: baseline; gap: 10px; margin-bottom: 4px; flex-wrap: wrap; }
.org-pd-price-current { font-size: 28px; font-weight: 800; color: var(--g-dark); }
.org-pd-price-old { font-size: 16px; color: var(--text-muted); text-decoration: line-through; }
.org-pd-discount-badge {
  background: #e8f5e9; color: #276749; font-size: 11px; font-weight: 700;
  padding: 3px 10px; border-radius: 20px;
}
/* Stock badge */
.org-pd-stock { font-size: 13px; font-weight: 600; margin-bottom: 20px; }
.org-pd-stock.in { color: #276749; }
.org-pd-stock.out { color: #e53e3e; }
/* Options */
.org-pd-option { margin-bottom: 20px; }
.org-pd-option-label { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted); margin-bottom: 8px; }
.org-pd-colors { display: flex; gap: 8px; flex-wrap: wrap; }
.org-pd-color-swatch {
  width: 32px; height: 32px; border-radius: 50%;
  border: 3px solid transparent; cursor: pointer; transition: border-color .2s;
  outline: 2px solid transparent; outline-offset: 2px;
}
.org-pd-color-swatch:has(input:checked) { outline-color: var(--g-dark); }
.org-pd-color-swatch input { position: absolute; opacity: 0; width: 0; height: 0; }
.org-pd-variants { display: flex; gap: 8px; flex-wrap: wrap; }
.org-pd-variant input { position: absolute; opacity: 0; width: 0; height: 0; }
.org-pd-variant span {
  display: inline-block; padding: 7px 16px; border: 1.5px solid #e0d8c8;
  border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer; transition: all .2s;
}
.org-pd-variant:has(input:checked) span { border-color: var(--g-dark); background: rgba(26,46,16,.06); color: var(--g-dark); }
/* Qty */
.org-pd-qty-wrap { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.org-pd-qty { display: flex; align-items: center; gap: 8px; }
.org-pd-qty .btn-number {
  width: 36px; height: 36px; border-radius: 50%; border: 1.5px solid #e0d8c8;
  background: #faf8f4; font-size: 18px; cursor: pointer; display: flex; align-items: center; justify-content: center;
  color: var(--g-dark); font-weight: 700; transition: all .2s;
}
.org-pd-qty .btn-number:hover { border-color: var(--g-dark); background: var(--g-dark); color: #fff; }
.org-pd-total-label { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--text-muted); }
.org-pd-total-val { font-size: 20px; font-weight: 800; color: var(--g-dark); margin-left: 6px; }
/* CTA buttons */
.org-pd-ctas { display: flex; gap: 10px; margin-top: 24px; flex-wrap: wrap; }
.org-pd-cart-btn {
  font-family: var(--font-body); font-weight: 600;
  background: #fff; color: var(--g-dark);
  border: 2px solid var(--g-dark); border-radius: 50px; font-size: 14px;
  padding: 12px 24px; cursor: pointer; transition: all .2s;
  display: inline-flex; align-items: center; gap: 6px;
}
.org-pd-cart-btn:hover { background: var(--g-dark); color: #fff; }
.org-pd-wish-btn {
  background: #faf8f4; border: 1.5px solid #e0d8c8; color: var(--text-muted);
  border-radius: 50px; padding: 12px 16px; font-size: 15px; cursor: pointer; transition: all .2s;
  display: inline-flex; align-items: center; gap: 6px;
}
.org-pd-wish-btn.wishlisted { color: #e53e3e; border-color: #e53e3e; }
.org-pd-wish-btn:hover { color: #e53e3e; border-color: #e53e3e; }
/* Trust */
.org-pd-trust { display: flex; gap: 20px; margin-top: 24px; padding-top: 20px; border-top: 1px solid #ece6d8; flex-wrap: wrap; }
.org-pd-trust-item { display: flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 600; color: var(--text-muted); }
.org-pd-trust-item span:first-child { font-size: 16px; }
/* Tabs */
.org-pd-tabs-section { border-top: 1px solid #ece6d8; padding-top: 40px; }
.org-pd-tabs { display: flex; gap: 0; border-bottom: 2px solid #ece6d8; margin-bottom: 32px; }
.org-pd-tab {
  font-family: var(--font-body); font-size: 14px; font-weight: 600;
  background: none; border: none; cursor: pointer; padding: 12px 24px;
  color: var(--text-muted); border-bottom: 2px solid transparent; margin-bottom: -2px;
  transition: all .2s;
}
.org-pd-tab.active { color: var(--g-dark); border-bottom-color: var(--g-dark); }
.org-pd-tab-content { display: none; }
.org-pd-tab-content.active { display: block; }


/* ============================================================
   PRODUCT REVIEW FORM
   ============================================================ */

.org-product-review-form {
  margin-bottom: 28px;
  padding: 22px;
  background: #f8faf8;
  border: 1px solid #e6ece6;
  border-radius: 14px;
}

.org-product-review-title {
  margin: 0 0 5px;
  font-size: 18px;
  font-weight: 800;
  color: var(--g-dark);
}

.org-product-review-note {
  margin: 0 0 18px;
  font-size: 12px;
  color: var(--muted);
}

/* Clickable 1–5 star selector */
.org-product-review-rating {
  display: flex;
  /*flex-direction: row-reverse;*/
  justify-content: flex-end;
  gap: 3px;
  margin-bottom: 16px;
}

.org-product-review-rating input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.org-product-review-rating label {
  font-size: 30px;
  line-height: 1;
  color: #d8ddd8 !important;
  cursor: pointer;
  transition: color .15s ease, transform .15s ease;
}

.org-product-review-rating label:hover,
.org-product-review-rating label:hover ~ label,
.org-product-review-rating input:checked + label,
.org-product-review-rating input:checked ~ label {
  color: var(--gold) !important;
}

.org-product-review-rating label:hover {
  transform: scale(1.08);
}

/* Comment box */
.org-product-review-comment {
  width: 100%;
  min-height: 110px;
  resize: vertical;
  border: 1px solid #dfe5df;
  border-radius: 10px;
  padding: 12px 14px;
  font-family: var(--font-body);
  font-size: 13px;
  color: var(--text);
  background: #fff;
  outline: none;
}

.org-product-review-comment:focus {
  border-color: var(--g-dark);
  box-shadow: 0 0 0 3px rgba(26,46,16,.08);
}

/* Submit button */
.org-product-review-submit {
  margin-top: 12px;
  border: none;
  border-radius: 50px;
  padding: 11px 22px;
  background: var(--g-dark);
  color: #fff;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all .2s ease;
}

.org-product-review-submit:hover {
  background: var(--g-mid);
  transform: translateY(-1px);
}

/* Login button */
.org-product-review-login {
  display: inline-block;
  margin-top: 10px;
  padding: 10px 20px;
  border-radius: 50px;
  background: var(--g-dark);
  color: #fff !important;
  text-decoration: none !important;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 700;
  transition: all .2s ease;
}

.org-product-review-login:hover {
  background: var(--g-mid);
  color: #fff !important;
}

/* Mobile */
@media (max-width: 576px) {
  .org-product-review-form {
    padding: 16px;
    margin-bottom: 22px;
  }

  .org-product-review-title {
    font-size: 16px;
  }

  .org-product-review-rating label {
    font-size: 27px;
  }

  .org-product-review-submit,
  .org-product-review-login {
    width: 100%;
    text-align: center;
  }
}


/* ============================================================
   PRODUCT REVIEWS LIST
   ============================================================ */

.org-product-reviews-list {
  width: 100%;
}

.org-product-review-card {
  padding: 20px 0;
  border-bottom: 1px solid var(--border);
}

.org-product-review-card:first-child {
  padding-top: 0;
}

.org-product-review-card:last-child {
  border-bottom: none;
}

.org-product-review-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.org-product-review-user {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.org-product-review-avatar {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border-radius: 50%;
  background: #edf3e9;
  color: var(--g-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
}

.org-product-review-user-info {
  min-width: 0;
}

.org-product-review-user-name {
  margin: 0;
  color: var(--text);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.3;
}

.org-product-review-date {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 10px;
}

.org-product-review-rating {
  display: flex;
  align-items: center;
  gap: 3px;
  margin-top: 8px;
}

.org-product-review-rating-star {
  color: var(--gold);
  font-size: 19px;
  line-height: 1;
}

.org-product-review-rating-value {
  margin-left: 4px;
  color: var(--muted);
  font-size: 11px;
}

.org-product-review-title-text {
  margin: 10px 0 5px;
  color: var(--text);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.4;
}

.org-product-review-comment-text {
  margin: 0;
  color: var(--text);
  font-size: 13px;
  line-height: 1.7;
  word-break: break-word;
}

.org-product-review-images {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
}

.org-product-review-image {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid var(--border);
  cursor: pointer;
  background: #f7f7f7;
  transition: transform .15s ease, box-shadow .15s ease;
}

.org-product-review-image:hover {
  transform: translateY(-1px);
  box-shadow: 0 5px 14px rgba(0,0,0,.10);
}

.org-product-review-own {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 8px;
  padding: 4px 9px;
  border-radius: 30px;
  background: #edf5e9;
  color: var(--g-dark);
  font-size: 10px;
  font-weight: 800;
}

.org-product-review-empty {
  padding: 24px 0;
  text-align: center;
  color: var(--muted);
  font-size: 13px;
}

.org-product-review-pagination {
  display: flex;
  justify-content: center;
  margin-top: 22px;
}

.org-product-review-pagination nav {
  display: flex;
  justify-content: center;
}

.org-product-review-pagination .pagination {
  margin: 0;
  gap: 5px;
}

.org-product-review-pagination .page-link {
  border-radius: 8px !important;
  min-width: 34px;
  text-align: center;
  font-size: 12px;
  color: var(--g-dark);
  border-color: var(--border);
}

.org-product-review-pagination .page-item.active .page-link {
  background: var(--g-dark);
  border-color: var(--g-dark);
  color: #fff;
}

@media (max-width: 576px) {

  .org-product-review-card {
    padding: 17px 0;
  }

  .org-product-review-head {
    gap: 10px;
  }

  .org-product-review-avatar {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
    font-size: 12px;
  }

  .org-product-review-user-name {
    font-size: 12px;
  }

  .org-product-review-title-text {
    font-size: 13px;
  }

  .org-product-review-comment-text {
    font-size: 12px;
    line-height: 1.65;
  }

  .org-product-review-image {
    width: 52px;
    height: 52px;
  }
}


/* ============================================================
   PRODUCT REVIEW — STEP 5B
   Review action button + modal + fields
   ============================================================ */

/* ── Review action area ───────────────────────────────────── */

.org-review-action {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0 0 24px;
}

.org-review-open-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 10px 20px;
  border: 1.5px solid var(--g-dark);
  border-radius: 50px;
  background: var(--g-dark);
  color: #fff;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  transition:
    background .2s ease,
    border-color .2s ease,
    transform .2s ease,
    box-shadow .2s ease;
}

.org-review-open-btn:hover {
  background: var(--g-mid);
  border-color: var(--g-mid);
  color: #fff;
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(26,46,16,.14);
}

.org-review-open-btn:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(200,150,12,.18);
}


/* ── Review modal ─────────────────────────────────────────── */

#productReviewModal .modal-dialog {
  max-width: 520px;
  width: calc(100% - 24px);
  margin: 1.75rem auto;
}

#productReviewModal .modal-content {
  border: none;
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 24px 80px rgba(0,0,0,.20);
}

.org-review-modal-content {
  width: 100%;
}


/* ── Modal header ─────────────────────────────────────────── */

.org-review-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px 18px;
  background: var(--g-dark);
  color: #fff;
}

.org-review-modal-header > div {
  min-width: 0;
}

.org-review-modal-kicker {
  margin-bottom: 5px;
  color: var(--gold-pale);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1.6px;
  line-height: 1.2;
  text-transform: uppercase;
}

.org-review-modal-header h5 {
  margin: 0;
  color: #fff;
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.3;
}

.org-review-modal-header p {
  margin: 5px 0 0;
  max-width: 420px;
  color: rgba(255,255,255,.72);
  font-size: 11px;
  line-height: 1.5;
}

.org-review-modal-close {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%;
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.8);
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
  text-align: center;
  cursor: pointer;
  transition:
    background .2s ease,
    color .2s ease,
    border-color .2s ease;
}

.org-review-modal-close:hover {
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.45);
  color: #fff;
}


/* ── Modal body ───────────────────────────────────────────── */

.org-review-modal-body {
  padding: 20px 22px 8px;
  background: #fff;
}

.org-review-field {
  margin-bottom: 18px;
}

.org-review-field:last-child {
  margin-bottom: 8px;
}

.org-review-label {
  display: block;
  margin: 0 0 7px;
  color: var(--text);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
}

.org-review-help {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.4;
}


/* ── Review Star Rating Selector ─────────────────────────── */

.org-review-stars-select {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 7px 10px;
    border: 1px solid #e3dfd3;
    border-radius: 10px;
    background: #faf9f5;
    direction: ltr;
}

/* Hide radio buttons but keep them functional */
.org-review-stars-select input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
    margin: 0;
    pointer-events: none;
}

/* All stars start neutral */
.org-review-stars-select label {
    display: inline-block;
    margin: 0;
    padding: 0 2px;
    color: #d8d2c3 !important;
    font-family: Arial, sans-serif;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    transition: color .15s ease, transform .15s ease;
}

/* JavaScript-controlled selected stars */
.org-review-stars-select label.selected {
    color: var(--gold) !important;
}

/* JavaScript-controlled hover preview */
.org-review-stars-select label.hovered {
    color: var(--gold) !important;
}

/* Only enlarge the star currently under the mouse */
.org-review-stars-select label:hover {
    transform: scale(1.08);
}


/* ── Text input ───────────────────────────────────────────── */

.org-review-input,
.org-review-textarea {
  display: block;
  width: 100%;
  border: 1px solid #ddd8cb;
  border-radius: 10px;
  background: #fff;
  color: var(--text);
  font-family: var(--font-body);
  font-size: 12px;
  line-height: 1.5;
  transition:
    border-color .2s ease,
    box-shadow .2s ease,
    background .2s ease;
}

.org-review-input {
  min-height: 42px;
  padding: 10px 12px;
}

.org-review-textarea {
  min-height: 120px;
  padding: 11px 12px;
  resize: vertical;
}

.org-review-input::placeholder,
.org-review-textarea::placeholder {
  color: #a9a398;
}

.org-review-input:focus,
.org-review-textarea:focus {
  outline: none;
  border-color: var(--g-dark);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(26,46,16,.08);
}


/* ── Character counter ───────────────────────────────────── */

.org-review-char-count {
  color: var(--muted);
  font-size: 9px;
  font-weight: 700;
  white-space: nowrap;
}

.org-review-char-count.is-invalid {
  color: #b42318;
}

.org-review-char-count.is-valid {
  color: #276749;
}


/* ── File upload ──────────────────────────────────────────── */

.org-review-file {
  display: block;
  width: 100%;
  padding: 9px 10px;
  border: 1px dashed #d7d1c2;
  border-radius: 10px;
  background: #faf9f5;
  color: var(--muted);
  font-family: var(--font-body);
  font-size: 10px;
  cursor: pointer;
}

.org-review-file:hover {
  border-color: var(--g-dark);
  background: #f7f8f4;
}

.org-review-file:focus {
  outline: none;
  border-color: var(--g-dark);
  box-shadow: 0 0 0 3px rgba(26,46,16,.07);
}


/* ── Selected image previews ─────────────────────────────── */

.org-review-image-preview {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 9px;
}

.org-review-image-preview-item {
  position: relative;
  width: 58px;
  height: 58px;
  overflow: hidden;
  border: 1px solid #ded8ca;
  border-radius: 8px;
  background: #f7f7f5;
}

.org-review-image-preview-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.org-review-image-preview-count {
  margin-top: 5px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 700;
}


/* ── Modal footer ────────────────────────────────────────── */

.org-review-modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 22px 18px;
  border-top: 1px solid #eeeae0;
  background: #faf9f5;
}

.org-review-cancel-btn,
.org-review-submit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 18px;
  border-radius: 50px;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  transition:
    background .2s ease,
    border-color .2s ease,
    color .2s ease,
    transform .2s ease;
}

.org-review-cancel-btn {
  border: 1.5px solid #d8d2c6;
  background: #fff;
  color: #5f5a50;
}

.org-review-cancel-btn:hover {
  border-color: #bdb6a8;
  background: #f7f6f1;
  color: #34312c;
}

.org-review-submit-btn {
  border: 1.5px solid var(--g-dark);
  background: var(--g-dark);
  color: #fff;
}

.org-review-submit-btn:hover {
  border-color: var(--g-mid);
  background: var(--g-mid);
  color: #fff;
  transform: translateY(-1px);
}

.org-review-submit-btn:focus,
.org-review-cancel-btn:focus {
  outline: none;
}


/* ── Disabled submit state ───────────────────────────────── */

.org-review-submit-btn:disabled {
  opacity: .55;
  cursor: not-allowed;
  transform: none;
}


/* ── Validation states ──────────────────────────────────── */

.org-review-input.is-invalid,
.org-review-textarea.is-invalid {
  border-color: #c0392b;
  background: #fffafa;
}

.org-review-input.is-valid,
.org-review-textarea.is-valid {
  border-color: #5b8c5a;
}


/* ── Modal responsive ───────────────────────────────────── */

@media (max-width: 576px) {

  #productReviewModal .modal-dialog {
    width: calc(100% - 16px);
    max-width: none;
    margin: 8px auto;
  }

  #productReviewModal .modal-content {
    border-radius: 14px;
  }

  .org-review-modal-header {
    padding: 17px 16px 15px;
  }

  .org-review-modal-header h5 {
    font-size: 15px;
  }

  .org-review-modal-header p {
    font-size: 10px;
  }

  .org-review-modal-body {
    padding: 17px 16px 6px;
  }

  .org-review-field {
    margin-bottom: 15px;
  }

  .org-review-stars-select label {
    font-size: 22px;
  }

  .org-review-textarea {
    min-height: 105px;
  }

  .org-review-modal-footer {
    padding: 12px 16px 15px;
  }

  .org-review-cancel-btn,
  .org-review-submit-btn {
    flex: 1;
    min-height: 40px;
  }
}


/* ============================================================
   CHECKOUT PAGES
   ============================================================ */
.org-checkout-wrap {
  max-width: 1200px; margin: 0 auto; padding: 32px 24px 64px;
  display: grid; grid-template-columns: 1fr 380px; gap: 40px; align-items: start;
}
.org-checkout-main { min-width: 0; }
/* Steps */
.org-checkout-steps {
  display: flex; align-items: center; gap: 0; margin-bottom: 36px;
  background: #faf8f4; border-radius: 14px; padding: 16px 24px;
}
.org-checkout-step {
  display: flex; align-items: center; gap: 10px; flex: 1; justify-content: center;
  font-size: 13px; font-weight: 600; color: var(--text-muted);
}
.org-checkout-step.done { color: #276749; }
.org-checkout-step.active { color: var(--g-dark); }
.org-cstep-num {
  width: 28px; height: 28px; border-radius: 50%; border: 2px solid #ddd;
  display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800;
  flex-shrink: 0;
}
.org-checkout-step.done .org-cstep-num { border-color: #276749; color: #276749; }
.org-checkout-step.active .org-cstep-num { border-color: var(--g-dark); background: var(--g-dark); color: #fff; }
.org-cstep-line { flex: 0 0 24px; height: 2px; background: #ddd; }
.org-cstep-line.done { background: #276749; }
/* Section */
.org-checkout-section { background: #fff; border-radius: 16px; border: 1px solid #ece6d8; padding: 24px; margin-bottom: 24px; }
.org-checkout-section-title { font-family: var(--font-heading); font-size: 20px; color: var(--g-dark); font-weight: 600; margin: 0 0 20px; }
/* Address cards */
.org-address-list { display: flex; flex-direction: column; gap: 10px; margin-bottom: 16px; }
.org-address-card {
  display: flex; align-items: flex-start; gap: 14px; padding: 16px 18px;
  border: 1.5px solid #e0d8c8; border-radius: 12px; cursor: pointer;
  transition: border-color .2s; background: #faf8f4;
}
.org-address-card:hover { border-color: var(--g-dark); }
.org-address-card:has(input:checked) { border-color: var(--g-dark); background: rgba(26,46,16,.03); }
.org-address-card-body { flex: 1; }
.org-address-type-badge {
  display: inline-block; font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase;
  background: var(--g-dark); color: #fff; padding: 2px 8px; border-radius: 20px; margin-bottom: 6px;
}
.org-address-name { font-weight: 700; font-size: 14px; color: #2a2218; margin-bottom: 4px; }
.org-address-detail { font-size: 13px; color: var(--text-muted); line-height: 1.5; }
.org-address-edit { color: var(--text-muted); font-size: 14px; padding: 2px 4px; }
.org-address-edit:hover { color: var(--g-dark); }
/* New address form */
.org-new-address-form { background: #faf8f4; border-radius: 12px; padding: 20px; margin-top: 8px; border: 1px solid #ece6d8; }
/* Checkout nav */
.org-checkout-nav { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-top: 12px; }
.org-checkout-nav-back { font-size: 14px; font-weight: 600; color: var(--text-muted); text-decoration: none; }
.org-checkout-nav-back:hover { color: var(--g-dark); }
/* Payment grid */
.org-payment-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 14px; }
.org-payment-card {
  border: 1.5px solid #e0d8c8; border-radius: 14px; overflow: hidden;
  background: #faf8f4; transition: border-color .2s, box-shadow .2s;
}
.org-payment-card:hover { border-color: var(--g-dark); box-shadow: 0 4px 16px rgba(26,46,16,.1); }
.org-payment-btn {
  width: 100%; padding: 20px 12px; background: none; border: none;
  cursor: pointer; display: flex; flex-direction: column; align-items: center; gap: 10px;
  font-size: 12px; font-weight: 600; color: var(--text-muted); text-decoration: none;
  font-family: var(--font-body); transition: color .2s; text-align: center;
}
.org-payment-btn:hover { color: var(--g-dark); }

/* ============================================================
   ORDER COMPLETE PAGE
   ============================================================ */
.org-success-icon {
  width: 80px; height: 80px; border-radius: 50%; background: #e8f5e9;
  color: #276749; font-size: 36px; font-weight: 700; line-height: 1;
  display: flex; align-items: center; justify-content: center; margin: 0 auto 24px;
}
.org-success-title { font-family: var(--font-heading); font-size: 32px; color: var(--g-dark); margin: 0 0 12px; }
.org-success-sub { font-size: 16px; color: var(--text-muted); line-height: 1.75; margin: 0 0 28px; }
.org-success-badges { display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; margin-bottom: 12px; }
.org-success-badge-item { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: var(--g-dark); }

/* ============================================================
   ORDER DETAIL PAGE — extra track items
   ============================================================ */
.org-track-item {
  display: flex; align-items: center; gap: 16px;
  padding: 16px 24px; border-bottom: 1px solid #ece6d8;
}
.org-track-item-img {
  width: 64px; height: 64px; border-radius: 10px; object-fit: contain;
  background: #f8f5ee; border: 1px solid #ece6d8; flex-shrink: 0;
}
.org-track-item-info { flex: 1; }
.org-track-item-name {
  font-weight: 600; font-size: 14px; color: var(--g-dark); text-decoration: none;
  display: block; margin-bottom: 4px;
}
.org-track-item-name:hover { text-decoration: underline; }
.org-track-item-var { display: block; font-size: 12px; color: var(--text-muted); margin-bottom: 2px; }
.org-track-item-qty { font-size: 12px; color: var(--text-muted); }
.org-track-item-price { font-weight: 700; font-size: 15px; color: var(--g-dark); white-space: nowrap; text-align: right; }
.org-track-totals { padding: 16px 24px; }
.org-track-total-row { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; font-size: 14px; color: var(--text-muted); border-bottom: 1px solid #ece6d8; }
.org-track-total-row:last-child { border-bottom: none; }
.org-track-total-final { font-size: 17px; font-weight: 800; color: var(--g-dark); margin-top: 8px; }
.org-track-total-final span { color: var(--g-dark); }
.org-btn-danger-sm {
  font-family: var(--font-body); font-size: 12px; font-weight: 600;
  padding: 7px 16px; border-radius: 50px; background: #fff;
  border: 1.5px solid #e53e3e; color: #e53e3e; cursor: pointer; text-decoration: none;
  transition: all .2s; display: inline-block;
}
.org-btn-danger-sm:hover { background: #e53e3e; color: #fff; }

/* ============================================================
   RESPONSIVE — auth, product detail, checkout
   ============================================================ */
@media (max-width: 1024px) {
  .org-checkout-wrap { grid-template-columns: 1fr; }
  .org-pd-inner { grid-template-columns: 1fr; gap: 36px; }
  .org-pd-gallery { position: static; }
}
@media (max-width: 768px) {
  .org-auth-wrap { grid-template-columns: 1fr; }
  .org-auth-brand { display: none; }
  .org-auth-form-panel { padding: 28px 16px; }
  .org-auth-form-inner { padding: 28px 22px; border-radius: 16px; }
  .org-pd-wrap { padding: 20px 16px 48px; }
  .org-checkout-wrap { padding: 20px 16px 48px; }
  .org-checkout-steps { padding: 12px 16px; }
  .org-payment-grid { grid-template-columns: repeat(2, 1fr); }
  .org-checkout-nav { flex-direction: column; }
  .org-checkout-nav .org-btn-primary { width: 100%; justify-content: center; }
  .org-pd-thumbs .org-pd-thumb { width: 56px; height: 56px; }
}
@media (max-width: 480px) {
  .org-pd-ctas { flex-direction: column; }
  .org-pd-ctas .org-btn-primary, .org-pd-cart-btn { width: 100%; justify-content: center; }
  .org-success-badges { flex-direction: column; align-items: center; }
  .org-payment-grid { grid-template-columns: 1fr 1fr; }
}

/* Shipping checkout cascade lock — keep this after the legacy checkout rules. */
.org-checkout-wrap {
  background: #fbfaf7;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) 340px;
  max-width: none;
  padding: 20px max(24px, calc((100vw - 1200px) / 2)) 58px;
}
.org-checkout-steps {
  background: #fff;
  border: 1px solid #e8e4db;
  border-radius: 11px;
  box-shadow: 0 2px 14px rgba(24,35,21,.03);
  margin: 0 0 18px;
  padding: 16px 30px;
}
.org-checkout-step { color: #2c2f2a; font-size: 12px; justify-content: flex-start; }
.org-checkout-step.done { color: #2c2f2a; }
.org-checkout-step.active { color: var(--g-dark); font-weight: 800; }
.org-cstep-num { border-color: #d9d8d3; font-size: 11px; height: 28px; width: 28px; }
.org-checkout-step.done .org-cstep-num { border-color: #8ba281; color: var(--g-dark); }
.org-checkout-step.active .org-cstep-num { background: var(--g-dark); border-color: var(--g-dark); }
.org-cstep-line { background: #d9d8d3; flex: 0 1 105px; height: 1px; margin: 0 12px; }
.org-checkout-section {
  background: #fff;
  border: 1px solid #e8e4db;
  border-radius: 12px;
  box-shadow: 0 2px 14px rgba(24,35,21,.03);
  margin-bottom: 16px;
  padding: 20px 18px;
}
.org-checkout-section-title { color: #263126; font-size: 19px; margin: 0 0 4px; }
.org-checkout-section-note { margin: 0 0 15px; }
.org-address-card { border-color: #e3e0d8; border-radius: 9px; padding: 14px 15px; }
.org-address-card:has(input:checked) { background: #f7faf4; border-color: #b8c7ad; box-shadow: inset 0 0 0 1px #d8e2d0; }
.org-address-card:has(input:checked)::after {
  align-items: center;
  background: #e7f0e1;
  border-radius: 50%;
  color: var(--g-dark);
  content: '\f00c';
  display: flex;
  font-family: FontAwesome;
  font-size: 10px;
  height: 22px;
  justify-content: center;
  width: 22px;
}
.org-address-type-badge { background: #e8f1e2; border-radius: 4px; color: var(--g-dark); }
.org-address-edit { border: 1px solid #e4e0d9; border-radius: 5px; color: #565b52; font-size: 11px; padding: 4px 7px; }
.org-checkout-nav { margin-top: 20px; }
.org-checkout-next { align-items: flex-end; display: grid; gap: 5px; justify-items: end; }
.org-checkout-next .org-btn-primary {
  border: 0;
  border-radius: 8px !important;
  cursor: pointer;
  font-size: 12px;
  min-height: 42px;
  padding: 0 22px;
}
.org-checkout-next small { color: #6f706a; font-size: 10px; }
.org-checkout-wrap .org-order-summary { top: 82px; }

@media (max-width: 900px) {
  .org-checkout-wrap { grid-template-columns: 1fr; padding-left: 16px; padding-right: 16px; }
}
@media (max-width: 640px) {
  .org-checkout-steps { padding: 12px; }
  .org-checkout-step { flex: 0 0 auto; font-size: 10px; gap: 6px; }
  .org-cstep-line { flex: 1 1 10px; margin: 0 6px; }
  .org-checkout-nav { align-items: stretch; flex-direction: column-reverse; }
  .org-checkout-nav-back { justify-content: center; }
  .org-checkout-next { justify-items: stretch; }
  .org-checkout-next .org-btn-primary { width: 100%; }
  .org-checkout-next small { text-align: center; }
}

/* ============================================================
   RESPONSIVE HARDENING — storefront and customer-facing flows
   This final layer only changes layout at constrained widths. It
   intentionally leaves URLs, forms, controls and business behavior
   untouched.
   ============================================================ */
@media (max-width: 1100px) {
  .org-navbar { padding-left: 20px; padding-right: 20px; }
  .org-nav-links { gap: 16px; }
  .org-nav-links a { font-size: 13px; }
  .org-pd-inner { gap: 32px; }
}

@media (max-width: 900px) {
  html, body { overflow-x: hidden; }
  .org-navbar { padding-left: 16px; padding-right: 16px; }
  .org-navbar-inner { height: 62px; }
  .org-logo-wordmark { height: 40px; }
  .org-nav-links, .org-order-btn { display: none; }
  .org-hamburger { display: flex; }
  .org-cart-layout, .org-checkout-wrap { grid-template-columns: minmax(0, 1fr); }
  .org-order-summary { position: static; }
  .org-checkout-wrap { padding-left: 16px; padding-right: 16px; }
  .org-checkout-main, .org-cart-content { min-width: 0; }
  .org-cart-table-scroll { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .org-cart-table { min-width: 640px; }
  .org-cart-product, .org-address-card-body { min-width: 0; }
  .org-cart-delivery-label { min-width: 0; }
  .org-payment-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .org-trust-overlap { margin-top: -18px; padding-left: 16px; padding-right: 16px; }
  .org-trust-overlap-inner { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .org-trust-ov-item { gap: 8px; padding: 14px 12px; }
  .org-trust-ov-item:nth-child(even) { border-right: 0; }
  .org-flagship { padding-left: 16px; padding-right: 16px; }
  .org-flagship-inner { padding-left: 18px; padding-right: 18px; }
  .org-flagship-right { margin-left: 0; }
  .org-cta { padding: 52px 24px; }
  .org-track-search-row { flex-wrap: wrap; }
  .org-track-search-row .org-btn-primary { flex: 0 0 auto; }
  .org-auth-form-panel { min-width: 0; }
  .org-auth-form-inner { min-width: 0; }
  .org-subscription-checkout-banner { min-width: 0; }
}

@media (max-width: 768px) {
  .org-page-header { padding-left: 16px; padding-right: 16px; }
  .org-page-title { overflow-wrap: anywhere; }
  .org-flagship-center { min-height: 260px; }
  .org-footer-trust { padding-left: 16px; padding-right: 16px; }
  .org-footer-top { gap: 28px; padding-left: 20px; padding-right: 20px; }
  .org-checkout-steps { padding-left: 12px; padding-right: 12px; }
  .org-checkout-step { min-width: 0; }
  .org-checkout-step span:last-child { white-space: nowrap; }
  .org-new-address-form { padding: 16px; }
  .org-checkout-section { min-width: 0; }
  .org-pd-tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .org-pd-tab { flex: 0 0 auto; white-space: nowrap; }
}

@media (max-width: 640px) {
  .org-announce { font-size: 12px; padding-left: 28px; padding-right: 40px; }
  .org-cart-wrap { padding-left: 12px; padding-right: 12px; }
  .org-cart-card-header, .org-cart-table-scroll { padding-left: 12px; padding-right: 12px; }
  .org-cart-table td, .org-cart-table th { padding-left: 7px; padding-right: 7px; }
  .org-cart-delivery { align-items: stretch; flex-wrap: wrap; }
  .org-cart-delivery select { max-width: none; width: 100%; }
  .org-cart-actions { align-items: stretch; flex-direction: column-reverse; gap: 10px; }
  .org-cart-continue, .org-cart-checkout { width: 100%; }
  .org-checkout-nav { align-items: stretch; flex-direction: column-reverse; }
  .org-checkout-nav-back { justify-content: center; }
  .org-checkout-next { justify-items: stretch; }
  .org-checkout-next .org-btn-primary { width: 100%; }
  .org-checkout-next small { text-align: center; }
  .org-auth-form-panel { padding: 24px 12px; }
  .org-auth-form-inner { padding: 24px 18px; }
  .org-subscription-checkout-banner { align-items: flex-start !important; flex-wrap: wrap !important; }
  .org-subscription-checkout-banner > div:nth-child(2) { flex: 1 1 180px; min-width: 0; }
  .org-subscription-checkout-banner > div:last-child { flex: 1 1 100%; text-align: left !important; }
  .org-track-search-row { flex-direction: column; }
  .org-track-search-row > * { width: 100%; }
  .org-track-item { align-items: flex-start; padding-left: 14px; padding-right: 14px; }
  .org-track-item-price { margin-left: auto; }
}

@media (max-width: 480px) {
  .org-mobile-nav { width: min(280px, 86vw); }
  .org-flagship { padding-left: 12px; padding-right: 12px; }
  .org-flagship-inner { padding-left: 12px; padding-right: 12px; }
  .org-flagship-right { padding: 22px 18px; }
  .org-trust-overlap { padding-left: 12px; padding-right: 12px; }
  .org-trust-ov-item { padding-left: 10px; padding-right: 10px; }
  .org-cta { padding: 44px 18px; }
  .org-auth-form-header h1 { font-size: 28px; }
  .org-auth-form-header p { line-height: 1.55; }
}

@media (max-width: 420px) {
  .org-trust-overlap-inner { grid-template-columns: 1fr 1fr; }
  .org-trust-ov-metric { font-size: 13px; }
  .org-trust-ov-label { font-size: 10px; }
  .org-checkout-steps { padding-left: 8px; padding-right: 8px; }
  .org-checkout-step { font-size: 10px; gap: 5px; }
  .org-cstep-line { flex-basis: 10px; margin-left: 4px; margin-right: 4px; }
  .org-cstep-num { height: 25px; width: 25px; }
  .otp-step span { font-size: 9px !important; letter-spacing: 0 !important; }
  .otp-step__line { min-width: 16px !important; margin-left: 4px !important; margin-right: 4px !important; }
}

@media (max-width: 360px) {
  .org-products-grid { grid-template-columns: 1fr; }
  .org-cart-table { min-width: 560px; }
  .org-auth-form-panel { padding-left: 8px; padding-right: 8px; }
  .org-auth-form-inner { padding-left: 16px; padding-right: 16px; }
}





/* ============================================================
   MOBILE RESPONSIVE FIX — HOMEPAGE HERO + FEATURES
   ============================================================ */

@media (max-width: 768px) {

    /* -----------------------------
       HERO
       ----------------------------- */

    .org-hero {
        min-height: 0;
        background-position: 62% top;
        background-size: cover;
    }

    .org-hero-inner {
        width: 100%;
        max-width: 100%;
        padding: 58px 18px 82px;
        grid-template-columns: 1fr;
        gap: 0;
    }

    .org-hero-left {
        width: 100%;
        min-width: 0;
    }

    .org-hero-label {
        max-width: 100%;
        font-size: 9px;
        letter-spacing: 2px;
        padding: 5px 12px;
        margin-bottom: 18px;
        white-space: normal;
    }

    .org-hero h1 {
        font-size: clamp(34px, 10vw, 48px);
        line-height: 1.02;
        letter-spacing: .8px;
        margin-bottom: 18px;
    }

    .org-hero-sub {
        max-width: 100%;
        font-size: 14px;
        line-height: 1.65;
        margin-bottom: 24px;
    }

    /* Trust badges */
    .org-badges {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px 14px;
        margin-bottom: 28px;
        width: 100%;
    }

    .org-badge-item {
        min-width: 0;
        gap: 8px;
        font-size: 12px;
    }

    .org-badge-icon {
        width: 34px;
        height: 34px;
        font-size: 15px;
        flex: 0 0 34px;
    }

    /* CTA buttons */
    .org-hero-cta {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .org-hero-cta .org-btn-primary,
    .org-hero-cta .org-btn-outline {
        width: 100%;
        justify-content: center;
        text-align: center;
        min-height: 48px;
        padding: 12px 18px;
        font-size: 14px;
    }

    /* -----------------------------
       FEATURE CARD OVERLAP
       ----------------------------- */

    .org-features {
        margin: -42px 12px 0;
        padding: 0;
        border-radius: 18px;
        overflow: hidden;
    }

    .org-features-inner {
        width: 100%;
        max-width: 100%;
    }

    .org-features-grid {
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .org-feature-card {
        min-width: 0;
        width: 100%;
        gap: 8px;
        padding: 18px 12px;
        align-items: flex-start;
        overflow: hidden;
    }

    .feat-icon-wrap {
        width: 32px;
        height: 32px;
        flex: 0 0 32px;
    }

    .feat-svg {
        width: 30px;
        height: 30px;
    }

    .feat-body {
        min-width: 0;
        width: 100%;
    }

    .org-feature-card h4 {
        font-size: 12px;
        line-height: 1.3;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .org-feature-card p {
        font-size: 10px;
        line-height: 1.45;
        overflow-wrap: anywhere;
        word-break: normal;
    }
}


/* ============================================================
   EXTRA SMALL PHONES
   ============================================================ */

@media (max-width: 480px) {

    .org-hero {
        background-position: 63% top;
    }

    .org-hero-inner {
        padding: 50px 16px 78px;
    }

    .org-hero-label {
        font-size: 8px;
        letter-spacing: 1.8px;
        padding: 5px 11px;
    }

    .org-hero h1 {
        font-size: clamp(32px, 10.5vw, 42px);
        line-height: 1.04;
    }

    .org-hero-sub {
        font-size: 13px;
        line-height: 1.65;
    }

    .org-badges {
        gap: 10px 10px;
    }

    .org-badge-item {
        font-size: 11px;
    }

    .org-badge-icon {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
        font-size: 14px;
    }

    .org-features {
        margin-left: 10px;
        margin-right: 10px;
        border-radius: 17px;
    }

    .org-feature-card {
        padding: 17px 10px;
        gap: 7px;
    }

    .feat-icon-wrap {
        width: 30px;
        height: 30px;
        flex-basis: 30px;
    }

    .feat-svg {
        width: 28px;
        height: 28px;
    }

    .org-feature-card h4 {
        font-size: 11px;
    }

    .org-feature-card p {
        font-size: 9px;
    }
}


/* ============================================================
   VERY SMALL PHONES
   ============================================================ */

@media (max-width: 360px) {

    .org-hero-inner {
        padding-left: 14px;
        padding-right: 14px;
    }

    .org-hero h1 {
        font-size: 31px;
    }

    .org-hero-sub {
        font-size: 12.5px;
    }

    .org-badges {
        gap: 9px;
    }

    .org-badge-item {
        font-size: 10.5px;
    }

    .org-features {
        margin-left: 8px;
        margin-right: 8px;
    }

    .org-feature-card {
        padding: 16px 8px;
        gap: 6px;
    }

    .feat-icon-wrap {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
    }

    .feat-svg {
        width: 26px;
        height: 26px;
    }

    .org-feature-card h4 {
        font-size: 10.5px;
    }

    .org-feature-card p {
        font-size: 8.5px;
    }
}
