:root{
  --maroon:#7A1522; --maroon-dark:#5A0F19; --maroon-deep:#4A0C14;
  --cream:#FDF6EA; --cream2:#F7ECD9; --card:#FFFFFF;
  --gold:#C9972F; --gold-soft:#E8CE9A; --gold-line:#E3D2AC;
  --ink:#2C1810; --brown:#5A3E2B; --muted:#8A7460;
  --good:#2E7D4F; --bad:#B23B3B; --partial:#C9972F;
  --radius:16px; --radius-sm:10px; --max:1180px;
  --font-display:'Noto Serif Tamil','Noto Serif',serif;
  --font-body:'Noto Sans Tamil','Noto Sans',sans-serif;
  --shadow:0 12px 34px -18px rgba(74,12,20,.35);
}
html[data-lang="te"]{ --font-display:'Noto Serif Telugu','Noto Serif',serif; --font-body:'Noto Sans Telugu','Noto Sans',sans-serif; }
html[data-lang="en"]{ --font-display:'Noto Serif','Noto Serif Tamil',serif; --font-body:'Noto Sans','Noto Sans Tamil',sans-serif; }
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-body);line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
h1,h2,h3{font-family:var(--font-display);color:var(--maroon-dark);margin:0 0 .4em;font-weight:700;}
p{margin:0 0 1em;}
a{color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 18px;}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}

