/* Kalam Parmarthik Trust — site styles (from Figma v2, 5 Nov 2026) */
:root{
  --saffron:#E88300; --rust:#B04A08; --rust-deep:#7A3205; --earth:#4A1F06; --earth-dark:#2B1103;
  --gold:#E0A84A; --gold-soft:#F3D9A6; --cream:#FBF6EE; --white:#FFFFFF; --ink:#2B1B10; --muted:#6B584A;
  --line:#EADBC4; --slot:#F1E6D6; --amber:#F2B04A; --copper:#C4600A;
  --gold-grad:linear-gradient(90deg,#F6C66A 0%,#E9A13A 55%,#D9821C 100%);
  --serif:"Cormorant Garamond",Georgia,serif; --deva:"Tiro Devanagari Hindi","Noto Serif Devanagari",serif; --sans:"Mukta","Noto Sans Devanagari",system-ui,sans-serif;
  --pad:120px; --pv:128px; --max:1440px;
}
@media (max-width:1099px){ :root{ --pad:40px; --pv:96px; } }
@media (max-width:699px){ :root{ --pad:20px; --pv:72px; } }

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body{ margin:0; background:var(--white); color:var(--ink); font-family:var(--sans); font-size:17px; line-height:1.65; -webkit-font-smoothing:antialiased; }
img{ max-width:100%; display:block; }
a{ color:inherit; }
p{ margin:0; }
h1,h2,h3,h4{ margin:0; font-weight:600; }
ol,ul{ margin:0; padding:0; list-style:none; }
.sr-only{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.wrap{ max-width:var(--max); margin:0 auto; padding-left:var(--pad); padding-right:var(--pad); }
:focus-visible{ outline:2px solid var(--amber); outline-offset:3px; }

/* ---------- type ---------- */
.display{ font-family:var(--serif); font-weight:600; font-size:clamp(46px,6.1vw,88px); line-height:1.05; letter-spacing:-.01em; color:var(--cream); }
.h2{ font-family:var(--serif); font-weight:600; font-size:clamp(36px,4.2vw,60px); line-height:1.1; letter-spacing:-.005em; color:var(--ink); }
.h3{ font-family:var(--serif); font-weight:600; font-size:clamp(27px,2.4vw,34px); line-height:1.18; }
.h4{ font-family:var(--serif); font-weight:600; font-size:28px; line-height:1.2; }
.statement-t{ font-family:var(--serif); font-weight:500; font-size:clamp(27px,3.2vw,46px); line-height:1.3; max-width:1040px; }
.numeral{ font-family:var(--serif); font-weight:500; font-size:clamp(52px,5vw,72px); line-height:1.05; color:var(--cream); }
.eyebrow{ font-family:var(--sans); font-weight:600; font-size:13px; line-height:20px; letter-spacing:.18em; text-transform:uppercase; color:var(--rust); }
.eyebrow.on-dark{ color:var(--amber); }
.eyebrow.muted{ color:var(--muted); }
.body-l{ font-weight:300; font-size:20px; line-height:32px; }
.body{ font-size:17px; line-height:28px; }
.body-m{ font-weight:500; font-size:17px; line-height:28px; }
.small{ font-size:14px; line-height:22px; }
.muted{ color:var(--muted); } .cream{ color:var(--cream); } .gold-soft{ color:var(--gold-soft); } .saffron{ color:var(--saffron)!important; }
.accent-alt{ font-family:var(--deva); font-size:28px; line-height:44px; color:var(--rust-deep); }
.num{ font-family:var(--serif); font-style:italic; font-size:36px; line-height:40px; color:var(--copper); }
.tagline{ font-family:var(--deva); font-size:28px; line-height:44px; color:var(--amber); }
@media (max-width:699px){ .body-l{ font-size:17px; line-height:28px; } .accent-alt{ font-size:21px; line-height:34px; } .tagline{ font-size:21px; line-height:34px; } .h4{ font-size:25px; } }

/* Hindi */
.lang-hi .display{ font-family:var(--deva); font-weight:400; font-size:clamp(38px,4.7vw,68px); line-height:1.5; letter-spacing:0; }
.lang-hi .h2{ font-family:var(--deva); font-weight:400; font-size:clamp(30px,3.2vw,46px); line-height:1.52; letter-spacing:0; }
.lang-hi .h3,.lang-hi .h4{ font-family:var(--deva); font-weight:400; font-size:clamp(23px,1.9vw,27px); line-height:1.56; }
.lang-hi .statement-t{ font-family:var(--deva); font-weight:400; font-size:clamp(22px,2.4vw,34px); line-height:1.7; }
.lang-hi .numeral{ font-family:var(--serif),var(--deva); }
.lang-hi .eyebrow{ font-size:15px; line-height:22px; letter-spacing:0; text-transform:none; }
.lang-hi .body-l{ line-height:34px; } .lang-hi .body{ line-height:30px; }
.lang-hi .accent-alt{ font-family:var(--serif); font-weight:500; font-size:26px; line-height:36px; }
.lang-hi .f-closing-t{ font-family:var(--deva); font-weight:400; }

/* ornament */
.ornament{ display:flex; align-items:center; gap:10px; margin:2px 0; }
.ornament i{ width:48px; height:1px; background:var(--gold); }
.ornament b{ width:8px; height:8px; background:var(--gold); transform:rotate(45deg); }
@media (max-width:699px){ .ornament i{ width:36px; } }

/* ---------- buttons ---------- */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:16px 32px; border-radius:999px; font-family:var(--sans); font-weight:600; font-size:15px; line-height:22px; letter-spacing:.04em; text-decoration:none; border:1px solid transparent; transition:transform .15s ease, box-shadow .2s ease, background .2s ease; white-space:nowrap; }
.btn:hover{ transform:translateY(-1px); }
.btn-gold{ background:var(--gold-grad); color:var(--earth-dark); box-shadow:0 8px 24px rgba(233,161,58,.25); }
.btn-rust{ background:var(--rust); color:var(--white); }
.btn-rust:hover{ background:var(--rust-deep); }
.btn-outline-light{ border-color:rgba(251,246,238,.6); color:var(--cream); }
.btn-outline-light:hover{ background:rgba(251,246,238,.08); }
.btn-outline-dark{ border-color:var(--rust); color:var(--rust); }
.btn-outline-dark:hover{ background:rgba(176,74,8,.06); }
.lang-hi .btn{ letter-spacing:0; font-size:16px; }
.actions{ display:flex; flex-wrap:wrap; gap:14px; }
@media (max-width:699px){ .actions{ flex-direction:column; align-items:stretch; width:100%; } .actions .btn{ width:100%; white-space:normal; text-align:center; } }
.text-link{ font-weight:600; font-size:15px; letter-spacing:.04em; color:var(--rust); text-decoration:none; }
.text-link:hover{ text-decoration:underline; }

/* ---------- dark sections ---------- */
.dark{ position:relative; overflow:hidden; color:var(--cream);
  background:radial-gradient(55% 75% at 78% 102%,rgba(232,131,0,.55),rgba(232,131,0,0) 100%),radial-gradient(45% 50% at 15% 0%,rgba(122,50,5,.45),rgba(122,50,5,0) 100%),var(--earth-dark); }
.hero::after,.page-hero::after{ content:""; position:absolute; width:min(900px,90vw); aspect-ratio:590/360; background:url(img/symbol.png) center/contain no-repeat; opacity:.05; left:-12%; bottom:-14%; pointer-events:none; }
.page-hero::after{ left:auto; right:-8%; bottom:-22%; width:min(720px,90vw); opacity:.06; }

/* ---------- header ---------- */
.site-header{ position:relative; z-index:20; }
.utility{ border-bottom:1px solid rgba(224,168,74,.22); font-size:14px; color:var(--gold-soft); }
.utility-in{ display:flex; justify-content:space-between; gap:16px; padding-top:10px; padding-bottom:10px; white-space:pre; }
.utility a{ text-decoration:none; }
.nav-bar{ display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:22px; padding-bottom:22px; }
.logo img{ height:60px; width:auto; }
.main-nav{ display:flex; gap:36px; margin-left:auto; }
.main-nav a{ font-weight:500; font-size:15px; letter-spacing:.02em; text-decoration:none; color:var(--cream); padding:4px 0; border-bottom:1px solid transparent; }
.main-nav a:hover{ color:var(--amber); }
.main-nav a.is-active{ color:var(--amber); }
.nav-right{ display:flex; align-items:center; gap:24px; }
.lang-toggle{ display:flex; padding:3px; border:1px solid rgba(251,246,238,.35); border-radius:999px; }
.lang-toggle a{ padding:3px 12px; border-radius:999px; font-size:14px; line-height:22px; text-decoration:none; color:var(--cream); }
.lang-toggle a.is-on{ background:var(--amber); color:var(--earth-dark); }
.menu-btn,.menu-close{ display:none; width:48px; height:48px; border-radius:999px; border:1px solid rgba(251,246,238,.35); background:none; color:var(--cream); align-items:center; justify-content:center; cursor:pointer; }
.menu-close{ display:flex; }
@media (max-width:1099px){
  .utility{ display:none; }
  .main-nav{ display:none; }
  .menu-btn{ display:flex; }
  .nav-right{ gap:14px; }
  .logo img{ height:48px; }
}
@media (max-width:699px){
  .nav-bar{ padding-top:16px; padding-bottom:16px; gap:10px; }
  .logo img{ height:36px; }
  .nav-right [data-hide-mobile]{ display:none; }
  .nav-right{ gap:10px; }
  .menu-btn{ width:44px; height:44px; }
}
/* menu panel */
.menu-panel{ position:fixed; inset:0; z-index:100; display:flex; flex-direction:column; background:var(--earth-dark); color:var(--cream); padding-bottom:32px; overflow:auto; }
.menu-panel[hidden]{ display:none; }
.menu-top{ display:flex; justify-content:space-between; align-items:center; width:100%; padding-top:16px; padding-bottom:16px; }
.menu-top img{ height:40px; width:auto; }
.menu-links{ display:flex; flex-direction:column; width:100%; padding-top:32px; }
.menu-links a{ font-family:var(--serif); font-size:36px; line-height:1.2; padding:14px 0; border-bottom:1px solid rgba(224,168,74,.2); text-decoration:none; }
.lang-hi .menu-links a{ font-family:var(--deva); font-size:28px; line-height:1.6; }
.menu-links a.is-active{ color:var(--amber); }
.menu-foot{ display:flex; flex-direction:column; gap:16px; width:100%; margin-top:auto; padding-top:40px; }
.menu-call{ color:var(--gold-soft); text-align:center; text-decoration:none; }
body.menu-open{ overflow:hidden; }

/* ---------- home hero ---------- */
.hero-in{ display:grid; grid-template-columns:minmax(0,1fr) 470px; gap:48px; align-items:center; padding-top:88px; padding-bottom:110px; position:relative; z-index:1; }
.hero-text{ display:flex; flex-direction:column; gap:26px; max-width:660px; }
.lead{ color:var(--gold-soft); max-width:560px; }
.trust-line{ display:flex; align-items:center; gap:10px; font-size:14px; color:var(--gold-soft); margin-top:4px; }
.trust-line b{ width:7px; height:7px; background:var(--gold); transform:rotate(45deg); flex:none; }
.hero-figure{ position:relative; justify-self:end; width:440px; margin-top:28px; }
.arch{ position:relative; margin:0; }
.arch img{ width:100%; height:100%; object-fit:cover; border-radius:9999px 9999px 6px 6px; position:relative; z-index:1; }
.arch-outline{ position:absolute; inset:0; transform:translate(28px,-28px); border:1.2px solid rgba(224,168,74,.6); border-radius:9999px 9999px 6px 6px; }
.arch-hero{ aspect-ratio:440/610; }
.caption-card{ position:absolute; z-index:2; left:-100px; bottom:-14px; background:var(--cream); color:var(--ink); border-radius:14px; padding:20px 26px 22px; box-shadow:0 18px 40px rgba(26,10,0,.35); }
.cap-name{ font-family:var(--serif); font-weight:600; font-size:34px; line-height:40px; }
.cap-alt{ font-family:var(--deva); font-size:21px; line-height:34px; color:var(--rust-deep); }
.lang-hi .cap-name{ font-family:var(--deva); font-weight:400; font-size:27px; line-height:42px; }
.lang-hi .cap-alt{ font-family:var(--serif); font-weight:500; font-size:24px; }
@media (max-width:1099px){
  .hero-in{ grid-template-columns:1fr; padding-top:56px; padding-bottom:88px; gap:72px; }
  .hero-figure{ width:min(440px,70%); justify-self:end; margin-right:12px; }
  .caption-card{ left:calc(-1 * (100vw - 2 * var(--pad)) * .3); }
}
@media (max-width:699px){
  .hero-in{ padding-top:32px; padding-bottom:48px; gap:56px; }
  .hero-text{ gap:18px; }
  .hero-figure{ width:min(300px,78vw); justify-self:center; margin-right:12px; }
  .arch-outline{ transform:translate(14px,-14px); }
  .caption-card{ left:-24px; bottom:-40px; padding:14px 20px 16px; }
  .cap-name{ font-size:28px; line-height:34px; }
  .trust-line{ order:9; margin-top:8px; }
}

/* ---------- marquee ---------- */
.marquee{ background:var(--gold-grad); overflow:hidden; padding:22px 0; }
.marquee-track{ display:flex; align-items:center; gap:36px; width:max-content; animation:kpt-marquee 45s linear infinite; }
.marquee span{ font-family:var(--serif); font-style:italic; font-weight:500; font-size:30px; line-height:38px; color:var(--earth-dark); white-space:nowrap; }
.lang-hi .marquee span{ font-family:var(--deva); font-size:24px; }
.marquee b{ width:9px; height:9px; background:var(--earth-dark); transform:rotate(45deg); flex:none; }
@keyframes kpt-marquee{ to{ transform:translateX(-33.333%); } }
@media (prefers-reduced-motion:reduce){ .marquee-track{ animation:none; } }
@media (max-width:699px){ .marquee{ padding:14px 0; } .marquee span{ font-size:22px; } .marquee-track{ gap:18px; } }

/* ---------- sections ---------- */
section{ position:relative; }
.seva-home,.story,.registration,.where,.bhoomika{ background:var(--white); padding:var(--pv) 0; }
.statement,.values,.memory,.donate-home,.how,.donate-page,.contact{ background:var(--cream); padding:var(--pv) 0; }
.page-hero-in{ display:flex; flex-direction:column; gap:22px; padding-top:88px; padding-bottom:120px; position:relative; z-index:1; }
.page-hero-in .display{ max-width:820px; } .page-hero-in .lead{ max-width:640px; }
@media (max-width:1099px){ .page-hero-in{ padding-top:64px; padding-bottom:88px; } }
@media (max-width:699px){ .page-hero-in{ padding-top:40px; padding-bottom:64px; gap:16px; } }
.sec-head{ display:flex; flex-direction:column; gap:16px; margin-bottom:48px; }
@media (max-width:699px){ .sec-head{ margin-bottom:32px; gap:12px; } }

/* split head (home seva) */
.split-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:48px; margin-bottom:64px; }
.split-head > div:first-child{ display:flex; flex-direction:column; gap:16px; }
.split-head-r{ display:flex; flex-direction:column; align-items:flex-start; gap:20px; max-width:440px; }
@media (max-width:1099px){ .split-head{ flex-direction:column; align-items:flex-start; margin-bottom:48px; gap:16px; } .split-head-r{ max-width:600px; } }

