/* ============================================================
   ACHARYA GAUTAM — Offers microsite
   A separate, minimal stylesheet for campaign landing pages only.
   Colour tokens copied from the main portal's css/style.css (which
   is itself sourced from BRAND-GUIDELINES.md §4, "gautamnight") so
   these pages read as the same brand without pulling in any of the
   portal's booking-modal, mega-menu or page-builder machinery this
   microsite deliberately does not depend on.
   ============================================================ */

:root{
  --void:#0D191F;
  --void2:#16272F;
  --void3:#1B2F39;
  --chalk:#EBEEF0;
  --dim:#A8B6BD;
  --hint:#7E929C;
  --faint:#25404C;
  --edge:#4C7386;
  --edge-lit:#5C89A0;
  --amber:#0693D9;
  --amber-hover:#069AE3;
  --amber-dim:#0B7FBB;
  --haldi:#3FB6EE;
  --tulsi:#5FD3A3;
  --alert:#EF7076;
  --on-fill:#0D191F;
  --lit:#FFFFFF;
  --brand-blue:#0698E1;
  --brand-red:#E11B25;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:'Inter','Noto Sans','Noto Sans Devanagari',-apple-system,
         BlinkMacSystemFont,'Segoe UI',sans-serif;
  --r:5px;
  --max:1080px;
  --gut:clamp(20px,5vw,48px);
}

*{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  background:var(--void);
  color:var(--chalk);
  font:16px/1.6 var(--sans);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:var(--haldi)}

.skip{position:absolute;left:-999px;top:0;background:var(--amber);
  color:var(--on-fill);padding:10px 16px;z-index:100}
.skip:focus{left:var(--gut)}

/* ---------- header ---------- */
header{border-bottom:1px solid var(--faint)}
.hdr{max-width:var(--max);margin:0 auto;padding:16px var(--gut);
  display:flex;align-items:center;gap:10px}
.hdr img{width:36px;height:36px}
.hdr .wm{font-family:var(--serif);font-weight:600;font-size:19px;
  color:var(--chalk);letter-spacing:.01em}
.hdr .wm em{font-style:normal;color:var(--haldi)}

/* ---------- layout ---------- */
main{max-width:var(--max);margin:0 auto;padding:clamp(28px,5vw,56px) var(--gut) 80px}
.offer{display:grid;grid-template-columns:1fr;gap:28px}
@media(min-width:860px){
  .offer{grid-template-columns:340px 1fr;align-items:start;gap:40px}
}

/* ---------- left: product card ---------- */
.product{
  background:var(--void2);border:1px solid var(--faint);
  border-radius:calc(var(--r)*2);padding:28px;
  position:sticky;top:24px;
}
.product img.cover{
  width:180px;margin:0 auto 20px;border-radius:var(--r);
  box-shadow:0 18px 40px -18px rgba(0,0,0,.6);
}
.product .price{font-family:var(--serif);font-size:38px;
  color:var(--haldi);font-weight:600;margin:4px 0}
.product .price s{color:var(--hint);font-weight:400;font-size:22px;
  margin-right:10px}
.product hr{border:none;border-top:1px solid var(--faint);margin:18px 0}
.product p{color:var(--dim);margin:0;font-size:15px}
.product .incl{margin-top:18px;padding-top:0;list-style:none;padding-left:0}
.product .incl li{color:var(--dim);font-size:14px;padding:6px 0 6px 26px;
  position:relative}
.product .incl li::before{content:'✓';position:absolute;left:0;
  color:var(--tulsi);font-weight:700}

/* ---------- right: form card ---------- */
.formcard{
  background:var(--void2);border:1px solid var(--faint);
  border-radius:calc(var(--r)*2);padding:clamp(20px,4vw,40px);
}
.formcard h1{font-family:var(--serif);font-weight:600;
  font-size:clamp(24px,3vw,30px);margin:0 0 6px;color:var(--chalk)}
.formcard .sub{color:var(--dim);margin:0 0 26px;font-size:15px}

fieldset{border:1px solid var(--faint);border-radius:var(--r);
  padding:18px;margin:0 0 20px}
legend{color:var(--haldi);font-size:12px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;padding:0 8px}

.row{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px}
.row:last-child{margin-bottom:0}
@media(min-width:600px){
  .row.two{grid-template-columns:1fr 1fr}
  .row.three{grid-template-columns:1fr 1fr 1fr}
}

label{display:block;font-size:13px;font-weight:600;color:var(--dim);
  margin-bottom:6px;letter-spacing:.01em}
label .req{color:var(--brand-red)}

input,select,textarea{
  width:100%;background:var(--void);border:1px solid var(--edge);
  border-radius:var(--r);color:var(--chalk);font:15px var(--sans);
  padding:11px 12px;
}
input::placeholder,textarea::placeholder{color:var(--hint)}
input:focus,select:focus,textarea:focus{
  outline:2px solid var(--amber);outline-offset:1px;border-color:var(--amber)
}
select{appearance:none;background-image:
  linear-gradient(45deg,transparent 50%,var(--dim) 50%),
  linear-gradient(135deg,var(--dim) 50%,transparent 50%);
  background-position:calc(100% - 18px) center,calc(100% - 13px) center;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat}

.consent{display:flex;gap:10px;align-items:flex-start;margin:18px 0 22px}
.consent input{width:auto;margin-top:3px}
.consent label{font-weight:400;color:var(--dim);font-size:13px;margin:0}
.consent a{color:var(--haldi)}

button.submit{
  width:100%;background:var(--amber);color:var(--on-fill);
  border:none;border-radius:var(--r);font:600 16px var(--sans);
  padding:15px;cursor:pointer;transition:background .15s
}
button.submit:hover{background:var(--amber-hover)}
button.submit:disabled{background:var(--edge);color:var(--dim);cursor:not-allowed}

.note{font-size:12px;color:var(--hint);text-align:center;margin-top:12px}

/* ---------- honeypot ---------- */
.hp{position:absolute;left:-9999px}

/* ---------- footer ---------- */
footer{border-top:1px solid var(--faint);padding:24px var(--gut);
  text-align:center;color:var(--hint);font-size:13px}
footer a{color:var(--dim)}

/* ---------- hub page ---------- */
.hub-grid{display:grid;gap:20px;margin-top:30px}
@media(min-width:640px){.hub-grid{grid-template-columns:1fr 1fr}}
.hub-card{background:var(--void2);border:1px solid var(--faint);
  border-radius:calc(var(--r)*2);padding:26px;text-decoration:none;
  display:block;transition:border-color .15s}
.hub-card:hover{border-color:var(--edge-lit)}
.hub-card h2{font-family:var(--serif);color:var(--chalk);
  font-size:22px;margin:0 0 8px}
.hub-card p{color:var(--dim);font-size:14px;margin:0 0 14px}
.hub-card .price{color:var(--haldi);font-weight:600;font-size:20px}

/* ---------- thank-you page ---------- */
.ty{max-width:560px;margin:80px auto;text-align:center;padding:0 var(--gut)}
.ty .tick{width:56px;height:56px;border-radius:50%;background:var(--tulsi);
  color:var(--on-fill);display:flex;align-items:center;justify-content:center;
  font-size:28px;margin:0 auto 20px}
.ty h1{font-family:var(--serif);font-size:26px;margin:0 0 10px}
.ty p{color:var(--dim)}