/* ============ HEADER / MOBILE NAV ============ */
header{position:sticky;top:0;z-index:100;background:var(--maroon);box-shadow:0 2px 14px rgba(0,0,0,.15);}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;max-width:var(--max);margin:0 auto;position:relative;}
.logo{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:#fff;text-decoration:none;min-width:0;}
.logo-mark{width:36px;height:36px;border-radius:50%;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;font-size:.9rem;color:var(--gold);flex:none;background:var(--maroon-dark);}
.logo-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.logo-sub{display:block;font-family:var(--font-body);font-weight:400;font-size:.62rem;color:var(--gold-soft);white-space:nowrap;}

.hamburger{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;border:1.5px solid rgba(255,255,255,.3);background:transparent;cursor:pointer;flex:none;}
.hamburger span{display:block;width:20px;height:2px;background:#fff;position:relative;transition:background .15s;}
.hamburger span::before,.hamburger span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:#fff;transition:transform .2s ease, top .2s ease;}
.hamburger span::before{top:-6px;}
.hamburger span::after{top:6px;}
.hamburger.open span{background:transparent;}
.hamburger.open span::before{top:0;transform:rotate(45deg);}
.hamburger.open span::after{top:0;transform:rotate(-45deg);}

nav#mainNav{display:none; position:fixed; inset:64px 0 0 0; z-index:99; background:var(--maroon-dark); overflow-y:auto; flex-direction:column; padding:8px 16px 26px;}
nav#mainNav.open{display:flex;}
nav#mainNav a{color:#fff;text-decoration:none;padding:15px 6px;border-bottom:1px solid rgba(255,255,255,.12);font-size:1.02rem;}
.nav-lang-row{display:flex;gap:8px;margin:18px 0 10px;}
.nav-cta-row{margin-top:8px;}

.lang-switch{display:flex;background:rgba(255,255,255,.12);border-radius:999px;padding:3px;gap:2px;flex:1;}
.lang-switch button{flex:1;border:none;background:transparent;padding:9px 6px;border-radius:999px;font-family:inherit;font-size:.8rem;font-weight:700;color:#fff;cursor:pointer;min-height:36px;}
.lang-switch button.active{background:var(--gold);color:var(--maroon-dark);}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold);color:var(--maroon-deep);border:none;border-radius:999px;padding:13px 24px;font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;text-decoration:none;transition:transform .1s ease, background .15s;min-height:46px;width:100%;}
.btn:hover{background:#DBAB47;}
.btn:active{transform:scale(.98);}
.btn:disabled{opacity:.6;cursor:wait;}
.btn.outline{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6);}
.btn.outline:hover{background:rgba(255,255,255,.12);}
.btn.on-cream{background:var(--maroon);color:#fff;}
.btn.on-cream:hover{background:var(--maroon-dark);}
.btn.on-cream.outline{background:transparent;color:var(--maroon);border:1.5px solid var(--maroon);}
.btn.on-cream.outline:hover{background:var(--cream2);}
.btn.ghost{background:transparent;color:var(--brown);border:1.5px solid var(--gold-line);}
.btn-row{display:flex;flex-direction:column;gap:12px;}
@media(min-width:560px){.btn-row{flex-direction:row;}.btn{width:auto;}}

@media(min-width:1150px){
  .hamburger{display:none;}
  nav#mainNav{display:flex !important; flex-wrap:wrap; position:static; inset:auto; background:transparent; flex-direction:row; align-items:center; padding:0; overflow:visible; gap:8px 16px; flex:1; margin:0 20px; justify-content:flex-end;}
  nav#mainNav a{color:rgba(255,255,255,.92);padding:6px 2px;border-bottom:none;font-size:.85rem;white-space:nowrap;}
  nav#mainNav a:hover{color:var(--gold-soft);}
  .nav-lang-row{margin:0;width:auto;}
  .lang-switch{flex:none;width:auto;}
  .lang-switch button{padding:7px 10px;}
  .nav-cta-row{margin:0;}
  .nav-cta-row .btn{width:auto;padding:10px 18px;font-size:.85rem;min-height:40px;}
  .logo-sub{display:none;}
}
@media(min-width:1320px){
  .logo-sub{display:block;}
}

/* ============ HERO ============ */
.hero{position:relative;background:linear-gradient(180deg,var(--cream2),var(--cream));overflow:hidden;padding:0;}
.hero-grid{display:grid;grid-template-columns:1fr;gap:0;}
@media(min-width:900px){.hero-grid{grid-template-columns:1fr 1fr;align-items:center;gap:20px;}}
.hero-copy{padding:30px 18px 26px;max-width:var(--max);margin:0 auto;width:100%;}
@media(min-width:900px){.hero-copy{padding:44px 0 44px 32px;}}
.eyebrow{display:inline-block;font-size:.78rem;letter-spacing:.05em;color:var(--maroon);font-weight:700;background:var(--gold-soft);padding:6px 14px;border-radius:999px;margin-bottom:14px;}
.hero h1{font-size:clamp(1.55rem,5.6vw,2.2rem);line-height:1.28;}
.hero h1 .accent{color:var(--gold);}
.hero .sub{font-size:.96rem;color:var(--brown);max-width:52ch;}
.hero-trust-row{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 18px;}
.hero-trust-row .chip{font-size:.74rem;font-weight:700;color:var(--maroon);background:#fff;border:1px solid var(--gold-line);padding:6px 12px;border-radius:999px;}
.hero-img-wrap{position:relative;min-height:200px;max-height:280px;}
.hero-img-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 20%;}
@media(min-width:900px){.hero-img-wrap{min-height:420px;max-height:none;} .hero-img-wrap img{height:420px;}}
.hero-img-wrap::after{content:"";position:absolute;left:0;top:0;bottom:0;width:60px;background:linear-gradient(90deg,var(--cream),transparent);}
@media(min-width:900px){.hero-img-wrap::after{width:110px;}}

/* ============ TRUST STRIP ============ */
.trust-strip{background:var(--maroon-dark);padding:16px 0;}
.trust-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;text-align:center;}
@media(min-width:640px){.trust-grid{grid-template-columns:repeat(4,1fr);}}
.trust-item{color:#fff;}
.trust-item .num{font-family:var(--font-display);font-size:1.25rem;color:var(--gold-soft);font-weight:700;display:block;}
.trust-item .lbl{font-size:.72rem;color:rgba(255,255,255,.8);}

section{padding:42px 0;}
.section-head{text-align:center;max-width:660px;margin:0 auto 28px;}
.section-head .eyebrow{background:transparent;color:var(--gold);padding:0;font-size:.76rem;}
.section-head h2{font-size:clamp(1.3rem,4.2vw,1.85rem);}
.section-head p{color:var(--muted);font-size:.92rem;}

/* ============ HOW IT WORKS ============ */
.steps-row{display:flex;flex-direction:column;gap:0;position:relative;}
@media(min-width:900px){.steps-row{flex-direction:row;justify-content:space-between;}}
.step-item{display:flex;gap:14px;padding:13px 0;position:relative;}
@media(min-width:900px){.step-item{flex-direction:column;align-items:center;text-align:center;flex:1;padding:0 8px;}}
.step-item .circle{width:40px;height:40px;border-radius:50%;background:var(--maroon);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-family:var(--font-display);flex:none;}
.step-item .connector{position:absolute;left:19px;top:53px;bottom:-13px;width:2px;background:var(--gold-line);}
@media(min-width:900px){.step-item .connector{left:calc(50% + 21px);right:calc(-50% + 21px);top:19px;bottom:auto;height:2px;width:auto;}}
.step-item:last-child .connector{display:none;}
.step-item .txt h3{font-size:.94rem;margin-bottom:3px;}
.step-item .txt p{font-size:.81rem;color:var(--muted);margin:0;}

/* ============ 29-YEAR EXPERIENCE SECTION (text/ornament only — no photo) ============ */
.exp-band{background:var(--cream2);}
.exp-grid{display:grid;grid-template-columns:1fr;gap:24px;align-items:center;}
@media(min-width:860px){.exp-grid{grid-template-columns:.7fr 1.3fr;}}
.exp-visual-noimg{
  position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--gold-line);
  background:linear-gradient(160deg,var(--maroon),var(--maroon-deep));
  min-height:220px;display:flex;align-items:center;justify-content:center;padding:24px;
}
.exp-visual-noimg::before{
  content:"";position:absolute;inset:10px;border:1px solid rgba(232,206,154,.35);border-radius:10px;pointer-events:none;
}
.num-badge-lg{text-align:center;position:relative;}
.num-badge-lg .n{font-family:var(--font-display);font-size:4rem;color:var(--gold-soft);font-weight:700;line-height:1;}
.num-badge-lg .l{font-size:.85rem;color:rgba(255,255,255,.85);margin-top:6px;}
.exp-text h2{font-size:clamp(1.25rem,3.6vw,1.7rem);}
.exp-text p{color:var(--brown);font-size:.94rem;}
.exp-tagline{display:inline-block;margin-top:8px;font-weight:700;color:var(--maroon);font-size:.92rem;border-top:1px dashed var(--gold-line);padding-top:12px;}

/* ============ WHY THIS TOOL ============ */
.why-grid{max-width:820px;margin:0 auto;}
.why-grid p{color:var(--brown);font-size:.95rem;}

/* ============ HOW MANY PORUTHAMS ============ */
.hm-para{max-width:820px;margin:0 auto 1em;color:var(--brown);font-size:.95rem;text-align:center;}

/* ============ METHODOLOGY CARDS (icon-based, no photos) ============ */
.method-grid{display:grid;grid-template-columns:1fr;gap:14px;}
@media(min-width:640px){.method-grid{grid-template-columns:1fr 1fr;}}
@media(min-width:980px){.method-grid{grid-template-columns:repeat(4,1fr);}}
.method-card{background:var(--card);border:1px solid var(--gold-line);border-radius:var(--radius-sm);padding:18px 16px;text-align:left;}
.method-card .ic{width:38px;height:38px;border-radius:10px;background:var(--cream2);color:var(--maroon);display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:10px;}
.method-card h3{font-size:.95rem;margin-bottom:5px;}
.method-card p{font-size:.83rem;color:var(--brown);margin:0;}

/* ============ SCOPE (does / does not) ============ */
.scope-grid{display:grid;grid-template-columns:1fr;gap:16px;max-width:900px;margin:0 auto;}
@media(min-width:700px){.scope-grid{grid-template-columns:1fr 1fr;}}
.scope-card{border-radius:var(--radius);padding:20px;border:1.5px solid var(--gold-line);}
.scope-card.scope-yes{background:#F3F8F4;border-color:#CFE6D6;}
.scope-card.scope-no{background:#FCF3F3;border-color:#F0D3D3;}
.scope-card h3{font-size:1rem;margin-bottom:10px;}
.scope-card.scope-yes h3{color:var(--good);}
.scope-card.scope-no h3{color:var(--bad);}
.scope-card ul{margin:0;padding-left:18px;font-size:.88rem;color:var(--brown);}
.scope-card li{margin-bottom:6px;}

/* ============ CALCULATOR ============ */
#calculator{background:var(--card);border-top:1px solid var(--gold-line);border-bottom:1px solid var(--gold-line);}
.calc-card{position:relative;background:var(--cream);border:1px solid var(--gold-line);border-radius:22px;padding:24px 18px;max-width:640px;margin:0 auto;box-shadow:var(--shadow);}
.calc-corner{position:absolute;width:26px;height:26px;border-color:var(--gold);opacity:.55;}
.calc-corner.tl{top:10px;left:10px;border-top:2px solid;border-left:2px solid;border-radius:6px 0 0 0;}
.calc-corner.br{bottom:10px;right:10px;border-bottom:2px solid;border-right:2px solid;border-radius:0 0 6px 0;}
.calc-progress{display:flex;align-items:center;gap:6px;margin-bottom:22px;justify-content:center;}
.calc-progress .pip{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;background:#fff;color:var(--muted);border:2px solid var(--gold-line);flex:none;}
.calc-progress .pip.active{background:var(--maroon);color:#fff;border-color:var(--maroon);}
.calc-progress .pip.done{background:var(--gold);color:#fff;border-color:var(--gold);}
.calc-progress .bar{width:28px;height:2px;background:var(--gold-line);}
.calc-step{display:none;}
.calc-step.active{display:block;}
.calc-step h3{text-align:center;font-size:1.15rem;margin-bottom:4px;}
.calc-step .step-note{text-align:center;color:var(--muted);font-size:.84rem;margin-bottom:20px;}
.field{margin-bottom:15px;}
.field label{display:block;font-size:.88rem;font-weight:600;color:var(--brown);margin-bottom:6px;}
.field .req{color:var(--bad);}
.field .opt{font-weight:400;color:var(--muted);font-size:.76rem;}
.field input[type=text], .field select{width:100%;padding:13px 14px;border-radius:11px;border:1.5px solid var(--gold-line);background:#fff;font-family:inherit;font-size:1rem;color:var(--ink);min-height:48px;}
.field input:focus, .field select:focus{border-color:var(--maroon);}
.calc-actions{display:flex;gap:10px;justify-content:space-between;margin-top:6px;}
.calc-actions .btn{width:auto;flex:1;}
.helper{font-size:.79rem;color:var(--brown);background:var(--cream2);padding:11px 13px;border-radius:var(--radius-sm);margin-top:-3px;margin-bottom:16px;border-left:3px solid var(--gold);}

/* ---- Calculation loading sequence ---- */
.calc-loading{display:none;text-align:center;padding:20px 6px;}
.calc-loading.active{display:block;}
.calc-loading .wheel-spin{width:76px;height:76px;margin:0 auto 18px;animation:spin 3.2s linear infinite;}
@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
.calc-loading .stage-text{font-size:.96rem;color:var(--brown);font-weight:600;min-height:1.4em;}
.calc-loading .stage-dots{display:flex;justify-content:center;gap:6px;margin-top:14px;}
.calc-loading .stage-dots span{width:6px;height:6px;border-radius:50%;background:var(--gold-line);}
.calc-loading .stage-dots span.on{background:var(--gold);}
@media (prefers-reduced-motion: reduce){ .calc-loading .wheel-spin{animation:none;} }

/* ============ RESULTS ============ */
#results{display:none;}
#results.show{display:block;}
.result-hero{text-align:center;background:linear-gradient(180deg,#fff,var(--cream2));border:1px solid var(--gold-line);border-radius:22px;padding:30px 18px;margin-bottom:24px;}
.score-ring{width:130px;height:130px;margin:0 auto 12px;position:relative;}
.score-ring svg{transform:rotate(-90deg);}
.score-ring .bgring{stroke:var(--cream2);}
.score-ring .fgring{stroke:var(--gold);stroke-linecap:round;transition:stroke-dashoffset .6s ease;}
.score-ring .num{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.score-ring .num .big{font-family:var(--font-display);font-size:1.7rem;font-weight:700;color:var(--maroon-dark);line-height:1;}
.score-ring .num .small{font-size:.68rem;color:var(--muted);}
.status-pill{display:inline-block;margin-top:6px;padding:8px 18px;border-radius:999px;font-weight:700;font-size:.86rem;}
.status-pill.good{background:#E4F1E8;color:var(--good);}
.status-pill.mid{background:#FBF0DA;color:var(--partial);}
.status-pill.low{background:#FBE6E6;color:var(--bad);}
.result-hero .note{max-width:54ch;margin:14px auto 0;color:var(--brown);font-size:.85rem;}
.before-use-box{max-width:54ch;margin:16px auto 0;background:#fff;border:1px dashed var(--gold-line);border-radius:var(--radius-sm);padding:12px 16px;text-align:left;}
.before-use-box b{color:var(--maroon-dark);font-size:.86rem;display:block;margin-bottom:4px;}
.before-use-box p{margin:0;font-size:.82rem;color:var(--brown);}

.persons-compare{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px;}
.person-card{background:var(--card);border:1px solid var(--gold-line);border-radius:var(--radius);padding:16px;}
.person-card .role{font-size:.72rem;letter-spacing:.04em;color:var(--gold);font-weight:700;margin-bottom:4px;}
.person-card .pname{font-family:var(--font-display);font-size:1.02rem;color:var(--maroon-dark);margin-bottom:8px;}
.person-card .row{margin-bottom:4px;font-size:.83rem;color:var(--brown);}
.person-card .row b{font-weight:600;}

.important-head{display:flex;align-items:center;gap:8px;margin-bottom:12px;}
.important-head h3{margin:0;font-size:1.05rem;}
.important-head .badge{background:var(--maroon);color:#fff;font-size:.68rem;font-weight:700;padding:3px 10px;border-radius:999px;}

.porutham-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:24px;}
@media(min-width:700px){.porutham-grid{grid-template-columns:1fr 1fr;}}
.p-card{background:var(--card);border:1px solid var(--gold-line);border-radius:var(--radius);padding:14px 16px;}
.p-card.essential-fail{border-color:var(--bad);background:#FFF7F7;}
.p-card summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;font-weight:700;flex-wrap:wrap;}
.p-card summary::-webkit-details-marker{display:none;}
.p-card .icon{width:25px;height:25px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.85rem;font-weight:700;}
.icon.match{background:var(--good);} .icon.no_match{background:var(--bad);} .icon.partial{background:var(--partial);}
.p-card .title-en{font-size:.7rem;color:var(--muted);font-weight:400;display:block;}
.p-card .status-word{margin-left:auto;font-size:.78rem;font-weight:700;}
.status-word.match{color:var(--good);} .status-word.no_match{color:var(--bad);} .status-word.partial{color:var(--partial);}
.p-card .essential-tag{font-size:.65rem;background:var(--cream2);color:var(--brown);padding:2px 8px;border-radius:999px;}
.p-card .explain{margin-top:9px;font-size:.85rem;color:var(--brown);padding-top:9px;border-top:1px dashed var(--gold-line);}

.essential-callout{background:#FBF0DA;border-left:4px solid var(--gold);border-radius:0 var(--radius) var(--radius) 0;padding:15px 16px;margin-bottom:24px;font-size:.87rem;color:var(--brown);}
.essential-callout strong{color:var(--maroon-dark);}

.result-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;}
.result-actions .btn{width:100%;font-size:.86rem;padding:12px 10px;}
.result-actions .full{grid-column:1/-1;}
.disclaimer{background:var(--maroon-deep);color:#F1E2CB;border-radius:var(--radius);padding:17px 18px;font-size:.8rem;line-height:1.7;}

/* ============ PORUTHAMS EXPLAINED ============ */
.porutham-explain-grid{display:grid;grid-template-columns:1fr;gap:14px;}
@media(min-width:640px){.porutham-explain-grid{grid-template-columns:1fr 1fr;}}
@media(min-width:980px){.porutham-explain-grid{grid-template-columns:1fr 1fr 1fr;}}
.pe-card{background:var(--card);border:1px solid var(--gold-line);border-radius:var(--radius-sm);padding:16px;}
.pe-card h3{font-size:.96rem;margin-bottom:6px;}
.pe-card p{font-size:.83rem;color:var(--brown);margin:0;}

/* ============ FAQ ============ */
.faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:10px;}
.faq-item{background:var(--card);border:1px solid var(--gold-line);border-radius:var(--radius-sm);padding:4px 16px;}
.faq-item summary{padding:14px 0;cursor:pointer;font-weight:700;font-size:.94rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--maroon-dark);}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-size:1.3rem;color:var(--gold);transition:transform .15s;flex:none;}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item .a{padding:0 0 14px;font-size:.87rem;color:var(--brown);}

/* ============ CTA BAND (pattern background — no photo, per single-hero-image rule) ============ */
.cta-band{position:relative;padding:56px 0;color:#fff;overflow:hidden;}
.cta-band.cta-band-pattern{
  background:
    radial-gradient(circle at 15% 20%, rgba(232,206,154,.12) 0, transparent 40%),
    radial-gradient(circle at 85% 80%, rgba(232,206,154,.10) 0, transparent 40%),
    linear-gradient(160deg,var(--maroon-dark),var(--maroon-deep));
}
.cta-band .overlay{position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(45deg, rgba(232,206,154,.05) 0 2px, transparent 2px 40px);
}
.cta-band .content{position:relative;text-align:center;max-width:640px;margin:0 auto;padding:0 18px;}
.cta-band h2{color:#fff;font-size:clamp(1.35rem,4.6vw,1.9rem);}
.cta-band p{color:rgba(255,255,255,.85);}

/* ============ CONTACT (email-only, no form) ============ */
.contact-email-card{
  background:linear-gradient(160deg,var(--maroon),var(--maroon-deep));
  border-radius:var(--radius);padding:38px 24px;text-align:center;color:#fff;
  box-shadow:var(--shadow);position:relative;overflow:hidden;
}
.contact-email-card::before{content:"";position:absolute;inset:10px;border:1px solid rgba(232,206,154,.3);border-radius:12px;pointer-events:none;}
.contact-email-ic{width:56px;height:56px;border-radius:50%;background:rgba(232,206,154,.15);border:1.5px solid var(--gold-soft);color:var(--gold-soft);font-size:1.5rem;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
.contact-email-link{display:inline-block;font-family:var(--font-display);font-size:clamp(1.05rem,4vw,1.35rem);color:#fff;font-weight:700;text-decoration:none;word-break:break-all;border-bottom:1.5px dashed var(--gold-soft);padding-bottom:4px;}
.contact-email-link:hover{color:var(--gold-soft);}
.contact-email-actions{display:flex;flex-direction:column;gap:10px;justify-content:center;margin-top:22px;max-width:320px;margin-left:auto;margin-right:auto;}
@media(min-width:480px){.contact-email-actions{flex-direction:row;}.contact-email-actions .btn{width:auto;flex:1;}}
.contact-email-note{font-size:.8rem;color:rgba(255,255,255,.65);margin:18px 0 0;}

/* ============ FOOTER ============ */
footer{background:var(--maroon-deep);color:rgba(255,255,255,.72);padding:36px 0 22px;}
.foot-grid{display:grid;grid-template-columns:1fr;gap:26px;margin-bottom:26px;}
@media(min-width:700px){.foot-grid{grid-template-columns:1.3fr 1fr 1fr;}}
footer h4{color:#fff;font-family:var(--font-display);font-size:1rem;margin-bottom:12px;}
footer .flogo{display:flex;align-items:center;gap:8px;color:#fff;font-family:var(--font-display);font-weight:700;font-size:1.05rem;margin-bottom:10px;}
footer p{font-size:.85rem;}
.foot-links{display:flex;flex-direction:column;gap:9px;}
.foot-links a{text-decoration:none;font-size:.85rem;color:rgba(255,255,255,.72);}
.foot-links a:hover{color:var(--gold-soft);}
.foot-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;text-align:center;font-size:.78rem;color:rgba(255,255,255,.55);}

/* ============ TOAST ============ */
#toastHost{position:fixed;left:0;right:0;bottom:18px;display:flex;flex-direction:column;align-items:center;gap:8px;z-index:999;pointer-events:none;}
.toast{background:var(--maroon-deep);color:#F7ECD9;padding:12px 20px;border-radius:999px;font-size:.86rem;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.25);opacity:0;transform:translateY(10px);transition:opacity .25s ease, transform .25s ease;max-width:90vw;text-align:center;}
.toast.show{opacity:1;transform:translateY(0);}

/* ============ PRINT REPORT (hidden on screen, shown on print) ============ */
.print-report{display:none;}
@page{ size:A4 portrait; margin:12mm; }
@media print{
  body *{visibility:hidden;}
  .print-report, .print-report *{visibility:visible;}
  .print-report{display:block !important; position:absolute; top:0; left:0; width:100%; }
  header, footer, #toastHost, .cta-band{display:none !important;}
}
.pr-page{font-family:'Noto Sans Tamil','Noto Sans',sans-serif;color:#2C1810;border:1.5px solid #C9972F;border-radius:10px;padding:16px 18px;}
.pr-page .pr-inner-border{border:1px solid #E3D2AC;border-radius:6px;padding:14px 16px;}
.pr-header{text-align:center;border-bottom:1px solid #E3D2AC;padding-bottom:10px;margin-bottom:12px;}
.pr-header .brand{font-family:'Noto Serif Tamil',serif;font-size:1.3rem;color:#5A0F19;font-weight:700;}
.pr-header .sub{font-size:.72rem;color:#8A7460;margin-top:2px;}
.pr-couple{display:flex;justify-content:space-between;gap:14px;margin-bottom:12px;}
.pr-col{flex:1;font-size:.78rem;}
.pr-col h4{margin:0 0 4px;color:#7A1522;font-size:.85rem;font-family:'Noto Serif Tamil',serif;}
.pr-col div{margin-bottom:2px;}
.pr-score{text-align:center;margin:12px 0;}
.pr-score .big{font-family:'Noto Serif Tamil',serif;font-size:1.8rem;color:#5A0F19;font-weight:700;}
.pr-score .lvl{font-size:.82rem;font-weight:700;color:#C9972F;margin-top:2px;}
.pr-table{width:100%;border-collapse:collapse;font-size:.72rem;margin-bottom:10px;}
.pr-table td{padding:4px 6px;border-bottom:1px dotted #E3D2AC;}
.pr-table .st{text-align:right;font-weight:700;}
.pr-important{background:#FBF0DA;border-radius:6px;padding:8px 10px;font-size:.72rem;margin-bottom:10px;}
.pr-important b{color:#5A0F19;}
.pr-footer{font-size:.65rem;color:#8A7460;border-top:1px solid #E3D2AC;padding-top:8px;text-align:center;line-height:1.5;}

/* ============ LEGAL PAGES ============ */
.legal-content{max-width:760px;margin:0 auto;padding:36px 18px 60px;}
.legal-content h1{font-size:1.6rem;}
.legal-content h2{font-size:1.15rem;margin-top:1.6em;}
.legal-content p, .legal-content li{color:var(--brown);font-size:.94rem;}
.legal-content .updated{color:var(--muted);font-size:.82rem;margin-bottom:1.5em;}
.legal-back{display:inline-block;margin-bottom:20px;color:var(--maroon);font-weight:700;text-decoration:none;font-size:.9rem;}