/* arch photo slots */
.arch-slot{ margin:0; background:var(--slot); border-radius:9999px 9999px 6px 6px; overflow:hidden; aspect-ratio:378/460; }
.arch-slot img{ width:100%; height:100%; object-fit:cover; }
.seva-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:33px; }
.seva-item{ display:flex; flex-direction:column; gap:14px; }
.seva-item .arch-slot{ margin-bottom:10px; }
.num-row{ display:flex; align-items:center; gap:14px; }
.num-row i{ width:40px; height:1px; background:var(--gold); }
.num-row .accent-alt{ font-size:21px; line-height:34px; }
.lang-hi .num-row .accent-alt{ font-size:22px; }
@media (max-width:1099px){ .seva-grid{ gap:20px; } .seva-grid .arch-slot{ aspect-ratio:auto; height:330px; } .seva-item .h3{ font-size:28px; } }
@media (max-width:699px){ .seva-grid{ grid-template-columns:1fr; gap:48px; } .seva-grid .arch-slot{ height:340px; } }

/* statement */
.statement-in{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:28px; padding-top:12px; padding-bottom:12px; }
.statement-in .ornament i{ width:64px; }
@media (max-width:699px){ .statement-in{ gap:20px; } }

/* memory */
.memory{ background:var(--white); }
.memory-in{ display:flex; align-items:center; justify-content:center; gap:64px; }
.arch-sm{ width:260px; aspect-ratio:260/340; flex:none; margin-top:22px; }
.arch-sm .arch-outline{ transform:translate(22px,-22px); }
.memory-text{ display:flex; flex-direction:column; gap:14px; max-width:560px; }
@media (max-width:1099px){ .arch-sm{ width:230px; } .memory-in{ gap:48px; } }
@media (max-width:699px){ .memory-in{ flex-direction:column; text-align:center; gap:32px; } .memory-text{ align-items:center; } .arch-sm{ width:210px; } .arch-sm .arch-outline{ transform:translate(16px,-16px); } }

