/* =========================================================
   SONALIKA — Full Site sections
   Palette: SOIL (dark earth) · WHITE/CREAM · YELLOW/GOLD
   Green = nature accent · Red = sparing CTA · Blue = logo only
   Rides on home.css tokens.
   ========================================================= */

.section{ position:relative; padding:clamp(74px,9vw,144px) 0; }
/* marquee recolor to brand gold (overrides home.css blue) */
.mq{ background:var(--gold) !important; }
.mq-row span{ color:var(--soil-2) !important; }
.mq-row span::after{ background:var(--soil-2) !important; }
.section.cream{ background:linear-gradient(180deg,var(--cream),var(--cream-2)); color:var(--ink); }
.section.white{ background:#fbf8f1; color:var(--ink); }
.section.soil{ background:linear-gradient(180deg,var(--soil),var(--soil-2)); color:#fff; }
.section.soil-deep{ background:var(--soil-2); color:#fff; }
.section .grain{ position:absolute; inset:0; opacity:.4; pointer-events:none; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

/* a thin furrow divider that reads as a ploughed field edge */
.furrow{ height:14px; background:
  repeating-linear-gradient(90deg, var(--soil-3) 0 22px, var(--soil) 22px 44px);
  opacity:.5; }

.sec-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:30px; flex-wrap:wrap; margin-bottom:clamp(36px,4vw,60px); position:relative; z-index:2; }
.sec-head h2{ font-size:clamp(34px,5vw,72px); margin-top:14px; letter-spacing:-.02em; }
.sec-head .lead{ max-width:42ch; }
.section.cream .sec-head h2,.section.white .sec-head h2{ color:var(--soil); }
.section.cream .eyebrow,.section.white .eyebrow{ color:var(--gold-d); }
.section.cream .eyebrow::before,.section.white .eyebrow::before{ background:var(--gold); }
.section.soil .eyebrow,.section.soil-deep .eyebrow{ color:var(--gold-2); }
.section.soil .eyebrow::before,.section.soil-deep .eyebrow::before{ background:var(--gold); }
.section.soil .lead,.section.soil-deep .lead{ color:rgba(255,255,255,.66); }
.section.cream .lead,.section.white .lead{ color:var(--ink-2); }
.serif-g{ font-family:var(--serif); font-style:italic; font-weight:400; color:var(--gold-d); }
.serif-y{ font-family:var(--serif); font-style:italic; font-weight:400; color:var(--gold-2); }

/* gold buttons reused as the site's primary action */
.btn-soil{ background:var(--soil); color:#fff; }
.btn-soil:hover{ background:var(--soil-3); transform:translateY(-2px); }
.btn-outline{ background:transparent; color:var(--soil); border:1.5px solid rgba(26,22,15,.22); }
.btn-outline:hover{ border-color:var(--soil); background:rgba(26,22,15,.04); }

/* ======================================================
   OVERVIEW STATS (band)
   ====================================================== */
.overview{ position:relative; overflow:hidden; }
.overview .leaf-bg{ position:absolute; left:-3%; bottom:-12%; width:360px; opacity:.06; pointer-events:none; }
.stats4{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.14); border-radius:22px; overflow:hidden; position:relative; z-index:2; }
.stat4{ background:var(--soil-2); padding:clamp(28px,3.4vw,50px) clamp(20px,2.4vw,38px); position:relative; transition:background .5s; }
.stat4:hover{ background:#241710; }
.stat4 .n{ font-family:var(--display); font-weight:800; font-size:clamp(40px,5vw,76px); color:#fff; line-height:1; letter-spacing:-.02em; }
.stat4 .n span{ color:var(--gold-2); }
.stat4 .t{ color:rgba(255,255,255,.62); margin-top:12px; font-size:15px; }
.stat4 .bar{ height:3px; width:0; background:linear-gradient(90deg,var(--gold),var(--gold-d)); margin-top:18px; border-radius:3px; transition:width 1.1s var(--ease-out) .2s; }
.stat4.in .bar{ width:46px; }

/* ======================================================
   COVERFLOW TRACTOR SLIDER
   ====================================================== */
.cf{ position:relative; z-index:2; }
.cf-stage{ position:relative; height:clamp(300px,38vw,460px); perspective:1600px; }
.cf-card{ position:absolute; top:0; left:0; width:clamp(260px,40vw,460px); will-change:transform,opacity;
  transition:transform .65s var(--ease-out), opacity .55s var(--ease-out); cursor:pointer; }
.cf-card .ph{ position:relative; width:100%; aspect-ratio:16/12; border-radius:22px; overflow:hidden;
  background:radial-gradient(120% 90% at 50% 10%, #3a2817, #19100a);
  box-shadow:0 40px 70px -34px rgba(20,13,6,.8); border:1px solid rgba(255,255,255,.14); }
.cf-card image-slot{ position:absolute; inset:0; width:100%; height:100%; }
.cf-card .hp{ position:absolute; right:14px; top:14px; z-index:3; background:var(--gold); color:var(--soil-2);
  font-family:var(--display); font-weight:800; border-radius:12px; padding:9px 13px; line-height:1; box-shadow:0 10px 22px -8px rgba(244,180,0,.7); }
.cf-card .hp b{ font-size:22px; } .cf-card .hp small{ font-size:11px; display:block; font-weight:700; opacity:.8; }
.cf-card .cap{ text-align:center; margin-top:16px; opacity:0; transition:opacity .4s; }
.cf-card.is-active .cap{ opacity:1; }
.cf-card .cap .s{ font-family:var(--display); font-weight:700; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-d); }
.cf-card .cap .n{ font-family:var(--display); font-weight:800; font-size:clamp(22px,2.6vw,34px); color:var(--soil); line-height:1; margin-top:5px; }
.cf-card:not(.is-active) .ph{ filter:saturate(.82) brightness(.8); }
.cf-card.is-active{ cursor:default; }

.cf-arrow{ position:absolute; top:clamp(140px,18vw,210px); transform:translateY(-50%); z-index:40; width:58px; height:58px;
  border-radius:50%; background:#fff; border:1px solid var(--line); color:var(--soil); display:grid; place-items:center;
  box-shadow:0 18px 36px -18px rgba(20,13,6,.5); transition:.3s; }
.cf-arrow:hover{ background:var(--gold); color:var(--soil-2); transform:translateY(-50%) scale(1.06); }
.cf-arrow svg{ width:24px; height:24px; }
.cf-arrow.prev{ left:clamp(4px,3vw,40px); } .cf-arrow.next{ right:clamp(4px,3vw,40px); }

.cf-panel{ position:relative; z-index:2; max-width:760px; margin:clamp(20px,3vw,40px) auto 0; text-align:center; }
.cf-panel .series{ font-family:var(--display); font-weight:700; letter-spacing:.16em; text-transform:uppercase; font-size:13px; color:var(--gold-d); }
.cf-panel .desc{ color:var(--ink-2); margin:14px auto 0; max-width:54ch; }
.cf-specs{ display:flex; justify-content:center; gap:clamp(20px,3vw,46px); margin:26px 0; }
.cf-specs .sp{ position:relative; }
.cf-specs .sp + .sp{ padding-left:clamp(20px,3vw,46px); border-left:1px solid var(--line); }
.cf-specs .sp b{ font-family:var(--display); font-weight:800; font-size:clamp(24px,3vw,38px); color:var(--soil); line-height:1; display:block; }
.cf-specs .sp b span{ font-size:.5em; color:var(--gold-d); }
.cf-specs .sp small{ color:var(--muted); font-size:12.5px; }
.cf-actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.cf-dots{ display:flex; gap:9px; justify-content:center; margin-top:26px; }
.cf-dots button{ width:9px; height:9px; border-radius:50%; background:rgba(26,22,15,.18); transition:.3s; }
.cf-dots button.active{ background:var(--gold); width:28px; border-radius:5px; }

/* ======================================================
   COMPARISON
   ====================================================== */
.compare{ background:#fff; border:1px solid var(--line); border-radius:24px; box-shadow:0 30px 70px -44px rgba(20,13,6,.5); overflow:hidden; position:relative; z-index:2; }
.cmp-head{ display:grid; grid-template-columns:1.05fr 1fr 1fr; border-bottom:1px solid var(--line); }
.cmp-corner{ padding:24px clamp(18px,2vw,30px); display:flex; align-items:flex-end; font-family:var(--display); font-weight:700; color:var(--muted); font-size:13px; letter-spacing:.04em; text-transform:uppercase; }
.cmp-col{ padding:22px clamp(16px,2vw,26px); border-left:1px solid var(--line); }
.cmp-col .cmp-media{ position:relative; aspect-ratio:16/10; border-radius:14px; overflow:hidden; background:radial-gradient(120% 90% at 50% 10%,#3a2817,#19100a); margin-bottom:14px; }
.cmp-col .cmp-media image-slot{ position:absolute; inset:0; width:100%; height:100%; }
.cmp-col select{ width:100%; background:var(--cream); border:1.5px solid var(--line); border-radius:10px; padding:11px 12px; font-family:var(--display); font-weight:700; font-size:15px; color:var(--soil); cursor:pointer; }
.cmp-col select:focus{ outline:none; border-color:var(--gold); }
.cmp-row{ display:grid; grid-template-columns:1.05fr 1fr 1fr; align-items:center; }
.cmp-row:nth-child(even){ background:var(--cream); }
.cmp-key{ padding:16px clamp(18px,2vw,30px); font-family:var(--display); font-weight:600; color:var(--muted); font-size:14.5px; }
.cmp-val{ padding:16px clamp(16px,2vw,26px); border-left:1px solid var(--line); font-family:var(--display); font-weight:800; font-size:18px; color:var(--soil); transition:color .3s, background .3s; }
.cmp-val.best{ color:var(--gold-d); background:rgba(244,180,0,.10); }
.cmp-val.best::after{ content:"Best"; margin-left:8px; font-family:var(--body); font-weight:700; font-size:10px; letter-spacing:.06em; text-transform:uppercase; color:var(--soil-2); background:var(--gold); border-radius:100px; padding:3px 8px; vertical-align:middle; }
.cmp-foot{ display:grid; grid-template-columns:1.05fr 1fr 1fr; border-top:1px solid var(--line); }
.cmp-foot .cmp-cell{ padding:18px clamp(16px,2vw,26px); border-left:1px solid var(--line); }
.cmp-foot .cmp-cell:first-child{ border-left:none; }
.cmp-foot .cmp-cell .btn{ width:100%; --pad:13px 16px; font-size:14.5px; }

/* ======================================================
   WHY BUY FROM US
   ====================================================== */
.why-split{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,72px); align-items:center; position:relative; z-index:2; }
.why-media{ position:relative; border-radius:24px; overflow:hidden; aspect-ratio:4/5; background:radial-gradient(120% 80% at 30% 10%, #3a2817, #19100a); box-shadow:0 50px 90px -50px rgba(0,0,0,.8); }
.why-media image-slot{ position:absolute; inset:0; width:100%; height:108%; top:-4%; }
.why-media .ov{ position:absolute; inset:0; z-index:3; background:linear-gradient(180deg,transparent 40%, rgba(20,13,6,.7)); }
.why-media .tag{ position:absolute; left:20px; bottom:20px; z-index:4; }
.why-media .tag b{ font-family:var(--display); font-weight:800; font-size:clamp(40px,5vw,68px); color:#fff; line-height:.9; display:block; }
.why-media .tag span{ color:var(--gold-2); font-family:var(--display); font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:12px; }
.why-list{ display:grid; gap:14px; margin-top:30px; }
.why-item{ display:flex; gap:18px; align-items:flex-start; padding:22px; border-radius:18px;
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12);
  transition:transform .5s var(--ease-out), background .4s, border-color .4s; }
.why-item:hover{ transform:translateX(6px); background:rgba(255,255,255,.08); border-color:rgba(244,180,0,.45); }
.why-item .ic{ flex:none; width:50px; height:50px; border-radius:14px; background:linear-gradient(145deg,var(--gold),var(--gold-d)); color:var(--soil-2); display:grid; place-items:center; }
.why-item .ic svg{ width:24px; height:24px; }
.why-item b{ font-family:var(--display); font-weight:800; font-size:18px; color:#fff; }
.why-item p{ color:rgba(255,255,255,.62); font-size:14.5px; margin-top:5px; }

/* ======================================================
   FINANCE / EMI (animated tractor)
   ====================================================== */
.emi{ display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(24px,3vw,48px); align-items:stretch; position:relative; z-index:2; }
.emi-controls{ background:#fff; border:1px solid var(--line); border-radius:22px; padding:clamp(26px,3vw,42px); box-shadow:0 24px 56px -40px rgba(20,13,6,.5); }
.emi-drive{ position:relative; height:96px; margin-bottom:26px; border-radius:16px; overflow:hidden;
  background:linear-gradient(180deg,#cfe3f4 0%, #e8f3dc 46%, #b98f4f 46%, #8a6334 100%); }
.emi-drive .sun{ position:absolute; right:18px; top:12px; width:30px; height:30px; border-radius:50%; background:radial-gradient(circle,#fff3c4,#ffd24d 60%,transparent 72%); }
.emi-drive .hill{ position:absolute; left:0; right:0; bottom:44%; height:30px; background:radial-gradient(120% 80% at 50% 100%, #7fae54, transparent 70%); opacity:.5; }
.emi-drive .ground{ position:absolute; left:0; right:0; bottom:0; height:54%;
  background:repeating-linear-gradient(90deg,#90683a 0 26px,#7d5a30 26px 52px); }
.emi-tractor{ position:absolute; bottom:8px; left:0; width:64px; height:auto; transition:left .25s linear; z-index:3; filter:drop-shadow(0 6px 6px rgba(0,0,0,.35)); }
.emi-tractor svg{ width:100%; height:auto; display:block; }
.efield{ margin-bottom:26px; } .efield:last-child{ margin-bottom:0; }
.efield .row{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:13px; gap:12px; }
.efield label{ font-family:var(--display); font-weight:600; font-size:15px; color:var(--muted); }
.efield .eval{ font-family:var(--display); font-weight:800; font-size:21px; color:var(--soil); white-space:nowrap; }
.efield .eval span{ color:var(--gold-d); }
.erange{ -webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:100px; background:var(--cream-2); outline:none; accent-color:var(--gold-d); }
.erange::-webkit-slider-thumb{ -webkit-appearance:none; width:24px; height:24px; border-radius:50%; background:var(--gold); cursor:pointer; border:4px solid #fff; box-shadow:0 0 0 1.5px var(--gold-d), 0 6px 16px -4px rgba(244,180,0,.8); transition:transform .2s; }
.erange::-webkit-slider-thumb:hover{ transform:scale(1.12); }
.erange::-moz-range-thumb{ width:24px; height:24px; border:4px solid #fff; border-radius:50%; background:var(--gold); cursor:pointer; }
.escale{ display:flex; justify-content:space-between; margin-top:9px; font-size:12px; color:var(--muted); }
.emi-result{ background:linear-gradient(160deg,var(--soil),var(--soil-2)); border-radius:22px; padding:clamp(26px,3vw,42px); display:flex; flex-direction:column; color:#fff; position:relative; overflow:hidden; box-shadow:0 30px 70px -40px rgba(0,0,0,.7); }
.emi-result::after{ content:""; position:absolute; right:-70px; top:-70px; width:240px; height:240px; border-radius:50%; background:radial-gradient(circle,rgba(244,180,0,.4),transparent 65%); }
.emi-result .ecap{ color:rgba(255,255,255,.65); font-size:14px; letter-spacing:.04em; position:relative; z-index:2; }
.emi-big{ font-family:var(--display); font-weight:800; font-size:clamp(46px,6vw,80px); line-height:1; margin:8px 0 4px; position:relative; z-index:2; }
.emi-big span{ font-size:.42em; color:var(--gold-2); vertical-align:.2em; }
.emi-per{ color:rgba(255,255,255,.6); position:relative; z-index:2; }
.emi-break{ margin-top:auto; padding-top:28px; display:grid; gap:13px; position:relative; z-index:2; }
.emi-break .eb{ display:flex; justify-content:space-between; align-items:center; padding-bottom:13px; border-bottom:1px solid rgba(255,255,255,.14); }
.emi-break .eb:last-child{ border-bottom:none; padding-bottom:0; }
.emi-break .eb small{ color:rgba(255,255,255,.66); font-size:14px; }
.emi-break .eb b{ font-family:var(--display); font-weight:700; font-size:18px; }
.emi-note{ margin-top:16px; font-size:12.5px; color:rgba(255,255,255,.45); position:relative; z-index:2; }

/* ======================================================
   SPARE PARTS (price + inquiry)
   ====================================================== */
.parts{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; position:relative; z-index:2; }
.part{ background:#fff; border:1px solid var(--line); border-radius:20px; overflow:hidden; box-shadow:0 18px 40px -30px rgba(26,22,15,.5);
  transition:transform .5s var(--ease-out), box-shadow .5s, border-color .4s; display:flex; flex-direction:column; }
.part:hover{ transform:translateY(-8px); box-shadow:0 30px 60px -30px rgba(26,22,15,.55); border-color:var(--gold); }
.part-top{ position:relative; aspect-ratio:16/10; background:radial-gradient(120% 90% at 50% 10%,#f3ede0,#e4d8bf); overflow:hidden; }
.part-top image-slot{ position:absolute; inset:0; width:100%; height:100%; }
.part-ic{ position:absolute; inset:0; display:grid; place-items:center; color:var(--soil); opacity:.16; }
.part-ic svg{ width:84px; height:84px; }
.part-tag{ position:absolute; left:14px; top:14px; z-index:3; background:var(--gold); color:var(--soil-2); font-family:var(--display); font-weight:700; font-size:11.5px; letter-spacing:.04em; padding:6px 11px; border-radius:100px; box-shadow:0 8px 18px -8px rgba(244,180,0,.7); }
.part-body{ padding:22px; display:flex; flex-direction:column; flex:1; }
.part-body h3{ font-family:var(--display); font-weight:800; font-size:21px; color:var(--soil); }
.part-body p{ color:var(--ink-2); font-size:14.5px; margin-top:6px; }
.part-foot{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; padding-top:20px; }
.part-price{ font-family:var(--display); font-weight:800; font-size:20px; color:var(--ink); }
.part-price small{ display:block; font-family:var(--body); font-weight:500; font-size:11.5px; color:var(--muted); }
.part-enq{ display:inline-flex; align-items:center; gap:8px; padding:11px 18px; border-radius:100px; background:var(--soil); color:#fff;
  font-family:var(--display); font-weight:700; font-size:14px; transition:.3s; }
.part-enq:hover{ background:var(--soil-3); transform:translateY(-2px); }
.part-enq svg{ width:15px; height:15px; }

/* ======================================================
   SERVICE & AFTER-SALES (steps) + BOOKING + AREA
   ====================================================== */
.steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; position:relative; z-index:2; margin-bottom:clamp(36px,4vw,56px); }
.step{ padding:28px; border-radius:18px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12); position:relative; overflow:hidden; transition:.5s var(--ease-out); }
.step:hover{ transform:translateY(-6px); background:rgba(255,255,255,.08); border-color:rgba(244,180,0,.4); }
.step .no{ font-family:var(--display); font-weight:800; font-size:13px; color:var(--gold-2); letter-spacing:.1em; }
.step h3{ font-family:var(--display); font-weight:800; font-size:20px; color:#fff; margin-top:16px; }
.step p{ color:rgba(255,255,255,.62); margin-top:8px; font-size:14.5px; }
.step .ic{ position:absolute; right:-8px; bottom:-8px; color:rgba(244,180,0,.08); }
.step .ic svg{ width:92px; height:92px; }

.svc-split{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,4vw,64px); align-items:start; position:relative; z-index:2; }
.area-card{ display:flex; gap:16px; align-items:flex-start; padding:20px 22px; border-radius:16px;
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12); transition:.5s var(--ease-out); margin-bottom:14px; }
.area-card:hover{ background:rgba(255,255,255,.09); transform:translateX(6px); border-color:rgba(244,180,0,.4); }
.area-card .ic{ flex:none; width:48px; height:48px; border-radius:13px; background:linear-gradient(145deg,var(--gold),var(--gold-d)); color:var(--soil-2); display:grid; place-items:center; }
.area-card .ic svg{ width:23px; height:23px; }
.area-card b{ font-family:var(--display); font-weight:800; font-size:17px; color:#fff; }
.area-card span{ display:block; color:rgba(255,255,255,.62); font-size:14px; margin-top:3px; }
.area-pulse{ display:inline-flex; align-items:center; gap:9px; margin-top:8px; color:var(--gold-2); font-family:var(--display); font-weight:700; font-size:13.5px; }
.area-pulse .dot{ width:9px; height:9px; border-radius:50%; background:var(--gold-2); position:relative; }
.area-pulse .dot::after{ content:""; position:absolute; inset:0; border-radius:50%; background:var(--gold-2); animation:apulse 2s ease-out infinite; }
@keyframes apulse{ 0%{ transform:scale(1); opacity:.6;} 70%{ transform:scale(3.2); opacity:0;} 100%{opacity:0;} }

.booking{ background:#fff; color:var(--ink); border-radius:24px; padding:clamp(26px,3vw,40px); box-shadow:0 40px 90px -40px rgba(0,0,0,.6); }
.booking h3{ font-family:var(--display); font-weight:800; font-size:25px; color:var(--soil); }
.booking .bsub{ color:var(--ink-2); margin-top:6px; font-size:15px; }
.bgrid{ display:grid; grid-template-columns:1fr 1fr; gap:15px; margin-top:24px; }
.bfield{ position:relative; } .bfield.full{ grid-column:1/-1; }
.bfield label{ font-family:var(--display); font-weight:600; font-size:13px; color:var(--muted); margin-bottom:7px; display:block; }
.bfield input,.bfield select{ width:100%; background:var(--cream); border:1.5px solid var(--line); border-radius:12px; padding:14px 15px;
  font-family:var(--body); font-size:15px; color:var(--ink); transition:border-color .3s, background .3s, box-shadow .3s; }
.bfield input:focus,.bfield select:focus{ outline:none; border-color:var(--gold-d); background:#fff; box-shadow:0 0 0 4px rgba(244,180,0,.16); }
.bslots{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.bslot{ background:var(--cream); border:1.5px solid var(--line); border-radius:11px; padding:13px 8px; font-family:var(--display); font-weight:700; font-size:13.5px; color:var(--soil); transition:.25s; }
.bslot:hover{ border-color:var(--gold-d); }
.bslot.sel{ background:var(--gold); color:var(--soil-2); border-color:var(--gold); box-shadow:0 10px 22px -12px rgba(244,180,0,.7); }

/* animated service coverage map */
.cov-map{ position:relative; aspect-ratio:1/0.82; border-radius:24px; overflow:hidden; border:1px solid rgba(255,255,255,.1);
  background:radial-gradient(80% 70% at 60% 40%, rgba(244,180,0,.14), transparent 60%), linear-gradient(160deg,#241710,#160f08); }
.cov-map svg{ position:absolute; inset:0; width:100%; height:100%; }
.cov-region{ fill:rgba(244,180,0,.06); stroke:rgba(255,255,255,.16); stroke-width:1.2; transition:fill 1s var(--ease); }
.coverage.in .cov-region{ fill:rgba(244,180,0,.12); }
.cov-ring{ fill:none; stroke:var(--gold-2); stroke-width:1.5; opacity:0; transform-origin:center; transform-box:fill-box; }
.coverage.in .cov-ring{ animation:covring 3.4s ease-out infinite; }
.coverage.in .cov-ring.r2{ animation-delay:1.1s; } .coverage.in .cov-ring.r3{ animation-delay:2.2s; }
@keyframes covring{ 0%{ opacity:.7; transform:scale(.2);} 80%{ opacity:0; transform:scale(1.9);} 100%{ opacity:0; transform:scale(1.9);} }
.cov-line{ stroke:var(--gold-2); stroke-width:1.4; stroke-dasharray:6 5; opacity:0; }
.coverage.in .cov-line{ opacity:.65; animation:covdash 14s linear infinite; transition:opacity .8s .6s; }
@keyframes covdash{ to{ stroke-dashoffset:-200; } }
.cov-city{ opacity:0; transition:opacity .6s var(--ease); }
.coverage.in .cov-city{ opacity:1; }
.coverage.in .cov-city.c1{ transition-delay:.5s;} .coverage.in .cov-city.c2{ transition-delay:.8s;}
.coverage.in .cov-city.c3{ transition-delay:1.1s;} .coverage.in .cov-city.c4{ transition-delay:1.4s;}
.cov-hub .pulse{ fill:var(--gold); opacity:.5; transform-origin:center; transform-box:fill-box; animation:covpulse 2.2s ease-out infinite; }
@keyframes covpulse{ 0%{ transform:scale(1); opacity:.5;} 70%{ transform:scale(3.4); opacity:0;} 100%{opacity:0;} }
.cov-label{ font-family:var(--display); font-weight:800; font-size:13px; fill:#fff; }
.cov-label.sub{ font-weight:600; font-size:10px; fill:rgba(255,255,255,.6); }

/* ======================================================
   LET'S TALK / CONTACT
   ====================================================== */
.talk-split{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,4vw,64px); align-items:center; position:relative; z-index:2; }
.talk-info h2{ color:#fff; font-size:clamp(36px,5.2vw,80px); }
.talk-info p{ color:rgba(255,255,255,.7); margin-top:18px; max-width:40ch; }
.talk-rows{ margin-top:30px; display:grid; gap:14px; }
.talk-row{ display:flex; gap:16px; align-items:center; }
.talk-row .ic{ flex:none; width:48px; height:48px; border-radius:13px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); color:var(--gold-2); display:grid; place-items:center; }
.talk-row .ic svg{ width:22px; height:22px; }
.talk-row b{ font-family:var(--display); font-weight:700; color:#fff; font-size:17px; display:block; }
.talk-row span{ color:rgba(255,255,255,.6); font-size:14px; }
.talk-card{ background:#fff; color:var(--ink); border-radius:24px; padding:clamp(26px,3vw,40px); box-shadow:0 40px 90px -40px rgba(0,0,0,.6); }
.talk-card h3{ font-family:var(--display); font-weight:800; font-size:24px; color:var(--soil); }

/* trust strip on CTA */
.trust{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; position:relative; z-index:2; }
.tcard{ text-align:center; padding:26px 18px; }
.tcard .n{ font-family:var(--display); font-weight:800; font-size:clamp(34px,4vw,54px); color:var(--gold-2); line-height:1; }
.tcard .l{ color:rgba(255,255,255,.65); font-size:14px; margin-top:8px; }

/* ======================================================
   INQUIRY MODAL (soil / gold)
   ====================================================== */
.imodal{ position:fixed; inset:0; z-index:9500; display:flex; align-items:center; justify-content:center; padding:20px;
  opacity:0; visibility:hidden; transition:opacity .45s var(--ease), visibility .45s;
  background:radial-gradient(120% 120% at 70% 0%, rgba(58,40,23,.55), rgba(12,8,4,.78)); backdrop-filter:blur(10px) saturate(120%); }
.imodal.open{ opacity:1; visibility:visible; }
.ibox{ position:relative; width:min(460px,100%); border-radius:24px; overflow:hidden; padding:clamp(26px,4vw,40px);
  background:linear-gradient(165deg, #fbf8f1, #ffffff); border:1px solid rgba(255,255,255,.6);
  box-shadow:0 50px 120px -30px rgba(0,0,0,.7); transform:translateY(26px) scale(.96); opacity:0;
  transition:transform .55s var(--ease-out), opacity .45s; max-height:92vh; overflow-y:auto; }
.imodal.open .ibox{ transform:none; opacity:1; }
.ibox::before{ content:""; position:absolute; right:-60px; top:-60px; width:220px; height:220px; border-radius:50%;
  background:radial-gradient(circle, rgba(244,180,0,.3), transparent 65%); pointer-events:none; }
.iclose{ position:absolute; top:15px; right:15px; z-index:3; width:38px; height:38px; border-radius:50%;
  background:var(--cream-2); display:grid; place-items:center; color:var(--ink-2); transition:.3s; }
.iclose:hover{ background:var(--sand); color:var(--ink); }
.iclose svg{ width:18px; height:18px; }
.iic{ width:58px; height:58px; border-radius:16px; display:grid; place-items:center; color:var(--soil-2); margin-bottom:18px;
  background:linear-gradient(145deg,var(--gold),var(--gold-d)); box-shadow:0 14px 30px -12px rgba(244,180,0,.8); }
.iic svg{ width:28px; height:28px; }
.ibox h3{ font-family:var(--display); font-weight:800; font-size:25px; color:var(--soil); }
.isub{ color:var(--ink-2); margin-top:8px; font-size:15px; }
.isub b{ color:var(--ink); }
.ipill{ display:inline-flex; align-items:center; gap:8px; margin-top:14px; background:rgba(244,180,0,.12);
  border:1px solid rgba(244,180,0,.35); border-radius:100px; padding:7px 14px; font-family:var(--display); font-weight:700; font-size:13px; color:var(--gold-d); }
.ipill .d{ width:7px; height:7px; border-radius:50%; background:var(--red); }
.iprog{ display:flex; gap:8px; margin:20px 0 22px; }
.iprog i{ flex:1; height:5px; border-radius:5px; background:var(--cream-2); transition:background .4s; }
.iprog i.active{ background:linear-gradient(90deg,var(--gold-d),var(--green)); } .iprog i.done{ background:var(--green); }
.istep[hidden]{ display:none; }
.ilab{ font-family:var(--display); font-weight:600; font-size:13px; color:var(--muted); margin-bottom:8px; display:block; }
.ifield input{ width:100%; background:var(--cream); border:1.5px solid var(--line); border-radius:12px; padding:16px;
  font-family:var(--body); font-size:15.5px; color:var(--ink); transition:.3s; }
.ifield input:focus{ outline:none; border-color:var(--gold-d); background:#fff; box-shadow:0 0 0 4px rgba(244,180,0,.18); }
.ibtn{ width:100%; margin-top:18px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:17px; border-radius:100px;
  background:var(--soil); color:#fff; font-family:var(--display); font-weight:700; font-size:16px; box-shadow:0 14px 34px -14px rgba(26,22,15,.8); transition:.3s; }
.ibtn:hover{ background:var(--soil-3); transform:translateY(-2px); }
.ibtn svg{ width:19px; height:19px; }
.ihint{ margin-top:14px; font-size:12.5px; color:var(--muted); text-align:center; }
.ihint .demo{ color:var(--red); font-weight:700; letter-spacing:.12em; }
.iotp{ display:flex; gap:10px; justify-content:space-between; }
.iotp input{ width:100%; aspect-ratio:1/1; text-align:center; font-family:var(--display); font-weight:800; font-size:24px; color:var(--soil);
  background:var(--cream); border:1.5px solid var(--line); border-radius:12px; transition:.25s; }
.iotp input:focus{ outline:none; border-color:var(--gold-d); background:#fff; box-shadow:0 0 0 4px rgba(244,180,0,.18); }
.iotp input.filled{ border-color:var(--gold-d); }
.ierr{ color:var(--red); font-size:13.5px; margin-top:12px; text-align:center; min-height:18px; font-weight:600; }
.iresend{ margin-top:14px; text-align:center; font-size:14px; color:var(--muted); }
.iresend button{ color:var(--gold-d); font-weight:700; font-family:var(--display); }
.icenter{ text-align:center; }
.isuccess{ width:84px; height:84px; margin:0 auto 18px; }
.isuccess svg{ width:84px; height:84px; }
.isuccess .ring{ fill:none; stroke:rgba(67,162,51,.25); stroke-width:5; }
.isuccess .tick{ fill:none; stroke:var(--green); stroke-width:6; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:48; stroke-dashoffset:48; }
.imodal.open .isuccess .tick{ animation:itick .7s var(--ease-out) .15s forwards; }
@keyframes itick{ to{ stroke-dashoffset:0; } }
.iconf{ position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:4; }
.iconf i{ position:absolute; top:-12px; width:8px; height:12px; opacity:0; border-radius:1px; }
.imodal.open .iconf i{ animation:iconf 1.5s var(--ease-out) forwards; }
@keyframes iconf{ 0%{opacity:0;transform:translateY(0) rotate(0);} 12%{opacity:1;} 100%{opacity:0;transform:translateY(360px) rotate(540deg);} }

/* ======================================================
   RESPONSIVE
   ====================================================== */
@media (max-width:1024px){
  .stats4{ grid-template-columns:repeat(2,1fr); }
  .parts{ grid-template-columns:repeat(2,1fr); }
  .steps{ grid-template-columns:repeat(2,1fr); }
  .why-split,.emi,.svc-split,.talk-split{ grid-template-columns:1fr; }
  .why-media{ aspect-ratio:16/11; }
  .trust{ grid-template-columns:repeat(2,1fr); }
  .compare-scroll{ overflow-x:auto; -webkit-overflow-scrolling:touch; } .compare{ min-width:660px; }
}
@media (max-width:680px){
  .stats4{ grid-template-columns:1fr; }
  .parts{ grid-template-columns:1fr; }
  .steps{ grid-template-columns:1fr; }
  .bgrid{ grid-template-columns:1fr; }
  .bslots{ grid-template-columns:repeat(2,1fr); }
  .cf-specs{ gap:18px; } .cf-specs .sp+.sp{ padding-left:18px; }
  .cf-arrow{ width:48px; height:48px; }
}
