
/* ==========================================================================
   AMANAT PUNJAB — Deohri design system
   Palette, type and marks are locked to the supplied brand kit.
   ========================================================================== */
:root{
  --navy:#16243D; --navy-90:#1b2b47; --navy-80:#22375a; --navy-line:#2c3f61;
  --brass:#B3893B; --gold:#C9A227; --ivory:#F6F0E4; --ivory-2:#EFE7D6;
  --paper:#FFFDF8; --muted:#5B6478; --ink:#20293b;
  --viah:#8C3041; --tyohar:#C9791E; --pheri:#2F6F62; --bazaar:#C05A38;
  --wa:#25D366; --wa-ink:#0b3d26;
  --line:rgba(22,36,61,.14); --line-2:rgba(22,36,61,.08);
  --shadow:0 18px 50px -24px rgba(22,36,61,.45);
  --shadow-sm:0 8px 24px -14px rgba(22,36,61,.35);
  --r:18px; --r-lg:26px; --r-sm:12px;
  --serif:'Marcellus', 'Cormorant Garamond', Georgia, serif;
  --sans:'Source Sans 3','Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%; overflow-x:hidden}
body{
  margin:0; font-family:var(--sans); font-size:18px; line-height:1.6;
  color:var(--ink); background:var(--ivory); -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:var(--serif); font-weight:400; color:var(--navy); line-height:1.12; margin:0 0 .5em; letter-spacing:.005em}
h1{font-size:clamp(2.35rem,7vw,4rem)}
h2{font-size:clamp(1.9rem,4.6vw,2.9rem)}
h3{font-size:clamp(1.3rem,3vw,1.7rem)}
p{margin:0 0 1.1em}
a{color:inherit; text-decoration:none}
img{max-width:100%; display:block}
.wrap{width:100%; max-width:var(--wrap); margin:0 auto; padding:0 22px}
.eyebrow{
  font-family:var(--serif); color:var(--brass); font-size:1.15rem; letter-spacing:.16em;
  text-transform:uppercase; margin:0 0 .5rem; display:block;
}
.eyebrow--gur{ font-family:var(--serif); text-transform:none; letter-spacing:.02em; font-size:1.35rem; color:var(--brass) }
.lede{font-size:1.22rem; color:var(--muted); max-width:60ch}
.muted{color:var(--muted)}
.center{text-align:center}
.section{padding:clamp(56px,8vw,104px) 0}
.section--navy{background:var(--navy); color:#eef1f6}
.section--navy h1,.section--navy h2,.section--navy h3{color:#fff}
.section--navy .eyebrow{color:var(--gold)}
.section--navy .lede,.section--navy .muted{color:#b7c0d1}
.section--ivory2{background:var(--ivory-2)}
.hr-arch{width:78px;height:2px;background:linear-gradient(90deg,transparent,var(--brass),transparent);margin:14px 0;border:0}
.center .hr-arch{margin-left:auto;margin-right:auto}

/* ---- buttons ------------------------------------------------------------ */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.55em;
  min-height:54px; padding:0 26px; border-radius:999px; font-family:var(--sans);
  font-weight:600; font-size:1.05rem; cursor:pointer; border:1.5px solid transparent;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease; text-align:center;
  line-height:1.1;
}
.btn:active{transform:translateY(1px)}
.btn svg{width:22px;height:22px;flex:0 0 auto}
.btn--wa{background:var(--wa); color:#08351f; box-shadow:var(--shadow-sm)}
.btn--wa:hover{background:#20c15d; box-shadow:var(--shadow)}
.btn--navy{background:var(--navy); color:#fff}
.btn--navy:hover{background:var(--navy-80)}
.btn--gold{background:linear-gradient(180deg,var(--gold),var(--brass)); color:#2a2205}
.btn--gold:hover{filter:brightness(1.05)}
.btn--ghost{background:transparent; color:var(--navy); border-color:var(--line)}
.btn--ghost:hover{border-color:var(--brass); color:var(--brass)}
.section--navy .btn--ghost{color:#fff;border-color:rgba(255,255,255,.32)}
.section--navy .btn--ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn--lg{min-height:60px;font-size:1.12rem;padding:0 32px}
.btn--block{width:100%}
.btn-row{display:flex;gap:14px;flex-wrap:wrap}
.center .btn-row{justify-content:center}

/* ---- media (photo with graceful brand fallback) ------------------------- */
.media{
  --tint:linear-gradient(160deg,rgba(22,36,61,.10),rgba(22,36,61,.52));
  --brand:linear-gradient(135deg,#20355a 0%,#16243D 55%,#0f1a2e 100%);
  background-image:var(--tint),var(--img,none),var(--brand);
  background-size:cover,cover,cover; background-position:center;
  background-repeat:no-repeat; position:relative; overflow:hidden;
}
.media--soft{--tint:linear-gradient(160deg,rgba(22,36,61,.04),rgba(22,36,61,.26))}
.media--gold{--brand:linear-gradient(135deg,#3a2f12,#16243D 70%)}

/* small arch watermark used on brand fallbacks */
.arch-wm{position:absolute;right:-30px;bottom:-30px;width:220px;opacity:.13;color:var(--gold);pointer-events:none}

/* ---- deohri mark inline sizing ------------------------------------------ */
.mark{display:inline-block;vertical-align:middle}
.mark svg{display:block;height:100%;width:auto}

/* ---- header ------------------------------------------------------------- */
.topbar{
  position:sticky; top:0; z-index:60; background:rgba(246,240,228,.92);
  backdrop-filter:blur(10px); border-bottom:1px solid var(--line-2);
}
.topbar__in{display:flex; align-items:center; gap:16px; min-height:74px}
.brand{display:flex; align-items:center; gap:12px; margin-right:auto}
.brand .mark{height:44px}
.brand__name{font-family:var(--serif); font-size:1.55rem; letter-spacing:.14em; color:var(--navy); line-height:1}
.brand__name small{display:block;font-size:.62rem;letter-spacing:.42em;color:var(--brass);margin-top:3px}
.top-cta{display:flex;align-items:center;gap:10px}
.top-phone{display:none;align-items:center;gap:8px;color:var(--navy);font-weight:600;font-size:1rem}
.top-phone svg{width:20px;height:20px;color:var(--brass)}
/* primary nav — always visible, never hidden behind a hamburger */
.nav{background:var(--navy)}
.nav__in{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.nav__in::-webkit-scrollbar{display:none}
.nav a{
  display:inline-flex; flex-direction:column; justify-content:center; gap:1px;
  color:#cdd6e6; padding:9px 16px; white-space:nowrap; border-bottom:3px solid transparent;
  font-family:var(--serif); font-size:1.14rem; letter-spacing:.03em;
}
.nav a b{font-weight:400; font-size:1.14rem; letter-spacing:.03em; color:inherit; line-height:1.15}
.nav a small{font-family:var(--sans); font-size:.68rem; color:#8f9bb2; text-transform:uppercase; letter-spacing:.07em; font-weight:600}
.nav a:hover{color:#fff}
.nav a:hover small{color:#b7c0d1}
.nav a.active{color:#fff;border-bottom-color:var(--gold)}
.nav a.active small{color:var(--gold)}
.nav a.nav__cta{margin:7px 0 7px auto;padding:0 20px;align-items:center;justify-content:center;background:var(--gold-grad);
   color:#2a2205;font-family:var(--sans);font-size:1rem;font-weight:700;border-radius:999px;border-bottom:0;white-space:nowrap;
   box-shadow:0 8px 18px -10px rgba(179,137,59,.7)}
.nav a.nav__cta:hover{filter:brightness(1.06);color:#2a2205}
.nav a.nav__cta.active{border-bottom:0;color:#2a2205}
@media (max-width:900px){.nav a.nav__cta{margin:7px 0}}

/* ---- generic layout helpers -------------------------------------------- */
.grid{display:grid;gap:26px}
.two{grid-template-columns:1fr 1fr}
.three{grid-template-columns:repeat(3,1fr)}
.four{grid-template-columns:repeat(4,1fr)}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px;box-shadow:var(--shadow-sm)}
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--ivory-2);color:var(--navy);border:1px solid var(--line);border-radius:999px;padding:8px 15px;font-weight:600;font-size:.95rem}

/* pages */
.page{display:none}
.page.is-active{display:block; animation:fade .4s ease both}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* reveal on scroll */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.page.is-active{animation:none}}

/* back to top */
.to-top{position:fixed;right:22px;bottom:22px;z-index:65;width:48px;height:48px;border-radius:50%;border:1px solid rgba(201,162,39,.4);
   background:linear-gradient(160deg,#1c2f50,#16243D);color:var(--gold);font-size:1.35rem;cursor:pointer;
   box-shadow:0 14px 30px -12px rgba(16,26,45,.7);opacity:0;visibility:hidden;transform:translateY(10px);transition:all .25s ease}
.to-top.show{opacity:1;visibility:visible;transform:none}
.to-top:hover{color:#fff;filter:brightness(1.1)}
@media (max-width:900px){.to-top{bottom:88px;right:14px;width:44px;height:44px}}

/* mobile sticky action bar */
.mbar{
  position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;gap:10px;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom));
  background:rgba(246,240,228,.96);backdrop-filter:blur(10px);border-top:1px solid var(--line);
}
.mbar .btn{flex:1;min-height:52px}

/* footer */
.footer{background:var(--navy);color:#c3ccdd;padding:64px 0 30px}
.footer h4{color:#fff;font-size:1.1rem;letter-spacing:.03em;margin-bottom:14px}
.footer a{color:#c3ccdd;display:block;padding:6px 0;overflow-wrap:anywhere}
.footer a:hover{color:var(--gold)}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:34px}
.foot-brand .mark{height:52px;margin-bottom:14px}
.foot-bottom{border-top:1px solid var(--navy-line);margin-top:44px;padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.9rem;color:#8f9bb2}
.foot-legal{display:flex;gap:18px 26px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--navy-line);margin-top:44px;padding-top:22px}
.foot-legal a{display:inline;color:#c3ccdd;padding:0;font-size:.92rem;font-weight:600}
.foot-legal a:hover{color:var(--gold)}
.foot-legal+.foot-bottom{border-top:0;margin-top:14px;padding-top:0}
.foot-social{display:flex;gap:12px;margin-top:18px}
.foot-social a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid var(--navy-line);color:#c3ccdd;transition:all .2s ease}
.foot-social a:hover{background:var(--gold);color:var(--navy);border-color:var(--gold);transform:translateY(-2px)}
.foot-social svg{width:20px;height:20px}

/* ---- responsive --------------------------------------------------------- */
@media (max-width:900px){
  .two,.three,.four{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  body{padding-bottom:76px}
  .mbar{display:flex}
}
@media (min-width:640px){ .top-phone{display:flex} }
@media (min-width:901px){
  .three--keep{grid-template-columns:repeat(3,1fr)}
  .four{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:600px){
  body{font-size:17.5px}
  .brand__name{font-size:1.3rem}
  .brand .mark{height:38px}
  .section{padding:48px 0}
}

/* ===================== HOME COMPONENTS ================================== */
/* hero */
.hero{position:relative;background:
   radial-gradient(1200px 500px at 80% -10%,rgba(201,162,39,.14),transparent 60%),
   radial-gradient(900px 500px at -10% 110%,rgba(179,137,59,.10),transparent 60%),
   var(--ivory);
   padding:clamp(40px,6vw,80px) 0 clamp(48px,7vw,92px);overflow:hidden}
.hero__in{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(28px,5vw,60px);align-items:center}
.hero__copy h1{margin-top:.15em}
.hero__trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.hero__trust .pill{font-size:.92rem}
.hero__tagline{font-family:var(--serif);font-size:clamp(1.5rem,3.4vw,2rem);color:var(--brass);margin:.1em 0 .5em;line-height:1.2}
.hero__tagline span{display:block;font-family:var(--sans);font-size:.98rem;color:var(--muted);font-style:italic;font-weight:400;margin-top:4px}
/* tagline ribbon */
.ribbon{background:var(--navy);
   background-image:radial-gradient(600px 200px at 50% 120%,rgba(201,162,39,.18),transparent 70%);
   padding:26px 0;text-align:center}
.ribbon__in{display:flex;flex-direction:column;align-items:center;gap:4px}
.ribbon__pa{font-family:var(--serif);font-size:clamp(1.6rem,4vw,2.4rem);color:#fff;margin:6px 0 0;letter-spacing:.01em}
.ribbon__en{color:#b7c0d1;margin:0;font-size:1rem}
.hero__art{position:relative}
.hero__photo{aspect-ratio:4/5;border-radius:var(--r-lg);box-shadow:var(--shadow);border:1px solid rgba(22,36,61,.15)}
.hero__photo .arch-wm{color:#fff;opacity:.16;width:260px;right:-40px;bottom:-40px}
.hero__badge{position:absolute;left:-14px;bottom:-18px;background:var(--paper);border:1px solid var(--line);
   border-radius:16px;box-shadow:var(--shadow);padding:12px 16px;display:flex;align-items:center;gap:12px;max-width:290px}
.hero__badge strong{display:block;font-family:var(--serif);color:var(--navy);font-size:1.05rem}
.hero__badge span{display:block;font-size:.86rem;color:var(--muted);line-height:1.35}
@media (max-width:900px){
  .hero__in{grid-template-columns:1fr}
  .hero__art{order:-1;max-width:440px}
  .hero__photo{aspect-ratio:16/12}
  .hero__badge{left:auto;right:0}
}

/* trust strip */
.trust-strip{background:var(--navy);color:#eef1f6;padding:30px 0}
.trust-strip__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.trust-item{display:flex;gap:13px;align-items:flex-start}
.trust-item strong{color:#fff;font-family:var(--serif);font-size:1.12rem;letter-spacing:.01em}
.trust-item p{margin:.3em 0 0;font-size:.94rem;color:#b7c0d1;line-height:1.45}
.ti-ic{font-size:1.5rem;line-height:1;filter:saturate(.9)}
@media (max-width:900px){.trust-strip__grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.trust-strip__grid{grid-template-columns:1fr}}

/* tier cards */
.tier-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);
   border-radius:var(--r-lg);padding:30px 26px 26px;box-shadow:var(--shadow-sm);position:relative;
   transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.tier-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--brass)}
.tier-card--feature{border:1.5px solid var(--brass);box-shadow:0 26px 60px -30px rgba(179,137,59,.6)}
.tier-flag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:linear-gradient(180deg,var(--gold),var(--brass));
   color:#2a2205;font-weight:700;font-size:.82rem;letter-spacing:.05em;padding:6px 16px;border-radius:999px;text-transform:uppercase}
.tier-badge{width:96px;height:96px;margin:0 auto 6px}
.tier-badge svg{width:100%;height:100%}
.tier-card h3{text-align:center;margin:.2em 0 .1em;font-size:1.6rem}
.tier-tag{text-align:center;color:var(--brass);font-weight:600;margin:0 0 18px}
.ticks{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:10px}
.ticks li{position:relative;padding-left:30px;font-size:1rem;color:var(--ink)}
.ticks li::before{content:"";position:absolute;left:0;top:.35em;width:18px;height:18px;border-radius:50%;
   background:rgba(179,137,59,.16);background-image:none}
.ticks li::after{content:"✓";position:absolute;left:4px;top:.05em;color:var(--brass);font-weight:700;font-size:.85rem}
.tier-from{margin-top:auto;text-align:center;color:var(--muted);font-size:.95rem}
.tier-from b{display:block;font-family:var(--serif);color:var(--navy);font-size:1.7rem;line-height:1.1}
.tier-from span{font-size:.9rem}
.tier-link{display:block;text-align:center;margin-top:14px;color:var(--brass);font-weight:600}

/* rakhwali */
.rakh__photo{aspect-ratio:5/4;border-radius:var(--r-lg);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.12)}
.rakh__report{display:flex;align-items:center;gap:10px;margin-top:16px;background:rgba(255,255,255,.06);
   border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:12px 16px;color:#e6ebf3;font-size:.98rem}
.rakh__dot{width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(201,162,39,.22);flex:0 0 auto}

/* steps */
.step{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px 22px;box-shadow:var(--shadow-sm)}
.step__n{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;
   background:var(--navy);color:var(--gold);font-family:var(--serif);font-size:1.35rem;margin-bottom:12px}
.step h3{font-size:1.25rem;margin-bottom:.35em}
.step p{margin:0;color:var(--muted);font-size:.98rem}
.feature-call{display:flex;gap:20px;align-items:center;background:linear-gradient(120deg,var(--navy),#1d3050);
   color:#eef1f6;border-radius:var(--r-lg);padding:26px 30px;box-shadow:var(--shadow)}
.feature-call__ic{flex:0 0 auto;width:64px;height:64px;border-radius:16px;background:rgba(201,162,39,.16);
   color:var(--gold);display:flex;align-items:center;justify-content:center}
.feature-call__ic svg{width:34px;height:34px}
.feature-call h3{color:#fff;margin:0 0 .3em;font-size:1.35rem}
.feature-call p{margin:0;color:#c3ccdd;font-size:1rem}
.feature-call--gold{background:linear-gradient(120deg,#3a2c10,#5a4417)}
.feature-call--gold .feature-call__ic{background:rgba(201,162,39,.22)}
@media (max-width:600px){.feature-call{flex-direction:column;text-align:center;padding:24px}}
/* services detail grid (trust page) */
.svc{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px 24px;box-shadow:var(--shadow-sm);height:100%}
.svc__ic{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;background:rgba(201,162,39,.12);box-shadow:inset 0 0 0 1px rgba(201,162,39,.28);font-size:1.5rem;margin-bottom:14px}
.svc h3{font-size:1.16rem;margin:0 0 .45em;color:var(--navy)}
.svc p{margin:0;color:var(--muted);font-size:.97rem;line-height:1.62}
.svc--feat{border-top:4px solid var(--brass)}
/* two-worlds map band */
.worlds{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,56px);align-items:center}
.worlds__stat{display:flex;gap:18px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--navy-line)}
.worlds__stat:last-child{border-bottom:0}
.worlds__stat b{font-family:var(--serif);color:var(--gold);font-size:2rem;line-height:1;flex:0 0 auto;min-width:96px}
.worlds__stat span{color:#c9d2e2;font-size:1rem;line-height:1.55}
@media (max-width:820px){.worlds{grid-template-columns:1fr}}
/* mission & vision */
.mv{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:38px}
.mv__card{position:relative;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--brass);border-radius:var(--r-lg);padding:34px 34px 36px;box-shadow:var(--shadow-sm)}
.mv__mark{width:46px;height:52px;margin-bottom:14px;display:block}
.mv__k{font-family:var(--sans);text-transform:uppercase;letter-spacing:.15em;font-size:.78rem;font-weight:700;color:var(--brass);display:block;margin-bottom:6px}
.mv__card h3{font-family:var(--serif);font-size:1.6rem;color:var(--navy);margin:0 0 14px;line-height:1.25}
.mv__card p{margin:0;color:var(--ink);font-size:1.06rem;line-height:1.72}
.mv__card p+p{margin-top:12px}
@media (max-width:820px){.mv{grid-template-columns:1fr}}
/* first-timer value grid */
.value{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px 22px;box-shadow:var(--shadow-sm)}
.value__ic{font-size:1.7rem;display:block;margin-bottom:8px;line-height:1}
.value h3{font-size:1.15rem;margin:0 0 .35em}
.value p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.5}
/* premium neighbourhoods */
.hood{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--brass);border-radius:var(--r);padding:24px 26px;box-shadow:var(--shadow-sm)}
.hood h3{font-family:var(--serif);font-size:1.5rem;color:var(--navy);margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--line-2)}
.hood__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.hood__list li{position:relative;padding-left:18px;color:var(--ink);font-size:.98rem}
.hood__list li::before{content:"◆";position:absolute;left:0;color:var(--gold);font-size:.6rem;top:.4em}
.hood-note{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:0 12px 12px 0;padding:16px 22px;color:var(--muted);font-size:.98rem;line-height:1.6;box-shadow:var(--shadow-sm)}
.hood-note b{color:var(--navy)}

/* testimonial videos */
.vid{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm)}
.vid__thumb{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center}
.play{width:64px;height:64px;border-radius:50%;border:0;background:rgba(255,253,248,.92);color:var(--navy);
   font-size:1.35rem;cursor:pointer;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;padding-left:5px}
.play:hover{background:#fff;transform:scale(1.05)}
.vid figcaption{padding:20px 22px}
.vid figcaption strong{font-family:var(--serif);font-size:1.2rem;color:var(--navy);display:block}
.vid figcaption span{display:block;color:var(--brass);font-weight:600;font-size:.9rem;margin:2px 0 10px}
.vid figcaption p{margin:0;color:var(--ink);font-style:italic}
/* compact story testimonials */
.stories{columns:3;column-gap:20px}
.story{break-inside:avoid;margin:0 0 20px;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--brass);
   border-radius:14px;padding:20px 22px;box-shadow:var(--shadow-sm)}
.story__tag{display:inline-block;background:var(--ivory-2);color:var(--brass);font-weight:700;font-size:.74rem;
   letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;margin-bottom:10px}
.story p{margin:0 0 12px;color:var(--ink);font-style:italic;font-size:1rem;line-height:1.5}
.story cite{font-style:normal;display:block}
.story cite b{display:block;font-family:var(--serif);color:var(--navy);font-size:1.05rem}
.story cite{color:var(--muted);font-size:.88rem}
@media (max-width:900px){.stories{columns:2}}
@media (max-width:600px){.stories{columns:1}}
/* founder */
.founder__art{position:relative}
.founder__photo{aspect-ratio:4/5;border-radius:var(--r-lg);box-shadow:var(--shadow);border:1px solid var(--line);max-width:440px}
.founder__flags{position:absolute;left:14px;bottom:14px;background:var(--paper);border:1px solid var(--line);border-radius:999px;
   padding:8px 16px;display:flex;align-items:center;gap:8px;box-shadow:var(--shadow-sm);font-size:1.2rem}
.founder__flags-t{font-size:.82rem;font-weight:600;color:var(--navy)}
@media (max-width:900px){.founder__art{max-width:440px}}

/* occasion cards */
.occ-card{display:block;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--acc,var(--brass));
   border-radius:var(--r);padding:24px 22px;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease}
.occ-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.occ-mark{width:86px;height:86px;margin-bottom:6px}
.occ-mark svg{width:100%;height:100%}
.occ-card h3{margin:.1em 0 .3em;font-size:1.4rem;color:var(--acc,var(--navy))}
.occ-card p{margin:0;color:var(--muted);font-size:.96rem}

/* closer */
.closer{background:
   radial-gradient(700px 400px at 50% -20%,rgba(201,162,39,.16),transparent 60%),var(--navy)}

/* ===================== INNER PAGE SHARED ============================== */
.page-hero{background:
   radial-gradient(1000px 460px at 82% -20%,rgba(201,162,39,.12),transparent 60%),var(--ivory);
   padding:clamp(40px,6vw,72px) 0 26px}
.page-hero h1{font-size:clamp(2.1rem,5.5vw,3.4rem)}

/* price controls */
.price-controls{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;margin-top:26px}
.seg{display:inline-flex;background:var(--ivory-2);border:1px solid var(--line);border-radius:999px;padding:5px}
.seg__btn{border:0;background:transparent;font-family:var(--sans);font-weight:600;font-size:1rem;color:var(--muted);
   padding:11px 22px;border-radius:999px;cursor:pointer;min-height:46px}
.seg__btn.is-on{background:var(--navy);color:#fff}
.cur{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-weight:600}
.cur select{font-family:var(--sans);font-size:1.05rem;font-weight:600;color:var(--navy);padding:11px 14px;
   border-radius:12px;border:1px solid var(--line);background:var(--paper);min-height:46px;cursor:pointer}
.basis-note{max-width:840px;margin:16px auto 0;background:rgba(47,111,98,.1);border:1px solid rgba(47,111,98,.35);
   border-radius:12px;padding:13px 16px;color:var(--navy);font-size:.95rem;line-height:1.5}
.basis-note b{color:var(--pheri)}
/* payment badges */
.pay-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.pay-badge{width:62px;height:40px;border-radius:7px;overflow:hidden;background:#fff;display:inline-flex;
   box-shadow:0 6px 14px -7px rgba(0,0,0,.5)}
.pay-badge svg{width:100%;height:100%;display:block}
.pay-assure{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;margin-top:24px;color:#b7c0d1;font-size:.96rem;font-weight:600}
/* occasion planner */
.occ-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:38px}
.occ-tab{display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--paper);border:1.5px solid var(--line);
   border-radius:16px;padding:16px 10px;cursor:pointer;font-family:var(--sans);font-weight:600;color:var(--navy);font-size:1.02rem;transition:all .16s ease}
.occ-tab .cmark{width:48px;height:48px}
.occ-tab small{font-weight:600;color:var(--brass);font-size:.98rem;letter-spacing:.01em}
.occ-tab:hover{border-color:var(--brass)}
.occ-tab.is-on{border-color:var(--brass);box-shadow:0 0 0 3px rgba(179,137,59,.18);background:#fff}
.occ-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(24px,3vw,34px);margin-top:20px;box-shadow:var(--shadow-sm)}
.occ-panel__head{border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:18px}
.occ-panel__head h3{font-size:1.6rem;margin:0 0 .2em}
.occ-team{margin:0;color:var(--brass);font-weight:600}
.occ-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 26px}
.occ-list li{position:relative;padding-left:30px;color:var(--ink);font-size:1rem;line-height:1.45}
.occ-list li::before{content:"✓";position:absolute;left:0;top:.05em;width:20px;height:20px;background:var(--pheri);color:#fff;border-radius:50%;font-size:.72rem;display:flex;align-items:center;justify-content:center}
.occ-note{margin:18px 0 0;color:var(--muted);font-style:italic;background:var(--ivory-2);border-left:4px solid var(--brass);border-radius:0 10px 10px 0;padding:12px 16px;font-size:.95rem}
@media (max-width:700px){.occ-tabs{grid-template-columns:1fr 1fr}.occ-list{grid-template-columns:1fr}}
.foot-pay{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;border-top:1px solid var(--navy-line);
   margin-top:34px;padding-top:20px;color:#9fb0ca;font-size:.9rem}
.foot-pay .pay-badge{width:48px;height:31px;box-shadow:none}

/* price display */
.price-big{margin:2px 0 0;text-align:center}
.cur-sym{font-family:var(--serif);font-size:2.5rem;color:var(--navy);line-height:1.05;display:block}
.cur-sym .per{font-family:var(--sans);font-size:.95rem;color:var(--muted);font-weight:600}
.price-inr{text-align:center;color:var(--brass);font-weight:600;margin:2px 0 16px;font-size:1rem}
.incl{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.incl h4{font-family:var(--sans);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--brass);
   margin:16px 0 8px;font-weight:700}
.incl h4:first-child{margin-top:0}
.incl .ticks{margin-bottom:0}

/* comparison table */
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--r);border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-sm)}
.cmp{width:100%;border-collapse:collapse;min-width:640px}
.cmp th,.cmp td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--line-2)}
.cmp th:not(:last-child),.cmp td:not(:last-child){border-right:1px solid var(--line)}
.cmp thead th:not(:last-child){border-right:1px solid rgba(255,255,255,.16)}
.cmp td:first-child,.cmp th:first-child{border-right:2px solid var(--line)}
.cmp tbody td:nth-child(3){background:rgba(201,162,39,.06)}
.cmp thead th{background:var(--navy);color:#fff;font-family:var(--serif);font-weight:400;font-size:1.15rem;position:sticky;top:0}
.cmp thead th:first-child{border-top-left-radius:var(--r)}
.cmp thead th:last-child{border-top-right-radius:var(--r)}
.cmp td:first-child{font-weight:600;color:var(--navy)}
.cmp td:not(:first-child){text-align:center;color:var(--muted)}
.cmp tbody tr:nth-child(even){background:rgba(22,36,61,.02)}
.cmp td:not(:first-child):not(:empty){font-weight:600}

/* faq */
.faq{max-width:820px;margin:36px auto 0}
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-bottom:12px;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:20px 22px;font-family:var(--serif);font-size:1.2rem;color:var(--navy);
   display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--brass);font-size:1.6rem;line-height:1;flex:0 0 auto}
.faq details[open] summary::after{content:"–"}
.faq details[open] summary{border-bottom:1px solid var(--line-2)}
.faq details p{margin:0;padding:16px 22px 20px;color:var(--muted)}
.faq details a{color:var(--brass);font-weight:600}

/* ===================== RAKHWALI ===================== */
.rakh-hero .rakh__photo{max-width:420px}
.prob{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px 22px;box-shadow:var(--shadow-sm)}
.prob__ic{font-size:1.7rem;display:block;margin-bottom:8px}
.prob h3{font-size:1.25rem;margin-bottom:.3em}
.prob p{margin:0;color:var(--muted);font-size:.97rem}
.ticks--light li{color:#dfe5ef}
.ticks--light li::before{background:rgba(201,162,39,.22)}
.ticks--light li::after{color:var(--gold)}
/* report card */
.report{background:var(--paper);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px;color:var(--ink);border:1px solid rgba(255,255,255,.1)}
.report__top{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:14px}
.report__top strong{display:block;font-family:var(--serif);color:var(--navy);font-size:1.2rem}
.report__top span{display:block;font-size:.85rem;color:var(--muted)}
.report__photos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.report__photos .media{aspect-ratio:1/1;border-radius:10px;display:block}
.report__checks{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:8px}
.report__checks li{position:relative;padding-left:28px;font-size:.95rem;color:var(--ink)}
.report__checks li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;background:var(--pheri);
   color:#fff;border-radius:50%;font-size:.72rem;display:flex;align-items:center;justify-content:center}
.report__meters{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:var(--ivory-2);border-radius:12px;padding:12px;margin-bottom:14px}
.report__meters div{text-align:center}
.report__meters span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.report__meters b{font-family:var(--serif);color:var(--navy);font-size:1.15rem}
.report__note{margin:0;font-style:italic;color:var(--muted);font-size:.95rem;border-left:3px solid var(--brass);padding-left:14px}
/* ============================================================ */
/* ===================== PREMIUM CRAFT LAYER ================== */
/* ============================================================ */
:root{
  --gold-grad:linear-gradient(135deg,#EBCE72 0%,#C9A227 48%,#A97F35 100%);
  --gold-line:linear-gradient(90deg,transparent,rgba(179,137,59,.7) 22%,var(--gold) 50%,rgba(179,137,59,.7) 78%,transparent);
  --navy-grad:linear-gradient(160deg,#1c2f50 0%,#16243D 55%,#101a2d 100%);
  --shadow-lift:0 34px 80px -34px rgba(16,26,45,.62);
  --ring-gold:0 0 0 1.5px rgba(201,162,39,.45),0 26px 60px -28px rgba(179,137,59,.6);
  --paper-grad:linear-gradient(180deg,#FFFEFB,#FBF6EC);
}
/* deeper display type + refined tracking */
h1,h2{letter-spacing:.008em}
.section h2{font-size:clamp(2rem,4.8vw,3.15rem)}
.lede{font-size:1.26rem;line-height:1.62}

/* --- ornamental kicker (eyebrow) --- */
.eyebrow{position:relative;display:inline-flex;align-items:center;gap:.6em}
.eyebrow::before{content:"";width:26px;height:1.5px;background:var(--gold-line);display:inline-block}
.eyebrow::after{content:"◆";color:var(--gold);font-size:.55em;transform:translateY(-1px)}
.center .eyebrow{justify-content:center}
.center .eyebrow::after{content:"";width:26px;height:1.5px;background:var(--gold-line);transform:none}
.section--navy .eyebrow::before,.section--navy .center .eyebrow::after{background:linear-gradient(90deg,transparent,var(--gold))}

/* --- ornamental divider with keystone diamond --- */
.hr-arch{position:relative;height:9px;background:none;width:150px;overflow:visible}
.hr-arch::before{content:"";position:absolute;top:50%;left:0;right:0;height:1.5px;transform:translateY(-50%);background:var(--gold-line)}
.hr-arch::after{content:"";position:absolute;top:50%;left:50%;width:9px;height:9px;background:var(--gold-grad);
  transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 0 4px var(--ivory)}
.section--navy .hr-arch::after{box-shadow:0 0 0 4px var(--navy)}
.section--ivory2 .hr-arch::after{box-shadow:0 0 0 4px var(--ivory-2)}

/* --- texture: fine diamond jali on dark, warm glow on light --- */
.section--navy,.trust-strip,.footer,.ribbon,.summary__card,.rakh,.closer{
  background-image:var(--navy-grad),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Cpath d='M23 4 L31 23 L23 42 L15 23 Z' fill='none' stroke='%23C9A227' stroke-width='1' opacity='0.06'/%3E%3C/svg%3E");
  background-size:cover,46px 46px;background-attachment:scroll,fixed;
}
.closer{background-image:radial-gradient(700px 400px at 50% -18%,rgba(201,162,39,.22),transparent 62%),var(--navy-grad)!important}

/* --- richer shadows + paper on cards --- */
.card,.tier-card,.step,.vid,.prob,.vstep,.staff,.home-card,.car,.stat,.report,.portal,.story,.flow{
  background-image:var(--paper-grad)}
.tier-card,.home-card,.staff,.vid,.report,.portal{box-shadow:0 22px 50px -30px rgba(16,26,45,.5)}

/* --- premium buttons: depth + sheen sweep --- */
.btn{position:relative;overflow:hidden;isolation:isolate}
.btn--gold{background:var(--gold-grad);box-shadow:0 12px 26px -12px rgba(179,137,59,.7),inset 0 1px 0 rgba(255,255,255,.4)}
.btn--navy{background:var(--navy-grad);box-shadow:0 12px 26px -14px rgba(16,26,45,.7),inset 0 1px 0 rgba(255,255,255,.08)}
.btn--wa{box-shadow:0 12px 26px -12px rgba(37,211,102,.6),inset 0 1px 0 rgba(255,255,255,.3)}
.btn--gold::after,.btn--navy::after,.btn--wa::after{content:"";position:absolute;inset:0 auto 0 -70%;width:45%;
  background:linear-gradient(115deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-18deg);
  transition:left .6s ease;z-index:-1;left:-70%}
.btn--gold:hover::after,.btn--navy:hover::after,.btn--wa:hover::after{left:150%}
.btn--lg{letter-spacing:.01em}

/* --- arch niche behind tier / occasion marks --- */
.tier-badge{border-radius:50%;background:radial-gradient(circle at 50% 42%,rgba(201,162,39,.16),transparent 68%)}
.tier-card{border-top-left-radius:120px;border-top-right-radius:120px;padding-top:34px}
.tier-card--feature{background-image:linear-gradient(180deg,#FFFDF7,#FBF1DA);box-shadow:var(--ring-gold)}
.tier-card:hover{box-shadow:var(--ring-gold)}
.occ-card:hover,.home-card:hover,.staff:hover{box-shadow:var(--ring-gold)}

/* --- arch-framed image: the signature Deohri device --- */
.arch-frame{position:relative;padding:12px;background:var(--gold-grad);
  border-radius:clamp(140px,20vw,220px) clamp(140px,20vw,220px) 20px 20px;
  box-shadow:var(--shadow-lift);isolation:isolate}
.arch-frame::before{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.5);
  border-radius:inherit;pointer-events:none;z-index:2}
.arch-frame .media{width:100%;height:100%;border-radius:clamp(132px,19vw,210px) clamp(132px,19vw,210px) 11px 11px}
.arch-frame__toran{position:absolute;top:-2px;left:50%;transform:translateX(-50%);z-index:3;color:var(--gold);
  filter:drop-shadow(0 3px 5px rgba(16,26,45,.4));transform-origin:top center;animation:toranSway 5.5s ease-in-out infinite}
.arch-frame__toran svg{width:30px;height:64px;display:block}
@keyframes toranSway{0%,100%{transform:translateX(-50%) rotate(-3.5deg)}50%{transform:translateX(-50%) rotate(3.5deg)}}

/* --- hero elevation --- */
.hero{padding-top:clamp(30px,5vw,64px)}
.hero__copy h1{font-size:clamp(2.3rem,4.1vw,3.05rem);line-height:1.08}
.hero__art{display:flex;flex-direction:column;align-items:center}
.hero__arch{width:100%;max-width:430px;aspect-ratio:1/1.24}
.hero__arch .media{--tint:linear-gradient(165deg,rgba(22,36,61,.06),rgba(22,36,61,.44))}
.hero__arch .media{animation:kenburns 18s ease-in-out infinite alternate}
@keyframes kenburns{0%{background-size:118%,118%,cover}100%{background-size:132%,132%,cover}}
.hero__halo{position:absolute;inset:-8% -12% auto;width:124%;color:var(--brass);opacity:.14;z-index:-1;pointer-events:none}
.hero__badge{position:relative;left:auto;right:auto;bottom:auto;margin-top:-26px;z-index:4;box-shadow:var(--shadow-lift)}
@media (min-width:901px){
  .hero__badge{position:absolute;left:-18px;bottom:-100px;margin-top:0}
  .hero__art{transform:translateY(-60px)}
}
/* shimmer on the hero tagline */
.hero__tagline{background:linear-gradient(90deg,#B3893B 0%,#EBCE72 25%,#B3893B 50%,#EBCE72 75%,#B3893B 100%);
  background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  animation:shimmer 6s linear infinite}
.hero__tagline span{-webkit-text-fill-color:initial;color:var(--muted)}
@keyframes shimmer{0%{background-position:120% 0}100%{background-position:-120% 0}}

/* --- header scroll state --- */
.topbar{transition:box-shadow .3s ease,background .3s ease}
.topbar.scrolled{box-shadow:0 10px 30px -18px rgba(16,26,45,.4);background:rgba(246,240,228,.97)}
.nav a.active{position:relative}

/* --- ribbon: gilded --- */
.ribbon__pa{background:linear-gradient(90deg,#EBCE72,#fff 50%,#EBCE72);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}

/* --- section rhythm: hairline arches between bands --- */
.section+.section-divider{height:0}

/* --- staggered reveal (delay set by JS) + gentle scale --- */
.reveal{transform:translateY(22px) scale(.985)}
.reveal.in{transform:none}

/* --- testimonials: editorial pull quote mark --- */
.vid figcaption p,.story p{position:relative}
.story{padding-top:22px}
.bigquote{position:relative;padding-top:.2em}
.rakh-quote .wrap::before{content:"\201C";font-family:var(--serif);color:rgba(201,162,39,.28);font-size:6rem;
  line-height:.6;display:block;margin-bottom:-.1em}

/* --- founder image arch (inherits arch-frame media radius) --- */
.founder__art .arch-frame{max-width:440px;margin:0 auto}
.founder__photo.media{aspect-ratio:4/5}

/* --- trust strip icons in niches --- */
.ti-ic{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;
  background:rgba(201,162,39,.14);box-shadow:inset 0 0 0 1px rgba(201,162,39,.3);flex:0 0 auto}

/* keep hero copy near the fold on phones */
@media (max-width:900px){
  .hero{padding-top:20px}
  .hero__arch{max-width:290px;aspect-ratio:1/1.12;margin:0 auto}
  .hero__badge{max-width:300px;margin-top:-20px}
  .hero__copy h1{font-size:clamp(1.65rem,5.8vw,2.3rem)}
}
/* ===================== QA: equal-height card alignment ========= */
.grid.three--keep,.staff-grid,.homes-grid,.grid.four{align-items:stretch}
/* image-forward cards: media grows so captions bottom-align */
.vid{display:flex;flex-direction:column;height:100%}
.vid__thumb{flex:0 0 auto}
.vid figcaption{flex:1 1 auto}
.staff{display:flex;flex-direction:column;height:100%}
.staff__ph{flex:0 0 auto}
.staff figcaption{flex:1 1 auto}
/* content-forward cards: body grows, list pinned to bottom */
.home-card{height:100%}
.home-card__body{display:flex;flex-direction:column;flex:1}
.home-card__body .ticks{margin-top:auto}
/* testimonial stories: even grid (was masonry), equal-height rows */
.stories{columns:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.story{display:flex;flex-direction:column;height:100%;margin:0}
.story p{flex:1}
.story cite{margin-top:auto}
@media (max-width:900px){.stories{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.stories{grid-template-columns:1fr}}
/* founder arch image sits cleanly inside frame */
.founder__photo.media{aspect-ratio:4/5;border-radius:clamp(132px,19vw,210px) clamp(132px,19vw,210px) 11px 11px}

/* ===================== LEGAL ===================== */
.legal-nav{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.legal-nav .pill{cursor:pointer}
.legal-nav .pill:hover{border-color:var(--brass);color:var(--brass)}
.legal{max-width:820px}
.legal .wrap{max-width:820px}
.legal-entity{background:var(--navy);color:#e7ecf4;border-radius:var(--r);padding:22px 26px;margin-bottom:36px}
.legal-entity strong{display:block;font-family:var(--serif);color:#fff;font-size:1.2rem;margin-bottom:6px}
.legal-entity p{margin:0;color:#c3ccdd;font-size:.98rem}
.legal-entity b{color:#fff}
.legal-block{margin-bottom:40px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.legal-block h2{font-size:1.9rem;margin-bottom:14px}
.legal-block h3{font-size:1.15rem;margin:20px 0 6px;color:var(--navy)}
.legal-block p{color:var(--ink);font-size:1rem;line-height:1.65}
.legal-tldr{background:var(--ivory-2);border-left:4px solid var(--brass);border-radius:0 12px 12px 0;
   padding:14px 18px!important;color:var(--muted)!important;font-size:.98rem}
.legal-block a,.legal-foot a{color:var(--brass);font-weight:600}
.legal-foot{max-width:820px;color:var(--muted);font-size:.95rem;font-style:italic;border-top:1px solid var(--line);padding-top:20px}

/* ===================== PORTAL / AUTH ===================== */
.portal-wrap{display:flex;justify-content:center}
.auth-card{width:100%;max-width:440px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);
   box-shadow:var(--shadow);padding:clamp(24px,4vw,38px)}
.auth-brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:1.25rem;color:var(--navy);
   padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.auth-brand .proto{margin-left:auto;font-family:var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.08em;
   text-transform:uppercase;background:rgba(201,121,30,.16);color:var(--tyohar);padding:4px 9px;border-radius:999px}
.pv{display:none}
.pv.is-on{display:block;animation:fade .35s ease both}
.pv h2{font-size:1.55rem;margin-bottom:14px}
.auth-card .field{margin-bottom:14px}
.auth-links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px}
.auth-links a{color:var(--brass);font-weight:600;cursor:pointer;font-size:.95rem}
.auth-links a:hover{text-decoration:underline}
.auth-card .linkish{display:block;width:100%;text-align:center;margin-top:14px}
.auth-err{color:var(--viah);font-weight:600;font-size:.92rem;margin:0 0 10px;min-height:0}
.auth-err:empty{margin:0}
.auth-note{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem;line-height:1.5}
.auth-tick{width:56px;height:56px;border-radius:50%;background:var(--pheri);color:#fff;font-size:1.6rem;
   display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.otp{display:flex;gap:10px;justify-content:center;margin:8px 0 16px}
.otp input{width:48px;height:58px;text-align:center;font-family:var(--serif);font-size:1.6rem;color:var(--navy);
   border:1.5px solid var(--line);border-radius:12px;background:var(--ivory)}
.otp input:focus{outline:none;border-color:var(--brass);background:#fff}
/* dashboard */
.portal-dash{width:100%;max-width:920px}
.dash-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.dash-top h2{font-size:1.7rem}
.dash-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}
.dash-stat{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:18px;text-align:center;box-shadow:var(--shadow-sm)}
.dash-stat span{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}
.dash-stat b{font-family:var(--serif);font-size:1.7rem;color:var(--navy)}
@media (max-width:600px){.dash-cards{grid-template-columns:1fr}.otp input{width:42px;height:52px;font-size:1.4rem}}
/* ===================== CONTACT ===================== */
.contact-wrap{display:grid;grid-template-columns:1.4fr .9fr;gap:34px;align-items:start}
.contact-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:clamp(24px,4vw,38px)}
.contact-card h2{font-size:1.6rem;margin-bottom:16px}
.contact-card .field{margin-bottom:14px}
.cv{display:none}
.cv.is-on{display:block;animation:fade .35s ease both}
.cv[data-cview="done"]{text-align:center}
.contact-card textarea{font-family:var(--sans);font-size:1.05rem;padding:13px 14px;border:1.5px solid var(--line);
   border-radius:12px;background:var(--ivory);color:var(--ink);resize:vertical;min-height:120px;width:100%}
.contact-card textarea:focus{outline:none;border-color:var(--brass);background:#fff}
.contact-card textarea.invalid,.contact-card input.invalid{border-color:var(--viah);background:#fff}
.contact-side .summary__card h4{margin-bottom:14px}
@media (max-width:900px){.contact-wrap{grid-template-columns:1fr}.contact-side{order:-1}}
.cinfo{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:var(--shadow-sm)}
.cinfo__ic{font-size:1.6rem;display:block;margin-bottom:8px;line-height:1}
.cinfo h3{font-size:1.12rem;margin:0 0 .4em}
.cinfo p{margin:0;color:var(--muted);font-size:.96rem;line-height:1.6}

@media (prefers-reduced-motion:reduce){
  .arch-frame__toran,.hero__arch .media,.hero__tagline,.ribbon__pa{animation:none}
}

/* reporting portal / ledger */
.portal{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px}
.portal__head{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.portal__head strong{font-family:var(--serif);color:var(--navy);font-size:1.3rem;display:block}
.portal__head span{color:var(--muted);font-size:.9rem}
.portal__bal{background:var(--ivory-2);border:1px solid var(--line);border-radius:999px;padding:8px 16px;color:var(--navy);font-weight:600;font-size:.95rem}
.portal__bal b{color:var(--brass)}
.ledger{width:100%;border-collapse:collapse;min-width:640px}
.ledger th,.ledger td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line-2);font-size:.95rem}
.ledger thead th{background:var(--ivory-2);color:var(--navy);font-family:var(--sans);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}
.ledger td:nth-child(4){font-variant-numeric:tabular-nums;font-weight:600;color:var(--navy)}
.ledger a{color:var(--brass);font-weight:600;cursor:pointer;font-size:.88rem}
.pd{background:rgba(47,111,98,.14);color:var(--pheri);font-weight:700;font-size:.8rem;padding:4px 10px;border-radius:999px}
.pw{background:rgba(201,121,30,.15);color:var(--tyohar);font-weight:700;font-size:.8rem;padding:4px 10px;border-radius:999px}
.portal__docs{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.portal__docs .pill{font-size:.9rem}

/* big quote */
.rakh-quote{background:var(--ivory)}
.bigquote{font-family:var(--serif);font-size:clamp(1.4rem,3.2vw,2rem);color:var(--navy);line-height:1.4;margin:0}
.bigquote__by{color:var(--brass);font-weight:600;margin-top:16px}
.disputes{max-width:900px;margin:30px auto 0;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--brass);
   border-radius:0 14px 14px 0;padding:20px 24px;box-shadow:var(--shadow-sm)}
.disputes strong{display:block;font-family:var(--serif);color:var(--navy);font-size:1.25rem;margin-bottom:8px}
.disputes p{margin:0;color:var(--muted);font-size:1rem;line-height:1.6}
.disputes a{color:var(--brass);font-weight:600}
/* confidentiality / NA-first promises */
.promise{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--brass);border-radius:var(--r-lg);
  padding:30px;box-shadow:var(--shadow-sm)}
.promise__ic{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;
  background:rgba(201,162,39,.14);box-shadow:inset 0 0 0 1px rgba(201,162,39,.3);font-size:1.6rem;margin-bottom:12px}
.promise h3{font-size:1.4rem;margin-bottom:.35em}
.promise p{margin:0;color:var(--muted);font-size:1rem;line-height:1.6}
.rakh-signin{margin-top:16px;color:var(--muted);font-size:.98rem}
.rakh-signin a{color:var(--brass);font-weight:600}
.rakh-signin a:hover{text-decoration:underline}

/* ===================== BOOKING ===================== */
.booking-wrap{display:grid;grid-template-columns:1.55fr .95fr;gap:34px;align-items:start}
.booking{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,3vw,34px);box-shadow:var(--shadow-sm)}
.steps-head{position:relative;display:flex;justify-content:space-between;gap:4px;margin-bottom:30px}
.steps-track{position:absolute;top:19px;left:10%;right:10%;height:4px;background:var(--ivory-2);border-radius:999px;overflow:hidden;z-index:0}
.steps-fill{position:absolute;top:0;left:0;height:100%;width:0;background:linear-gradient(90deg,var(--brass),var(--gold));border-radius:999px;transition:width .45s cubic-bezier(.4,0,.2,1)}
.shead{position:relative;z-index:1;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:9px;font-family:var(--sans);font-size:.8rem;font-weight:600;line-height:1.2;color:var(--muted);text-align:center}
.shead span{width:40px;height:40px;border-radius:50%;background:#fff;border:2px solid var(--line);color:var(--muted);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;transition:all .25s ease}
.shead em{font-style:normal;max-width:11ch;transition:color .25s ease}
.shead.is-on{color:var(--navy)}
.shead.is-on span{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 0 0 5px rgba(22,36,61,.10)}
.shead.done{color:var(--pheri)}
.shead.done span{background:var(--pheri);border-color:var(--pheri);color:transparent;font-size:0}
.shead.done span::after{content:"✓";color:#fff;font-size:1.05rem;font-weight:700}
@media (max-width:620px){.steps-head{gap:0}.steps-track{top:17px}.shead span{width:36px;height:36px;font-size:.92rem}.shead em{display:none}.shead.is-on em{display:block;position:absolute;top:44px;left:50%;transform:translateX(-50%);white-space:nowrap;max-width:none;font-size:.82rem}.steps-head{margin-bottom:44px}}
.bstep{display:none;animation:fade .35s ease both}
.bstep.is-on{display:block}
.bstep>h3{font-size:1.4rem;margin-bottom:16px}
.choice-grid{display:grid;gap:12px}
.choice-grid.four-c{grid-template-columns:repeat(4,1fr)}
.choice-grid.three-c{grid-template-columns:repeat(3,1fr)}
.choice-grid.two-c{grid-template-columns:1fr 1fr}
.choice{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;text-align:center;
   background:var(--ivory);border:1.5px solid var(--line);border-radius:16px;padding:16px 12px;cursor:pointer;
   font-family:var(--sans);font-weight:600;font-size:1.02rem;color:var(--navy);min-height:64px;transition:all .16s ease}
.choice:hover{border-color:var(--brass)}
.choice.is-on{border-color:var(--brass);background:#fff;box-shadow:0 0 0 3px rgba(179,137,59,.18)}
.choice small{font-weight:500;color:var(--muted);font-size:.92rem}
.choice-grid[data-field="occasion"] .choice small{font-weight:600;color:var(--brass);font-size:.98rem;letter-spacing:.01em}
.choice--sm{flex-direction:row;justify-content:center;min-height:56px;flex-wrap:wrap}
.choice--sm small{width:100%}
.cmark{width:58px;height:58px}
.cmark svg{width:100%;height:100%}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:6px;font-weight:600;color:var(--navy);font-size:.95rem;margin-bottom:12px}
.field input,.field select{font-family:var(--sans);font-size:1.05rem;padding:13px 14px;border:1.5px solid var(--line);
   border-radius:12px;background:var(--ivory);color:var(--ink);min-height:52px;font-weight:400}
.field input:focus,.field select:focus{outline:none;border-color:var(--brass);background:#fff}
.hint{color:var(--muted);font-size:.92rem;margin:2px 0 0}
.car-rec{display:block;background:rgba(201,162,39,.12);border:1px solid rgba(201,162,39,.4);border-radius:12px;
   padding:12px 15px;margin:0 0 14px;color:var(--navy);font-size:.96rem;line-height:1.5}
.car-rec:empty{display:none}
.car-rec b{color:var(--brass)}
.car-rec__note{display:block;margin-top:8px;padding-top:8px;border-top:1px dashed rgba(201,162,39,.5);
   color:var(--tyohar);font-weight:600;font-size:.88rem}
.choice{position:relative}
.choice.rec{border-color:var(--brass);box-shadow:0 0 0 2px rgba(201,162,39,.28)}
.choice.rec::after{content:"Suggested";position:absolute;top:-9px;right:8px;background:var(--gold-grad);color:#2a2205;
   font-size:.62rem;font-weight:700;letter-spacing:.03em;padding:2px 8px;border-radius:999px;text-transform:uppercase}
/* validation */
.req{color:var(--viah);font-weight:700}
.bstep-err{display:flex;gap:8px;align-items:flex-start;background:rgba(140,48,65,.08);border:1px solid rgba(140,48,65,.35);
   color:var(--viah);font-weight:600;font-size:.95rem;border-radius:12px;padding:11px 14px;margin:16px 0 0}
.bstep-err::before{content:"⚠";font-size:1rem;line-height:1.2}
.bstep-err:empty{display:none}
.choice-grid.invalid{outline:2px solid var(--viah);outline-offset:5px;border-radius:16px}
.field input.invalid,.field select.invalid{border-color:var(--viah);background:#fff}
.phone-row{display:flex;gap:8px}
.phone-row .dial{flex:0 0 auto;width:auto;min-width:98px;padding-right:8px}
.phone-row input{flex:1 1 auto;min-width:0}
.steppers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.stepper{background:var(--ivory);border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center}
.stepper>span{display:block;font-weight:600;color:var(--navy);margin-bottom:10px;font-size:.95rem}
.stepper>div{display:flex;align-items:center;justify-content:center;gap:14px}
.stepper button{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--line);background:var(--paper);
   font-size:1.4rem;color:var(--navy);cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}
.stepper button:hover{border-color:var(--brass);color:var(--brass)}
.stepper b{font-family:var(--serif);font-size:1.5rem;color:var(--navy);min-width:26px}
.addon{display:flex;align-items:flex-start;gap:12px;background:var(--ivory);border:1.5px solid var(--line);border-radius:14px;
   padding:16px;margin-top:16px;cursor:pointer;font-weight:400}
.addon input{position:absolute;opacity:0;pointer-events:none}
.addon__box{width:26px;height:26px;border-radius:7px;border:2px solid var(--muted);flex:0 0 auto;margin-top:2px;position:relative;transition:all .15s}
.addon input:checked+.addon__box{background:var(--brass);border-color:var(--brass)}
.addon input:checked+.addon__box::after{content:"✓";color:#fff;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.9rem}
.addon b{color:var(--navy)}
.addon small{display:block;color:var(--brass);font-style:italic;margin-top:2px}
.bnav{display:flex;justify-content:space-between;gap:12px;margin-top:26px}
.bnav .btn{min-width:130px}
/* confirmation */
.bconfirm{text-align:center}
.conf .mark{margin-bottom:6px}
.linkish{background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer;font-size:.95rem;margin-top:14px;font-family:var(--sans)}
/* summary */
.summary{position:sticky;top:150px}
.summary__card{background:var(--navy);color:#e7ecf4;border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow)}
.summary__card h4{color:#fff;font-family:var(--serif);font-size:1.3rem;margin-bottom:14px}
.summary dl{margin:0}
.summary dl>div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--navy-line)}
.summary dt{color:#9fb0ca;font-size:.9rem}
.summary dd{margin:0;color:#fff;font-weight:600;text-align:right;font-size:.95rem}
.summary__wa{margin-top:20px;border-top:1px solid var(--navy-line);padding-top:18px}
.summary__wa p{color:#9fb0ca;margin:0 0 12px;font-size:.95rem}
.summary__note{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--navy-line);color:#9fb0ca;font-size:.82rem;line-height:1.5}
@media (max-width:980px){
  .booking-wrap{grid-template-columns:1fr}
  .summary{position:static;order:-1}
  .choice-grid.four-c{grid-template-columns:1fr 1fr}
  .choice-grid.three-c{grid-template-columns:1fr}
}
@media (max-width:520px){
  .field-row{grid-template-columns:1fr}
  .steppers{grid-template-columns:1fr}
  .choice-grid.four-c{grid-template-columns:1fr 1fr}
  .bnav .btn{min-width:0;flex:1}
}

/* ===================== TRUST ===================== */
.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px;text-align:center;box-shadow:var(--shadow-sm)}
.stat b{display:block;font-family:var(--serif);font-size:2.4rem;color:var(--brass);line-height:1}
.stat span{display:block;color:var(--muted);margin-top:8px;font-size:.95rem}
.vstep{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px 22px;box-shadow:var(--shadow-sm)}
.vstep h3{font-size:1.2rem;margin:.2em 0 .3em}
.vstep p{margin:0;color:var(--muted);font-size:.96rem}
.staff{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm)}
.staff__ph{aspect-ratio:4/5;position:relative}
.vbadge{position:absolute;top:12px;left:12px;background:var(--pheri);color:#fff;font-size:.78rem;font-weight:700;padding:5px 11px;border-radius:999px;letter-spacing:.02em}
.staff figcaption{padding:16px 18px}
.staff strong{font-family:var(--serif);font-size:1.2rem;color:var(--navy);display:block}
.staff .role{display:block;color:var(--brass);font-weight:600;font-size:.92rem;margin:2px 0 6px}
.staff .lic{display:block;color:var(--muted);font-size:.82rem;font-variant-numeric:tabular-nums}
.reg-card{background:var(--ivory-2);border:1px solid var(--line);border-radius:var(--r);padding:8px 20px;margin-top:18px}
.reg-card>div{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line-2)}
.reg-card>div:last-child{border-bottom:0}
.reg-card dt{color:var(--muted);font-size:.92rem;margin:0}
.reg-card dd{margin:0;color:var(--navy);font-weight:600;text-align:right;font-size:.95rem}
@media (max-width:900px){.staff-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.staff-grid{grid-template-columns:1fr 1fr}.stat b{font-size:2rem}}

/* ===================== HOMES (PindStay) ===================== */
.card h3{font-size:1.2rem;margin-bottom:.35em}
.homes-grid{align-items:stretch}
.home-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);
   overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease}
.home-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.home-card__ph{aspect-ratio:16/10}
.home-card__body{padding:24px}
.home-tag{display:inline-block;background:var(--ivory-2);color:var(--brass);font-weight:700;font-size:.76rem;
   letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin-bottom:10px}
.home-card__body h3{font-size:1.45rem;margin:0 0 .3em}
.home-card__body>p{color:var(--muted);margin:0 0 14px}
.home-card .ticks li{font-size:.95rem}
/* lifestyle */
.life-grid{gap:16px}
.life{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:18px}
.life__ic{font-size:1.6rem;display:block;margin-bottom:6px}
.life h3{color:#fff;font-size:1.1rem;margin:0 0 .3em}
.life p{color:#c3ccdd;margin:0;font-size:.92rem;line-height:1.45}
/* cars */
.car{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--brass);border-radius:var(--r);
   padding:24px 22px;box-shadow:var(--shadow-sm);text-align:center}
.car__ic{font-size:2.2rem;display:block;margin-bottom:8px}
.car h3{font-size:1.2rem;margin:0 0 .3em}
.car p{margin:0 0 10px;color:var(--muted);font-size:.95rem}
.car__eg{display:block;color:var(--brass);font-weight:600;font-size:.82rem;font-style:italic}
@media (max-width:600px){.life-grid{grid-template-columns:1fr}}
/* ===== Phase 3: start-here router + how-works ===== */ .start-here{padding:8px 0 4px} .start-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:26px} .start-card{display:flex;flex-direction:column;gap:9px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 24px 22px;text-decoration:none;color:var(--navy);box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease} .start-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--brass)} .start-card--gold{border-color:rgba(201,162,39,.5);background:linear-gradient(180deg,var(--paper),var(--ivory))} .start-card__k{font-family:var(--sans);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700;color:var(--brass)} .start-card h3{font-family:var(--serif);color:var(--navy);font-size:1.32rem;margin:.1em 0 0;line-height:1.2} .start-card p{margin:0;color:var(--ink);font-size:1rem;line-height:1.5} .start-card__note{font-size:.85rem;color:var(--muted);line-height:1.45;border-top:1px solid var(--line);padding-top:10px;margin-top:6px} .start-card__go{font-family:var(--sans);font-weight:600;color:var(--brass);font-size:.95rem;margin-top:2px} .start-card:hover .start-card__go{color:var(--navy)} .how-works{padding:12px 0 4px} .hw-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:22px} .hw-step{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 20px} .hw-step__n{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--navy);color:var(--gold);font-family:var(--serif);font-size:1.15rem;margin-bottom:10px} .hw-step h4{font-family:var(--serif);color:var(--navy);font-size:1.06rem;margin:0 0 .35em} .hw-step p{margin:0;color:var(--muted);font-size:.93rem;line-height:1.5} @media (max-width:820px){.start-grid{grid-template-columns:1fr;gap:16px}.hw-grid{grid-template-columns:1fr 1fr;gap:14px}} @media (max-width:520px){.hw-grid{grid-template-columns:1fr}} /* Phase 3b: own-home prompt + rakhwali cross-sell */ .own-prompt{max-width:680px;margin:0 auto 4px;text-align:center} .own-prompt p{display:inline-block;background:rgba(201,162,39,.10);border:1px solid rgba(201,162,39,.35);color:var(--ink);border-radius:999px;padding:9px 18px;font-size:.95rem;line-height:1.4;margin:0} .own-prompt b{color:var(--brass)} .xsell{display:flex;align-items:center;gap:16px;max-width:760px;margin:26px auto 0;background:linear-gradient(180deg,var(--paper),var(--ivory));border:1px solid rgba(201,162,39,.45);border-radius:var(--r-lg);padding:18px 22px;text-decoration:none;color:var(--navy);box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease} .xsell:hover{transform:translateY(-3px);box-shadow:var(--shadow)} .xsell__ic{font-size:1.6rem;flex:0 0 auto} .xsell__tx{font-size:1rem;line-height:1.45;color:var(--ink)} .xsell__tx b{font-family:var(--serif);color:var(--navy)} .xsell__go{margin-left:auto;flex:0 0 auto;font-weight:700;color:var(--brass);white-space:nowrap} @media (max-width:640px){.xsell{flex-direction:column;text-align:center;gap:10px}.xsell__go{margin-left:0}} 
/* =====================================================================
   2026-09 rebuild: multi-page shell, mobile-first fixes (audit B/C/E)
   ===================================================================== */
html{scroll-padding-top:84px}
.page{display:block}
.skip{position:absolute;left:-9999px;top:8px;z-index:200;background:var(--navy);color:#fff;padding:10px 16px;border-radius:8px}
.skip:focus{left:12px}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* ---------- header (replaces .topbar/.nav) ---------- */
.an-bar{position:sticky;top:0;z-index:80;background:var(--paper);border-bottom:1px solid var(--line-2);padding-top:env(safe-area-inset-top,0px)}
.an-in{max-width:1240px;margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:18px;min-height:68px}
.an-brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto;flex:0 0 auto}
.an-mark{display:block;height:40px;width:34px}
.an-mark svg{height:100%;width:auto}
.an-name{font-family:var(--serif);font-size:1.35rem;letter-spacing:.14em;color:var(--navy);line-height:1}
.an-name small{display:block;font-size:.6rem;letter-spacing:.42em;color:var(--brass);margin-top:3px}
.an-links{display:none;align-items:center;gap:4px}
.an-links a{color:var(--navy);text-decoration:none;font-weight:600;font-size:1rem;padding:10px 12px;border-radius:10px;white-space:nowrap}
.an-links a:hover{background:rgba(201,162,39,.12)}
.an-links a[aria-current="page"]{color:var(--brass);box-shadow:inset 0 -2px 0 var(--gold)}
.an-act{display:flex;align-items:center;gap:8px}
.an-wa{display:none;align-items:center;gap:6px;color:#fff;background:#1FA855;border-radius:999px;padding:0 16px;min-height:44px;text-decoration:none;font-weight:700;font-size:.98rem}
.an-wa svg{width:18px;height:18px}
.an-plan{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;background:linear-gradient(180deg,var(--gold),var(--brass));color:#2a2205;font-weight:700;text-decoration:none;font-size:.98rem;white-space:nowrap}
.an-menu{display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:0 12px;border-radius:12px;border:1px solid var(--line);background:var(--paper);color:var(--navy);font:600 .98rem var(--sans);cursor:pointer}
.an-menu .ic{width:22px;height:22px}
.an-sheet{position:fixed;left:0;right:0;top:calc(68px + env(safe-area-inset-top,0px));bottom:0;z-index:79;background:var(--paper);overflow-y:auto;padding:12px 20px calc(24px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line-2)}
.an-sheet__links{display:grid;gap:2px;max-width:640px;margin:0 auto}
.an-sheet__links a{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 6px;border-bottom:1px solid var(--line-2);text-decoration:none;color:var(--navy);min-height:52px}
.an-sheet__links b{font-family:var(--serif);font-weight:400;font-size:1.35rem}
.an-sheet__links small{color:var(--muted);font-size:.95rem;text-align:right}
.an-sheet__links a[aria-current="page"] b{color:var(--brass)}
.an-sheet__foot{max-width:640px;margin:18px auto 0;display:grid;gap:10px}
.an-sheet__foot p{margin:6px 0 0;color:var(--muted);font-size:1rem;text-align:center}
.an-sheet__foot p a{color:var(--navy);font-weight:700}
.an-sheet__foot .btn--wa svg{width:20px;height:20px}
html.an-locked{overflow:hidden}
@media (min-width:700px){ .an-wa{display:inline-flex} }
@media (min-width:1100px){
  .an-links{display:flex} .an-menu{display:none} .an-sheet{display:none!important}
  .an-in{min-height:76px}
}
@media (max-width:420px){ .an-name{font-size:1.15rem} .an-plan{padding:0 12px;font-size:.92rem} .an-menu span{display:none} }

.an-soon{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:rgba(201,162,39,.18);color:#6b4f14;font:700 .72rem/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase;vertical-align:2px}
.an-sheet__links .an-soon{font-size:.8rem;vertical-align:4px}
/* ---------- icons (replace emoji) ---------- */
.ic{width:1em;height:1em;display:inline-block;vertical-align:-.15em;color:var(--brass)}
.ic--inline{width:1.1em;height:1.1em;margin-right:.2em}
.value__ic .ic,.prob__ic .ic,.life__ic .ic,.cinfo__ic .ic{width:30px;height:30px}
.svc__ic .ic,.promise__ic .ic,.car__ic .ic,.xsell__ic .ic{width:28px;height:28px}
.ti-ic .ic{width:24px;height:24px;color:var(--gold)}
.step__n .ic{width:26px;height:26px}
.section--navy .ic,.trust-strip .ic,.footer .ic{color:var(--gold)}

/* ---------- mobile bar + back to top (C4) ---------- */
.mbar{padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px))}
.mbar .btn{min-height:48px;font-size:1rem}
.mbar .btn svg{width:20px;height:20px}
@media (max-width:900px){ body{padding-bottom:calc(66px + env(safe-area-inset-bottom,0px))} .to-top{display:none!important} }

/* ---------- hero: headline first on phones, welcome card never covers it (C1) ---------- */
@media (max-width:900px){
  .hero__art{order:1!important;transform:none!important;margin-top:8px}
  .hero__copy{order:0}
  .hero__badge{position:static!important;margin:14px auto 0!important;max-width:340px;left:auto;right:auto;bottom:auto}
  .hero__halo{display:none}
}

/* ---------- section labels: no stranded ornaments on phones (C6) ---------- */
@media (max-width:640px){
  .eyebrow{display:inline-block;text-align:center;letter-spacing:.12em;font-size:1rem}
  .eyebrow::before,.eyebrow::after{display:none!important}
}

/* ---------- readable sizes + tap targets (C5) ---------- */
.footer a{padding:10px 0;font-size:1rem}
.foot-legal{gap:4px 22px}
.foot-legal a{display:inline-block;padding:12px 0;font-size:.98rem}
.foot-name{font-family:var(--serif);font-size:1.5rem;letter-spacing:.14em;color:#fff;margin:0 0 4px}
.foot-tag{color:#9fb0ca;font-style:italic;margin:0 0 14px}
.foot-about{max-width:34ch;font-size:1rem}
.foot-hours{margin-top:12px;font-size:.95rem;color:#8f9bb2}
.foot-pay{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:28px;color:#c3ccdd;font-size:1rem}
.foot-bottom{font-size:.92rem}
.hint,.muted small,small{font-size:max(.85em,14px)}
@media (max-width:600px){ .foot-grid{grid-template-columns:1fr} }

/* ---------- home ---------- */
.start-card--tyohar{border-color:rgba(201,162,39,.55);background:linear-gradient(180deg,#1b2b47,#16243D);color:#eef1f6}
.start-card--tyohar h3{color:#fff}.start-card--tyohar p{color:#d5dcea}
.start-card--tyohar .start-card__k,.start-card--tyohar .start-card__go{color:var(--gold)}
.start-card--tyohar .start-card__note{color:#b7c0d1;border-top-color:rgba(255,255,255,.15)}
.start-help{margin-top:18px;color:var(--muted)}
.start-help a{color:var(--brass);font-weight:700}
.trust-more{margin:18px 0 0;text-align:center}
.trust-more a{color:var(--gold);font-weight:700}
.occ-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:760px;margin:0 auto}
.occ-chip{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:150px;padding:12px 18px;border-radius:16px;border:1px solid rgba(255,255,255,.28);color:#fff;text-decoration:none}
.occ-chip b{font-weight:700}.occ-chip small{color:#b7c0d1;font-size:.9rem}
.occ-chip:hover{border-color:var(--gold)}
.tier-from b{white-space:nowrap}

/* ---------- stays ---------- */
.tier-card .btn + .btn{margin-top:8px}
.tier-card.is-target{outline:3px solid var(--gold);outline-offset:4px}
@media (max-width:700px){
  .cmp--stack{min-width:0}
  .cmp--stack thead{display:none}
  .cmp--stack,.cmp--stack tbody,.cmp--stack tr,.cmp--stack td{display:block;width:100%}
  .cmp--stack tr{border-bottom:1px solid var(--line);padding:12px 14px}
  .cmp--stack td{border:0!important;padding:3px 0;text-align:left!important;background:none!important}
  .cmp--stack td:first-child{font-size:1.02rem;margin-bottom:6px}
  .cmp--stack td[data-label]{display:flex;justify-content:space-between;gap:12px}
  .cmp--stack td[data-label]::before{content:attr(data-label);color:var(--navy);font-weight:600}
  .table-scroll:has(.cmp--stack),.table-scroll:has(.ledger--stack){overflow:visible}
}

/* ---------- rakhwali ---------- */
.join-card{background:var(--paper);border:1px solid rgba(201,162,39,.45);border-radius:var(--r-lg);padding:26px 24px;box-shadow:var(--shadow-sm)}
.join-card__k{font-family:var(--sans);text-transform:uppercase;letter-spacing:.14em;font-size:.85rem;font-weight:700;color:var(--brass);margin:0 0 12px}
.join-steps{margin:0;padding:0;list-style:none;counter-reset:j;display:grid;gap:14px}
.join-steps li{counter-increment:j;display:grid;grid-template-columns:36px 1fr;gap:4px 12px}
.join-steps li::before{content:counter(j);grid-row:span 2;width:32px;height:32px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-family:var(--serif)}
.join-steps b{color:var(--navy)}
.join-steps span{color:var(--muted);font-size:1rem;line-height:1.45}
.sample-tag{display:inline-block;margin:0 0 10px;padding:4px 10px;border-radius:999px;background:rgba(201,162,39,.16);color:#6b4f14;font-size:.85rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.doc-chip{color:var(--brass);font-weight:600;font-size:.92rem}
@media (max-width:700px){
  .ledger--stack{min-width:0}
  .ledger--stack thead{display:none}
  .ledger--stack,.ledger--stack tbody,.ledger--stack tr,.ledger--stack td{display:block;width:100%}
  .ledger--stack tr{padding:12px 4px;border-bottom:1px solid var(--line)}
  .ledger--stack td{border:0;padding:2px 0;display:flex;justify-content:space-between;gap:12px}
  .ledger--stack td::before{content:attr(data-label);color:var(--muted);font-size:.9rem}
  .ledger--stack td[data-label="Item"]{font-weight:700;color:var(--navy)}
}

/* ---------- planner: questions first on phones, summary collapsible (B4) ---------- */
.summary__toggle{display:none}
@media (max-width:900px){
  .summary{order:2!important;position:static}
  .summary__toggle{display:flex;width:100%;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:12px 18px;border-radius:14px;border:1px solid var(--line);background:var(--navy);color:#fff;font:700 1rem var(--sans);cursor:pointer}
  .summary__toggle [data-sum-count]{color:var(--gold);font-weight:600;font-size:.95rem}
  .summary .summary__card{display:none;margin-top:8px}
  .summary.is-open .summary__card{display:block}
}

/* ---------- contact: form first on phones ---------- */
@media (max-width:900px){ .contact-side{order:2!important} }

/* ---------- trust ---------- */
.staff__ph--mark{background:linear-gradient(160deg,#1c2f50,#16243D)!important;display:flex;align-items:center;justify-content:center}
.staff__mark{display:block;width:34%;opacity:.9}
.staff__mark svg{width:100%;height:auto}
/* minimum label sizes (C5) */
.start-card__k,.home-tag,.report__meters span,.vbadge,.tier-flag,.staff .lic,.staff .role,.summary__note,.pill,.hint,.price-inr{font-size:max(.8rem,14px)}
.linkish{min-height:44px;padding:10px 4px}
.auth-links a{display:inline-block;padding:10px 2px}
.car__eg,.ledger .pd,.ledger .pw{font-size:max(.8rem,14px)}
/* ---------- coming soon (stays, homes & cars) ---------- */
.soon-banner{margin:6px auto 22px;max-width:860px;background:var(--paper);border:1px solid rgba(201,162,39,.55);border-radius:var(--r-lg);padding:18px 22px;display:grid;gap:10px;box-shadow:var(--shadow-sm)}
.soon-banner__tag{justify-self:start;padding:4px 12px;border-radius:999px;background:var(--navy);color:var(--gold);font:700 .85rem var(--sans);letter-spacing:.08em;text-transform:uppercase}
.soon-banner p{margin:0;color:var(--ink);font-size:1.05rem}
.soon-banner__act{display:flex;flex-wrap:wrap;gap:10px}
.soon-banner__act .btn{min-height:48px}
.soon-inline{color:var(--navy);background:rgba(201,162,39,.18);padding:1px 8px;border-radius:999px}
.soon-note{margin:0 0 16px;padding:12px 16px;border-radius:14px;background:rgba(201,162,39,.12);border:1px solid rgba(201,162,39,.4);color:var(--ink)}