/* bhoomika */
.bhoomika{ background:var(--cream); }
.bhoomika-in{ display:grid; grid-template-columns:500px minmax(0,1fr); gap:96px; align-items:center; }
.arch-lg{ width:460px; aspect-ratio:460/640; margin-top:40px; }
.arch-lg .arch-outline{ transform:translate(40px,-40px); border-color:rgba(224,168,74,.7); }
.bhoomika-text{ display:flex; flex-direction:column; gap:20px; }
.initiative{ display:flex; align-items:center; gap:16px; padding-top:4px; }
.initiative img{ height:40px; width:auto; }
@media (max-width:1099px){ .bhoomika-in{ grid-template-columns:1fr; gap:56px; justify-items:center; } .bhoomika-text{ width:100%; } .arch-lg{ width:min(430px,85%); } }
@media (max-width:699px){ .bhoomika-in{ justify-items:start; gap:36px; } .arch-lg{ width:calc(100% - 24px); margin-top:24px; aspect-ratio:326/440; } .arch-lg .arch-outline{ transform:translate(24px,-24px); } .bhoomika-text{ gap:16px; } .initiative img{ height:34px; } }

/* facts */
.facts{ padding:96px 0; background:radial-gradient(40% 120% at 0% 50%,rgba(176,74,8,.5),rgba(176,74,8,0)),var(--earth-dark); }
.facts-in{ display:grid; grid-template-columns:repeat(4,1fr); row-gap:48px; }
.fact{ display:flex; flex-direction:column; gap:8px; padding:0 24px 0 40px; border-left:1px solid rgba(224,168,74,.3); }
.fact:first-child{ padding-left:0; border-left:0; }
@media (max-width:1099px){ .facts{ padding:80px 0; } .facts-in{ grid-template-columns:repeat(2,1fr); } .fact,.fact:first-child{ padding-left:28px; border-left:1px solid rgba(224,168,74,.3); } }
@media (max-width:699px){ .facts{ padding:64px 0; } .facts-in{ row-gap:36px; } .fact,.fact:first-child{ padding:0 8px 0 16px; } .numeral{ font-size:52px; } }

