/* RITIKA ENTERPRISE — BLOCKWISE V5 */
:root{
  --green-950:#072f1d;--green-900:#0a4227;--green-800:#0b5630;--green-700:#126a38;
  --lime:#8abb2e;--lime-2:#b4dc56;--ink:#153b29;--muted:#6f8175;--line:#dbe8da;
  --paper:#ffffff;--soft:#f4f8f2;--soft-2:#ecf5e8;--shadow:0 20px 55px rgba(17,74,39,.12);
  --radius:26px;--radius-sm:18px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--soft);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;line-height:1.65}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.site-shell{width:min(1200px,calc(100% - 36px));margin:auto}
.top-strip{background:var(--green-950);color:#eaf4eb;font-size:12px}.top-strip .site-shell{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:16px}.top-strip .site-shell>div{display:flex;gap:18px}
.site-header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(23,85,45,.08);transition:.25s}.site-header.is-scrolled{box-shadow:0 14px 35px rgba(18,68,38,.1)}.nav-row{height:84px;display:flex;align-items:center;gap:26px}.site-brand img{width:118px;height:68px;object-fit:contain}.site-nav{margin-left:auto;display:flex;align-items:center;gap:24px;font-weight:800;font-size:14px}.site-nav a{position:relative;padding:8px 0}.site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:2px;background:linear-gradient(90deg,var(--green-700),var(--lime));transition:.25s}.site-nav a:hover:after{right:0}.nav-tools{display:flex;align-items:center;gap:9px}.cart-link{position:relative;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eef5eb;border:1px solid #e0ebdd}.cart-link b{position:absolute;right:-4px;top:-5px;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:#fff;font-size:10px}.account-pill{padding:9px 14px;border-radius:999px;border:1px solid #d7e7d5;background:white;font-size:13px;font-weight:800}.mobile-menu{display:none;border:0;background:transparent;padding:7px}.mobile-menu i{display:block;width:24px;height:2px;background:var(--ink);margin:5px}
.toast{position:fixed;right:18px;top:104px;z-index:250;background:var(--green-800);color:white;padding:12px 16px;border-radius:13px;box-shadow:0 15px 40px rgba(0,0,0,.18)}.toast.error{background:#a03939}
.eyebrow{display:inline-flex;align-items:center;gap:9px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:900;color:#7aa928}.eyebrow:before{content:"";width:30px;height:1px;background:currentColor}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 20px;background:linear-gradient(135deg,var(--green-800),var(--lime));color:white;font-weight:900;cursor:pointer;box-shadow:0 11px 28px rgba(14,93,47,.2);transition:.25s}.btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(14,93,47,.28)}.btn.outline{background:#fff;color:var(--green-800);border:1px solid #d7e5d4;box-shadow:none}.btn.dark{background:var(--green-950)}.btn.small{padding:8px 13px;font-size:12px}
.hero{position:relative;min-height:640px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(105deg,rgba(4,55,29,.94),rgba(13,98,51,.48)),var(--hero) center/cover}.hero:after{content:"";position:absolute;width:510px;height:510px;border-radius:50%;right:-130px;top:-120px;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0 72px rgba(255,255,255,.035),0 0 0 144px rgba(255,255,255,.02)}.hero-copy{position:relative;z-index:2;max-width:760px;color:#fff;padding:76px 0}.hero-copy h1,.page-hero h1{font:800 clamp(46px,6vw,78px)/1.02 "Playfair Display",serif;margin:14px 0 18px}.hero-copy p{font-size:18px;max-width:650px;color:#e8f4e8}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.hero-actions .outline{background:transparent;color:white;border-color:rgba(255,255,255,.42)}
.page-hero{min-height:370px;display:flex;align-items:center;color:white;background:linear-gradient(105deg,rgba(6,58,31,.94),rgba(10,101,52,.42)),var(--hero) center/cover}.page-hero p{max-width:670px;color:#eaf5ea;font-size:17px}.page-hero h1{font-size:clamp(42px,5vw,64px)}
.trust-wrap{margin-top:-36px;position:relative;z-index:4}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);background:white;border-radius:24px;box-shadow:var(--shadow);overflow:hidden}.trust-card{padding:22px;border-right:1px solid #edf2eb}.trust-card:last-child{border:0}.trust-card b{display:block;font-size:19px;color:var(--green-800)}.trust-card span{font-size:12px;color:var(--muted)}
.section{padding:88px 0}.section.alt{background:var(--soft-2)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px}.section-heading h2{font:800 clamp(34px,4vw,52px)/1.08 "Playfair Display",serif;margin:7px 0}.section-heading p{max-width:580px;color:var(--muted)}
/* Universal premium block grid — fixes previous full-width image stacking */
.block-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.block-card{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(16,67,36,.06);transition:transform .35s ease,box-shadow .35s ease,border-color .35s}.block-card:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:#c9dfc5}.block-media{position:relative;height:220px;overflow:hidden;background:#e8f1e5}.block-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease,filter .4s}.block-card:hover .block-media img{transform:scale(1.07);filter:saturate(1.05)}.block-media:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,52,28,.48),transparent 55%);pointer-events:none}.block-index{position:absolute;left:16px;top:16px;z-index:2;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.93);color:var(--green-800);font-weight:900;box-shadow:0 8px 20px rgba(0,0,0,.08)}.block-body{padding:22px;display:flex;flex:1;flex-direction:column}.block-body h3{font:800 27px/1.1 "Playfair Display",serif;margin:5px 0 10px}.block-body p{color:var(--muted);margin:0}.block-link{margin-top:auto;padding-top:18px;color:var(--green-800);font-size:13px;font-weight:900}.block-link span{display:inline-block;transition:.25s}.block-card:hover .block-link span{transform:translateX(5px)}
.block-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.block-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.block-card.horizontal{display:grid;grid-template-columns:44% 56%;min-height:270px}.block-card.horizontal .block-media{height:100%}
/* Legacy aliases so every older page/admin structure remains styled */
.feature-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}.feature-card{background:#fff!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;overflow:hidden!important;box-shadow:0 10px 30px rgba(16,67,36,.06)!important;transition:.35s!important;min-width:0!important}.feature-card:hover{transform:translateY(-8px)!important;box-shadow:var(--shadow)!important}.feature-image{height:220px!important;overflow:hidden!important}.feature-image img{width:100%!important;height:100%!important;object-fit:cover!important;transition:.65s!important}.feature-card:hover .feature-image img{transform:scale(1.07)!important}.feature-body{padding:22px!important}.feature-body .num{font-size:11px;font-weight:900;color:#7cab27}.feature-body h3{font:800 27px/1.1 "Playfair Display",serif!important;margin:7px 0 10px!important}.feature-body p{color:var(--muted);margin:0}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.product-card{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 8px 25px rgba(20,67,37,.05);transition:.3s;min-width:0}.product-card:hover{transform:translateY(-7px);box-shadow:0 22px 50px rgba(20,67,37,.13)}.product-media{position:relative;aspect-ratio:1/1;overflow:hidden;background:#e8f0e5}.product-media img{width:100%;height:100%;object-fit:cover;transition:.55s}.product-card:hover .product-media img{transform:scale(1.07)}.product-chip{position:absolute;left:12px;top:12px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.92);font-size:10px;font-weight:900;text-transform:uppercase}.product-body{padding:17px}.product-body h3{font:800 23px/1.1 "Playfair Display",serif;margin:6px 0}.price{font-weight:900;color:var(--green-800)}.muted{color:var(--muted)}.card-row{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-top:14px}
.promo-slider{position:relative;height:420px;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.promo-slide{position:absolute;inset:0;display:flex;align-items:center;padding:48px;background:linear-gradient(90deg,rgba(5,61,32,.94),rgba(8,72,38,.25)),var(--slide) center/cover;opacity:0;visibility:hidden;transform:scale(1.04);transition:opacity .7s,visibility .7s,transform 1.2s}.promo-slide.active{opacity:1;visibility:visible;transform:scale(1)}.promo-slide>div{max-width:620px;color:white}.promo-slide h2{font:800 46px/1.05 "Playfair Display",serif;margin:10px 0}.promo-slide p{color:#e9f4ea}.slider-dots{position:absolute;left:48px;bottom:22px;display:flex;gap:8px;z-index:3}.slider-dots button{width:9px;height:9px;border:0;border-radius:99px;background:rgba(255,255,255,.5);padding:0;cursor:pointer;transition:.25s}.slider-dots button.active{width:30px;background:var(--lime-2)}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.story-media{min-height:490px;border-radius:30px;overflow:hidden;position:relative;background:var(--img) center/cover;box-shadow:var(--shadow)}.story-media:after{content:"Fresh • Clean • Reliable";position:absolute;left:20px;bottom:20px;padding:10px 14px;border-radius:12px;background:#fff;font-weight:900}.story-copy h2{font:800 48px/1.06 "Playfair Display",serif;margin:12px 0}.story-copy p{color:#63766a}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.check-card{padding:13px;border-radius:14px;background:#fff;border:1px solid var(--line);font-weight:800}
.info-band{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch;background:linear-gradient(135deg,#083c23,#116639);border-radius:30px;padding:24px;color:white;overflow:hidden;position:relative}.info-band:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-90px;top:-100px;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0 45px rgba(255,255,255,.04),0 0 0 90px rgba(255,255,255,.025)}.business-details{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;position:relative;z-index:2}.detail-tile{padding:15px;border-radius:16px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12)}.detail-tile small{display:block;color:#b9d3c1;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.detail-tile b{display:block;margin-top:3px;word-break:break-word}.legal-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}
.cta-band{padding:45px;border-radius:28px;background:linear-gradient(120deg,var(--green-900),#1a7840);color:white;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-band h2{font:800 42px/1.08 "Playfair Display",serif;margin:7px 0 0}
.content-card{background:white;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 12px 35px rgba(18,67,37,.06)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:900}.input,textarea,select{width:100%;border:1px solid #d8e5d7;border-radius:14px;padding:12px 13px;background:#fbfdf9;outline:none}.input:focus,textarea:focus,select:focus{border-color:#86b436;box-shadow:0 0 0 3px rgba(134,180,54,.12)}
.cart-layout{display:grid;grid-template-columns:1.4fr .6fr;gap:20px}.cart-table{width:100%;border-collapse:collapse;background:white;border-radius:20px;overflow:hidden}.cart-table th,.cart-table td{padding:14px;border-bottom:1px solid #eaf0e7;text-align:left}.summary-card{background:var(--green-950);color:white;border-radius:24px;padding:23px;position:sticky;top:104px}.summary-row{display:flex;justify-content:space-between;padding:8px 0}.summary-row.total{border-top:1px solid rgba(255,255,255,.15);font-size:20px;margin-top:8px;padding-top:14px}.badge,.status{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e9f4e5;color:#0b6133;font-size:10px;font-weight:900}.status.warn{background:#fff3cf;color:#795d00}
/* Dashboard */
.dashboard-hero{background:linear-gradient(120deg,#084528,#1c773f);color:#fff;border-radius:26px;padding:28px;display:flex;justify-content:space-between;align-items:center;gap:20px;position:relative;overflow:hidden}.dashboard-hero:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-70px;top:-100px;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 42px rgba(255,255,255,.04),0 0 0 84px rgba(255,255,255,.025)}.dashboard-hero>*{position:relative;z-index:1}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.stat-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.stat-card b{display:block;font-size:26px;color:var(--green-800)}.chart-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:15px}.chart-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;min-height:300px}.bars{height:220px;display:flex;align-items:flex-end;gap:10px;padding-top:20px}.bar-col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px;height:100%}.bar{width:100%;max-width:45px;border-radius:10px 10px 4px 4px;background:linear-gradient(180deg,#9ccf42,#0b6335);min-height:6px}.donut-wrap{display:grid;place-items:center;height:220px}.donut{width:180px;height:180px;border-radius:50%;background:conic-gradient(#0a6034 0 var(--p1),#85b72d var(--p1) var(--p2),#d8e5d4 var(--p2) 100%);position:relative;display:grid;place-items:center}.donut:after{content:"";position:absolute;width:112px;height:112px;border-radius:50%;background:#fff}.donut-center{position:relative;z-index:2;text-align:center}.donut-center b{display:block;font-size:26px}.profile-grid{display:grid;grid-template-columns:290px 1fr;gap:16px}.profile-card{background:linear-gradient(150deg,#0a4d2b,#76a927);color:#fff;border-radius:23px;padding:26px;text-align:center}.avatar{width:90px;height:90px;border-radius:28px;background:#fff;color:#0c5a31;display:grid;place-items:center;margin:auto;font-size:30px;font-weight:900}
/* Footer & fixed actions */
.site-footer{background:#07351f;color:#dceadf;padding-top:60px;position:relative;overflow:hidden}.site-footer:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-190px;bottom:-210px;border:1px solid rgba(255,255,255,.06);box-shadow:0 0 0 65px rgba(255,255,255,.02),0 0 0 130px rgba(255,255,255,.015)}.footer-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.4fr .8fr .9fr 1.3fr;gap:38px}.site-footer h4{color:#fff;margin:0 0 12px}.site-footer a{display:block;margin:7px 0;color:#dceadf}.site-footer p{color:#aec3b2}.footer-brand img{width:150px;background:#fff;padding:6px;border-radius:16px}.footer-badges{display:flex;gap:7px;flex-wrap:wrap}.footer-badges span{font-size:10px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.08)}.footer-company{display:grid;gap:5px}.footer-gst{font-weight:800;color:#e7f2e8!important}.footer-bottom{position:relative;z-index:1;margin-top:40px;border-top:1px solid rgba(255,255,255,.1);padding:20px 0;display:flex;justify-content:space-between;font-size:12px}
.float-actions{position:fixed;right:16px;bottom:16px;z-index:160;display:grid;gap:9px;justify-items:center}.float-wa,.float-top{width:46px!important;height:46px!important;max-width:46px!important;max-height:46px!important;border-radius:50%!important;display:grid!important;place-items:center!important;overflow:hidden!important;box-shadow:0 12px 28px rgba(0,0,0,.2)!important}.float-wa{background:#25D366!important;border:2px solid #fff!important}.float-wa img{display:block!important;width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important;object-fit:contain!important}.float-top{border:0;background:var(--green-800);color:white;font-weight:900;font-size:19px;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s}.float-top.show{opacity:1;pointer-events:auto;transform:none}
.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.in{opacity:1;transform:none}.stagger>*{opacity:0;transform:translateY(18px);transition:.6s ease}.stagger.in>*{opacity:1;transform:none}.stagger.in>*:nth-child(2){transition-delay:.08s}.stagger.in>*:nth-child(3){transition-delay:.16s}.stagger.in>*:nth-child(4){transition-delay:.24s}.stagger.in>*:nth-child(5){transition-delay:.32s}.stagger.in>*:nth-child(6){transition-delay:.4s}
/* Admin */
.admin-body{margin:0;overflow:hidden;background:#eff5ee;color:var(--ink)}.admin-layout{height:100dvh;display:grid;grid-template-columns:250px minmax(0,1fr)}.admin-sidebar{height:100dvh;background:linear-gradient(180deg,#073821,#0b4a2a);color:#eaf6ed;padding:20px 14px;overflow-y:auto}.admin-brand{display:flex;align-items:center;gap:11px;padding:5px 7px 18px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:12px}.admin-brand img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:16px;padding:4px}.admin-nav{display:grid;gap:4px}.admin-nav a{padding:11px 12px;border-radius:12px;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700;color:#deece2;transition:.2s}.admin-nav a:hover,.admin-nav a.active{background:rgba(255,255,255,.1);transform:translateX(3px)}.admin-main{height:100dvh;overflow-y:auto;overflow-x:hidden;padding:22px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}.admin-top h1{font:800 34px/1.05 "Playfair Display",serif;margin:0}.admin-actions{display:flex;gap:8px;align-items:center}.admin-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 8px 25px rgba(22,68,38,.04)}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:14px 0}.admin-stat{background:#fff;border:1px solid var(--line);border-radius:17px;padding:17px}.admin-stat span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#758477;font-weight:800}.admin-stat b{display:block;font-size:25px;color:var(--green-800);margin-top:2px}.admin-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:14px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.quick-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px;font-size:12px;font-weight:800;transition:.2s}.quick-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(20,67,37,.09)}.quick-card b{display:block;font-size:20px;color:#76a928}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:720px}.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid #eaf0e8;text-align:left;font-size:12px}.admin-table th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#6d7e70}.product-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.product-admin-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.product-admin-card img{width:100%;height:160px;object-fit:cover}.product-admin-body{padding:14px}.product-admin-body h3{font:800 21px/1.05 "Playfair Display",serif;margin:3px 0 8px}.product-admin-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.toggle-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px;display:flex;justify-content:space-between;align-items:center;gap:12px}.switch{position:relative;width:50px;height:28px}.switch input{opacity:0;position:absolute}.switch i{position:absolute;inset:0;border-radius:999px;background:#cbd7ca;transition:.2s}.switch i:before{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;left:4px;top:4px;transition:.2s;box-shadow:0 2px 6px rgba(0,0,0,.15)}.switch input:checked+i{background:#7cac2a}.switch input:checked+i:before{transform:translateX(22px)}.admin-mobilebar{display:none}.admin-overlay{display:none}
@media(max-width:1050px){.product-grid{grid-template-columns:repeat(2,1fr)}.block-grid,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.block-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.admin-stats{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:1fr 1fr}.product-admin-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.top-strip{display:none}.site-nav{position:fixed;left:14px;right:14px;top:77px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px;box-shadow:0 20px 50px rgba(0,0,0,.12);display:none;flex-direction:column;align-items:stretch;gap:3px}.site-nav.open{display:flex}.site-nav a{padding:10px 9px}.mobile-menu{display:block}.nav-row{height:76px}.site-brand img{width:104px;height:61px}.story-grid,.cart-layout,.profile-grid,.info-band{grid-template-columns:1fr}.chart-grid{grid-template-columns:1fr}.block-card.horizontal{grid-template-columns:1fr}.block-card.horizontal .block-media{height:220px}.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:fixed;left:0;top:0;width:250px;z-index:150;transform:translateX(-105%);transition:.25s}.admin-sidebar.open{transform:none}.admin-main{padding:72px 14px 24px}.admin-mobilebar{display:flex;position:fixed;left:0;right:0;top:0;height:56px;background:#fff;z-index:130;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line)}.admin-mobilebar button{border:0;width:38px;height:38px;border-radius:10px;background:var(--green-800);color:#fff}.admin-overlay{display:block;position:fixed;inset:0;background:rgba(3,28,16,.45);z-index:140;opacity:0;pointer-events:none;transition:.2s}.admin-overlay.show{opacity:1;pointer-events:auto}.admin-top{display:none}.toggle-grid{grid-template-columns:1fr}}
@media(max-width:620px){.site-shell{width:min(100% - 22px,1200px)}.account-pill{display:none}.hero{min-height:560px}.hero-copy{padding:58px 0}.hero-copy h1{font-size:44px}.hero-copy p{font-size:15px}.trust-wrap{margin-top:-24px}.trust-grid{grid-template-columns:1fr 1fr}.trust-card{padding:15px}.section{padding:60px 0}.section-heading{display:block}.block-grid,.feature-grid,.block-grid.two,.block-grid.four{grid-template-columns:1fr!important}.block-media,.feature-image{height:205px!important}.product-grid{grid-template-columns:1fr 1fr;gap:10px}.product-body{padding:12px}.product-body h3{font-size:18px}.card-row{display:grid}.promo-slider{height:365px;border-radius:22px}.promo-slide{padding:25px}.promo-slide h2{font-size:34px}.slider-dots{left:25px}.story-media{min-height:340px}.story-copy h2{font-size:37px}.check-grid,.business-details{grid-template-columns:1fr}.cta-band{display:block;padding:28px}.cta-band h2{font-size:34px;margin-bottom:18px}.page-hero{min-height:300px}.page-hero h1{font-size:42px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr;gap:20px}.footer-grid>div{padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.09)}.footer-grid>div:last-child{border:0}.footer-bottom{display:grid;gap:5px}.stats-grid,.admin-stats{grid-template-columns:1fr 1fr;gap:8px}.chart-card{padding:14px}.donut{width:150px;height:150px}.donut:after{width:92px;height:92px}.dashboard-hero{display:block;padding:22px}.dashboard-hero .btn{margin-top:14px}.quick-grid{grid-template-columns:1fr 1fr}.product-admin-grid{grid-template-columns:1fr}.admin-main{padding:68px 10px 22px}.float-actions{right:11px;bottom:11px}.float-wa,.float-top{width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important}.float-wa img{width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important}}


/* =========================================================
   V6 MOBILE FOOTER + DOCUMENT VISIBILITY UI
========================================================= */
.footer-panel,
.footer-links-card{
    position:relative;
    z-index:1;
}

.footer-links-card{
    min-width:0;
    padding:18px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:20px;
    background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
    overflow:hidden;
    transition:transform .3s ease,border-color .3s ease,background .3s ease,box-shadow .3s ease;
}

.footer-links-card:before{
    content:"";
    position:absolute;
    width:90px;
    height:90px;
    border-radius:50%;
    right:-35px;
    top:-38px;
    background:rgba(150,205,47,.09);
    transition:transform .45s ease;
}

.footer-links-card:hover{
    transform:translateY(-5px);
    border-color:rgba(196,232,128,.28);
    background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.035));
    box-shadow:0 15px 34px rgba(0,0,0,.10);
}

.footer-links-card:hover:before{
    transform:scale(1.25);
}

.footer-card-icon{
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    margin-bottom:12px;
    border-radius:12px;
    background:rgba(200,233,121,.12);
    color:#d8f19b;
    font-weight:900;
}

.footer-links-card a{
    position:relative;
    padding-left:0;
    font-size:13px;
    transition:color .2s ease,transform .2s ease,padding-left .2s ease;
}

.footer-links-card a:hover{
    color:#d8f19b;
    transform:translateX(3px);
}

.footer-company-head{
    display:flex;
    gap:11px;
    align-items:center;
    margin-bottom:8px;
}

.footer-company-mark{
    width:42px;
    height:42px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,#8dbd29,#d2e98c);
    color:#123d26;
    font-weight:900;
    box-shadow:0 9px 25px rgba(0,0,0,.12);
}

.footer-company-head h4{
    margin:0 0 2px;
}

.footer-docs{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:8px;
}

.site-footer .footer-doc-link{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin:0;
    padding:8px 10px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:12px;
    background:rgba(255,255,255,.045);
    font-size:11px;
}

.footer-doc-link span{
    padding:3px 5px;
    border-radius:6px;
    background:#d8ef9b;
    color:#153d28;
    font-size:8px;
    font-weight:900;
}

/* Admin document toggles */
.toggle-document{
    border-color:#cfe1b7!important;
    background:linear-gradient(145deg,#fbfff8,#f3f9ec)!important;
}

@media(max-width:620px){
    .site-footer{
        padding-top:42px;
    }

    .footer-grid{
        grid-template-columns:1fr 1fr!important;
        gap:10px!important;
    }

    /* Brand full width */
    .footer-brand{
        grid-column:1 / -1;
        padding-bottom:15px!important;
        border-bottom:1px solid rgba(255,255,255,.08)!important;
    }

    /*
      EXPLORE + CUSTOMER:
      exactly one mobile row, card-wise.
    */
    .footer-explore,
    .footer-customer{
        grid-column:auto!important;
        min-height:250px;
        padding:15px 13px!important;
        border-bottom:0!important;
    }

    .footer-links-card h4{
        font-size:15px;
        margin-bottom:9px;
    }

    .footer-links-card a{
        font-size:11px;
        line-height:1.35;
        margin:6px 0;
    }

    .footer-card-icon{
        width:31px;
        height:31px;
        border-radius:10px;
        margin-bottom:9px;
        font-size:13px;
    }

    /* Registered business full width below two cards */
    .footer-company{
        grid-column:1 / -1;
        margin-top:2px;
        padding:17px!important;
        border:1px solid rgba(255,255,255,.09)!important;
        border-radius:20px;
        background:rgba(255,255,255,.035);
    }

    .footer-company p{
        font-size:11px;
        line-height:1.55;
        margin:7px 0;
    }

    .footer-company>a,
    .footer-company>span{
        font-size:11px;
    }

    .footer-docs{
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .site-footer .footer-doc-link{
        justify-content:center;
        text-align:center;
        padding:8px;
    }

    .footer-bottom{
        margin-top:24px;
        padding:16px 0 22px;
    }

    .float-actions{
        right:10px;
        bottom:10px;
        gap:7px;
    }

    .float-wa,
    .float-top{
        width:40px!important;
        height:40px!important;
        max-width:40px!important;
        max-height:40px!important;
    }

    .float-wa img{
        width:21px!important;
        height:21px!important;
        max-width:21px!important;
        max-height:21px!important;
    }
}

@media(max-width:390px){
    .footer-explore,
    .footer-customer{
        min-height:238px;
        padding:13px 11px!important;
    }

    .footer-links-card a{
        font-size:10.5px;
    }
}

/* Reduced motion support */
@media(prefers-reduced-motion:reduce){
    .footer-links-card,
    .footer-links-card:before,
    .footer-links-card a{
        transition:none!important;
    }
}


/* =========================================================
   HEADER V7 — PREMIUM RESPONSIVE NAVIGATION
========================================================= */
.skip-link{
    position:fixed;
    left:12px;
    top:-60px;
    z-index:9999;
    padding:10px 14px;
    border-radius:12px;
    background:#0b542e;
    color:#fff;
    font-weight:800;
    transition:.2s;
}
.skip-link:focus{top:12px}

.top-strip{
    position:relative;
    z-index:92;
    background:linear-gradient(90deg,#083d24,#0e6133 55%,#185e32);
    color:#e9f6ec;
    border-bottom:1px solid rgba(255,255,255,.08);
}
.top-strip-inner{
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}
.top-strip-message{
    display:flex;
    align-items:center;
    gap:9px;
    min-width:0;
    font-size:12px;
    font-weight:700;
    letter-spacing:.02em;
}
.top-live-dot{
    width:7px;
    height:7px;
    flex:0 0 auto;
    border-radius:50%;
    background:#b5df48;
    box-shadow:0 0 0 5px rgba(181,223,72,.10);
    animation:headerPulse 2s ease-in-out infinite;
}
.top-strip-links{
    display:flex;
    align-items:center;
    gap:18px;
    white-space:nowrap;
}
.top-strip-links a{
    display:flex;
    align-items:center;
    gap:7px;
    color:#eff8f0;
    font-size:11px;
    font-weight:700;
    opacity:.92;
    transition:.2s;
}
.top-strip-links a:hover{opacity:1;transform:translateY(-1px)}
.top-icon{color:#c8e979;font-size:11px}

.site-header{
    position:sticky;
    top:0;
    z-index:90;
    background:rgba(255,255,255,.91);
    backdrop-filter:blur(18px) saturate(145%);
    -webkit-backdrop-filter:blur(18px) saturate(145%);
    border-bottom:1px solid rgba(21,77,43,.08);
    transition:
        box-shadow .3s ease,
        background .3s ease,
        transform .3s ease;
}
.site-header.is-scrolled{
    background:rgba(255,255,255,.97);
    box-shadow:0 12px 38px rgba(13,64,34,.11);
}
.nav-row{
    min-height:86px;
    display:flex;
    align-items:center;
    gap:24px;
}
.site-brand{
    position:relative;
    z-index:2;
    flex:0 0 auto;
    width:126px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
}
.site-brand img{
    width:112px;
    height:70px;
    object-fit:contain;
    position:relative;
    z-index:2;
    transition:transform .35s ease,filter .35s ease;
}
.brand-glow{
    position:absolute;
    width:78px;
    height:52px;
    left:17px;
    top:9px;
    border-radius:50%;
    background:rgba(149,199,46,.14);
    filter:blur(18px);
    opacity:0;
    transition:.35s;
}
.site-brand:hover img{transform:translateY(-2px) scale(1.02)}
.site-brand:hover .brand-glow{opacity:1}

.site-nav{
    margin-left:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-width:0;
}
.site-nav a{
    position:relative;
    display:flex;
    align-items:center;
    min-height:42px;
    padding:0 11px;
    border-radius:12px;
    color:#173f2a;
    font-size:13px;
    font-weight:800;
    white-space:nowrap;
    transition:color .22s,background .22s,transform .22s;
}
.site-nav a:after{
    content:"";
    position:absolute;
    left:13px;
    right:13px;
    bottom:5px;
    height:2px;
    border-radius:99px;
    background:linear-gradient(90deg,#0b6533,#9bc832);
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .25s ease;
}
.site-nav a:hover{
    color:#0b6533;
    background:#f3f8ef;
    transform:translateY(-1px);
}
.site-nav a:hover:after,
.site-nav a.is-active:after{transform:scaleX(1)}
.site-nav a.is-active{
    color:#0b6533;
    background:#f0f7ec;
}

.nav-tools{
    display:flex;
    align-items:center;
    gap:8px;
    flex:0 0 auto;
}
.cart-link,
.account-pill{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:1px solid #dbe8d8;
    background:rgba(255,255,255,.86);
    color:#18422c;
    border-radius:15px;
    padding:0 12px;
    font-size:12px;
    font-weight:800;
    box-shadow:0 8px 24px rgba(18,67,37,.05);
    transition:.25s;
}
.cart-link:hover,
.account-pill:hover,
.cart-link.is-active,
.account-pill.is-active{
    transform:translateY(-2px);
    border-color:#b8d498;
    box-shadow:0 12px 28px rgba(18,67,37,.09);
}
.cart-link{position:relative}
.cart-icon{font-size:18px;line-height:1}
.cart-count{
    min-width:20px;
    height:20px;
    padding:0 5px;
    display:grid;
    place-items:center;
    border-radius:999px;
    background:linear-gradient(135deg,#7eae21,#a9d649);
    color:#fff;
    font-size:9px;
    box-shadow:0 5px 15px rgba(104,151,30,.22);
}
.account-avatar{
    width:25px;
    height:25px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    border-radius:9px;
    background:#edf6e7;
    color:#0d6634;
    font-size:11px;
    font-weight:900;
}

.mobile-menu{
    display:none;
    width:44px;
    height:44px;
    padding:0;
    border:1px solid #d9e7d7;
    border-radius:14px;
    background:#fff;
    cursor:pointer;
    place-items:center;
    align-content:center;
    gap:5px;
    box-shadow:0 8px 24px rgba(18,67,37,.06);
}
.mobile-menu span{
    width:20px;
    height:2px;
    display:block;
    border-radius:99px;
    background:#16452e;
    transition:transform .25s,opacity .25s,width .25s;
}
.mobile-menu.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mobile-menu.is-open span:nth-child(2){opacity:0;width:8px}
.mobile-menu.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mobile-nav-overlay{
    position:fixed;
    inset:0;
    z-index:120;
    background:rgba(4,31,18,.45);
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
    opacity:0;
    transition:opacity .28s ease;
}
.mobile-nav-overlay.is-visible{opacity:1}

.mobile-drawer{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    z-index:130;
    width:min(390px,calc(100vw - 28px));
    display:flex;
    flex-direction:column;
    background:
        radial-gradient(circle at 105% -5%,rgba(150,203,48,.16),transparent 34%),
        #f8fbf6;
    border-left:1px solid #dce8da;
    box-shadow:-25px 0 70px rgba(6,49,25,.18);
    transform:translateX(105%);
    visibility:hidden;
    transition:transform .34s cubic-bezier(.22,.8,.26,1),visibility .34s;
}
.mobile-drawer.is-open{
    transform:translateX(0);
    visibility:visible;
}
.mobile-drawer-head{
    min-height:88px;
    padding:14px 14px 14px 18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    border-bottom:1px solid #e0eae0;
    background:rgba(255,255,255,.78);
    backdrop-filter:blur(12px);
}
.mobile-drawer-brand{
    min-width:0;
    display:flex;
    align-items:center;
    gap:10px;
}
.mobile-drawer-brand img{
    width:56px;
    height:56px;
    object-fit:contain;
    border-radius:13px;
    background:#fff;
}
.mobile-drawer-brand span{
    min-width:0;
    display:grid;
    gap:1px;
}
.mobile-drawer-brand b{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#123f29;
    font-size:13px;
}
.mobile-drawer-brand small{
    color:#718078;
    font-size:9px;
}
.mobile-close{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    border:1px solid #dbe7d9;
    border-radius:13px;
    background:#fff;
    color:#17462f;
    cursor:pointer;
    font-size:24px;
    line-height:1;
}
.mobile-drawer-body{
    flex:1;
    min-height:0;
    overflow:auto;
    padding:14px;
    overscroll-behavior:contain;
}
.mobile-nav-links{
    display:grid;
    gap:7px;
}
.mobile-nav-links a{
    min-height:49px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:0 14px;
    border:1px solid #e1ebe0;
    border-radius:15px;
    background:#fff;
    color:#173f2a;
    font-size:13px;
    font-weight:800;
    box-shadow:0 8px 20px rgba(14,64,34,.035);
    transition:.22s;
}
.mobile-nav-links a span{
    width:26px;
    color:#91b83d;
    font-size:9px;
    font-weight:900;
    letter-spacing:.08em;
}
.mobile-nav-links a:hover,
.mobile-nav-links a.is-active{
    transform:translateX(3px);
    border-color:#bfd89f;
    background:linear-gradient(90deg,#f4f9f0,#fff);
    color:#0d6634;
}

.mobile-quick-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin-top:14px;
}
.mobile-quick-grid a{
    min-width:0;
    min-height:86px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:4px;
    padding:13px;
    border-radius:17px;
    background:linear-gradient(145deg,#103f28,#176638);
    color:#fff;
    box-shadow:0 12px 28px rgba(11,76,39,.14);
}
.mobile-quick-grid a:nth-child(2){
    background:linear-gradient(145deg,#7aa924,#9bc83b);
    color:#123c27;
}
.mobile-quick-grid strong{font-size:17px}
.mobile-quick-grid span{font-size:10px;font-weight:700;opacity:.9}

.mobile-contact-card{
    margin-top:12px;
    padding:15px;
    display:grid;
    gap:5px;
    border-radius:18px;
    border:1px solid #dce8d9;
    background:#fff;
}
.mobile-contact-eyebrow{
    color:#89af34;
    font-size:9px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.mobile-contact-card a{
    color:#17432c;
    font-size:11px;
    font-weight:800;
    overflow-wrap:anywhere;
}

body.mobile-nav-open{overflow:hidden}

@keyframes headerPulse{
    0%,100%{transform:scale(1);opacity:1}
    50%{transform:scale(.82);opacity:.7}
}

/* =========================================================
   LAPTOP / MEDIUM DESKTOP
========================================================= */
@media(max-width:1240px){
    .nav-row{gap:14px}
    .site-brand{width:112px}
    .site-brand img{width:100px}
    .site-nav a{padding:0 8px;font-size:12px}
    .cart-text,.account-text{display:none}
    .cart-link,.account-pill{width:44px;padding:0}
}

/* =========================================================
   TABLET + MOBILE DRAWER MODE
========================================================= */
@media(max-width:1040px){
    .top-strip-links a:nth-child(2){display:none}
    .site-nav{display:none}
    .mobile-menu{display:grid}
    .nav-row{
        min-height:76px;
        gap:10px;
    }
    .site-brand{
        width:auto;
        margin-right:auto;
    }
    .site-brand img{
        width:94px;
        height:62px;
    }
    .nav-tools{margin-left:auto}
}

/* =========================================================
   MOBILE
========================================================= */
@media(max-width:620px){
    .top-strip-inner{
        min-height:31px;
        justify-content:center;
    }
    .top-strip-message{
        width:100%;
        justify-content:center;
        font-size:9px;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
    }
    .top-live-dot{
        width:6px;
        height:6px;
    }
    .top-strip-links{display:none}

    .nav-row{
        min-height:66px;
        width:calc(100% - 18px);
        gap:7px;
    }
    .site-brand img{
        width:78px;
        height:53px;
    }
    .brand-glow{display:none}

    .cart-link,
    .account-pill,
    .mobile-menu{
        width:40px;
        height:40px;
        min-height:40px;
        border-radius:13px;
        padding:0;
    }
    .cart-icon{font-size:17px}
    .cart-count{
        position:absolute;
        top:-4px;
        right:-4px;
        min-width:18px;
        height:18px;
        border:2px solid #fff;
        font-size:8px;
    }
    .account-avatar{
        width:24px;
        height:24px;
        border-radius:8px;
    }
    .mobile-menu{gap:4px}
    .mobile-menu span{width:18px}

    .mobile-drawer{
        width:min(350px,calc(100vw - 18px));
    }
    .mobile-drawer-head{
        min-height:76px;
        padding:10px 10px 10px 13px;
    }
    .mobile-drawer-brand img{
        width:48px;
        height:48px;
    }
    .mobile-close{
        width:38px;
        height:38px;
    }
    .mobile-drawer-body{padding:10px}
    .mobile-nav-links{gap:6px}
    .mobile-nav-links a{
        min-height:46px;
        border-radius:14px;
        padding:0 12px;
        font-size:12px;
    }
}

/* =========================================================
   SMALL MOBILE
========================================================= */
@media(max-width:390px){
    .top-strip-message{
        font-size:8.5px;
        letter-spacing:0;
    }
    .nav-row{
        width:calc(100% - 12px);
    }
    .site-brand img{
        width:72px;
        height:49px;
    }
    .nav-tools{gap:5px}
    .cart-link,
    .account-pill,
    .mobile-menu{
        width:38px;
        height:38px;
        min-height:38px;
    }
    .mobile-drawer{
        width:calc(100vw - 10px);
    }
}

@media(prefers-reduced-motion:reduce){
    .top-live-dot,
    .site-brand img,
    .site-nav a,
    .mobile-drawer,
    .mobile-nav-overlay,
    .mobile-menu span{
        animation:none!important;
        transition:none!important;
    }
}


/* =========================================================
   AUTH V8 — LOGIN / REGISTRATION
========================================================= */
.auth-section{
    position:relative;
    overflow:hidden;
    padding:58px 0 78px;
    background:
      radial-gradient(circle at 8% 20%,rgba(139,189,43,.10),transparent 28%),
      radial-gradient(circle at 92% 80%,rgba(14,102,52,.08),transparent 30%),
      linear-gradient(180deg,#f8fbf6,#f2f7ef);
}
.auth-shell{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(430px,.82fr);
    gap:36px;
    align-items:center;
}
.auth-orb{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
    filter:blur(1px);
}
.auth-orb-one{
    width:360px;height:360px;
    left:-150px;top:30px;
    border:1px solid rgba(118,168,36,.12);
    box-shadow:0 0 0 55px rgba(118,168,36,.03),0 0 0 110px rgba(118,168,36,.02);
}
.auth-orb-two{
    width:260px;height:260px;
    right:-90px;bottom:-80px;
    background:radial-gradient(circle,rgba(17,101,52,.06),transparent 68%);
}
.auth-visual{
    min-width:0;
}
.auth-visual-card{
    min-height:560px;
    padding:48px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    border-radius:32px;
    color:#fff;
    background:
      linear-gradient(150deg,rgba(8,65,34,.84),rgba(23,102,52,.56)),
      url('https://images.unsplash.com/photo-1542838132-92c53300491e?auto=format&fit=crop&w=1300&q=85') center/cover;
    box-shadow:0 30px 80px rgba(12,70,37,.16);
    overflow:hidden;
    position:relative;
}
.auth-register .auth-visual-card{
    background:
      linear-gradient(150deg,rgba(8,65,34,.84),rgba(23,102,52,.56)),
      url('https://images.unsplash.com/photo-1488459716781-31db52582fe9?auto=format&fit=crop&w=1300&q=85') center/cover;
}
.auth-visual-card:before{
    content:"";
    position:absolute;
    width:260px;height:260px;
    border-radius:50%;
    right:-80px;top:-90px;
    border:1px solid rgba(255,255,255,.18);
    box-shadow:0 0 0 42px rgba(255,255,255,.04),0 0 0 84px rgba(255,255,255,.025);
}
.auth-visual-card>*{position:relative;z-index:2}
.auth-visual-card .eyebrow{color:#d3ef8d}
.auth-visual-card h1{
    max-width:610px;
    margin:15px 0 14px;
    font:800 clamp(40px,4.6vw,66px)/1.02 "Playfair Display",serif;
}
.auth-visual-card>p{
    max-width:610px;
    color:#e5f1e7;
    font-size:16px;
}
.auth-benefits{
    display:grid;
    gap:10px;
    margin-top:26px;
}
.auth-benefit{
    display:flex;
    gap:12px;
    align-items:center;
    padding:13px 15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:16px;
    background:rgba(255,255,255,.07);
    backdrop-filter:blur(8px);
}
.auth-benefit>span{
    width:34px;height:34px;
    display:grid;place-items:center;
    flex:0 0 auto;
    border-radius:11px;
    background:rgba(206,237,135,.15);
    color:#d6ef99;
    font-size:10px;
    font-weight:900;
}
.auth-benefit div{display:grid;gap:2px}
.auth-benefit b{font-size:13px}
.auth-benefit small{font-size:10px;color:#d8e7dc}

.auth-stat-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:25px;
}
.auth-stat-grid div{
    padding:14px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.07);
}
.auth-stat-grid b{display:block;font-size:18px}
.auth-stat-grid span{font-size:10px;color:#dce9df}

.auth-card-wrap{min-width:0}
.auth-card{
    width:100%;
    padding:30px;
    border-radius:28px;
    background:rgba(255,255,255,.95);
    border:1px solid #dce8da;
    box-shadow:0 24px 70px rgba(18,69,37,.12);
    backdrop-filter:blur(14px);
}
.auth-card-head{
    display:flex;
    gap:14px;
    align-items:center;
    margin-bottom:22px;
}
.auth-mini-logo{
    width:68px;height:68px;
    flex:0 0 auto;
    padding:4px;
    display:grid;place-items:center;
    border-radius:18px;
    background:#fff;
    border:1px solid #e0eadf;
    box-shadow:0 10px 25px rgba(15,65,35,.07);
}
.auth-mini-logo img{width:100%;height:100%;object-fit:contain;border-radius:14px}
.auth-kicker{
    display:block;
    margin-bottom:2px;
    color:#8ab22f;
    font-size:9px;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.auth-card-head h2{
    margin:0;
    color:#123f29;
    font:800 34px/1.05 "Playfair Display",serif;
}
.auth-card-head p{
    margin:5px 0 0;
    color:#758178;
    font-size:12px;
}
.auth-alert{
    display:flex;
    gap:10px;
    align-items:flex-start;
    padding:12px 13px;
    margin-bottom:15px;
    border-radius:14px;
    font-size:12px;
    line-height:1.5;
}
.auth-alert>span{
    width:24px;height:24px;
    flex:0 0 auto;
    display:grid;place-items:center;
    border-radius:8px;
    font-weight:900;
}
.auth-alert-error{
    border:1px solid #efcccc;
    background:#fff4f4;
    color:#8f2d2d;
}
.auth-alert-error>span{background:#f7dddd}

.auth-form{display:grid;gap:14px}
.auth-two-col{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}
.auth-field{display:grid;gap:7px;min-width:0}
.auth-field label{
    color:#2f513b;
    font-size:11px;
    font-weight:800;
}
.auth-label-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
}
.auth-input-wrap{
    position:relative;
    display:flex;
    align-items:center;
    min-width:0;
}
.auth-input-icon{
    position:absolute;
    left:13px;
    z-index:2;
    width:26px;height:26px;
    display:grid;place-items:center;
    border-radius:8px;
    background:#eef6e9;
    color:#126333;
    font-size:10px;
    font-weight:900;
    pointer-events:none;
}
.auth-input{
    width:100%;
    min-width:0;
    height:50px;
    padding:0 76px 0 49px;
    border:1px solid #d8e5d6;
    border-radius:15px;
    background:#fbfdf9;
    color:#173e2a;
    outline:0;
    font:inherit;
    font-size:13px;
    transition:.22s;
}
.auth-input:focus{
    border-color:#91bb42;
    background:#fff;
    box-shadow:0 0 0 4px rgba(139,184,62,.10);
}
.auth-input::placeholder{color:#98a49b}
.auth-password-toggle{
    position:absolute;
    right:8px;
    z-index:3;
    min-width:53px;
    height:34px;
    border:0;
    border-radius:10px;
    background:#edf5e8;
    color:#31533d;
    cursor:pointer;
    font-size:9px;
    font-weight:900;
}
.password-meter{
    height:5px;
    overflow:hidden;
    border-radius:999px;
    background:#edf1eb;
}
.password-meter i{
    display:block;
    width:0;
    height:100%;
    border-radius:999px;
    background:#9dbf50;
    transition:width .25s ease;
}
.auth-check{
    display:flex;
    gap:9px;
    align-items:flex-start;
    color:#69776d;
    font-size:11px;
    line-height:1.5;
}
.auth-check input{
    margin-top:2px;
    accent-color:#0e6734;
}
.auth-check a{
    color:#0d6533;
    font-weight:800;
}
.auth-submit{
    width:100%;
    min-height:50px;
    justify-content:space-between;
    padding-left:19px;
    padding-right:19px;
}
.auth-divider{
    position:relative;
    display:flex;
    justify-content:center;
    margin:2px 0;
}
.auth-divider:before{
    content:"";
    position:absolute;
    left:0;right:0;top:50%;
    height:1px;
    background:#e6ece4;
}
.auth-divider span{
    position:relative;
    z-index:2;
    padding:0 10px;
    background:#fff;
    color:#8b968d;
    font-size:9px;
}
.auth-secondary-btn{
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    border:1px solid #dbe8d9;
    background:#fff;
    color:#0d6533;
    font-size:12px;
    font-weight:900;
    transition:.22s;
}
.auth-secondary-btn:hover{
    transform:translateY(-2px);
    border-color:#b7d391;
    box-shadow:0 10px 24px rgba(18,69,37,.07);
}
.auth-trust-row{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:16px;
}
.auth-trust-row span{
    padding:6px 8px;
    border-radius:999px;
    background:#f0f6ec;
    color:#5e7464;
    font-size:8px;
    font-weight:800;
}

/* laptop */
@media(max-width:1180px){
    .auth-shell{
        grid-template-columns:minmax(0,.9fr) minmax(400px,.9fr);
        gap:24px;
    }
    .auth-visual-card{
        min-height:520px;
        padding:34px;
    }
    .auth-card{padding:25px}
}

/* tablet */
@media(max-width:920px){
    .auth-section{padding:34px 0 60px}
    .auth-shell{
        grid-template-columns:1fr;
        max-width:760px;
    }
    .auth-visual-card{
        min-height:auto;
        padding:30px;
        border-radius:26px;
    }
    .auth-visual-card h1{
        font-size:42px;
        max-width:620px;
    }
    .auth-benefits{
        grid-template-columns:repeat(3,1fr);
    }
    .auth-benefit{
        display:grid;
        align-items:start;
    }
}

/* mobile */
@media(max-width:620px){
    .auth-section{
        padding:18px 0 44px;
    }
    .auth-shell{
        width:calc(100% - 18px);
        gap:12px;
    }
    .auth-visual{
        order:2;
    }
    .auth-card-wrap{
        order:1;
    }
    .auth-card{
        padding:17px;
        border-radius:20px;
    }
    .auth-card-head{
        gap:10px;
        margin-bottom:15px;
    }
    .auth-mini-logo{
        width:52px;height:52px;
        border-radius:14px;
    }
    .auth-card-head h2{
        font-size:28px;
    }
    .auth-card-head p{
        font-size:10px;
    }
    .auth-form{gap:11px}
    .auth-two-col{
        grid-template-columns:1fr;
        gap:11px;
    }
    .auth-input{
        height:47px;
        padding-left:46px;
        font-size:12px;
        border-radius:13px;
    }
    .auth-input-icon{
        left:10px;
        width:25px;height:25px;
    }
    .auth-password-toggle{
        right:6px;
        height:32px;
        min-width:50px;
    }
    .auth-submit{
        min-height:47px;
        font-size:12px;
    }
    .auth-secondary-btn{
        min-height:44px;
        font-size:11px;
    }
    .auth-visual-card{
        padding:22px;
        border-radius:20px;
    }
    .auth-visual-card h1{
        font-size:32px;
        margin:10px 0;
    }
    .auth-visual-card>p{
        font-size:12px;
    }
    .auth-benefits{
        grid-template-columns:1fr;
        margin-top:16px;
    }
    .auth-benefit{
        display:flex;
        padding:10px 11px;
    }
    .auth-stat-grid{
        grid-template-columns:1fr 1fr 1fr;
        gap:7px;
        margin-top:16px;
    }
    .auth-stat-grid div{
        padding:10px;
    }
    .auth-stat-grid b{
        font-size:14px;
    }
    .auth-stat-grid span{
        font-size:8px;
    }
    .auth-trust-row{
        justify-content:center;
    }
}

/* very small */
@media(max-width:390px){
    .auth-shell{width:calc(100% - 12px)}
    .auth-card{padding:14px}
    .auth-mini-logo{width:48px;height:48px}
    .auth-card-head h2{font-size:25px}
    .auth-input{font-size:11.5px}
    .auth-check{font-size:10px}
    .auth-stat-grid{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
    .auth-input,
    .auth-secondary-btn,
    .password-meter i{
        transition:none!important;
    }
}


/* HEADER V9 FIX: only drawer navigation is allowed on mobile */
@media (max-width:900px){
  #siteNav,
  #siteNav.open{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  #mobileDrawer{
    visibility:visible;
  }
}


/* =========================================================
   CART V10 — RESPONSIVE PREMIUM SHOPPING CART
========================================================= */
.cart-page{
    position:relative;
    overflow:hidden;
    min-height:65vh;
    padding:40px 0 86px;
    background:
      radial-gradient(circle at 8% 12%,rgba(144,191,49,.09),transparent 28%),
      radial-gradient(circle at 94% 72%,rgba(15,99,51,.07),transparent 28%),
      linear-gradient(180deg,#f7faf5,#f2f7ef);
}
.cart-shell{position:relative;z-index:2}
.cart-bg-orb{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}
.cart-bg-one{
    width:360px;height:360px;
    left:-180px;top:110px;
    border:1px solid rgba(130,177,42,.09);
    box-shadow:0 0 0 55px rgba(130,177,42,.025),0 0 0 110px rgba(130,177,42,.015);
}
.cart-bg-two{
    width:300px;height:300px;
    right:-100px;bottom:80px;
    background:radial-gradient(circle,rgba(13,97,50,.06),transparent 68%);
}
.cart-breadcrumb{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
    margin-bottom:20px;
    color:#77837b;
    font-size:11px;
}
.cart-breadcrumb a{color:#53675a}
.cart-breadcrumb strong{color:#153f29}
.cart-page-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    margin-bottom:27px;
}
.cart-page-head h1{
    margin:9px 0 8px;
    color:#103e28;
    font:800 clamp(38px,4vw,58px)/1.04 "Playfair Display",serif;
}
.cart-page-head p{
    max-width:650px;
    margin:0;
    color:#6d7d72;
    font-size:14px;
}
.cart-head-stat{
    min-width:125px;
    padding:15px 17px;
    display:grid;
    border:1px solid #dce8da;
    border-radius:18px;
    background:rgba(255,255,255,.82);
    box-shadow:0 12px 30px rgba(20,69,38,.06);
}
.cart-head-stat b{color:#0e6734;font-size:25px}
.cart-head-stat span{color:#748078;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}

/* empty */
.cart-empty{
    min-height:390px;
    display:grid;
    grid-template-columns:minmax(280px,.75fr) minmax(0,1.1fr);
    align-items:center;
    gap:28px;
    padding:34px;
    border:1px solid #dbe7d9;
    border-radius:30px;
    background:rgba(255,255,255,.94);
    box-shadow:0 24px 65px rgba(16,68,36,.08);
}
.cart-empty-art{
    min-height:300px;
    position:relative;
    display:grid;
    place-items:center;
    overflow:hidden;
    border-radius:24px;
    background:
      radial-gradient(circle at center,#f1f8ec,#e7f2e1);
}
.cart-empty-art:before{
    content:"";
    position:absolute;
    width:190px;height:190px;
    border-radius:50%;
    border:1px solid rgba(119,168,35,.14);
    box-shadow:0 0 0 32px rgba(119,168,35,.035),0 0 0 64px rgba(119,168,35,.02);
}
.empty-basket{
    position:relative;
    z-index:2;
    font-size:82px;
    animation:cartFloat 3.8s ease-in-out infinite;
}
.empty-leaf{
    position:absolute;
    z-index:2;
    font-size:27px;
    animation:cartLeaf 4s ease-in-out infinite;
}
.leaf-one{left:22%;top:22%}
.leaf-two{right:22%;bottom:22%;animation-delay:-1.8s}
.cart-empty-kicker{
    color:#89b02f;
    font-size:10px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.cart-empty-copy h2{
    margin:8px 0 10px;
    color:#123f29;
    font:800 clamp(34px,4vw,52px)/1.05 "Playfair Display",serif;
}
.cart-empty-copy p{
    max-width:600px;
    color:#6c7b70;
    font-size:14px;
}
.cart-empty-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.cart-empty-points{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}
.cart-empty-points span{
    padding:7px 9px;
    border-radius:999px;
    background:#eff6ea;
    color:#5d7162;
    font-size:9px;
    font-weight:800;
}

/* layout */
.cart-layout-v10{
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(330px,.64fr);
    gap:22px;
    align-items:start;
}
.cart-items-panel{
    min-width:0;
    padding:20px;
    border:1px solid #dce8da;
    border-radius:28px;
    background:rgba(255,255,255,.93);
    box-shadow:0 22px 60px rgba(17,68,37,.08);
}
.cart-panel-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    padding:4px 3px 16px;
    border-bottom:1px solid #e8eee6;
}
.cart-panel-head h2{
    margin:0;
    color:#143f29;
    font:800 27px/1.1 "Playfair Display",serif;
}
.cart-panel-head p{margin:5px 0 0;color:#7a867d;font-size:10px}
.cart-clear-btn{
    border:1px solid #ead4d4;
    border-radius:999px;
    padding:8px 12px;
    background:#fff7f7;
    color:#a13c3c;
    cursor:pointer;
    font-size:9px;
    font-weight:900;
    transition:.22s;
}
.cart-clear-btn:hover{transform:translateY(-2px);background:#fff1f1}

.cart-item-list{display:grid;gap:13px;margin-top:15px}
.cart-item-card{
    min-width:0;
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    gap:17px;
    padding:13px;
    border:1px solid #e0e9de;
    border-radius:20px;
    background:linear-gradient(145deg,#fff,#fbfdf9);
    transition:transform .28s,box-shadow .28s,border-color .28s;
}
.cart-item-card:hover{
    transform:translateY(-3px);
    border-color:#c6dda9;
    box-shadow:0 14px 32px rgba(18,69,37,.08);
}
.cart-item-image{
    position:relative;
    min-width:0;
    aspect-ratio:1/1;
    overflow:hidden;
    border-radius:15px;
    background:#edf4e9;
}
.cart-item-image img{
    width:100%;height:100%;
    object-fit:cover;
    transition:transform .5s;
}
.cart-item-card:hover .cart-item-image img{transform:scale(1.05)}
.cart-item-image span{
    position:absolute;
    left:8px;bottom:8px;
    padding:5px 7px;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    color:#1b5c35;
    font-size:7px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.cart-item-main{min-width:0;display:flex;flex-direction:column}
.cart-item-top{
    display:flex;
    justify-content:space-between;
    gap:15px;
    min-width:0;
}
.cart-item-name{
    color:#143e29;
    font:800 22px/1.1 "Playfair Display",serif;
}
.cart-item-top p{
    max-width:570px;
    margin:6px 0 0;
    color:#748078;
    font-size:10px;
    line-height:1.55;
}
.cart-remove-btn{
    width:34px;height:34px;
    flex:0 0 auto;
    display:grid;place-items:center;
    border:1px solid #ead8d8;
    border-radius:11px;
    background:#fff8f8;
    color:#a94444;
    cursor:pointer;
    font-size:19px;
    transition:.22s;
}
.cart-remove-btn:hover{transform:rotate(6deg) scale(1.04);background:#fff0f0}
.cart-item-meta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin:14px 0;
}
.cart-item-meta>div{
    min-width:0;
    padding:10px 11px;
    border-radius:13px;
    background:#f4f8f1;
    border:1px solid #e5ede2;
}
.cart-item-meta small,
.cart-item-subtotal small{
    display:block;
    margin-bottom:2px;
    color:#88938b;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.cart-item-meta b{
    color:#294c36;
    font-size:10px;
    overflow-wrap:anywhere;
}
.cart-stock{color:#17713a!important}
.cart-item-bottom{
    margin-top:auto;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
}
.cart-qty-form{
    display:flex;
    align-items:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.cart-qty-label{
    width:100%;
    color:#69786d;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.cart-qty-control{
    display:grid;
    grid-template-columns:34px 46px 34px;
    align-items:center;
    overflow:hidden;
    border:1px solid #d8e5d6;
    border-radius:999px;
    background:#fff;
}
.cart-qty-control button{
    height:38px;
    border:0;
    background:transparent;
    color:#0d6533;
    cursor:pointer;
    font-size:18px;
}
.cart-qty-control input{
    width:100%;
    height:38px;
    padding:0;
    border:0;
    outline:0;
    text-align:center;
    background:transparent;
    color:#153f29;
    font-weight:900;
    appearance:textfield;
}
.cart-qty-control input::-webkit-inner-spin-button,
.cart-qty-control input::-webkit-outer-spin-button{appearance:none;margin:0}
.cart-update-btn{
    min-height:38px;
    padding:0 12px;
    border:1px solid #dbe7d9;
    border-radius:999px;
    background:#f5f9f2;
    color:#126333;
    cursor:pointer;
    font-size:9px;
    font-weight:900;
}
.cart-qty-form.is-updating .cart-update-btn{opacity:.55}
.cart-item-subtotal{text-align:right}
.cart-item-subtotal b{
    color:#0e6734;
    font-size:20px;
}
.cart-continue{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    padding:16px 3px 2px;
}
.cart-continue a{color:#0d6533;font-size:11px;font-weight:900}
.cart-continue span{color:#879189;font-size:9px}

/* summary */
.cart-summary-card{
    position:sticky;
    top:110px;
    overflow:hidden;
    padding:23px;
    border-radius:27px;
    color:#fff;
    background:
      linear-gradient(145deg,#0b4728,#0e6032 62%,#194b2c);
    box-shadow:0 24px 65px rgba(8,63,31,.18);
}
.cart-summary-glow{
    position:absolute;
    width:180px;height:180px;
    right:-70px;top:-70px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 0 0 34px rgba(255,255,255,.035),0 0 0 68px rgba(255,255,255,.018);
}
.cart-summary-card>*{position:relative;z-index:2}
.cart-summary-kicker{
    color:#cfe98e;
    font-size:8px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.cart-summary-head h2{
    margin:6px 0;
    color:#fff;
    font:800 29px/1.08 "Playfair Display",serif;
}
.cart-summary-head p{margin:0;color:#d2e5d8;font-size:10px}
.cart-summary-lines{
    display:grid;
    gap:0;
    margin:18px 0 0;
    border-top:1px solid rgba(255,255,255,.11);
}
.cart-summary-lines>div{
    display:flex;
    justify-content:space-between;
    gap:14px;
    padding:11px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}
.cart-summary-lines span{color:#c8daca;font-size:10px}
.cart-summary-lines b{font-size:11px;text-align:right}
.cart-summary-soft{color:#d5e5d6;font-weight:700!important;font-size:9px!important}
.cart-summary-total{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:15px;
    padding:17px 0 14px;
}
.cart-summary-total span{font-size:11px;font-weight:800}
.cart-summary-total b{font-size:26px;color:#d8f09e}
.cart-checkout-btn{
    width:100%;
    min-height:49px;
    justify-content:space-between;
    padding-left:16px;
    padding-right:16px;
    background:linear-gradient(135deg,#9bc832,#c6e56f);
    color:#153e28;
    box-shadow:none;
}
.cart-pay-icons{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:6px;
    margin-top:9px;
}
.cart-pay-icons span{
    display:grid;
    place-items:center;
    min-height:30px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:10px;
    background:rgba(255,255,255,.06);
    color:#e6f1e8;
    font-size:8px;
    font-weight:900;
}
.cart-summary-trust{
    display:grid;
    gap:8px;
    margin-top:16px;
}
.cart-summary-trust>div{
    display:flex;
    gap:8px;
    align-items:flex-start;
}
.cart-summary-trust>div>span{
    width:23px;height:23px;
    display:grid;place-items:center;
    flex:0 0 auto;
    border-radius:8px;
    background:rgba(207,235,145,.12);
    color:#d4ee98;
    font-size:9px;
}
.cart-summary-trust p{display:grid;gap:1px;margin:0}
.cart-summary-trust b{font-size:9px}
.cart-summary-trust small{color:#bcd0c1;font-size:8px}
.cart-mobile-checkout{display:none}

@keyframes cartFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}
@keyframes cartLeaf{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(10deg)}}

/* laptop */
@media(max-width:1180px){
    .cart-layout-v10{
        grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);
        gap:16px;
    }
    .cart-items-panel{padding:15px}
    .cart-item-card{grid-template-columns:125px minmax(0,1fr);gap:13px}
    .cart-summary-card{padding:19px}
}

/* tablet */
@media(max-width:920px){
    .cart-page{padding-top:25px}
    .cart-layout-v10{grid-template-columns:1fr}
    .cart-summary-card{position:relative;top:auto}
    .cart-empty{grid-template-columns:1fr;min-height:0}
    .cart-empty-art{min-height:240px}
}

/* mobile */
@media(max-width:620px){
    .cart-page{
        padding:14px 0 92px;
    }
    .cart-shell{width:calc(100% - 14px)}
    .cart-breadcrumb{
        margin-bottom:12px;
        font-size:9px;
    }
    .cart-page-head{
        display:block;
        margin-bottom:14px;
    }
    .cart-page-head h1{
        margin:7px 0 6px;
        font-size:34px;
    }
    .cart-page-head p{font-size:11px}
    .cart-head-stat{
        width:max-content;
        min-width:0;
        margin-top:10px;
        padding:9px 12px;
        display:flex;
        gap:7px;
        align-items:baseline;
    }
    .cart-head-stat b{font-size:18px}

    .cart-empty{
        padding:12px;
        gap:15px;
        border-radius:20px;
    }
    .cart-empty-art{
        min-height:190px;
        border-radius:16px;
    }
    .empty-basket{font-size:62px}
    .cart-empty-copy{padding:4px 5px 8px}
    .cart-empty-copy h2{font-size:31px}
    .cart-empty-copy p{font-size:11px}
    .cart-empty-actions{display:grid}
    .cart-empty-actions .btn{width:100%}
    .cart-empty-points{gap:5px}
    .cart-empty-points span{font-size:8px}

    .cart-items-panel{
        padding:10px;
        border-radius:20px;
    }
    .cart-panel-head{
        align-items:flex-start;
        gap:10px;
        padding-bottom:11px;
    }
    .cart-panel-head h2{font-size:23px}
    .cart-panel-head p{font-size:8.5px}
    .cart-clear-btn{padding:7px 9px;font-size:8px}

    .cart-item-list{gap:9px;margin-top:10px}
    .cart-item-card{
        grid-template-columns:88px minmax(0,1fr);
        gap:10px;
        padding:9px;
        border-radius:16px;
    }
    .cart-item-image{border-radius:12px}
    .cart-item-image span{
        left:5px;bottom:5px;
        padding:4px 5px;
        font-size:5.5px;
    }
    .cart-item-name{font-size:17px}
    .cart-item-top p{
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden;
        font-size:8.5px;
    }
    .cart-remove-btn{
        width:28px;height:28px;
        border-radius:9px;
        font-size:16px;
    }
    .cart-item-meta{
        grid-template-columns:1fr;
        gap:5px;
        margin:8px 0;
    }
    .cart-item-meta>div{
        padding:7px 8px;
        border-radius:10px;
    }
    .cart-item-meta small{font-size:6.5px}
    .cart-item-meta b{font-size:8.5px}

    .cart-item-bottom{
        display:grid;
        grid-template-columns:1fr auto;
        align-items:end;
        gap:8px;
    }
    .cart-qty-form{
        gap:5px;
    }
    .cart-qty-control{
        grid-template-columns:30px 38px 30px;
    }
    .cart-qty-control button,
    .cart-qty-control input{height:34px}
    .cart-update-btn{
        min-height:34px;
        padding:0 8px;
        font-size:7.5px;
    }
    .cart-item-subtotal b{font-size:16px}

    .cart-continue{
        display:grid;
        gap:4px;
        padding-top:12px;
    }
    .cart-continue a{font-size:9.5px}
    .cart-continue span{font-size:7.5px}

    .cart-summary-card{
        padding:17px;
        border-radius:21px;
    }
    .cart-summary-head h2{font-size:25px}
    .cart-summary-total b{font-size:22px}

    .cart-mobile-checkout{
        position:fixed;
        left:8px;
        right:62px;
        bottom:8px;
        z-index:72;
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        align-items:center;
        gap:8px;
        padding:8px;
        border:1px solid #d9e5d7;
        border-radius:17px;
        background:rgba(255,255,255,.96);
        backdrop-filter:blur(14px);
        box-shadow:0 14px 38px rgba(9,57,29,.18);
    }
    .cart-mobile-checkout>div{
        min-width:0;
        display:grid;
        padding-left:5px;
    }
    .cart-mobile-checkout small{
        color:#77857b;
        font-size:8px;
    }
    .cart-mobile-checkout b{
        color:#0d6533;
        font-size:16px;
    }
    .cart-mobile-checkout .btn{
        min-height:40px;
        padding:9px 12px;
        font-size:9px;
    }
}

/* very small */
@media(max-width:390px){
    .cart-shell{width:calc(100% - 10px)}
    .cart-item-card{
        grid-template-columns:78px minmax(0,1fr);
        gap:8px;
        padding:8px;
    }
    .cart-item-name{font-size:15px}
    .cart-item-top p{font-size:7.8px}
    .cart-item-meta{margin:6px 0}
    .cart-qty-control{grid-template-columns:28px 34px 28px}
    .cart-update-btn{padding:0 7px}
    .cart-mobile-checkout{left:5px;right:57px;bottom:5px}
}

@media(prefers-reduced-motion:reduce){
    .empty-basket,
    .empty-leaf,
    .cart-item-card,
    .cart-item-image img,
    .cart-remove-btn{
        animation:none!important;
        transition:none!important;
    }
}


/* =========================================================
   CONTACT V11 — PREMIUM RESPONSIVE CONTACT EXPERIENCE
========================================================= */
.contact-hero{
    position:relative;
    overflow:hidden;
    padding:74px 0 72px;
    color:#fff;
    background:
      linear-gradient(120deg,rgba(7,66,34,.93),rgba(16,100,52,.77)),
      url('https://images.unsplash.com/photo-1441123694162-e54a981ceba5?auto=format&fit=crop&w=1800&q=85') center/cover;
}
.contact-hero:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 60%,rgba(4,42,22,.12));
    pointer-events:none;
}
.contact-hero-glow{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}
.contact-hero-glow-one{
    width:360px;height:360px;
    right:-80px;top:-110px;
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 0 0 55px rgba(255,255,255,.035),0 0 0 110px rgba(255,255,255,.02);
}
.contact-hero-glow-two{
    width:230px;height:230px;
    left:-80px;bottom:-120px;
    background:radial-gradient(circle,rgba(203,235,135,.15),transparent 70%);
}
.contact-hero-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(340px,.65fr);
    gap:55px;
    align-items:center;
}
.contact-hero-copy h1{
    max-width:820px;
    margin:15px 0 15px;
    font:800 clamp(46px,5.7vw,78px)/1.01 "Playfair Display",serif;
}
.contact-hero-copy>p{
    max-width:720px;
    margin:0;
    color:#e0efe4;
    font-size:16px;
    line-height:1.75;
}
.contact-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:25px;
}
.contact-white-btn{
    border-color:rgba(255,255,255,.38)!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
}
.contact-hero-stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    max-width:700px;
    margin-top:26px;
}
.contact-hero-stats div{
    min-width:0;
    padding:13px 14px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:16px;
    background:rgba(255,255,255,.07);
    backdrop-filter:blur(8px);
}
.contact-hero-stats b{
    display:block;
    color:#d5ef98;
    font-size:13px;
}
.contact-hero-stats span{
    color:#d8e9dc;
    font-size:9px;
}
.contact-hero-visual{
    display:flex;
    justify-content:flex-end;
}
.contact-logo-card{
    width:min(340px,100%);
    min-height:350px;
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    padding:28px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:30px;
    background:rgba(255,255,255,.09);
    backdrop-filter:blur(16px);
    box-shadow:0 25px 60px rgba(0,0,0,.18);
    overflow:hidden;
}
.contact-logo-card img{
    width:190px;height:190px;
    padding:10px;
    object-fit:contain;
    border-radius:26px;
    background:#fff;
    position:relative;
    z-index:2;
    box-shadow:0 20px 45px rgba(0,0,0,.14);
}
.contact-logo-orbit{
    position:absolute;
    width:220px;height:220px;
    border:1px solid rgba(213,240,153,.20);
    border-radius:50%;
    box-shadow:0 0 0 30px rgba(213,240,153,.035),0 0 0 60px rgba(213,240,153,.02);
    animation:contactOrbit 10s linear infinite;
}
.contact-logo-caption{
    position:relative;
    z-index:2;
    display:grid;
    gap:2px;
    margin-top:18px;
    text-align:center;
}
.contact-logo-caption small{
    color:#cae58e;
    font-size:8px;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:900;
}
.contact-logo-caption b{font-size:17px}
.contact-logo-caption span{font-size:9px;color:#d8e7dc}

/* main */
.contact-main-section,
.contact-business-section,
.contact-process-section{
    position:relative;
    padding:76px 0;
    background:#f6faf4;
}
.contact-business-section{background:#edf5e9}
.contact-process-section{background:#f9fbf7}
.contact-section-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,520px);
    gap:50px;
    align-items:end;
    margin-bottom:27px;
}
.contact-section-head h2{
    margin:8px 0 0;
    color:#123f29;
    font:800 clamp(34px,4vw,52px)/1.05 "Playfair Display",serif;
}
.contact-section-head>p{
    margin:0;
    color:#6c7b70;
    font-size:14px;
    line-height:1.75;
}
.contact-main-grid{
    display:grid;
    grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr);
    gap:20px;
    align-items:start;
}

/* form */
.contact-form-card{
    padding:26px;
    border:1px solid #dce8da;
    border-radius:28px;
    background:rgba(255,255,255,.95);
    box-shadow:0 22px 65px rgba(16,67,36,.09);
}
.contact-form-card-head{
    display:flex;
    gap:12px;
    align-items:center;
    margin-bottom:20px;
}
.contact-form-icon{
    width:48px;height:48px;
    display:grid;place-items:center;
    flex:0 0 auto;
    border-radius:15px;
    background:linear-gradient(145deg,#eef7e8,#e1f0d8);
    color:#0e6634;
    font-size:18px;
    font-weight:900;
}
.contact-form-card-head span{
    display:block;
    color:#88b12f;
    font-size:8px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.contact-form-card-head h3{
    margin:3px 0 0;
    color:#143e29;
    font:800 27px/1.1 "Playfair Display",serif;
}
.contact-alert{
    display:flex;
    gap:9px;
    align-items:flex-start;
    margin-bottom:15px;
    padding:11px 12px;
    border:1px solid #ebcccc;
    border-radius:13px;
    background:#fff5f5;
    color:#922f2f;
    font-size:11px;
}
.contact-alert>span{
    width:23px;height:23px;
    display:grid;place-items:center;
    flex:0 0 auto;
    border-radius:8px;
    background:#f7dddd;
    font-weight:900;
}
.contact-form{display:grid;gap:13px}
.contact-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}
.contact-field{
    min-width:0;
    display:grid;
    gap:7px;
}
.contact-field label{
    color:#31513d;
    font-size:10px;
    font-weight:900;
}
.contact-input-wrap,
.contact-select-wrap{position:relative;min-width:0}
.contact-input-wrap>span{
    position:absolute;
    z-index:2;
    left:11px;top:50%;
    transform:translateY(-50%);
    width:27px;height:27px;
    display:grid;place-items:center;
    border-radius:8px;
    background:#edf6e8;
    color:#0e6534;
    font-size:9px;
    font-weight:900;
    pointer-events:none;
}
.contact-input-wrap input,
.contact-select-wrap select,
.contact-field textarea{
    width:100%;
    border:1px solid #d8e5d6;
    background:#fbfdf9;
    color:#173e2a;
    outline:0;
    font:inherit;
    font-size:12px;
    transition:.22s;
}
.contact-input-wrap input,
.contact-select-wrap select{
    height:49px;
    border-radius:14px;
}
.contact-input-wrap input{padding:0 13px 0 48px}
.contact-select-wrap select{padding:0 38px 0 13px;appearance:none}
.contact-select-wrap:after{
    content:"⌄";
    position:absolute;
    right:13px;top:50%;
    transform:translateY(-50%);
    color:#55705e;
    pointer-events:none;
}
.contact-field textarea{
    min-height:155px;
    resize:vertical;
    padding:13px;
    border-radius:15px;
    line-height:1.6;
}
.contact-input-wrap input:focus,
.contact-select-wrap select:focus,
.contact-field textarea:focus{
    border-color:#94be49;
    background:#fff;
    box-shadow:0 0 0 4px rgba(139,184,62,.10);
}
.contact-label-line{
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:center;
}
.contact-label-line small{color:#89948c;font-size:8px}
.contact-hp{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
}
.contact-form-note{
    display:flex;
    gap:8px;
    align-items:flex-start;
    padding:10px 11px;
    border:1px solid #e0e9de;
    border-radius:13px;
    background:#f5f9f2;
}
.contact-form-note>span{
    width:23px;height:23px;
    display:grid;place-items:center;
    flex:0 0 auto;
    border-radius:8px;
    background:#e7f3e1;
    color:#0f6a36;
    font-size:9px;
}
.contact-form-note p{
    margin:0;
    color:#68796d;
    font-size:9px;
    line-height:1.55;
}
.contact-submit{
    width:100%;
    min-height:50px;
    justify-content:space-between;
    padding-left:17px;
    padding-right:17px;
}

/* side cards */
.contact-side{display:grid;gap:11px}
.contact-info-card{
    min-width:0;
    position:relative;
    overflow:hidden;
    padding:18px;
    border:1px solid #dce8da;
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 32px rgba(18,68,37,.055);
    transition:transform .3s,box-shadow .3s,border-color .3s;
}
.contact-info-card:before{
    content:"";
    position:absolute;
    width:90px;height:90px;
    right:-32px;top:-38px;
    border-radius:50%;
    background:rgba(141,188,48,.08);
    transition:.4s;
}
.contact-info-card:hover{
    transform:translateY(-4px);
    border-color:#bfd89d;
    box-shadow:0 18px 40px rgba(18,68,37,.09);
}
.contact-info-card:hover:before{transform:scale(1.25)}
.contact-info-primary{
    color:#fff;
    background:linear-gradient(145deg,#0b4c2a,#106333);
    border-color:transparent;
}
.contact-info-primary:before{background:rgba(255,255,255,.07)}
.contact-whatsapp-card{
    background:linear-gradient(145deg,#f0fbf1,#e7f8e9);
    border-color:#cfe8d1;
}
.contact-info-icon{
    position:relative;
    z-index:2;
    width:38px;height:38px;
    display:grid;place-items:center;
    border-radius:12px;
    background:#edf6e8;
    color:#0e6534;
    font-size:12px;
    font-weight:900;
}
.contact-info-primary .contact-info-icon{
    background:rgba(255,255,255,.12);
    color:#d8ef9c;
}
.contact-info-label{
    position:relative;
    z-index:2;
    display:block;
    margin-top:12px;
    color:#87ad34;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
}
.contact-info-primary .contact-info-label{color:#d0e98f}
.contact-info-card h3{
    position:relative;
    z-index:2;
    margin:4px 0 7px;
    color:#153f29;
    font:800 21px/1.1 "Playfair Display",serif;
}
.contact-info-primary h3{color:#fff}
.contact-break{overflow-wrap:anywhere}
.contact-info-card p{
    position:relative;
    z-index:2;
    margin:0;
    color:#718077;
    font-size:9px;
    line-height:1.6;
}
.contact-info-primary p{color:#d4e5d8}
.contact-info-card a{
    position:relative;
    z-index:2;
    display:inline-block;
    margin-top:10px;
    color:#0d6533;
    font-size:9px;
    font-weight:900;
}
.contact-info-primary a{color:#d5ef98}

/* detail cards */
.contact-detail-grid,
.contact-process-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:13px;
}
.contact-detail-card,
.contact-process-card{
    min-width:0;
    position:relative;
    overflow:hidden;
    padding:20px;
    border:1px solid #dbe7d9;
    border-radius:21px;
    background:rgba(255,255,255,.94);
    transition:transform .32s,box-shadow .32s,border-color .32s;
}
.contact-detail-card:hover,
.contact-process-card:hover{
    transform:translateY(-6px);
    border-color:#bdd79a;
    box-shadow:0 18px 42px rgba(17,68,36,.10);
}
.contact-detail-number{
    position:absolute;
    top:14px;right:14px;
    color:#b7cb9b;
    font-size:9px;
    font-weight:900;
}
.contact-detail-icon{
    width:45px;height:45px;
    display:grid;place-items:center;
    margin-bottom:15px;
    border-radius:14px;
    background:#ebf5e5;
    color:#0e6534;
    font-size:10px;
    font-weight:900;
}
.contact-detail-card h3,
.contact-process-card h3{
    margin:0 0 8px;
    color:#143f29;
    font:800 18px/1.15 "Playfair Display",serif;
}
.contact-detail-card p,
.contact-process-card p{
    margin:0;
    color:#6d7c71;
    font-size:10px;
    line-height:1.65;
}
.contact-detail-card a{
    display:inline-block;
    margin-top:10px;
    color:#0d6533;
    font-size:9px;
    font-weight:900;
}
.contact-process-card>span{
    display:inline-grid;
    place-items:center;
    width:36px;height:36px;
    margin-bottom:14px;
    border-radius:12px;
    background:linear-gradient(145deg,#0c5f31,#8fbd31);
    color:#fff;
    font-size:9px;
    font-weight:900;
    box-shadow:0 8px 20px rgba(25,103,47,.15);
}

@keyframes contactOrbit{
    to{transform:rotate(360deg)}
}

/* laptop */
@media(max-width:1180px){
    .contact-hero-grid{
        grid-template-columns:minmax(0,1fr) minmax(300px,.58fr);
        gap:30px;
    }
    .contact-main-grid{
        grid-template-columns:minmax(0,1.15fr) minmax(300px,.7fr);
    }
    .contact-detail-grid,
    .contact-process-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

/* tablet */
@media(max-width:920px){
    .contact-hero{padding:52px 0}
    .contact-hero-grid{grid-template-columns:1fr}
    .contact-hero-visual{justify-content:flex-start}
    .contact-logo-card{
        width:100%;
        min-height:250px;
        display:grid;
        grid-template-columns:150px 1fr;
        gap:22px;
        justify-content:initial;
    }
    .contact-logo-card img{width:150px;height:150px}
    .contact-logo-caption{text-align:left;margin:0}
    .contact-logo-orbit{display:none}
    .contact-main-grid{grid-template-columns:1fr}
    .contact-side{grid-template-columns:1fr 1fr}
    .contact-section-head{grid-template-columns:1fr;gap:12px}
}

/* mobile */
@media(max-width:620px){
    .contact-hero{
        padding:34px 0 38px;
    }
    .contact-hero-grid,
    .contact-main-section .site-shell,
    .contact-business-section .site-shell,
    .contact-process-section .site-shell{
        width:calc(100% - 14px);
    }
    .contact-hero-copy h1{
        margin:10px 0;
        font-size:38px;
    }
    .contact-hero-copy>p{font-size:11px}
    .contact-hero-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:7px;
        margin-top:17px;
    }
    .contact-hero-actions .btn{
        padding:10px 11px;
        font-size:9px;
    }
    .contact-hero-stats{
        grid-template-columns:1fr 1fr 1fr;
        gap:6px;
        margin-top:15px;
    }
    .contact-hero-stats div{padding:9px}
    .contact-hero-stats b{font-size:10px}
    .contact-hero-stats span{font-size:7px}
    .contact-logo-card{
        min-height:0;
        padding:13px;
        grid-template-columns:90px minmax(0,1fr);
        gap:12px;
        border-radius:19px;
    }
    .contact-logo-card img{
        width:90px;height:90px;
        border-radius:17px;
    }
    .contact-logo-caption b{font-size:14px}

    .contact-main-section,
    .contact-business-section,
    .contact-process-section{
        padding:46px 0;
    }
    .contact-section-head{margin-bottom:17px}
    .contact-section-head h2{font-size:32px}
    .contact-section-head>p{font-size:10px}

    .contact-form-card{
        padding:14px;
        border-radius:20px;
    }
    .contact-form-card-head{margin-bottom:14px}
    .contact-form-icon{width:42px;height:42px}
    .contact-form-card-head h3{font-size:23px}
    .contact-form-row{grid-template-columns:1fr}
    .contact-form{gap:10px}
    .contact-input-wrap input,
    .contact-select-wrap select{height:46px;font-size:11px}
    .contact-field textarea{min-height:135px;font-size:11px}
    .contact-submit{min-height:47px;font-size:11px}

    .contact-side{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }
    .contact-info-card{
        padding:13px;
        border-radius:16px;
    }
    .contact-info-icon{width:34px;height:34px}
    .contact-info-card h3{font-size:16px}
    .contact-info-card p{font-size:7.8px}
    .contact-info-card a{font-size:7.8px}

    .contact-detail-grid,
    .contact-process-grid{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }
    .contact-detail-card,
    .contact-process-card{
        padding:14px;
        border-radius:17px;
    }
    .contact-detail-icon{width:39px;height:39px}
    .contact-detail-card h3,
    .contact-process-card h3{font-size:15px}
    .contact-detail-card p,
    .contact-process-card p{font-size:8px}
}

/* small mobile */
@media(max-width:390px){
    .contact-hero-grid,
    .contact-main-section .site-shell,
    .contact-business-section .site-shell,
    .contact-process-section .site-shell{
        width:calc(100% - 10px);
    }
    .contact-hero-copy h1{font-size:34px}
    .contact-hero-actions{grid-template-columns:1fr}
    .contact-side,
    .contact-detail-grid,
    .contact-process-grid{
        grid-template-columns:1fr;
    }
    .contact-hero-stats{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
    .contact-logo-orbit,
    .contact-info-card,
    .contact-detail-card,
    .contact-process-card{
        animation:none!important;
        transition:none!important;
    }
}


/* =========================================================
   CONTACT V12 — CLEAN PROFESSIONAL STRUCTURE
   Deliberately fewer blocks/cards than V11.
========================================================= */
.contact-v12{
    background:#f6faf4;
    overflow:hidden;
}
.contact-v12-hero{
    position:relative;
    overflow:hidden;
    padding:64px 0;
    color:#fff;
    background:
      linear-gradient(115deg,rgba(6,62,32,.94),rgba(17,94,49,.78)),
      url('https://images.unsplash.com/photo-1441123694162-e54a981ceba5?auto=format&fit=crop&w=1800&q=85') center/cover;
}
.contact-v12-hero:before{
    content:"";
    position:absolute;
    width:380px;height:380px;
    border-radius:50%;
    right:-110px;top:-150px;
    border:1px solid rgba(255,255,255,.13);
    box-shadow:0 0 0 55px rgba(255,255,255,.035),0 0 0 110px rgba(255,255,255,.02);
}
.contact-v12-hero-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(280px,.55fr);
    gap:46px;
    align-items:center;
}
.contact-v12-hero-copy h1{
    max-width:820px;
    margin:14px 0;
    font:800 clamp(44px,5.4vw,72px)/1.02 "Playfair Display",serif;
}
.contact-v12-hero-copy p{
    max-width:740px;
    margin:0;
    color:#deebe2;
    font-size:15px;
    line-height:1.75;
}
.contact-v12-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:24px;
}
.contact-v12-outline{
    color:#fff!important;
    border-color:rgba(255,255,255,.35)!important;
    background:rgba(255,255,255,.07)!important;
}
.contact-v12-hero-brand{
    padding:18px;
    display:flex;
    align-items:center;
    gap:14px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:22px;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(12px);
}
.contact-v12-logo-box{
    width:92px;height:92px;
    flex:0 0 auto;
    padding:5px;
    display:grid;place-items:center;
    border-radius:18px;
    background:#fff;
}
.contact-v12-logo-box img{
    width:100%;height:100%;
    object-fit:contain;
}
.contact-v12-hero-brand div:last-child{
    min-width:0;
    display:grid;
    gap:2px;
}
.contact-v12-hero-brand small{
    color:#cce891;
    font-size:8px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}
.contact-v12-hero-brand b{
    font-size:18px;
}
.contact-v12-hero-brand span{
    color:#d5e5d9;
    font-size:10px;
}

.contact-v12-shell{
    padding-top:56px;
    padding-bottom:72px;
}
.contact-v12-main{
    display:grid;
    grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);
    gap:22px;
    align-items:start;
}

/* FORM: one main card only */
.contact-v12-form-card{
    padding:28px;
    border:1px solid #dce8da;
    border-radius:26px;
    background:#fff;
    box-shadow:0 20px 55px rgba(18,69,37,.08);
}
.contact-v12-form-head{
    margin-bottom:20px;
}
.contact-v12-form-head h2{
    margin:7px 0 7px;
    color:#133f29;
    font:800 38px/1.05 "Playfair Display",serif;
}
.contact-v12-form-head p{
    margin:0;
    color:#728078;
    font-size:11px;
}
.contact-v12-alert{
    margin-bottom:14px;
    padding:11px 12px;
    border:1px solid #eccccc;
    border-radius:12px;
    background:#fff5f5;
    color:#8f3030;
    font-size:11px;
}
.contact-v12-form{
    display:grid;
    gap:13px;
}
.contact-v12-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}
.contact-v12-field{
    min-width:0;
    display:grid;
    gap:7px;
}
.contact-v12-field label{
    color:#2f513b;
    font-size:10px;
    font-weight:900;
}
.contact-v12-field label small{
    color:#8b958e;
    font-weight:600;
}
.contact-v12-field input,
.contact-v12-field textarea{
    width:100%;
    border:1px solid #d8e5d6;
    border-radius:14px;
    background:#fbfdf9;
    color:#173e2a;
    outline:0;
    font:inherit;
    font-size:12px;
    transition:.22s;
}
.contact-v12-field input{
    height:49px;
    padding:0 13px;
}
.contact-v12-field textarea{
    min-height:160px;
    padding:13px;
    resize:vertical;
    line-height:1.6;
}
.contact-v12-field input:focus,
.contact-v12-field textarea:focus{
    border-color:#94bc49;
    background:#fff;
    box-shadow:0 0 0 4px rgba(139,184,62,.09);
}
.contact-v12-label-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.contact-v12-label-row small{
    color:#8b958e;
    font-size:8px;
}
.contact-v12-submit{
    width:100%;
    min-height:49px;
}
.contact-v12-hp{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
}

/* BUSINESS: one professional information panel */
.contact-v12-business{
    padding:22px;
    border-radius:26px;
    color:#fff;
    background:linear-gradient(145deg,#0a4728,#0e6032);
    box-shadow:0 22px 60px rgba(7,62,31,.16);
    overflow:hidden;
    position:sticky;
    top:108px;
}
.contact-v12-business:before{
    content:"";
    position:absolute;
    width:170px;height:170px;
    right:-75px;top:-75px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 0 0 30px rgba(255,255,255,.025);
}
.contact-v12-business>*{
    position:relative;
    z-index:2;
}
.contact-v12-business-top{
    display:flex;
    align-items:center;
    gap:12px;
    padding-bottom:17px;
    border-bottom:1px solid rgba(255,255,255,.12);
}
.contact-v12-business-top img{
    width:62px;height:62px;
    padding:4px;
    object-fit:contain;
    border-radius:15px;
    background:#fff;
}
.contact-v12-business-top small{
    display:block;
    color:#cfe88e;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.contact-v12-business-top h3{
    margin:3px 0 0;
    color:#fff;
    font:800 22px/1.1 "Playfair Display",serif;
}
.contact-v12-info-list{
    display:grid;
    gap:0;
    margin-top:8px;
}
.contact-v12-info-list>div{
    display:grid;
    gap:2px;
    padding:11px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}
.contact-v12-info-list span{
    color:#bdd0c2;
    font-size:8px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.contact-v12-info-list a,
.contact-v12-info-list b,
.contact-v12-info-list p{
    margin:0;
    color:#fff;
    font-size:10px;
    line-height:1.5;
}
.contact-v12-break{
    overflow-wrap:anywhere;
}
.contact-v12-business-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:16px;
}
.contact-v12-business-actions .btn{
    min-height:42px;
    padding:9px 11px;
    font-size:9px;
}
.contact-v12-business-actions .outline{
    color:#fff;
    background:rgba(255,255,255,.06);
    border-color:rgba(255,255,255,.20);
}
.contact-v12-gst-link{
    grid-column:1/-1;
    display:flex;
    justify-content:center;
    padding:9px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.11);
    color:#d3ec97;
    background:rgba(255,255,255,.05);
    font-size:8px;
    font-weight:900;
}

/* one compact capability strip instead of many cards */
.contact-v12-strip{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
    margin-top:22px;
    overflow:hidden;
    border:1px solid #dce8da;
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 34px rgba(18,69,37,.05);
}
.contact-v12-strip>div{
    min-width:0;
    padding:17px;
    border-right:1px solid #e8eee6;
}
.contact-v12-strip>div:last-child{
    border-right:0;
}
.contact-v12-strip span{
    display:block;
    margin-bottom:9px;
    color:#90b539;
    font-size:8px;
    font-weight:900;
}
.contact-v12-strip b{
    display:block;
    margin-bottom:4px;
    color:#153f29;
    font-size:12px;
}
.contact-v12-strip small{
    display:block;
    color:#78847c;
    font-size:8px;
    line-height:1.45;
}

/* laptop */
@media(max-width:1180px){
    .contact-v12-hero-inner{
        grid-template-columns:minmax(0,1fr) minmax(260px,.5fr);
        gap:28px;
    }
    .contact-v12-main{
        grid-template-columns:minmax(0,1.15fr) minmax(310px,.7fr);
    }
}

/* tablet */
@media(max-width:920px){
    .contact-v12-hero{
        padding:46px 0;
    }
    .contact-v12-hero-inner{
        grid-template-columns:1fr;
        gap:18px;
    }
    .contact-v12-hero-brand{
        width:min(430px,100%);
    }
    .contact-v12-main{
        grid-template-columns:1fr;
    }
    .contact-v12-business{
        position:relative;
        top:auto;
    }
    .contact-v12-strip{
        grid-template-columns:1fr 1fr;
    }
    .contact-v12-strip>div:nth-child(2){
        border-right:0;
    }
    .contact-v12-strip>div:nth-child(-n+2){
        border-bottom:1px solid #e8eee6;
    }
}

/* mobile */
@media(max-width:620px){
    .contact-v12-hero{
        padding:32px 0 34px;
    }
    .contact-v12-hero-inner,
    .contact-v12-shell{
        width:calc(100% - 14px);
    }
    .contact-v12-hero-copy h1{
        margin:9px 0;
        font-size:36px;
    }
    .contact-v12-hero-copy p{
        font-size:10.5px;
    }
    .contact-v12-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:7px;
        margin-top:16px;
    }
    .contact-v12-actions .btn{
        padding:10px 9px;
        font-size:9px;
    }
    .contact-v12-hero-brand{
        padding:11px;
        border-radius:17px;
    }
    .contact-v12-logo-box{
        width:66px;height:66px;
        border-radius:14px;
    }
    .contact-v12-hero-brand b{
        font-size:14px;
    }

    .contact-v12-shell{
        padding-top:22px;
        padding-bottom:45px;
    }
    .contact-v12-main{
        gap:12px;
    }
    .contact-v12-form-card{
        padding:14px;
        border-radius:19px;
    }
    .contact-v12-form-head{
        margin-bottom:14px;
    }
    .contact-v12-form-head h2{
        font-size:29px;
    }
    .contact-v12-form-head p{
        font-size:9px;
    }
    .contact-v12-grid{
        grid-template-columns:1fr;
        gap:10px;
    }
    .contact-v12-form{
        gap:10px;
    }
    .contact-v12-field input{
        height:45px;
        font-size:11px;
    }
    .contact-v12-field textarea{
        min-height:130px;
        font-size:11px;
    }
    .contact-v12-submit{
        min-height:46px;
        font-size:10px;
    }

    .contact-v12-business{
        padding:14px;
        border-radius:19px;
    }
    .contact-v12-business-top img{
        width:52px;height:52px;
    }
    .contact-v12-business-top h3{
        font-size:18px;
    }
    .contact-v12-info-list>div{
        padding:8px 0;
    }
    .contact-v12-info-list a,
    .contact-v12-info-list b,
    .contact-v12-info-list p{
        font-size:9px;
    }

    .contact-v12-strip{
        grid-template-columns:1fr 1fr;
        margin-top:12px;
        border-radius:16px;
    }
    .contact-v12-strip>div{
        padding:12px;
    }
    .contact-v12-strip b{
        font-size:10px;
    }
    .contact-v12-strip small{
        font-size:7px;
    }
}

/* small mobile */
@media(max-width:390px){
    .contact-v12-hero-inner,
    .contact-v12-shell{
        width:calc(100% - 10px);
    }
    .contact-v12-hero-copy h1{
        font-size:32px;
    }
    .contact-v12-actions{
        grid-template-columns:1fr;
    }
    .contact-v12-strip{
        grid-template-columns:1fr;
    }
    .contact-v12-strip>div{
        border-right:0!important;
        border-bottom:1px solid #e8eee6;
    }
    .contact-v12-strip>div:last-child{
        border-bottom:0;
    }
}

@media(prefers-reduced-motion:reduce){
    .contact-v12-field input,
    .contact-v12-field textarea{
        transition:none!important;
    }
}

/* =========================================================
   HEADER V13 — LAPTOP CART BUTTON FIX
   Only fixes the cart/account tool area.
========================================================= */

/* Desktop/laptop tool area */
.nav-tools{
    gap:9px;
}

/* Cart: remove tall white card look and make it a clean icon pill */
.cart-link{
    position:relative;
    width:46px;
    min-width:46px;
    height:46px;
    min-height:46px;
    padding:0;
    border:1px solid #d7e5d4;
    border-radius:50%;
    background:linear-gradient(145deg,#f6fbf2,#edf6e7);
    color:#17472e;
    box-shadow:0 8px 22px rgba(20,72,39,.07);
    overflow:visible;
}

.cart-link .cart-text{
    display:none;
}

.cart-link .cart-icon{
    display:block;
    margin:0;
    font-size:20px;
    line-height:1;
    transform:translateY(1px);
}

.cart-link .cart-count{
    position:absolute;
    top:-6px;
    right:-5px;
    min-width:20px;
    height:20px;
    padding:0 5px;
    display:grid;
    place-items:center;
    border:2px solid #fff;
    border-radius:999px;
    background:linear-gradient(135deg,#7cad24,#a8d449);
    color:#fff;
    font-size:9px;
    font-weight:900;
    line-height:1;
    box-shadow:0 5px 14px rgba(99,145,27,.25);
}

.cart-link:hover,
.cart-link.is-active{
    transform:translateY(-2px);
    border-color:#a9cd78;
    background:linear-gradient(145deg,#eff8e9,#e5f2dc);
    box-shadow:0 12px 26px rgba(20,72,39,.11);
}

/* Account/Login stays compact and aligned with cart */
.account-pill{
    min-height:46px;
    height:46px;
    border-radius:999px;
    padding:0 13px 0 8px;
    background:#fff;
    border:1px solid #dce8da;
    box-shadow:0 8px 22px rgba(20,72,39,.05);
}

.account-pill .account-avatar{
    width:28px;
    height:28px;
    border-radius:50%;
}

.account-pill .account-text{
    font-size:11px;
    font-weight:900;
}

/* Normal laptop widths */
@media (min-width:1041px) and (max-width:1280px){
    .cart-link{
        width:44px;
        min-width:44px;
        height:44px;
        min-height:44px;
    }

    .account-pill{
        width:44px;
        min-width:44px;
        height:44px;
        min-height:44px;
        padding:0;
        border-radius:50%;
    }

    .account-pill .account-text{
        display:none;
    }

    .account-pill .account-avatar{
        width:25px;
        height:25px;
    }
}

/* Mobile/tablet keeps both tools compact */
@media (max-width:1040px){
    .cart-link,
    .account-pill{
        width:40px;
        min-width:40px;
        height:40px;
        min-height:40px;
        padding:0;
        border-radius:50%;
    }

    .account-pill .account-text{
        display:none;
    }

    .cart-link .cart-count{
        top:-5px;
        right:-5px;
        min-width:18px;
        height:18px;
        font-size:8px;
    }
}



/* =========================================================
   V14 EXPORT-INSPIRED ORIGINAL REBUILD
========================================================= */
.home-video-stage{padding:24px 0 34px;background:linear-gradient(180deg,#fff,#f4f9f1);overflow:hidden}.home-video-card{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);gap:0;overflow:hidden;border:1px solid #dbe7d9;border-radius:30px;background:#fff;box-shadow:0 28px 70px rgba(14,68,36,.12)}.home-video-media{position:relative;min-height:520px;background:#0b3622;overflow:hidden}.home-video-media video{width:100%;height:100%;min-height:520px;display:block;object-fit:cover}.home-video-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 68%,rgba(4,46,24,.22))}.home-video-sound{position:absolute;z-index:3;right:16px;bottom:16px;padding:9px 12px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(6,49,26,.68);backdrop-filter:blur(10px);color:#fff;font-weight:800;font-size:10px;cursor:pointer}.home-video-copy{padding:42px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 110% -10%,rgba(144,190,50,.12),transparent 36%),#fff}.home-video-copy h2{margin:12px 0;font:800 clamp(36px,3.5vw,54px)/1.04 "Playfair Display",serif;color:#113f29}.home-video-copy p{color:#66786c;line-height:1.75}.home-video-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.about-gst-panel{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.55fr);gap:18px;padding:28px;border-radius:28px;background:linear-gradient(145deg,#0a4b2a,#0f6634);color:#fff;box-shadow:0 28px 70px rgba(7,60,31,.18);overflow:hidden}.about-gst-main h2{margin:8px 0 8px;font:800 42px/1.05 "Playfair Display",serif}.about-gst-main>p{color:#d6e8db}.about-gst-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}.about-gst-grid>div{padding:12px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.05)}.about-gst-grid small{display:block;color:#c6d9ca;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.about-gst-grid b{display:block;margin-top:3px;font-size:11px;overflow-wrap:anywhere}.about-gst-doc{padding:22px;border-radius:20px;background:#fff;color:#163f2a;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.doc-seal{width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:#edf6e8;color:#0e6734;font-weight:900}.about-gst-doc h3{font:800 25px/1.08 "Playfair Display",serif;margin:13px 0 7px}.about-gst-doc p{color:#6d7c71;font-size:11px}
.quality-hero{padding:64px 0;background:#f6faf4}.quality-hero-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.75fr);gap:30px;align-items:center}.quality-hero-copy h1{margin:12px 0;font:800 clamp(46px,5vw,72px)/1.02 "Playfair Display",serif;color:#123f29}.quality-hero-copy p{color:#66786d;font-size:15px;line-height:1.75}.quality-hero-media{height:520px;overflow:hidden;border-radius:28px;box-shadow:0 24px 60px rgba(17,67,36,.12)}.quality-hero-media img{width:100%;height:100%;object-fit:cover}.quality-flow{display:grid;gap:12px}.quality-step{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px;align-items:center;padding:12px;border:1px solid #dce8da;border-radius:20px;background:#fff;transition:.3s}.quality-step:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(18,69,37,.08)}.quality-step-media{position:relative;height:150px;border-radius:14px;overflow:hidden}.quality-step-media img{width:100%;height:100%;object-fit:cover}.quality-step-media span{position:absolute;left:10px;top:10px;padding:6px 8px;border-radius:999px;background:rgba(255,255,255,.93);color:#0e6534;font-weight:900;font-size:9px}.quality-step-copy h3{margin:0 0 6px;font:800 24px/1.1 "Playfair Display",serif;color:#143f29}.quality-step-copy p{margin:0;color:#6d7d72;font-size:12px;line-height:1.65}.quality-standard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quality-standard{padding:20px;border:1px solid #dce8da;border-radius:20px;background:#fff}.quality-standard b{color:#8db539}.quality-standard h3{font:800 18px/1.15 "Playfair Display",serif;color:#143f29}.quality-standard p{color:#6d7c71;font-size:10px;line-height:1.6}.admin-video-preview{border-radius:18px;overflow:hidden;background:#0b3020}.admin-video-preview video{width:100%;max-height:420px;display:block}.admin-table-wrap{overflow:auto}
@media(max-width:1000px){.home-video-card,.quality-hero-inner,.about-gst-panel{grid-template-columns:1fr}.home-video-media,.home-video-media video{min-height:420px}.quality-hero-media{height:420px}.quality-standard-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.home-video-stage{padding:10px 0 20px}.home-video-stage .site-shell{width:calc(100% - 12px)}.home-video-card{border-radius:18px}.home-video-media,.home-video-media video{min-height:240px;height:240px}.home-video-copy{padding:18px}.home-video-copy h2{font-size:31px}.home-video-copy p{font-size:10.5px}.home-video-actions{display:grid}.home-video-actions .btn{width:100%}.home-video-sound{right:9px;bottom:9px;font-size:8px}.about-gst-panel{padding:14px;border-radius:20px}.about-gst-main h2{font-size:31px}.about-gst-grid{grid-template-columns:1fr}.about-gst-doc{padding:16px}.quality-hero{padding:35px 0}.quality-hero-inner{width:calc(100% - 12px)}.quality-hero-copy h1{font-size:36px}.quality-hero-copy p{font-size:10.5px}.quality-hero-media{height:260px;border-radius:18px}.quality-step{grid-template-columns:105px minmax(0,1fr);gap:10px;padding:8px;border-radius:15px}.quality-step-media{height:105px}.quality-step-copy h3{font-size:17px}.quality-step-copy p{font-size:8.5px}.quality-standard-grid{grid-template-columns:1fr 1fr;gap:8px}.quality-standard{padding:13px}.quality-standard h3{font-size:15px}.quality-standard p{font-size:8px}}
@media(max-width:390px){.quality-step{grid-template-columns:1fr}.quality-step-media{height:180px}.quality-standard-grid{grid-template-columns:1fr}}


/* =========================================================
   BUSINESS MODEL V17 — PROCESS MAP + EDITABLE STAGE BLOCKS
========================================================= */
.bm-hero{
    position:relative;
    overflow:hidden;
    padding:78px 0 72px;
    color:#fff;
    background:
      linear-gradient(115deg,rgba(6,61,31,.94),rgba(14,94,47,.72)),
      var(--bm-hero) center/cover;
}
.bm-hero:after{
    content:"";
    position:absolute;
    width:420px;height:420px;
    right:-120px;top:-170px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.13);
    box-shadow:0 0 0 55px rgba(255,255,255,.03),0 0 0 110px rgba(255,255,255,.018);
}
.bm-hero-inner{
    position:relative;z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(280px,.45fr);
    gap:50px;align-items:end;
}
.bm-hero-copy h1{
    max-width:900px;
    margin:14px 0 14px;
    font:800 clamp(46px,5.7vw,78px)/1.01 "Playfair Display",serif;
}
.bm-hero-copy p{
    max-width:760px;margin:0;color:#dfede3;font-size:15px;line-height:1.75;
}
.bm-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.bm-outline{color:#fff!important;border-color:rgba(255,255,255,.34)!important;background:rgba(255,255,255,.06)!important}
.bm-hero-summary{
    min-width:0;padding:20px;border:1px solid rgba(255,255,255,.15);border-radius:22px;
    background:rgba(255,255,255,.08);backdrop-filter:blur(12px);display:grid;gap:4px;
}
.bm-hero-summary small{color:#d0e996;font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.bm-hero-summary strong{font:800 28px/1.1 "Playfair Display",serif}
.bm-hero-summary span{color:#d5e5d9;font-size:10px;line-height:1.5}

.bm-map-section,.bm-detail-section{padding:78px 0;background:#f7faf5}
.bm-detail-section{background:#eef5ea}
.bm-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:45px;align-items:end;margin-bottom:34px}
.bm-section-head h2{margin:8px 0 0;color:#123f29;font:800 clamp(34px,4vw,52px)/1.05 "Playfair Display",serif}
.bm-section-head>p{margin:0;color:#6d7b70;font-size:13px;line-height:1.75}

.bm-process-map{
    position:relative;
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
    padding:34px 20px 22px;
    border:1px solid #dce8da;
    border-radius:28px;
    background:#fff;
    box-shadow:0 22px 55px rgba(17,68,36,.07);
    overflow:hidden;
}
.bm-map-line{
    position:absolute;
    left:8%;right:8%;top:78px;height:4px;
    border-radius:999px;
    background:linear-gradient(90deg,#8fbd31,#0d6533,#8fbd31);
    opacity:.4;
}
.bm-map-node{
    position:relative;z-index:2;min-width:0;text-align:center;padding:0 7px;
}
.bm-node-number{display:block;margin-bottom:8px;color:#93b84a;font-size:8px;font-weight:900;letter-spacing:.09em}
.bm-node-icon{
    width:56px;height:56px;margin:0 auto 13px;display:grid;place-items:center;border-radius:50%;
    background:linear-gradient(145deg,#0f6333,#9ac93b);color:#fff;border:6px solid #f6faf3;
    box-shadow:0 10px 26px rgba(15,96,49,.16);font-size:20px;
}
.bm-map-node h3{margin:0 0 6px;color:#153f29;font-size:13px;line-height:1.2}
.bm-map-node p{margin:0;color:#758178;font-size:8.5px;line-height:1.5}

.bm-detail-list{display:grid;gap:18px}
.bm-detail-card{
    min-width:0;display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:0;
    overflow:hidden;border:1px solid #d9e6d7;border-radius:28px;background:#fff;
    box-shadow:0 18px 48px rgba(17,68,36,.07);transition:transform .32s,box-shadow .32s;
}
.bm-detail-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(17,68,36,.11)}
.bm-detail-card.is-reverse .bm-detail-media{order:2}
.bm-detail-card.is-reverse .bm-detail-copy{order:1}
.bm-detail-media{position:relative;min-height:330px;overflow:hidden;background:#eaf3e5}
.bm-detail-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .6s}
.bm-detail-card:hover .bm-detail-media img{transform:scale(1.035)}
.bm-detail-media>span{
    position:absolute;left:16px;top:16px;width:42px;height:42px;display:grid;place-items:center;
    border-radius:13px;background:rgba(255,255,255,.93);color:#0e6333;font-size:10px;font-weight:900;
    box-shadow:0 8px 22px rgba(0,0,0,.08);
}
.bm-detail-copy{position:relative;padding:34px;display:flex;flex-direction:column;justify-content:center}
.bm-detail-copy:after{content:"";position:absolute;right:-55px;top:-65px;width:160px;height:160px;border-radius:50%;background:rgba(144,190,48,.07)}
.bm-detail-copy>*{position:relative;z-index:2}
.bm-detail-kicker{color:#8caf39;font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.bm-detail-copy h3{margin:7px 0 9px;color:#123f29;font:800 clamp(28px,3vw,42px)/1.05 "Playfair Display",serif}
.bm-detail-summary{margin:0 0 13px;color:#35533f;font-size:13px;font-weight:700;line-height:1.55}
.bm-detail-body{color:#6c7a70;font-size:11px;line-height:1.75}
.bm-metric{width:max-content;max-width:100%;display:grid;margin-top:17px;padding:10px 13px;border-radius:14px;background:#eef6e9;border:1px solid #dce9d8}
.bm-metric strong{color:#0d6533;font-size:16px}.bm-metric span{color:#718077;font-size:8px}

.bm-cta-section{padding:16px 0 82px;background:#eef5ea}
.bm-cta{
    display:flex;justify-content:space-between;align-items:center;gap:30px;padding:30px;
    border-radius:26px;background:linear-gradient(135deg,#0a4828,#0e6333);color:#fff;
    box-shadow:0 22px 55px rgba(7,63,31,.15);
}
.bm-cta h2{margin:6px 0;color:#fff;font:800 clamp(28px,3vw,42px)/1.06 "Playfair Display",serif}
.bm-cta p{max-width:780px;margin:0;color:#d5e5d9;font-size:11px;line-height:1.65}

@media(max-width:1180px){
    .bm-process-map{grid-template-columns:repeat(3,1fr);gap:20px}
    .bm-map-line{display:none}
    .bm-map-node{padding:10px;border-radius:18px;background:#f8fbf6;border:1px solid #e2ebe0}
    .bm-detail-card{grid-template-columns:minmax(280px,.75fr) minmax(0,1fr)}
}
@media(max-width:920px){
    .bm-hero{padding:54px 0}.bm-hero-inner{grid-template-columns:1fr;gap:20px}.bm-hero-summary{max-width:430px}
    .bm-section-head{grid-template-columns:1fr;gap:12px}
    .bm-process-map{grid-template-columns:repeat(2,1fr)}
    .bm-detail-card,.bm-detail-card.is-reverse{grid-template-columns:1fr}
    .bm-detail-card.is-reverse .bm-detail-media,.bm-detail-card.is-reverse .bm-detail-copy{order:initial}
    .bm-detail-media{min-height:280px}
}
@media(max-width:620px){
    .bm-hero{padding:36px 0}.bm-hero-inner,.bm-map-section .site-shell,.bm-detail-section .site-shell,.bm-cta-section .site-shell{width:calc(100% - 14px)}
    .bm-hero-copy h1{font-size:37px}.bm-hero-copy p{font-size:10.5px}.bm-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.bm-hero-actions .btn{font-size:8.5px;padding:10px 8px}
    .bm-map-section,.bm-detail-section{padding:48px 0}.bm-section-head{margin-bottom:18px}.bm-section-head h2{font-size:31px}.bm-section-head>p{font-size:9.5px}
    .bm-process-map{grid-template-columns:1fr 1fr;padding:10px;gap:8px;border-radius:20px}
    .bm-map-node{padding:11px 8px}.bm-node-icon{width:46px;height:46px;border-width:4px;font-size:16px}.bm-map-node h3{font-size:11px}.bm-map-node p{font-size:7.5px}
    .bm-detail-list{gap:10px}.bm-detail-card{border-radius:19px}.bm-detail-media{min-height:205px}.bm-detail-copy{padding:17px}.bm-detail-copy h3{font-size:28px}.bm-detail-summary{font-size:10px}.bm-detail-body{font-size:9px}
    .bm-cta-section{padding-bottom:48px}.bm-cta{display:grid;padding:18px;border-radius:19px}.bm-cta h2{font-size:29px}.bm-cta p{font-size:9px}.bm-cta .btn{width:100%}
}
@media(max-width:390px){
    .bm-hero-inner,.bm-map-section .site-shell,.bm-detail-section .site-shell,.bm-cta-section .site-shell{width:calc(100% - 10px)}
    .bm-hero-copy h1{font-size:33px}.bm-hero-actions{grid-template-columns:1fr}.bm-process-map{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.bm-detail-card,.bm-detail-media img{transition:none!important}}


/* =========================================================
   V19 INTERNATIONAL EXPORT + CMS + SELECTION FIX
========================================================= */
/* Prevent accidental blue selection while scrolling admin. Inputs remain editable/selectable. */
.admin-no-select,.admin-no-select *{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.admin-no-select input,.admin-no-select textarea,.admin-no-select select,.admin-no-select [contenteditable="true"]{-webkit-user-select:text!important;user-select:text!important}
.admin-body{overscroll-behavior:none}.admin-main,.admin-sidebar{touch-action:pan-y}
.admin-body a:focus,.admin-body button:focus{outline:2px solid rgba(132,184,45,.35);outline-offset:2px}
.admin-body ::selection{background:transparent;color:inherit}

.admin-content-hero{display:flex;justify-content:space-between;align-items:center;gap:22px;background:radial-gradient(circle at 95% 10%,rgba(153,204,54,.12),transparent 28%),#fff}.admin-content-hero h2{font:800 34px/1.06 "Playfair Display",serif;margin:7px 0;color:#123f29}.admin-content-stats{min-width:135px;padding:15px;border-radius:18px;background:#eff7e9;text-align:center}.admin-content-stats b{display:block;font-size:28px;color:#0d6533}.admin-content-stats span{font-size:9px;color:#68786d}.admin-filter-row{display:flex;align-items:center;gap:16px;overflow:hidden}.admin-filter-links{display:flex;gap:7px;overflow:auto;padding:4px 2px;scrollbar-width:thin}.admin-filter-links a{flex:0 0 auto;padding:8px 11px;border-radius:999px;border:1px solid #dce8da;background:#fff;color:#31513d;font-size:9px;font-weight:900}.admin-filter-links a.active{background:#0e6333;color:#fff;border-color:#0e6333}.admin-editor-card,.admin-guide-card{align-self:start}.admin-card-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.admin-card-title h3{margin:3px 0 13px}.admin-upload-box{padding:13px;border:1px dashed #c9dcc1;border-radius:15px;background:#f8fbf6}.admin-upload-box small{display:block;margin-top:5px;color:#7d8a80;font-size:9px}.admin-edit-preview{width:100%;max-height:220px;object-fit:cover;margin-top:10px;border-radius:12px}.admin-switch-line{display:flex;align-items:center;gap:9px;padding:12px;border-radius:13px;background:#f2f7ee}.admin-save-wide{width:100%}.admin-guide-list{display:grid;gap:9px}.admin-guide-list>div{padding:12px;border:1px solid #e1eadf;border-radius:14px;background:#fbfdf9}.admin-guide-list b{display:block;color:#17452e;font-size:11px}.admin-guide-list span{font-size:9px;color:#748179}.admin-block-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.admin-block-item{display:grid;grid-template-columns:150px minmax(0,1fr);gap:13px;padding:11px;border:1px solid #dfe9dd;border-radius:18px;background:#fff}.admin-block-thumb{height:120px;border-radius:13px;overflow:hidden;background:#eef6e9;display:grid;place-items:center;color:#0f6634;font-weight:900}.admin-block-thumb img{width:100%;height:100%;object-fit:cover}.admin-block-info{min-width:0}.admin-block-meta{display:flex;flex-wrap:wrap;gap:5px}.admin-block-meta span{padding:4px 6px;border-radius:999px;background:#f0f5ed;font-size:7px;font-weight:900;color:#607064}.admin-block-meta .on{background:#e4f4dc;color:#15713a}.admin-block-meta .off{background:#f7e8e8;color:#a33d3d}.admin-block-info h4{margin:8px 0 5px;color:#173f2a;font-size:13px}.admin-block-info p{margin:0;color:#758178;font-size:9px;line-height:1.45}.admin-block-actions{display:flex;gap:7px;margin-top:10px}.admin-block-actions form{margin:0}.danger-btn{background:#fff2f2!important;color:#9d3535!important;border:1px solid #efd5d5!important}.admin-empty-state{grid-column:1/-1;padding:28px;text-align:center;color:#728078;background:#f8fbf6;border-radius:15px}.admin-video-grid{align-items:start}.admin-media-meta{display:grid;gap:3px;margin-top:11px}.admin-media-meta b{color:#0d6533}.admin-media-meta span,.admin-media-meta small{font-size:9px;color:#758178;overflow-wrap:anywhere}

/* Public copy-protection UX requested. Forms and controls remain usable. */
body:not(.admin-body){-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
body:not(.admin-body) input,body:not(.admin-body) textarea,body:not(.admin-body) select{user-select:text;-webkit-user-select:text}
body:not(.admin-body) a:not(.btn):hover{background-color:transparent!important;box-shadow:none!important}
body:not(.admin-body) a:focus{background-color:transparent;outline-color:rgba(105,160,35,.35)}

.cms-content-section{overflow:hidden}.cms-block-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cms-block{overflow:hidden;border:1px solid #dce8da;border-radius:22px;background:#fff;box-shadow:0 15px 42px rgba(17,68,36,.06);transition:.32s}.cms-block:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(17,68,36,.10)}.cms-block-media{height:230px;overflow:hidden}.cms-block-media img{width:100%;height:100%;object-fit:cover;transition:.55s}.cms-block:hover .cms-block-media img{transform:scale(1.045)}.cms-block-copy{padding:19px}.cms-block-copy h3{font:800 23px/1.1 "Playfair Display",serif;color:#143f29;margin:5px 0 8px}.cms-block-copy p{color:#6d7b70;font-size:11px;line-height:1.65}.cms-wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr)}.cms-wide.cms-even .cms-block-media{order:2}.cms-wide .cms-block-media{height:100%;min-height:330px}.cms-wide .cms-block-copy{padding:34px;align-self:center}.cms-feature{grid-column:span 2}.cms-compact .cms-block-media{height:160px}.export-order-band{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:30px;border-radius:26px;background:linear-gradient(145deg,#0a4a29,#0f6734);color:#fff;box-shadow:0 22px 55px rgba(8,61,31,.15)}.export-order-band h2{font:800 36px/1.06 "Playfair Display",serif;margin:8px 0}.export-order-band p{color:#d4e5d9;max-width:820px}.export-order-band .eyebrow{color:#d0ec91}

@media(max-width:1000px){.admin-block-library{grid-template-columns:1fr}.cms-block-grid{grid-template-columns:1fr 1fr}.cms-wide{grid-template-columns:1fr}.cms-wide.cms-even .cms-block-media{order:0}.cms-wide .cms-block-media{min-height:260px}.cms-feature{grid-column:span 2}.export-order-band{grid-template-columns:1fr}.admin-content-grid{grid-template-columns:1fr!important}}
@media(max-width:620px){.admin-content-hero{display:grid}.admin-content-hero h2{font-size:27px}.admin-content-stats{width:max-content}.admin-filter-row{display:block}.admin-filter-links{margin-top:8px}.admin-block-item{grid-template-columns:90px minmax(0,1fr)}.admin-block-thumb{height:90px}.cms-block-grid{grid-template-columns:1fr}.cms-feature{grid-column:auto}.cms-block,.cms-wide{border-radius:17px}.cms-block-media{height:210px}.cms-wide .cms-block-media{min-height:210px}.cms-wide .cms-block-copy,.cms-block-copy{padding:15px}.cms-block-copy h3{font-size:20px}.export-order-band{padding:19px;border-radius:19px}.export-order-band h2{font-size:29px}.export-order-band p{font-size:10px}}
\n/* V20 mail/OTP admin refinements */\n.admin-card small{color:#728078}.auth-input[autocomplete="one-time-code"]{font-size:23px;letter-spacing:7px;text-align:center;font-weight:900}.admin-table td{vertical-align:top}.quick-card input[type=checkbox]{accent-color:#0f6634;margin-right:6px}@media(max-width:760px){.admin-card form[style*="grid-template-columns:150px"]{display:flex!important;flex-direction:column}.auth-input[autocomplete="one-time-code"]{font-size:20px;letter-spacing:5px}}\n/* V21 India fresh produce market board */
.market-watch{padding:22px 0 48px;background:linear-gradient(180deg,#f3f8ef 0%,#fff 100%)}
.market-watch-card{border:1px solid #dbe8d7;border-radius:28px;background:#fff;box-shadow:0 20px 60px rgba(15,72,38,.08);overflow:hidden}
.market-watch-head{display:flex;justify-content:space-between;gap:25px;align-items:end;padding:28px 30px 22px;background:linear-gradient(135deg,#f9fcf7,#eff7e8)}
.market-watch-head h2{margin:5px 0 0;font:800 clamp(28px,3vw,43px)/1.05 'Playfair Display',serif;color:#124b2e}.market-watch-head p{max-width:560px;margin:0;color:#63756a}
.market-live{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#166238}.market-live i{width:9px;height:9px;border-radius:50%;background:#79bc28;box-shadow:0 0 0 6px rgba(121,188,40,.13);animation:marketPulse 1.7s infinite}@keyframes marketPulse{50%{box-shadow:0 0 0 10px rgba(121,188,40,0)}}
.market-price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e7eee3;border-top:1px solid #e7eee3}.market-price-item{position:relative;padding:22px;background:#fff;transition:.25s}.market-price-item:hover{z-index:1;transform:translateY(-3px);box-shadow:0 12px 35px rgba(14,72,37,.1)}
.market-price-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.market-price-cat{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#72905e}.market-price-market{font-size:11px;color:#8a998f}.market-price-item h3{margin:11px 0 8px;font-size:20px;color:#143e29}.market-price-value{font-size:26px;font-weight:800;color:#0c532d}.market-price-value small{font-size:13px;font-weight:700;color:#829087}.market-change{display:inline-flex;align-items:center;gap:5px;margin-top:11px;padding:6px 9px;border-radius:999px;font-size:12px;font-weight:800}.market-change.up{background:#edf8e7;color:#397c16}.market-change.down{background:#fff0ee;color:#bb3e32}.market-change.flat{background:#f1f3f1;color:#657068}.market-watch-foot{display:flex;justify-content:space-between;gap:20px;padding:15px 30px;font-size:12px;color:#758278;background:#fbfcfa}.market-watch-foot b{color:#275b3c}
@media(max-width:900px){.market-price-grid{grid-template-columns:repeat(2,1fr)}.market-watch-head{align-items:flex-start;flex-direction:column}.market-watch-foot{flex-direction:column;gap:5px}}
@media(max-width:520px){.market-watch{padding:14px 0 30px}.market-watch .site-shell{width:calc(100% - 20px)}.market-watch-card{border-radius:20px}.market-watch-head{padding:21px 18px 17px}.market-price-grid{grid-template-columns:1fr}.market-price-item{padding:18px}.market-watch-foot{padding:13px 18px}.market-price-value{font-size:24px}}

/* V22 Government market page */
.market-info-strip{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #dfe9dc;border-radius:20px;overflow:hidden;background:#fff;margin:25px 0}.market-info-strip>div{padding:20px 24px;border-right:1px solid #e7eee3}.market-info-strip>div:last-child{border:0}.market-info-strip b,.market-info-strip span{display:block}.market-info-strip b{color:#0b542e;font-size:18px}.market-info-strip span{color:#758278;font-size:12px;margin-top:5px}.market-full-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.market-full-card{background:#fff;border:1px solid #dfe9dc;border-radius:22px;padding:23px;box-shadow:0 12px 35px rgba(14,72,37,.06);transition:.25s}.market-full-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(14,72,37,.11)}.market-full-card h3{font-size:23px;color:#123e28;margin:15px 0 8px}.market-meta{display:grid;gap:7px;border-top:1px solid #edf1eb;margin-top:17px;padding-top:14px;color:#718078;font-size:12px}.market-meta span{display:flex;justify-content:space-between;gap:10px}.market-watch-foot .btn{flex:0 0 auto}
@media(max-width:900px){.market-full-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.market-info-strip{grid-template-columns:1fr}.market-info-strip>div{border-right:0;border-bottom:1px solid #e7eee3;padding:14px 18px}.market-full-grid{grid-template-columns:1fr}.market-full-card{padding:19px}.market-watch-foot .btn{width:100%;text-align:center}}

/* =========================================================
   V22.2 HOME MARKET PRICE — SINGLE LINE / EQUAL CARDS
   Keeps every visible market-price card on one horizontal row.
========================================================= */
.market-watch{
  position:relative;
  z-index:1;
  padding:24px 0 42px;
  overflow:hidden;
}
.market-watch .site-shell{overflow:visible}
.market-watch-card{overflow:hidden}
.market-price-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  gap:0!important;
  width:100%;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  background:#e7eee3;
  border-top:1px solid #e7eee3;
}
.market-price-item{
  flex:0 0 25%!important;
  width:25%!important;
  min-width:25%!important;
  min-height:176px;
  padding:20px 22px!important;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  scroll-snap-align:start;
  border-right:1px solid #e7eee3;
  transform:none!important;
}
.market-price-item:last-child{border-right:0}
.market-price-top{
  min-height:18px;
  white-space:nowrap;
  overflow:hidden;
}
.market-price-cat,
.market-price-market{
  overflow:hidden;
  text-overflow:ellipsis;
}
.market-price-item h3{
  min-height:26px;
  margin:10px 0 8px!important;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.market-price-value{
  min-height:34px;
  display:flex;
  align-items:baseline;
  gap:4px;
  white-space:nowrap;
}
.market-change{
  align-self:flex-start;
  margin-top:auto!important;
  white-space:nowrap;
}
.market-price-grid::-webkit-scrollbar{height:6px}
.market-price-grid::-webkit-scrollbar-track{background:#eef4eb}
.market-price-grid::-webkit-scrollbar-thumb{background:#a8c99a;border-radius:999px}

@media(max-width:1000px){
  .market-price-item{
    flex-basis:33.333333%!important;
    width:33.333333%!important;
    min-width:33.333333%!important;
  }
}
@media(max-width:760px){
  .market-price-item{
    flex-basis:50%!important;
    width:50%!important;
    min-width:50%!important;
    min-height:165px;
  }
}
@media(max-width:520px){
  .market-watch{padding:12px 0 26px}
  .market-watch .site-shell{width:calc(100% - 12px)!important}
  .market-price-item{
    flex-basis:82%!important;
    width:82%!important;
    min-width:82%!important;
    padding:17px 16px!important;
    min-height:158px;
  }
  .market-watch-head{padding:18px 16px 15px!important}
  .market-watch-head h2{font-size:25px!important}
  .market-watch-foot{padding:12px 16px!important}
}

/* =========================================================
   V22.3 HOME TRUST CARD — CENTERED INSIDE PAGE
   Fixes Fresh Selection / Quality Review / Flexible Supply /
   Fast Support card escaping to the left/right of the viewport.
========================================================= */
.home-trust-fix,
.trust-wrap{
  position:relative!important;
  z-index:6!important;
  width:100%!important;
  max-width:100%!important;
  margin:-34px 0 0!important;
  padding:0 18px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

.trust-wrap > .site-shell,
.trust-wrap .site-shell.trust-grid,
.trust-grid{
  width:100%!important;
  max-width:1200px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

.trust-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 20px 55px rgba(17,74,39,.12)!important;
  transform:none!important;
  left:auto!important;
  right:auto!important;
}

.trust-card{
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
  padding:20px 18px!important;
  margin:0!important;
  transform:none!important;
  border-right:1px solid #edf2eb!important;
  overflow:hidden!important;
}

.trust-card:last-child{border-right:0!important}
.trust-card b,.trust-card span{overflow-wrap:anywhere}

@media(max-width:900px){
  .trust-wrap{margin:-24px 0 0!important;padding:0 12px!important}
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:100%!important}
  .trust-card:nth-child(2){border-right:0!important}
  .trust-card:nth-child(-n+2){border-bottom:1px solid #edf2eb!important}
}

@media(max-width:520px){
  .trust-wrap{margin:-18px 0 0!important;padding:0 7px!important}
  .trust-grid{grid-template-columns:1fr!important;border-radius:16px!important}
  .trust-card{padding:13px 14px!important;border-right:0!important;border-bottom:1px solid #edf2eb!important}
  .trust-card:last-child{border-bottom:0!important}
  .trust-card b{font-size:15px!important}
  .trust-card span{font-size:10px!important}
}

/* =========================================================
   V22.6 FINAL HOME ALIGNMENT SAFETY
   Market slider + trust cards share the exact same 1200px line.
========================================================= */
.home-market-slider .home-market-shell,
.home-trust-fixed > .site-shell.trust-grid{
  width:min(1200px,calc(100% - 36px))!important;
  max-width:1200px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.home-trust-fixed{
  margin-top:0!important;
  padding:22px 0 26px!important;
}
.home-trust-fixed > .site-shell.trust-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  transform:none!important;
  left:auto!important;
  right:auto!important;
}
.home-trust-fixed .trust-card{min-width:0!important}
@media(max-width:700px){
  .home-market-slider .home-market-shell,
  .home-trust-fixed > .site-shell.trust-grid{width:min(1200px,calc(100% - 22px))!important}
  .home-trust-fixed{padding:14px 0 18px!important}
  .home-trust-fixed > .site-shell.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* V23 PROFESSIONAL TYPOGRAPHY + GLOBAL THEME ENGINE */
body{font-size:16px;line-height:1.72}
p,.muted,.content-card p,.block-body p,.feature-body p,.story-copy p,.product-body p{font-size:15px;line-height:1.75}
.section-heading p{font-size:15px}.trust-card span{font-size:12px}.product-body h3{font-size:22px}.footer-grid p,.footer-grid a{font-size:14px}.footer-bottom{font-size:13px}
:root{--theme-bg:var(--soft);--theme-paper:#fff;--theme-ink:var(--ink);--theme-muted:var(--muted);--theme-accent:var(--green-800);--theme-accent2:var(--lime)}
body{background:var(--theme-bg);color:var(--theme-ink)}
body .admin-card,body .product-card,body .trust-card,body .content-card,body .block-card,body .feature-card,body .story-copy,body .cta-band,body .market-price-card{background:var(--theme-paper);color:var(--theme-ink)}
body .btn{background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent2))}
body[data-theme="light-1"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#0b5630;--theme-accent2:#8abb2e;}
body[data-theme="light-2"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#315b42;--theme-accent2:#b5c95b;}
body[data-theme="light-3"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#3b5f4b;--theme-accent2:#9fbd74;}
body[data-theme="light-4"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#2f6a50;--theme-accent2:#8ccca0;}
body[data-theme="light-5"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#536a3c;--theme-accent2:#b8c96d;}
body[data-theme="light-6"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#476356;--theme-accent2:#a8c4b0;}
body[data-theme="light-7"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#345f58;--theme-accent2:#79b6a8;}
body[data-theme="light-8"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#536b4b;--theme-accent2:#a7c989;}
body[data-theme="light-9"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#5b6040;--theme-accent2:#c4c36c;}
body[data-theme="light-10"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#3c6546;--theme-accent2:#91c777;}
body[data-theme="light-11"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#315b64;--theme-accent2:#82bdc7;}
body[data-theme="light-12"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#586348;--theme-accent2:#b4ca82;}
body[data-theme="light-13"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#46634f;--theme-accent2:#9bc99e;}
body[data-theme="light-14"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#4c6259;--theme-accent2:#a4c8bb;}
body[data-theme="light-15"]{--theme-bg:#f8fbf5;--theme-paper:#ffffff;--theme-ink:#173b29;--theme-muted:#708076;--theme-accent:#365d49;--theme-accent2:#91bb8b;}
body[data-theme="medium-1"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#164f32;--theme-accent2:#78a936;}
body[data-theme="medium-2"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#28543c;--theme-accent2:#8eaa55;}
body[data-theme="medium-3"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#315748;--theme-accent2:#75a98d;}
body[data-theme="medium-4"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#3e563a;--theme-accent2:#9aaf57;}
body[data-theme="medium-5"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#31545c;--theme-accent2:#6fa4a8;}
body[data-theme="medium-6"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#4c5136;--theme-accent2:#a4a75d;}
body[data-theme="medium-7"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#315044;--theme-accent2:#7da287;}
body[data-theme="medium-8"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#46513f;--theme-accent2:#8fa472;}
body[data-theme="medium-9"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#294d3b;--theme-accent2:#6fa27d;}
body[data-theme="medium-10"]{--theme-bg:#eef4ec;--theme-paper:#f8fbf7;--theme-ink:#183d2a;--theme-muted:#65756a;--theme-accent:#3a4f47;--theme-accent2:#7f9e91;}
body[data-theme="dark-1"]{--theme-bg:#101914;--theme-paper:#17231c;--theme-ink:#eef7f0;--theme-muted:#aabbb0;--theme-accent:#1f6b42;--theme-accent2:#8fbe3c;--line:#31483a;}
body[data-theme="dark-1"] .site-header{background:rgba(20,31,24,.96)} body[data-theme="dark-1"] .site-nav a{color:#eef7f0} body[data-theme="dark-1"] .section.alt{background:#121e17}
body[data-theme="dark-2"]{--theme-bg:#101914;--theme-paper:#17231c;--theme-ink:#eef7f0;--theme-muted:#aabbb0;--theme-accent:#245b48;--theme-accent2:#75a98f;--line:#31483a;}
body[data-theme="dark-2"] .site-header{background:rgba(20,31,24,.96)} body[data-theme="dark-2"] .site-nav a{color:#eef7f0} body[data-theme="dark-2"] .section.alt{background:#121e17}
body[data-theme="dark-3"]{--theme-bg:#101914;--theme-paper:#17231c;--theme-ink:#eef7f0;--theme-muted:#aabbb0;--theme-accent:#4f6132;--theme-accent2:#a6b85b;--line:#31483a;}
body[data-theme="dark-3"] .site-header{background:rgba(20,31,24,.96)} body[data-theme="dark-3"] .site-nav a{color:#eef7f0} body[data-theme="dark-3"] .section.alt{background:#121e17}
body[data-theme="dark-4"]{--theme-bg:#101914;--theme-paper:#17231c;--theme-ink:#eef7f0;--theme-muted:#aabbb0;--theme-accent:#28505b;--theme-accent2:#66a4ad;--line:#31483a;}
body[data-theme="dark-4"] .site-header{background:rgba(20,31,24,.96)} body[data-theme="dark-4"] .site-nav a{color:#eef7f0} body[data-theme="dark-4"] .section.alt{background:#121e17}
body[data-theme="dark-5"]{--theme-bg:#101914;--theme-paper:#17231c;--theme-ink:#eef7f0;--theme-muted:#aabbb0;--theme-accent:#514d32;--theme-accent2:#b1a75c;--line:#31483a;}
body[data-theme="dark-5"] .site-header{background:rgba(20,31,24,.96)} body[data-theme="dark-5"] .site-nav a{color:#eef7f0} body[data-theme="dark-5"] .section.alt{background:#121e17}

/* ==========================================================
   V23.1 ADVANCED GLOBAL THEME ENGINE
   Inline theme variables are injected by includes/header.php,
   so the selected DB theme applies even with aggressive cache.
   ========================================================== */
html,body{background:var(--theme-bg)!important;color:var(--theme-ink)!important}
body:not(.admin-body) .site-header{background:color-mix(in srgb,var(--theme-header) 96%,transparent)!important;border-color:var(--theme-line)!important}
body:not(.admin-body) .top-strip{background:var(--theme-footer)!important}
body:not(.admin-body) .site-nav a,body:not(.admin-body) .mobile-nav a{color:var(--theme-ink)!important}
body:not(.admin-body) .site-nav a:hover,body:not(.admin-body) .site-nav a.is-active{background:var(--theme-surface)!important;color:var(--theme-accent)!important}
body:not(.admin-body) .section,body:not(.admin-body) main,body:not(.admin-body) .page-wrap{color:var(--theme-ink)}
body:not(.admin-body) .section.alt,body:not(.admin-body) .soft-section,body:not(.admin-body) .cms-content-section{background:var(--theme-surface)!important}
body:not(.admin-body) :is(.product-card,.trust-card,.content-card,.block-card,.feature-card,.story-copy,.cta-band,.market-price-card,.info-card,.contact-card,.quality-card,.sustain-card,.model-card,.cart-card,.account-card,.login-card,.checkout-card,.page-card,.legal-card,.stat-card,.panel,.card){background:var(--theme-paper)!important;color:var(--theme-ink)!important;border-color:var(--theme-line)!important}
body:not(.admin-body) :is(.product-card,.trust-card,.content-card,.block-card,.feature-card,.story-copy,.market-price-card,.info-card,.contact-card,.quality-card,.sustain-card,.model-card,.page-card) p,
body:not(.admin-body) :is(.product-card,.trust-card,.content-card,.block-card,.feature-card,.story-copy,.market-price-card,.info-card,.contact-card,.quality-card,.sustain-card,.model-card,.page-card) span,
body:not(.admin-body) .muted,body:not(.admin-body) .section-heading p{color:var(--theme-muted)!important}
body:not(.admin-body) :is(h1,h2,h3,h4,h5,h6),body:not(.admin-body) .section-heading h2,body:not(.admin-body) .product-body h3{color:var(--theme-ink)}
body:not(.admin-body) .hero :is(h1,h2,h3,p),body:not(.admin-body) .hero .eyebrow{color:#fff!important}
body:not(.admin-body) .eyebrow{color:var(--theme-accent)!important}
body:not(.admin-body) :is(.btn,button.btn,input[type=submit].btn){background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent2))!important;color:#fff!important;border-color:transparent!important}
body:not(.admin-body) .btn.outline{background:transparent!important;color:var(--theme-accent)!important;border-color:var(--theme-accent)!important}
body:not(.admin-body) :is(input,select,textarea){background:var(--theme-paper)!important;color:var(--theme-ink)!important;border-color:var(--theme-line)!important}
body:not(.admin-body) :is(input,select,textarea):focus{border-color:var(--theme-accent)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--theme-accent) 14%,transparent)!important}
body:not(.admin-body) :is(.badge,.pill,.status,.chip){border-color:var(--theme-line)!important}
body:not(.admin-body) :is(.market-price-card .price,.price,.accent-text,a:not(.btn):hover){color:var(--theme-accent)!important}
body:not(.admin-body) :is(.site-footer,footer.site-footer){background:var(--theme-footer)!important;color:#fff!important}
body:not(.admin-body) .site-footer :is(h2,h3,h4,b,a,p,span){color:inherit!important}
body:not(.admin-body) hr,body:not(.admin-body) table td,body:not(.admin-body) table th{border-color:var(--theme-line)!important}
body:not(.admin-body) table{color:var(--theme-ink)}
body:not(.admin-body) .floating-btn,body:not(.admin-body) .back-to-top{background:var(--theme-accent)!important}
body[data-theme^="dark-"]{color-scheme:dark}
body[data-theme^="dark-"] :is(.logo-panel,.market-slider-shell,.home-market-shell,.trust-grid){border-color:var(--theme-line)!important}
body[data-theme^="dark-"] img:not(.hero img):not(.product-card img){filter:saturate(.92)}

/* ==========================================================
   V23.4 FRUIT THEME ENGINE — contrast + full component sync
   ========================================================== */
body:not(.admin-body){
  --ink:var(--theme-ink);
  --muted:var(--theme-muted);
  --green-900:var(--theme-footer);
  --green-800:var(--theme-accent);
  --green-700:var(--theme-accent);
  --lime:var(--theme-accent2);
  --soft:var(--theme-bg);
  --line:var(--theme-line);
  background:var(--theme-bg)!important;
  color:var(--theme-ink)!important;
}

/* Normal cards always use readable theme text, never image-overlay text. */
body:not(.admin-body) :is(
  .product-card,.trust-card,.content-card,.block-card,.feature-card,.story-copy,
  .market-price-card,.info-card,.contact-card,.quality-card,.sustain-card,.model-card,
  .cart-card,.account-card,.login-card,.checkout-card,.page-card,.legal-card,.stat-card,
  .panel,.card,.cms-block,.business-card,.process-card,.value-card,.faq-item,.table-card
){
  background:var(--theme-paper)!important;
  color:var(--theme-ink)!important;
  border-color:var(--theme-line)!important;
}
body:not(.admin-body) :is(
  .product-card,.trust-card,.content-card,.block-card,.feature-card,.story-copy,
  .market-price-card,.info-card,.contact-card,.quality-card,.sustain-card,.model-card,
  .cart-card,.account-card,.login-card,.checkout-card,.page-card,.legal-card,.stat-card,
  .panel,.card,.cms-block,.business-card,.process-card,.value-card,.faq-item,.table-card
) :is(h1,h2,h3,h4,h5,h6,b,strong,.title,.card-title){color:var(--theme-ink)!important}
body:not(.admin-body) :is(
  .product-card,.trust-card,.content-card,.block-card,.feature-card,.story-copy,
  .market-price-card,.info-card,.contact-card,.quality-card,.sustain-card,.model-card,
  .cart-card,.account-card,.login-card,.checkout-card,.page-card,.legal-card,.stat-card,
  .panel,.card,.cms-block,.business-card,.process-card,.value-card,.faq-item,.table-card
) :is(p,small,.muted,.meta,.subtext){color:var(--theme-muted)!important}

/* Image/gradient overlays must stay high-contrast regardless of selected theme. */
body:not(.admin-body) :is(.hero,.promo-slide,.page-hero,.dashboard-hero,.theme-hero,.image-hero,.video-overlay,.cta-band) :is(h1,h2,h3,h4,h5,h6,b,strong){color:#fff!important}
body:not(.admin-body) :is(.hero,.promo-slide,.page-hero,.dashboard-hero,.theme-hero,.image-hero,.video-overlay,.cta-band) :is(p,span:not(.btn):not(.badge),small){color:rgba(255,255,255,.88)!important}
body:not(.admin-body) .promo-slide .eyebrow,
body:not(.admin-body) .hero .eyebrow,
body:not(.admin-body) .page-hero .eyebrow{color:var(--theme-accent2)!important}
body:not(.admin-body) .promo-slide .btn,
body:not(.admin-body) .hero .btn,
body:not(.admin-body) .page-hero .btn{color:#fff!important}

/* Theme should visibly reach section shells, navigation, forms and controls. */
body:not(.admin-body) :is(.section.alt,.soft-section,.cms-content-section,.home-market-slider,.trust-wrap){background-color:var(--theme-bg)}
body:not(.admin-body) .site-header{background:var(--theme-header)!important;border-color:var(--theme-line)!important}
body:not(.admin-body) :is(.site-nav a,.mobile-nav a){color:var(--theme-ink)!important}
body:not(.admin-body) :is(.site-nav a:hover,.site-nav a.is-active,.mobile-nav a:hover){background:var(--theme-surface)!important;color:var(--theme-accent)!important}
body:not(.admin-body) :is(input,select,textarea){background:var(--theme-paper)!important;color:var(--theme-ink)!important;border-color:var(--theme-line)!important}
body:not(.admin-body) :is(input,select,textarea)::placeholder{color:color-mix(in srgb,var(--theme-muted) 72%,transparent)!important}
body:not(.admin-body) :is(.btn,button.btn,input[type="submit"].btn){background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent2))!important;color:#fff!important}
body:not(.admin-body) .btn.outline{background:transparent!important;color:var(--theme-accent)!important;border-color:var(--theme-accent)!important}
body:not(.admin-body) .site-footer{background:var(--theme-footer)!important}

/* Price / accent / slider indicators follow selected fruit palette. */
body:not(.admin-body) :is(.price,.market-price,.accent-text,.market-price-card .price){color:var(--theme-accent)!important}
body:not(.admin-body) :is(.slider-dots button.active,.market-dot.active,.swiper-pagination-bullet-active){background:var(--theme-accent2)!important}
body:not(.admin-body) :is(.eyebrow,.block-link,.text-link){color:var(--theme-accent)!important}

/* Default card typography restored to professional readable sizing. */
body:not(.admin-body) :is(.trust-card,.product-card,.feature-card,.content-card,.cms-block,.market-price-card) h3,
body:not(.admin-body) .trust-card b{font-size:clamp(17px,1.15vw,20px)!important;line-height:1.25!important}
body:not(.admin-body) :is(.trust-card,.product-card,.feature-card,.content-card,.cms-block,.market-price-card) p,
body:not(.admin-body) .trust-card span{font-size:clamp(13px,.92vw,15px)!important;line-height:1.55!important}

/* Dark presets: keep native images vivid while all surfaces remain readable. */
body[data-theme^="dark-"] :is(.product-card,.cms-block,.feature-card,.market-price-card){box-shadow:0 16px 36px rgba(0,0,0,.24)!important}
body[data-theme^="dark-"] img{filter:none!important}

/* =========================================================
   V23.5 THEME CONTRAST ENGINE
   Fixes dark/green/image cards where global theme heading
   rules could make text invisible. Keeps all 30 themes.
   ========================================================= */

/* Theme-aware dark feature surfaces */
body:not(.admin-body) :is(
  .cta-band,
  .export-order-band,
  .about-gst-panel,
  .contact-v12-business,
  .bmx-hero-card,
  .bmx-hero-summary
){
  background:linear-gradient(135deg,var(--theme-footer),var(--theme-accent))!important;
  color:#fff!important;
  border-color:color-mix(in srgb,#fff 18%,transparent)!important;
}

/* Image-overlay sections: never inherit normal-card ink color */
body:not(.admin-body) :is(
  .hero,
  .page-hero,
  .bmx-hero,
  .contact-v12-hero,
  .auth-visual-card,
  .promo-slide,
  .image-hero,
  .video-overlay
) :is(h1,h2,h3,h4,h5,h6,b,strong,.title,.card-title){
  color:#fff!important;
  text-shadow:0 2px 18px rgba(0,0,0,.20);
}
body:not(.admin-body) :is(
  .hero,
  .page-hero,
  .bmx-hero,
  .contact-v12-hero,
  .auth-visual-card,
  .promo-slide,
  .image-hero,
  .video-overlay
) :is(p,small,span:not(.btn):not(.badge):not(.pill):not(.chip)){
  color:rgba(255,255,255,.90)!important;
}
body:not(.admin-body) :is(
  .hero,
  .page-hero,
  .bmx-hero,
  .contact-v12-hero,
  .auth-visual-card,
  .promo-slide,
  .image-hero,
  .video-overlay
) .eyebrow{
  color:color-mix(in srgb,var(--theme-accent2) 78%,#fff)!important;
  text-shadow:none;
}

/* Dark feature cards need explicit readable typography. */
body:not(.admin-body) :is(
  .cta-band,
  .export-order-band,
  .about-gst-panel,
  .contact-v12-business,
  .bmx-hero-card,
  .bmx-hero-summary
) :is(h1,h2,h3,h4,h5,h6,b,strong,.title,.card-title){
  color:#fff!important;
}
body:not(.admin-body) :is(
  .cta-band,
  .export-order-band,
  .about-gst-panel,
  .contact-v12-business,
  .bmx-hero-card,
  .bmx-hero-summary
) :is(p,small,span:not(.btn):not(.badge):not(.pill):not(.chip)){
  color:rgba(255,255,255,.86)!important;
}
body:not(.admin-body) :is(
  .cta-band,
  .export-order-band,
  .about-gst-panel,
  .contact-v12-business,
  .bmx-hero-card,
  .bmx-hero-summary
) .eyebrow{
  color:color-mix(in srgb,var(--theme-accent2) 72%,#fff)!important;
}

/* Inner light document/card remains light with dark readable text. */
body:not(.admin-body) .about-gst-doc{
  background:var(--theme-paper)!important;
  color:var(--theme-ink)!important;
  border:1px solid var(--theme-line)!important;
}
body:not(.admin-body) .about-gst-doc :is(h1,h2,h3,h4,b,strong){color:var(--theme-ink)!important;text-shadow:none!important}
body:not(.admin-body) .about-gst-doc :is(p,small,span:not(.btn)){color:var(--theme-muted)!important}

/* Business contact panel remains readable in every theme. */
body:not(.admin-body) .contact-v12-business :is(a,b,p,h3){color:#fff!important}
body:not(.admin-body) .contact-v12-business :is(.contact-v12-info-list span,.contact-v12-business-top span){color:rgba(255,255,255,.72)!important}
body:not(.admin-body) .contact-v12-business-top small{color:color-mix(in srgb,var(--theme-accent2) 76%,#fff)!important}

/* Auth/login/register image cards */
body:not(.admin-body) .auth-visual-card h1{color:#fff!important}
body:not(.admin-body) .auth-visual-card>p{color:rgba(255,255,255,.90)!important}
body:not(.admin-body) .auth-visual-card :is(.auth-benefit b,.auth-stat-grid b){color:#fff!important}
body:not(.admin-body) .auth-visual-card :is(.auth-benefit small,.auth-stat-grid span){color:rgba(255,255,255,.82)!important}

/* Business model hero */
body:not(.admin-body) .bmx-hero-copy h1{color:#fff!important}
body:not(.admin-body) .bmx-hero-copy p{color:rgba(255,255,255,.90)!important}
body:not(.admin-body) .bmx-hero-summary strong{color:#fff!important}

/* Contact hero */
body:not(.admin-body) .contact-v12-hero-copy h1{color:#fff!important}
body:not(.admin-body) .contact-v12-hero-copy p{color:rgba(255,255,255,.90)!important}
body:not(.admin-body) .contact-v12-hero-brand b{color:#fff!important}

/* Product export enquiry card */
body:not(.admin-body) .export-order-band h2{color:#fff!important}
body:not(.admin-body) .export-order-band p{color:rgba(255,255,255,.88)!important}

/* CTA cards were previously turned white while text stayed white. */
body:not(.admin-body) .cta-band{box-shadow:0 22px 55px color-mix(in srgb,var(--theme-accent) 18%,transparent)!important}
body:not(.admin-body) .cta-band h2{color:#fff!important}
body:not(.admin-body) .cta-band .btn.outline{
  color:#fff!important;
  border-color:rgba(255,255,255,.45)!important;
  background:rgba(255,255,255,.08)!important;
}

/* GST green panel */
body:not(.admin-body) .about-gst-main h2,
body:not(.admin-body) .about-gst-grid b{color:#fff!important}
body:not(.admin-body) .about-gst-main>p{color:rgba(255,255,255,.86)!important}
body:not(.admin-body) .about-gst-grid>div{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.14)!important;
}
body:not(.admin-body) .about-gst-grid small{color:rgba(255,255,255,.72)!important}

/* Normal light/theme cards: consistent professional readable typography. */
body:not(.admin-body) :is(
  .product-card,.trust-card,.content-card,.block-card,.feature-card,.story-copy,
  .market-price-card,.info-card,.quality-card,.sustain-card,.model-card,.page-card,
  .cms-block,.process-card,.value-card,.faq-item,.table-card,.contact-v12-form-card,
  .auth-card
) :is(h1,h2,h3,h4,h5,h6,b,strong){
  color:var(--theme-ink)!important;
  text-shadow:none!important;
}
body:not(.admin-body) :is(
  .product-card,.trust-card,.content-card,.block-card,.feature-card,.story-copy,
  .market-price-card,.info-card,.quality-card,.sustain-card,.model-card,.page-card,
  .cms-block,.process-card,.value-card,.faq-item,.table-card,.contact-v12-form-card,
  .auth-card
) :is(p,small,.muted,.meta,.subtext){
  color:var(--theme-muted)!important;
}

/* Theme accents also flow through interactive/content details. */
body:not(.admin-body) :is(.auth-kicker,.contact-v12-form-head .eyebrow,.section-heading .eyebrow,.block-body .eyebrow){color:var(--theme-accent)!important}
body:not(.admin-body) :is(.auth-input-icon,.doc-seal,.product-chip,.block-index){
  color:var(--theme-accent)!important;
  background:color-mix(in srgb,var(--theme-accent2) 13%,var(--theme-paper))!important;
}
body:not(.admin-body) :is(.contact-v12-form-card,.auth-card){
  background:var(--theme-paper)!important;
  border-color:var(--theme-line)!important;
}

/* Preserve contrast for dark themes on regular cards and form controls. */
body[data-theme^="dark-"]:not(.admin-body) :is(.contact-v12-form-card,.auth-card,.about-gst-doc){
  background:var(--theme-paper)!important;
  color:var(--theme-ink)!important;
}

@media(max-width:620px){
  body:not(.admin-body) :is(.cta-band,.export-order-band){padding:20px!important}
  body:not(.admin-body) :is(.cta-band,.export-order-band) h2{font-size:clamp(27px,8vw,34px)!important}
}

/* =========================================================
   V23.6 — COMPLETE THEME SURFACE ENGINE
   Makes feature panels, CTA cards, dashboard cards and inner
   document/cards follow the selected theme instead of keeping
   legacy hard-coded Ritika green/white values.
   ========================================================= */

/* Page/section surfaces */
body:not(.admin-body) :is(.bm-cta-section,.bm-map-section,.bm-detail-section,.about-gst-section,.account-section){
  background:var(--theme-bg)!important;
}

/* Strong / feature cards: use selected theme palette everywhere. */
body:not(.admin-body) :is(
  .dashboard-hero,
  .profile-card,
  .bm-cta,
  .cta-band,
  .export-order-band,
  .about-gst-panel,
  .contact-v12-business,
  .bmx-hero-card,
  .bmx-hero-summary
){
  background:linear-gradient(135deg,var(--theme-footer) 0%,var(--theme-accent) 62%,color-mix(in srgb,var(--theme-accent2) 46%,var(--theme-accent)) 100%)!important;
  color:#fff!important;
  border-color:color-mix(in srgb,var(--theme-accent2) 38%,transparent)!important;
  box-shadow:0 22px 56px color-mix(in srgb,var(--theme-accent) 18%,transparent)!important;
}

body:not(.admin-body) :is(
  .dashboard-hero,.profile-card,.bm-cta,.cta-band,.export-order-band,
  .about-gst-panel,.contact-v12-business,.bmx-hero-card,.bmx-hero-summary
) :is(h1,h2,h3,h4,h5,h6,b,strong){color:#fff!important}

body:not(.admin-body) :is(
  .dashboard-hero,.profile-card,.bm-cta,.cta-band,.export-order-band,
  .about-gst-panel,.contact-v12-business,.bmx-hero-card,.bmx-hero-summary
) :is(p,small,.muted,span:not(.btn):not(.badge):not(.pill):not(.chip)){
  color:rgba(255,255,255,.88)!important;
}

body:not(.admin-body) :is(
  .dashboard-hero,.profile-card,.bm-cta,.cta-band,.export-order-band,
  .about-gst-panel,.contact-v12-business,.bmx-hero-card,.bmx-hero-summary
) .eyebrow{
  color:color-mix(in srgb,var(--theme-accent2) 74%,#fff)!important;
}

/* Buttons that sit on dark/feature cards must keep contrast. */
body:not(.admin-body) :is(.dashboard-hero,.bm-cta,.cta-band,.export-order-band,.about-gst-panel,.contact-v12-business) .btn{
  background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent2))!important;
  color:#fff!important;
  border-color:color-mix(in srgb,#fff 22%,transparent)!important;
}
body:not(.admin-body) :is(.dashboard-hero,.bm-cta,.cta-band,.export-order-band,.about-gst-panel,.contact-v12-business) .btn.outline{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.44)!important;
}

/* Normal cards get a visible tone of the selected theme, not plain legacy white. */
body:not(.admin-body) :is(
  .stat-card,.chart-card,.about-gst-doc,.cms-block,.product-card,.trust-card,
  .content-card,.block-card,.feature-card,.story-copy,.market-price-card,
  .info-card,.quality-card,.sustain-card,.model-card,.cart-card,.account-card,
  .login-card,.checkout-card,.page-card,.legal-card,.panel,.card,
  .contact-v12-form-card,.auth-card,.process-card,.value-card,.faq-item,.table-card
){
  background:color-mix(in srgb,var(--theme-paper) 78%,var(--theme-surface) 22%)!important;
  color:var(--theme-ink)!important;
  border-color:var(--theme-line)!important;
}

/* Theme text on normal cards. */
body:not(.admin-body) :is(
  .stat-card,.chart-card,.about-gst-doc,.cms-block,.product-card,.trust-card,
  .content-card,.block-card,.feature-card,.story-copy,.market-price-card,
  .info-card,.quality-card,.sustain-card,.model-card,.cart-card,.account-card,
  .login-card,.checkout-card,.page-card,.legal-card,.panel,.card,
  .contact-v12-form-card,.auth-card,.process-card,.value-card,.faq-item,.table-card
) :is(h1,h2,h3,h4,h5,h6,b,strong){color:var(--theme-ink)!important;text-shadow:none!important}

body:not(.admin-body) :is(
  .stat-card,.chart-card,.about-gst-doc,.cms-block,.product-card,.trust-card,
  .content-card,.block-card,.feature-card,.story-copy,.market-price-card,
  .info-card,.quality-card,.sustain-card,.model-card,.cart-card,.account-card,
  .login-card,.checkout-card,.page-card,.legal-card,.panel,.card,
  .contact-v12-form-card,.auth-card,.process-card,.value-card,.faq-item,.table-card
) :is(p,small,.muted,.meta,.subtext){color:var(--theme-muted)!important}

/* GST document card now visibly follows theme too. */
body:not(.admin-body) .about-gst-doc{
  background:linear-gradient(145deg,var(--theme-paper),var(--theme-surface))!important;
  border:1px solid var(--theme-line)!important;
}
body:not(.admin-body) .doc-seal{
  background:color-mix(in srgb,var(--theme-accent2) 18%,var(--theme-paper))!important;
  color:var(--theme-accent)!important;
}

/* Account/dashboard widgets */
body:not(.admin-body) .stat-card b{color:var(--theme-accent)!important}
body:not(.admin-body) .chart-card h3{color:var(--theme-ink)!important}
body:not(.admin-body) .bar{background:linear-gradient(180deg,var(--theme-accent2),var(--theme-accent))!important}
body:not(.admin-body) .donut{
  background:conic-gradient(var(--theme-accent) 0 var(--p1),var(--theme-accent2) var(--p1) var(--p2),var(--theme-line) var(--p2) 100%)!important;
}
body:not(.admin-body) .donut:after{background:var(--theme-paper)!important}
body:not(.admin-body) .donut-center :is(b,small){color:var(--theme-ink)!important}

/* Business-model CTA was still locked to legacy green. */
body:not(.admin-body) .bm-cta-section{background:var(--theme-bg)!important}
body:not(.admin-body) .bm-cta h2{color:#fff!important}
body:not(.admin-body) .bm-cta p{color:rgba(255,255,255,.88)!important}
body:not(.admin-body) .bm-cta .eyebrow{color:color-mix(in srgb,var(--theme-accent2) 74%,#fff)!important}

/* Inputs and table rows take the chosen palette as well. */
body:not(.admin-body) :is(input,select,textarea,.input){
  background:color-mix(in srgb,var(--theme-paper) 88%,var(--theme-surface) 12%)!important;
  color:var(--theme-ink)!important;
  border-color:var(--theme-line)!important;
}
body:not(.admin-body) :is(input,textarea)::placeholder{color:color-mix(in srgb,var(--theme-muted) 78%,transparent)!important}

/* Dark themes retain stronger separation between cards and page background. */
body[data-theme^="dark-"]:not(.admin-body) :is(
  .stat-card,.chart-card,.about-gst-doc,.cms-block,.product-card,.trust-card,
  .content-card,.feature-card,.market-price-card,.contact-v12-form-card,.auth-card
){
  background:color-mix(in srgb,var(--theme-paper) 86%,var(--theme-surface) 14%)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.22)!important;
}

/* ============================================================
   V23.7 — BUSINESS MODEL EXPORT CTA THEME CONTRAST FIX
   The .bmx-cta component has its own legacy green styles and was
   not part of the generic .bm-cta theme selectors. Keep it fully
   theme-aware and preserve readable text on every preset.
   ============================================================ */
body:not(.admin-body) .bmx-cta-wrap{
  background:var(--theme-bg)!important;
}
body:not(.admin-body) .bmx-cta{
  background:linear-gradient(135deg,
    var(--theme-footer) 0%,
    var(--theme-accent) 62%,
    color-mix(in srgb,var(--theme-accent2) 46%,var(--theme-accent)) 100%)!important;
  color:#fff!important;
  border:1px solid color-mix(in srgb,var(--theme-accent2) 36%,transparent)!important;
  box-shadow:0 22px 56px color-mix(in srgb,var(--theme-accent) 18%,transparent)!important;
}
body:not(.admin-body) .bmx-cta :is(h1,h2,h3,h4,h5,h6,b,strong){
  color:#fff!important;
  text-shadow:none!important;
}
body:not(.admin-body) .bmx-cta p{
  color:rgba(255,255,255,.90)!important;
}
body:not(.admin-body) .bmx-cta .eyebrow,
body:not(.admin-body) .bmx-cta .eyebrow[style]{
  color:color-mix(in srgb,var(--theme-accent2) 74%,#fff)!important;
}
body:not(.admin-body) .bmx-cta .btn{
  background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent2))!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.22)!important;
  box-shadow:0 12px 30px color-mix(in srgb,var(--theme-accent) 24%,transparent)!important;
}
body:not(.admin-body) .bmx-cta .btn:hover{
  filter:brightness(1.06);
  transform:translateY(-1px);
}

/* Explicitly restore the intended default Ritika Green appearance. */
body[data-theme="default"]:not(.admin-body) .bmx-cta{
  background:linear-gradient(135deg,#083d24 0%,#0b5a31 62%,#477d2f 100%)!important;
  color:#fff!important;
}
body[data-theme="default"]:not(.admin-body) .bmx-cta :is(h1,h2,h3,h4,h5,h6,b,strong){color:#fff!important}
body[data-theme="default"]:not(.admin-body) .bmx-cta p{color:rgba(255,255,255,.90)!important}
body[data-theme="default"]:not(.admin-body) .bmx-cta .eyebrow,
body[data-theme="default"]:not(.admin-body) .bmx-cta .eyebrow[style]{color:#d2ec95!important}

/* ============================================================
   V23.8 — ABOUT GST DOCUMENT CARD CONTRAST / THEME FIX
   The inner .about-gst-doc sits inside .about-gst-panel, so the
   parent feature-panel white-text rules were leaking into it.
   These exact nested selectors restore a proper light/themed card.
   ============================================================ */
body:not(.admin-body) .about-gst-panel .about-gst-doc{
  background:linear-gradient(145deg,var(--theme-paper),color-mix(in srgb,var(--theme-surface) 72%,var(--theme-paper) 28%))!important;
  color:var(--theme-ink)!important;
  border:1px solid var(--theme-line)!important;
  box-shadow:0 18px 42px color-mix(in srgb,var(--theme-accent) 12%,transparent)!important;
}
body:not(.admin-body) .about-gst-panel .about-gst-doc :is(h1,h2,h3,h4,h5,h6,b,strong){
  color:var(--theme-ink)!important;
  text-shadow:none!important;
}
body:not(.admin-body) .about-gst-panel .about-gst-doc :is(p,small,.muted,.meta,.subtext,span:not(.doc-seal):not(.btn):not(.badge)){
  color:var(--theme-muted)!important;
}
body:not(.admin-body) .about-gst-panel .about-gst-doc .doc-seal{
  background:color-mix(in srgb,var(--theme-accent2) 16%,var(--theme-paper))!important;
  color:var(--theme-accent)!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 16%,transparent)!important;
}
body:not(.admin-body) .about-gst-panel .about-gst-doc .btn{
  background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent2))!important;
  color:#fff!important;
  border-color:transparent!important;
}
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc{
  background:#fff!important;
  color:#173d28!important;
  border-color:#e1ebdf!important;
}
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc :is(h1,h2,h3,h4,h5,h6,b,strong){
  color:#173d28!important;
}
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc :is(p,small,.muted,.meta,.subtext){
  color:#718077!important;
}
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc .doc-seal{
  background:#edf6e9!important;
  color:#176b35!important;
}

/* ============================================================
   V23.9 — GST DOCUMENT CARD MUST VISIBLY FOLLOW ACTIVE THEME
   Exact nested selectors override older fixed-white/default rules.
   ============================================================ */
body:not(.admin-body) .about-gst-panel .about-gst-doc{
  background:linear-gradient(145deg,
    color-mix(in srgb,var(--theme-accent) 14%,var(--theme-paper) 86%),
    color-mix(in srgb,var(--theme-accent2) 10%,var(--theme-paper) 90%)
  )!important;
  color:var(--theme-ink)!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 25%,var(--theme-line) 75%)!important;
  box-shadow:0 18px 42px color-mix(in srgb,var(--theme-accent) 16%,transparent)!important;
}
body:not(.admin-body) .about-gst-panel .about-gst-doc h3,
body:not(.admin-body) .about-gst-panel .about-gst-doc :is(h1,h2,h4,h5,h6,b,strong){
  color:var(--theme-accent)!important;
  text-shadow:none!important;
}
body:not(.admin-body) .about-gst-panel .about-gst-doc p{
  color:var(--theme-muted)!important;
  opacity:1!important;
}
body:not(.admin-body) .about-gst-panel .about-gst-doc .doc-seal{
  background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent2))!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--theme-accent) 22%,transparent)!important;
}
body:not(.admin-body) .about-gst-panel .about-gst-doc .btn{
  background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent2))!important;
  color:#fff!important;
  border:0!important;
}
/* Original Ritika Green default: visibly green-tinted card, not a fixed white block. */
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc{
  background:linear-gradient(145deg,#f2f8ee 0%,#e8f3e3 100%)!important;
  color:#173d28!important;
  border-color:#cfe1c9!important;
}
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc h3,
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc :is(h1,h2,h4,h5,h6,b,strong){color:#14552f!important}
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc p{color:#64766a!important}
body[data-theme="default"]:not(.admin-body) .about-gst-panel .about-gst-doc .doc-seal{
  background:linear-gradient(135deg,#0b5a31,#8fbd2f)!important;color:#fff!important
}
