/* Diwali 2026 offer (Wondertown: book a plot, get a 5 gram gold coin; first 10 confirmed bookings).
   Home: a slim strip under the Breezy Heights band. Wondertown: a card section under the hero film.
   Each block carries data-offer-until="YYYY-MM-DD"; an inline script right after it removes it after that date (IST).
   To end the offer early or extend it, change that date in index.html and wondertown/index.html. */

/* ---------- Home strip ---------- */
.oe-offer-strip{ background:#0F1A17; border-block:1px solid rgba(179,150,119,.28); }
.oe-offer-strip__link{
  display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:8px 22px;
  width:min(100% - 48px, 1320px); margin-inline:auto; padding:18px 0; color:#EEE6D9; text-decoration:none;
  font:400 15px/1.5 "Plus Jakarta Sans",sans-serif;
}
.oe-offer-strip__tag{ color:#D9C08F; font:600 11px/1.4 "Plus Jakarta Sans",sans-serif; letter-spacing:.2em; text-transform:uppercase; }
.oe-offer-strip__text strong{ color:#E8CF8E; font-weight:600; }
.oe-offer-strip__cta{ display:inline-flex; align-items:center; min-height:40px; padding:0 18px; border:1px solid rgba(217,192,143,.6); border-radius:999px; color:#EEE6D9; font-size:13px; font-weight:600; letter-spacing:.04em; white-space:nowrap; transition:background-color .25s ease, border-color .25s ease; }
.oe-offer-strip__link:hover .oe-offer-strip__cta{ background:rgba(217,192,143,.12); border-color:#D9C08F; }
.oe-offer-strip__link:focus-visible{ outline:2px solid #B39677; outline-offset:4px; border-radius:12px; }
@media (max-width:760px){
  .oe-offer-strip__link{ justify-content:flex-start; gap:8px 16px; padding:20px 0; font-size:14px; }
  .oe-offer-strip__cta{ min-height:44px; }
}

/* ---------- Wondertown section ---------- */
.wt-diwali{ position:relative; padding-block:clamp(56px,7vw,110px) 0; background:var(--wt-white,#fff); }
.wt-diwali__card{
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); align-items:center; overflow:hidden;
  border-radius:32px; background:linear-gradient(150deg,#132A45 0%,#0F2B2A 100%); color:#fff;
  box-shadow:0 30px 70px rgba(19,42,69,.22);
}
.wt-diwali__art{ margin:0; height:100%; min-height:300px; }
.wt-diwali__art img{ width:100%; height:100%; object-fit:cover; object-position:50% 50%; }
.wt-diwali__copy{ padding:clamp(32px,4.5vw,64px); }
.wt-diwali__eyebrow{ margin:0 0 16px; color:#E8CF8E; font:600 12px/1.5 "Plus Jakarta Sans",sans-serif; letter-spacing:.24em; text-transform:uppercase; }
.wt-diwali__title{ margin:0; color:#fff; font:500 clamp(30px,3.4vw,50px)/1.1 "Fredoka","Plus Jakarta Sans",sans-serif; letter-spacing:-.01em; }
.wt-diwali__title span{ display:block; color:#E8CF8E; }
.wt-diwali__lede{ margin:20px 0 0; color:rgba(255,255,255,.88); font-size:17px; line-height:1.75; }
.wt-diwali__lede strong{ color:#fff; font-weight:600; }
.wt-diwali__actions{ display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.wt-diwali .wt-button--gold{ background:#E8CF8E; border-color:#E8CF8E; color:#132A45; }
.wt-diwali .wt-button--gold:hover{ background:#F1DCA6; }
.wt-diwali .wt-button--line{ background:transparent; border-color:rgba(255,255,255,.45); color:#fff; }
.wt-diwali .wt-button--line:hover{ border-color:#fff; background:rgba(255,255,255,.08); }
.wt-diwali__note{ margin:20px 0 0; color:rgba(255,255,255,.72); font-size:13px; line-height:1.7; }
@media (max-width:900px){
  .wt-diwali__card{ grid-template-columns:minmax(0,1fr); border-radius:24px; }
  .wt-diwali__art{ min-height:0; aspect-ratio:1120/800; }
  .wt-diwali .wt-button{ flex:1 1 100%; justify-content:center; }
}
@media (prefers-reduced-motion:reduce){ .oe-offer-strip__cta{ transition:none; } }

/* ---------- Home section (replaces the slim strip, 30 Oct 2026): brand green + gold ---------- */
.oe-offer{ padding:clamp(56px,7vw,112px) 0; background:#14211D; border-top:1px solid rgba(213,200,186,.12); }
.oe-offer__card{
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); align-items:center; overflow:hidden;
  width:min(100% - 48px, 1320px); margin-inline:auto; border-radius:28px;
  background:linear-gradient(150deg,#1B2B24 0%,#0F1A17 100%); border:1px solid rgba(179,150,119,.28);
  box-shadow:0 30px 70px rgba(0,0,0,.28);
}
.oe-offer__art{ margin:0; height:100%; min-height:300px; }
.oe-offer__art img{ display:block; width:100%; height:100%; object-fit:cover; object-position:50% 50%; }
.oe-offer__copy{ padding:clamp(32px,4.5vw,64px); color:#EEE6D9; font-family:"Plus Jakarta Sans",sans-serif; }
.oe-offer__eyebrow{ margin:0 0 16px; color:#D9C08F; font:600 12px/1.5 "Plus Jakarta Sans",sans-serif; letter-spacing:.22em; text-transform:uppercase; }
.oe-offer__title{ margin:0; color:#EEE6D9; font:400 clamp(32px,3.6vw,54px)/1.1 "Playfair Display",serif; }
.oe-offer__title span{ display:block; color:#E8CF8E; font-style:italic; }
.oe-offer__lede{ max-width:44ch; margin:20px 0 0; color:#C9C2B6; font-size:16px; line-height:1.8; }
.oe-offer__lede strong{ color:#EEE6D9; font-weight:600; }
.oe-offer__actions{ display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.oe-offer__btn{
  display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 26px; border-radius:999px;
  border:1px solid rgba(213,200,186,.45); background:transparent; color:#EEE6D9; font:600 13px/1 "Plus Jakarta Sans",sans-serif;
  letter-spacing:.08em; text-transform:uppercase; text-decoration:none; cursor:pointer; transition:background-color .25s ease, border-color .25s ease, color .25s ease;
}
.oe-offer__btn:hover{ border-color:#D9C08F; background:rgba(217,192,143,.1); }
.oe-offer__btn--solid{ background:#D9C08F; border-color:#D9C08F; color:#14211D; }
.oe-offer__btn--solid:hover{ background:#E8CF8E; border-color:#E8CF8E; color:#14211D; }
.oe-offer__btn:focus-visible{ outline:2px solid #B39677; outline-offset:4px; }
.oe-offer__note{ margin:18px 0 0; color:#A8ACA2; font-size:13px; line-height:1.7; }
@media (max-width:900px){
  .oe-offer__card{ grid-template-columns:minmax(0,1fr); border-radius:22px; }
  .oe-offer__art{ min-height:0; aspect-ratio:1120/800; }
  .oe-offer__btn{ flex:1 1 100%; }
}
@media (max-width:760px){ .oe-offer__card{ width:calc(100% - 32px); } }
@media (prefers-reduced-motion:reduce){ .oe-offer__btn{ transition:none; } }