/* donate home */
.donate-home-in{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:96px; align-items:center; }
.donate-text{ display:flex; flex-direction:column; gap:22px; }
.step-lines li{ display:flex; align-items:center; gap:20px; padding:16px 0; border-top:1px solid var(--line); }
@media (max-width:1099px){ .donate-home-in{ grid-template-columns:1fr; gap:56px; justify-items:center; } .donate-text{ width:100%; } }
@media (max-width:699px){ .donate-home-in{ gap:36px; } .step-lines li{ align-items:flex-start; } }

/* qr card */
.qr-card{ background:var(--white); border:1px solid rgba(224,168,74,.7); border-radius:28px; padding:14px; box-shadow:0 30px 60px rgba(74,31,6,.12); }
.qr-inner{ display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center; border:1px solid rgba(224,168,74,.45); border-radius:20px; padding:36px 40px; }
.qr-sym{ width:80px; height:auto; }
.qr{ width:300px; height:300px; image-rendering:pixelated; }
.qr-payee{ font-family:var(--serif); font-weight:600; font-size:28px; line-height:34px; }
@media (max-width:699px){ .qr-card{ width:100%; padding:10px; border-radius:24px; } .qr-inner{ padding:28px 20px; } .qr{ width:240px; height:240px; } .qr-payee{ font-size:25px; } }

/* footer */
.site-footer{ background:var(--earth-dark); color:var(--cream); padding:96px 0 32px; }
.f-closing{ display:flex; justify-content:space-between; align-items:flex-end; gap:28px; }
.f-closing-t{ color:var(--cream); max-width:720px; }
.f-rule{ border:0; height:1px; background:rgba(224,168,74,.25); margin:56px 0; }
.f-cols{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:48px; }
.f-brand img{ height:56px; width:auto; margin-bottom:18px; }
.f-brand p{ color:var(--gold-soft); max-width:360px; }
.f-h{ font-family:var(--sans); font-weight:600; font-size:13px; letter-spacing:.18em; text-transform:uppercase; color:var(--amber); margin-bottom:12px; }
.lang-hi .f-h{ font-size:15px; letter-spacing:0; text-transform:none; }
.f-list li{ margin-bottom:8px; } .f-list a{ text-decoration:none; } .f-list a:hover{ color:var(--amber); }
.f-initiative{ display:flex; flex-direction:column; gap:14px; align-items:flex-start; }
.f-initiative img{ height:40px; width:auto; }
.f-ini{ color:var(--amber); }
.f-legal{ display:flex; justify-content:space-between; gap:16px; margin-top:56px; font-size:14px; color:var(--gold-soft); }
@media (max-width:1099px){ .f-closing{ flex-direction:column; align-items:flex-start; } .f-cols{ grid-template-columns:1fr 1fr; } .f-legal{ flex-direction:column; } }
@media (max-width:699px){ .site-footer{ padding:64px 0 110px; } .f-cols{ grid-template-columns:1fr; gap:36px; } .f-rule{ margin:40px 0; } }
.page-about .site-footer,.page-seva .site-footer{ padding-top:64px; }

/* sticky donate (mobile) */
.sticky-donate{ display:none; }
@media (max-width:699px){
  .sticky-donate{ position:fixed; z-index:50; left:20px; right:20px; bottom:16px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:8px 8px 8px 18px; border-radius:999px; background:var(--cream); box-shadow:0 12px 32px rgba(26,10,0,.4); font-weight:500; transform:translateY(140%); transition:transform .3s ease; }
  .sticky-donate.is-visible{ transform:none; }
  .sticky-donate .btn{ padding:12px 20px; width:auto; }
}

/* ---------- about ---------- */
.story-in{ display:grid; grid-template-columns:440px minmax(0,1fr); gap:96px; }
.story-in > div:first-child{ display:flex; flex-direction:column; gap:16px; }
.story-paras{ display:flex; flex-direction:column; gap:18px; }
@media (max-width:1099px){ .story-in{ grid-template-columns:1fr; gap:32px; } }
.card-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.card{ display:flex; flex-direction:column; gap:10px; background:var(--white); border:1px solid var(--line); border-radius:24px; padding:36px 32px; }
.card img{ width:64px; height:auto; }
.card-cream{ background:var(--cream); border-color:transparent; border-radius:20px; }
.card .num{ margin-bottom:2px; }
@media (max-width:1099px){ .card{ padding:28px 24px; } .card .h3{ font-size:28px; } }
@media (max-width:699px){ .card-grid{ grid-template-columns:1fr; gap:16px; } }
.reg-in{ display:grid; grid-template-columns:380px minmax(0,1fr); gap:80px; }
.reg-in > div:first-child{ display:flex; flex-direction:column; gap:16px; }
.reg-table{ margin:0; background:var(--cream); border:1px solid var(--line); border-radius:24px; overflow:hidden; }
.reg-table > div{ display:grid; grid-template-columns:220px minmax(0,1fr); gap:24px; padding:18px 32px; }
.reg-table > div:nth-child(even){ background:var(--white); }
.reg-table dt{ color:var(--muted); }
.reg-table dd{ margin:0; font-weight:500; }
@media (max-width:1099px){ .reg-in{ grid-template-columns:1fr; gap:32px; } }
@media (max-width:699px){ .reg-table > div{ grid-template-columns:1fr; gap:2px; padding:14px 20px; } .reg-table dt{ font-size:14px; } }
.cta-band{ padding:96px 0; background:radial-gradient(50% 120% at 90% 50%,rgba(232,131,0,.35),rgba(232,131,0,0)),var(--rust-deep); }
.cta-in{ display:flex; justify-content:space-between; align-items:center; gap:32px; }
.cta-in > div:first-child{ display:flex; flex-direction:column; gap:12px; max-width:640px; }
@media (max-width:1099px){ .cta-in{ flex-direction:column; align-items:flex-start; } }
@media (max-width:699px){ .cta-band{ padding:64px 0; } }

/* ---------- seva page ---------- */
.seva-row{ background:var(--white); padding:var(--pv) 0; scroll-margin-top:24px; }
.seva-row.alt{ background:var(--cream); }
.seva-row-in{ display:grid; grid-template-columns:520px minmax(0,1fr); gap:96px; align-items:center; }
.seva-row.alt .seva-row-in{ grid-template-columns:minmax(0,1fr) 520px; }
.seva-row.alt .arch-slot{ order:2; }
.arch-slot-lg{ aspect-ratio:520/640; }
.seva-row-text{ display:flex; flex-direction:column; gap:18px; }
.points{ display:flex; flex-direction:column; gap:10px; padding-top:4px; }
.points li{ display:flex; align-items:center; gap:12px; font-weight:500; }
.points li::before{ content:""; width:8px; height:8px; background:var(--gold); transform:rotate(45deg); flex:none; }
@media (max-width:1099px){ .seva-row-in,.seva-row.alt .seva-row-in{ grid-template-columns:320px minmax(0,1fr); gap:48px; } .seva-row.alt .seva-row-in{ grid-template-columns:minmax(0,1fr) 320px; } .arch-slot-lg{ aspect-ratio:auto; height:420px; } }
@media (max-width:699px){ .seva-row-in,.seva-row.alt .seva-row-in{ grid-template-columns:1fr; gap:32px; } .seva-row.alt .arch-slot{ order:0; } .arch-slot-lg{ height:380px; } .seva-row-text{ gap:14px; } }
.step-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.step-grid .card{ padding:28px 28px 32px; border-radius:20px; }
@media (max-width:1099px){ .step-grid{ grid-template-columns:repeat(2,1fr); gap:20px; } }
@media (max-width:699px){ .step-grid{ grid-template-columns:1fr; } }

/* ---------- donate page ---------- */
.donate-page-in{ display:grid; grid-template-columns:auto minmax(0,1fr); gap:96px; align-items:center; }
.donate-steps{ display:flex; flex-direction:column; gap:20px; }
.step-blocks li{ display:flex; gap:24px; padding:18px 0; border-top:1px solid var(--line); }
.step-blocks h3{ margin-bottom:4px; }
.details{ background:var(--white); border:1px solid var(--line); border-radius:16px; padding:20px 24px; }
@media (max-width:1099px){ .donate-page-in{ grid-template-columns:1fr; gap:56px; justify-items:center; } .donate-steps{ width:100%; } }
@media (max-width:699px){ .donate-page-in{ gap:36px; } .step-blocks li{ gap:16px; } }
.contact-in{ display:grid; grid-template-columns:1fr 1fr; gap:64px; }
.contact-details{ display:flex; flex-direction:column; gap:24px; }
.contact-details .h2{ margin-top:-8px; }
.c-item{ display:flex; flex-direction:column; gap:2px; }
.c-item a{ text-decoration:none; }
.map{ width:100%; height:260px; border:0; border-radius:20px; background:var(--slot); }
.contact-form{ display:flex; flex-direction:column; gap:20px; background:var(--white); border:1px solid var(--line); border-radius:24px; padding:40px; align-self:start; }
.contact-form label{ display:flex; flex-direction:column; gap:8px; font-weight:500; }
.contact-form input,.contact-form textarea{ font:inherit; font-weight:400; color:var(--ink); background:var(--cream); border:1px solid var(--line); border-radius:12px; padding:14px 16px; }
.contact-form input:focus,.contact-form textarea:focus{ outline:2px solid var(--gold); border-color:var(--gold); }
.contact-form .btn{ align-self:flex-start; cursor:pointer; }
.contact-form .hp{ position:absolute; left:-9999px; }
.notice{ border-radius:12px; padding:14px 16px; font-weight:500; }
.notice.ok{ background:#EEF6E8; color:#2F5D1E; } .notice.err{ background:#FBEAE4; color:#8A2C0A; }
@media (max-width:1099px){ .contact-in{ grid-template-columns:1fr; gap:40px; } }
@media (max-width:699px){ .contact-form{ padding:28px 24px; } .contact-form .btn{ align-self:stretch; } .map{ height:220px; } }
