/* ═══════════════════════════════════════════════════════════
   Resona - Product Page Styles
   Requires: design-system.css, components.css
   ═══════════════════════════════════════════════════════════ */

/* ── RESONA HERO ──────────────────────────────────────────── */
.rn-hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;
  align-items:center;padding-top:calc(var(--nav-h) + var(--abar-h));
  position:relative;overflow:hidden;gap:var(--sp-8)}
.rn-hero::before{content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 55% 70% at 85% 45%,rgba(232,117,106,.06),transparent);
  pointer-events:none}

.rn-hero-left{padding:var(--sp-16) 0 var(--sp-16) var(--sp-10);position:relative;z-index:2}
.rn-hero-right{display:flex;align-items:center;justify-content:center;
  padding:var(--sp-16) var(--sp-10) var(--sp-16) 0;position:relative;z-index:2}

.rn-logo-wrap img{height:56px;width:auto;object-fit:contain;
  filter:drop-shadow(0 4px 18px var(--rn-g));margin-bottom:var(--sp-4)}
.rn-tagline{font-size:var(--text-lead);color:var(--text-2);line-height:1.7;
  margin-bottom:var(--sp-8);max-width:420px}

/* Emotional claim */
.rn-claim{font-family:var(--font-display);font-size:clamp(2rem,3.8vw,3.2rem);
  font-weight:600;letter-spacing:-.02em;line-height:1.15;margin-bottom:var(--sp-6);
  background:linear-gradient(135deg,var(--rn-l),var(--rn),#c94a3f);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
[data-theme="light"] .rn-claim{background:linear-gradient(135deg,#c94a3f,var(--rn));
  -webkit-background-clip:text;background-clip:text}

.rn-privacy-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:var(--sp-8)}
.rn-privacy-pill{font-size:var(--text-xs);font-weight:700;padding:.2rem .7rem;
  border-radius:var(--radius-pill);background:var(--rn-d);color:var(--rn-l);
  border:1px solid var(--rn-b);letter-spacing:.04em}

/* Emotional ring illustration */
.rn-ring{position:relative;width:320px;height:320px;flex-shrink:0}
.rn-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:80px;height:80px;border-radius:50%;
  background:radial-gradient(circle at 35% 35%,var(--rn-l),var(--rn),#c94a3f);
  box-shadow:0 0 50px rgba(232,117,106,.4),0 0 100px rgba(232,117,106,.12);
  display:flex;align-items:center;justify-content:center;font-size:2rem;z-index:10}
.rn-orbit-1{position:absolute;top:50%;left:50%;width:180px;height:180px;
  transform:translate(-50%,-50%);border-radius:50%;
  border:1px dashed rgba(232,117,106,.3);animation:orbit-cw 10s linear infinite}
.rn-orbit-2{position:absolute;top:50%;left:50%;width:290px;height:290px;
  transform:translate(-50%,-50%);border-radius:50%;
  border:1px dashed rgba(232,117,106,.15);animation:orbit-ccw 16s linear infinite}
.rn-sat{position:absolute;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:.75rem;font-weight:700;
  background:var(--bg-c);border:1px solid var(--rn-b);box-shadow:var(--shadow-sm)}
.rn-sat-1a{width:36px;height:36px;top:50%;left:-18px;transform:translateY(-50%);
  animation:counter-cw 10s linear infinite;font-size:1.1rem}
.rn-sat-1b{width:36px;height:36px;top:-18px;left:50%;transform:translateX(-50%);
  animation:counter-cw 10s linear infinite;font-size:1.1rem}
.rn-sat-2a{width:42px;height:42px;top:50%;right:-21px;transform:translateY(-50%);
  animation:counter-ccw 16s linear infinite;font-size:1.2rem}
.rn-sat-2b{width:42px;height:42px;bottom:-21px;left:50%;transform:translateX(-50%);
  animation:counter-ccw 16s linear infinite;font-size:1.2rem}

@keyframes orbit-cw{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes orbit-ccw{to{transform:translate(-50%,-50%) rotate(-360deg)}}
@keyframes counter-cw{to{transform:translateY(-50%) rotate(-360deg)}}
@keyframes counter-ccw{to{transform:translateX(-50%) rotate(360deg)}}

/* ── RESONA TAB CONTENT SECTIONS ──────────────────────────── */
.rn-section{padding:var(--sp-10) 0}

/* Persona grid */
.persona-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4);margin-bottom:var(--sp-10)}
.persona-card{background:var(--bg-c);border:1px solid var(--b1);border-radius:var(--radius-xl);
  padding:var(--sp-8) var(--sp-5) 1.75rem;text-align:center;position:relative;
  overflow:hidden;transition:transform var(--ease-base),border-color var(--ease-base),box-shadow var(--ease-base)}
.persona-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--rn),transparent);
  opacity:0;transition:opacity var(--ease-base)}
.persona-card:hover{transform:translateY(-5px);border-color:var(--rn-b);box-shadow:var(--shadow-rn)}
.persona-card:hover::after{opacity:1}
.persona-em{font-size:3.2rem;display:block;margin-bottom:.75rem;transition:transform .3s ease}
.persona-card:hover .persona-em{transform:scale(1.12)}
.persona-name{font-family:var(--font-display);font-size:1.05rem;font-weight:600;
  color:var(--text-1);margin-bottom:.5rem;line-height:1.2}
.persona-use{font-size:var(--text-xs);font-weight:700;padding:.2rem .65rem;
  border-radius:var(--radius-pill);background:var(--rn-d);color:var(--rn-l);
  border:1px solid var(--rn-b);display:inline-block}

/* Journey flow */
.journey-wrap{background:var(--bg-c);border:1px solid var(--b1);border-radius:var(--radius-xl);
  padding:var(--sp-8);position:relative;overflow:hidden}
.journey-wrap::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--rn),#f5b8b3,var(--rn))}
.journey-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--rn);margin-bottom:1.75rem}
.journey{display:flex;align-items:flex-start;position:relative}
.journey::before{content:'';position:absolute;top:35px;left:calc(10% + 18px);
  right:calc(10% + 18px);height:1px;
  background:linear-gradient(90deg,var(--rn-b),var(--rn),var(--rn-b));z-index:0}
.j-step{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;
  position:relative;z-index:1}
.j-circle{width:70px;height:70px;border-radius:50%;background:var(--bg);
  border:2px solid var(--rn-b);display:flex;align-items:center;justify-content:center;
  font-size:1.6rem;margin-bottom:.75rem;
  transition:border-color var(--ease-base),box-shadow var(--ease-base),transform var(--ease-base)}
.journey-wrap:hover .j-circle{border-color:var(--rn);box-shadow:0 0 18px var(--rn-g)}
.j-step:hover .j-circle{transform:scale(1.08)}
.j-label{font-size:var(--text-base);font-weight:600;color:var(--text-1);line-height:1.35;padding:0 .25rem}
.j-sub{font-size:var(--text-sm);color:var(--text-2);margin-top:.25rem;line-height:1.35;padding:0 .15rem}

/* Zero stats */
.zero-stats{display:grid;grid-template-columns:repeat(3,1fr);
  background:linear-gradient(135deg,var(--bg-c),var(--bg-ch));
  border:1px solid var(--rn-b);border-radius:var(--radius-xl);overflow:hidden;margin-bottom:var(--sp-6)}
.zs{text-align:center;padding:2.75rem 1.5rem;position:relative}
.zs+.zs{border-left:1px solid var(--rn-b)}
.zs::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:120px;height:120px;
  background:radial-gradient(circle,var(--rn-d),transparent);border-radius:50%;pointer-events:none}
.z-num{font-family:var(--font-display);font-size:5.5rem;font-weight:700;
  color:var(--rn);line-height:1;position:relative}
.z-noun{font-size:var(--text-base);font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:var(--rn-l);margin-top:.35rem;position:relative}
.z-desc{font-size:var(--text-sm);color:var(--text-2);margin-top:.4rem;line-height:1.45;position:relative}

/* Privacy stack (IP abstraction) */
.priv-stack-hdr{display:flex;justify-content:space-between;align-items:center;
  margin-bottom:var(--sp-5);flex-wrap:wrap;gap:.75rem}
.priv-n{font-family:var(--font-display);font-size:4rem;font-weight:700;
  color:var(--rn);line-height:1;text-shadow:0 0 32px rgba(232,117,106,.25)}
.priv-nl{font-size:var(--text-xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase;
  color:var(--rn-l);line-height:1.45;margin-left:.35rem}
.priv-nl em{font-style:normal;font-size:.59rem;font-weight:400;letter-spacing:.02em;
  text-transform:none;color:var(--text-3);display:block;margin-top:.15rem}
.priv-ip-seal{display:flex;align-items:center;gap:.55rem;background:var(--rn-d);
  border:1px solid var(--rn-b);border-radius:var(--radius-lg);padding:.6rem .95rem}
.priv-ip-t{font-size:var(--text-xs);font-weight:700;color:var(--rn-l);line-height:1.5}
.priv-layer{display:flex;align-items:center;gap:.85rem;background:var(--bg-c);
  border:1px solid;border-radius:var(--radius-lg);padding:.75rem 1.1rem;
  margin-bottom:.4rem;transition:all var(--ease-base)}
.priv-layer.vis{border-color:var(--rn-b)}
.priv-layer.vis:hover{background:var(--bg-ch);box-shadow:0 4px 14px var(--rn-g)}
.priv-layer.dim{opacity:.45;border-color:rgba(232,117,106,.1)}
.priv-layer.blr{opacity:.18;filter:blur(3px);user-select:none;pointer-events:none;border-color:var(--b0)}
.priv-ln{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:.63rem;font-weight:700;flex-shrink:0;
  background:var(--rn-d);color:var(--rn);border:1px solid var(--rn-b)}
.priv-layer.dim .priv-ln,.priv-layer.blr .priv-ln{background:var(--b0);color:var(--text-3);border-color:var(--b1)}
.priv-lt{font-size:var(--text-base);font-weight:600;color:var(--text-1)}
.priv-ls{font-size:var(--text-sm);color:var(--text-2);margin-top:.1rem}
.priv-sealed{position:relative;overflow:hidden;border-radius:var(--radius-lg)}
.priv-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 0%,var(--bg) 50%);
  display:flex;align-items:flex-end;justify-content:center;padding-bottom:1.1rem;pointer-events:none}
.priv-lock{display:flex;align-items:center;gap:.55rem;background:var(--bg);
  border:1px solid var(--rn-b);border-radius:var(--radius-md);
  padding:.6rem 1.1rem;box-shadow:0 4px 14px var(--rn-g);pointer-events:all}
.priv-lock-t{font-size:var(--text-xs);color:var(--rn-l);font-weight:600}
.priv-lock-s{font-size:.61rem;color:var(--text-3);margin-top:.1rem}

/* CTA section */
.rn-cta{text-align:center;padding:var(--sp-16) 0;
  background:linear-gradient(135deg,transparent,rgba(232,117,106,.04),transparent)}
.rn-cta-headline{font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.4rem);
  font-weight:600;color:var(--text-1);margin-bottom:var(--sp-4);line-height:1.2}
.rn-cta-sub{font-size:var(--text-base);color:var(--text-2);margin-bottom:var(--sp-8)}
.rn-cta-privacy{font-size:var(--text-xs);color:var(--text-3);margin-top:var(--sp-4);
  letter-spacing:.04em}

/* ── RESPONSIVE ───────────────────────────────────────────── */
@media(max-width:900px){
  .rn-hero{grid-template-columns:1fr}
  .rn-hero-right{display:none}
  .rn-hero-left{padding:var(--sp-16) var(--sp-10)}
  .persona-grid{grid-template-columns:repeat(2,1fr)}
  .zero-stats{grid-template-columns:1fr}.zs+.zs{border-left:none;border-top:1px solid var(--rn-b)}
  .journey::before{display:none}.journey{flex-wrap:wrap;gap:1.25rem}
  .j-step{min-width:calc(50% - .75rem)}
}
@media(max-width:600px){
  .rn-hero-left{padding:var(--sp-12) var(--sp-6)}
  .persona-grid{grid-template-columns:1fr}
  .priv-n{font-size:3rem}
  .priv-stack-hdr{align-items:flex-start}
}

/* ── RN-03: Journey steps full-width at 480px (2-up too cramped at 360px) ── */
@media(max-width:480px){
  .j-step{min-width:100%}
}

/* ── RN-04: Zero-stats padding reduction on small screens ─── */
@media(max-width:480px){
  .zs{padding:1.75rem 1rem}
}

/* ── Priority 4: font-size floors ──────────────────────────── */
@media(max-width:480px){
  .persona-card p{font-size:.8125rem}
  .priv-nl em{font-size:.75rem}
  .priv-n{font-size:2.2rem}
  .rn-cta-privacy{font-size:.8125rem}
  .rn-cta{padding:var(--sp-10) 0}
}

/* === Migrated from inline <style> block === */

/* ── RESONA PAGE-SPECIFIC ─────────────────────────────────── */
.rn-tab-bar{position:sticky;top:calc(var(--nav-h) + var(--abar-h));z-index:900;
  background:var(--bg-glass);backdrop-filter:blur(20px);
  border-bottom:1px solid var(--b1)}
[data-theme="light"] .rn-tab-bar{background:var(--bg-glass)}
.rn-tab-list{max-width:var(--max-w);margin:0 auto;padding:0 var(--sp-10);
  display:flex;overflow-x:auto;scrollbar-width:none}
.rn-tab-list::-webkit-scrollbar{display:none}
.rn-panel{padding:5rem 0}
.rn-panel-inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--sp-10)}

.sec-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--rn);margin-bottom:.65rem}
.sec-title{font-family:var(--font-display);font-size:clamp(1.6rem,2.6vw,2.2rem);
  font-weight:600;color:var(--text-1);letter-spacing:-.015em;line-height:1.2;margin-bottom:1rem}
.sec-sub{font-size:var(--text-md);color:var(--text-2);line-height:1.75;
  max-width:640px;margin-bottom:2.75rem}

/* Moat grid */
.moat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-5);margin-top:var(--sp-8)}
.moat-card{background:var(--bg-c);border:1px solid var(--b1);border-radius:var(--radius-xl);
  padding:1.75rem;position:relative;overflow:hidden;
  transition:border-color var(--ease-base),box-shadow var(--ease-base)}
.moat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--rn),transparent);opacity:0;transition:opacity var(--ease-base)}
.moat-card:hover{border-color:var(--rn-b);box-shadow:var(--shadow-rn)}
.moat-card:hover::before{opacity:1}
.moat-num{font-family:var(--font-display);font-size:3.2rem;font-weight:700;
  color:var(--rn-d);line-height:.9;position:absolute;top:.85rem;right:1rem;
  -webkit-text-stroke:1px var(--rn-b);pointer-events:none;z-index:0}
.moat-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;
  color:var(--rn-l);margin-bottom:.4rem;padding-right:3.25rem;position:relative;z-index:1}
.moat-desc{font-size:var(--text-base);color:var(--text-2);line-height:1.65;position:relative;z-index:1}

/* Differentiator compare */
.diff-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5);margin-top:2.5rem}
.diff-card{background:var(--bg-c);border:1px solid var(--b1);border-radius:var(--radius-lg);
  padding:1.4rem;text-align:center}
.diff-em{font-size:2.2rem;display:block;margin-bottom:.6rem}
.diff-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;
  letter-spacing:.08em;color:var(--rn);margin-bottom:.3rem}
.diff-desc{font-size:var(--text-base);color:var(--text-2);line-height:1.55}

/* Architecture intro */
.arch-intro{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-12);
  align-items:start;margin-bottom:3.5rem}
.arch-claim{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,2rem);
  font-weight:600;color:var(--text-1);line-height:1.3;margin-bottom:1rem}
.arch-quote{font-family:var(--font-display);font-style:italic;font-size:var(--text-md);
  color:var(--rn-l);border-left:2px solid var(--rn-b);padding-left:1.2rem;line-height:1.6;
  margin:0}

/* Try-It CTA */
.rn-try-wrap{min-height:420px;display:flex;flex-direction:column;align-items:center;
  justify-content:center;text-align:center;
  background:linear-gradient(135deg,var(--bg),var(--rn-gl),var(--bg));
  border-radius:var(--radius-2xl);border:1px solid var(--rn-b);
  padding:4rem 2rem;position:relative;overflow:hidden}
.rn-try-wrap::before{content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 70% at 50% 50%,var(--rn-gl),transparent);
  pointer-events:none}
.rn-try-headline{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.4rem);
  font-weight:600;color:var(--text-1);line-height:1.15;margin-bottom:1rem;position:relative}
.rn-try-sub{font-size:var(--text-base);color:var(--text-2);margin-bottom:2.25rem;
  max-width:480px;position:relative;line-height:1.7}
.rn-try-btns{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;position:relative}
.rn-try-fine{font-size:var(--text-xs);color:var(--text-3);margin-top:1.25rem;
  letter-spacing:.04em;position:relative}

/* "What we do not collect" - explicit transparency block */
.rn-nocollect{margin-top:2.25rem;background:var(--bg-c);border:1px solid var(--rn-b);
  border-radius:var(--radius-xl);padding:1.65rem 1.75rem}
.rn-nocollect-hdr{font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--rn-l);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}
.rn-nocollect-hdr::before{content:'✕';color:var(--rn);font-weight:700;font-size:1rem}
.rn-nocollect-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem .9rem;list-style:none;
  padding:0;margin:0}
.rn-nocollect-grid li{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:var(--text-sm);color:var(--text-2);line-height:1.5;padding:.3rem 0;
  border-bottom:1px dashed var(--b0);letter-spacing:.005em}
.rn-fineprint{margin-top:1rem;font-size:var(--text-xs);color:var(--text-3);line-height:1.6;
  letter-spacing:.01em;font-style:italic;max-width:720px}
@media(max-width:768px){.rn-nocollect-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.rn-nocollect-grid{grid-template-columns:1fr}}

@media(max-width:900px){
  .moat-grid{grid-template-columns:1fr}
  .diff-row{grid-template-columns:1fr}
  .arch-intro{grid-template-columns:1fr}
}
@media(max-width:768px){
  .rn-tab-list{padding:0 var(--sp-6)}
  .rn-panel-inner{padding:0 var(--sp-6)}
  .rn-panel{padding:3rem 0}
}
@media(max-width:480px){
  .rn-tab-list{padding:0 var(--sp-5)}
  .rn-panel-inner{padding:0 var(--sp-5)}
}

/* ── X-03: Tab bar safe-area-inset-top for iOS notch ─────── */
.rn-tab-bar{top:calc(var(--nav-h) + var(--abar-h) + env(safe-area-inset-top,0px))}

/* ── RN-13: Tab bar scroll affordance — right fade ─────────── */
.rn-tab-bar{overflow:hidden;position:relative}
.rn-tab-bar::after{
  content:'';position:absolute;right:0;top:0;bottom:0;width:48px;
  background:linear-gradient(to right,transparent,var(--bg));
  pointer-events:none;z-index:1}
[data-theme="light"] .rn-tab-bar::after{background:linear-gradient(to right,transparent,var(--bg))}

/* ── RN-12: Try-It CTAs stack + centre on small screens ────── */
@media(max-width:480px){
  .rn-try-btns{flex-direction:column;align-items:center}
  .rn-try-btns .btn{width:100%;max-width:320px}
}

/* ── Priority 4: font-size floors ──────────────────────────── */
.rn-eyebrow{font-size:var(--text-xs)}
.rn-hero-fine{font-size:var(--text-xs)}
@media(max-width:480px){
  .rn-fineprint{font-size:var(--text-xs)}
  .rn-cta-privacy{font-size:.8125rem}
  .rn-eyebrow{font-size:var(--text-xs)}
  .rn-hero-fine{font-size:var(--text-xs)}
  .rn-nocollect-grid li{font-size:.8125rem}
}

/* === Migrated from style="" attributes === */

/* Hero: logo fallback text (display:none remains on element, toggled by JS onerror) */
.rn-logo-fallback{
  font-family:var(--font-display);font-size:2.4rem;font-weight:600;color:var(--rn-l)
}

/* Hero: Hindi tagline */
.rn-hindi-tagline{
  font-family:var(--font-hindi);font-size:1rem;font-weight:500;
  color:var(--rn-l);letter-spacing:.03em;margin:.6rem 0 1rem 0
}

/* Hero: .rn-eyebrow full definition (redundant inline removed) */
.rn-eyebrow{
  font-size:var(--text-xs);font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--rn-l);margin-bottom:.55rem
}

/* Hero: .rn-hero-fine full definition (redundant inline removed) */
.rn-hero-fine{
  font-size:var(--text-xs);color:var(--text-3);margin:0;line-height:1.6
}

/* Hero: email link inside .rn-hero-fine */
.rn-hero-fine-link{color:var(--rn-l);text-decoration:none}

/* Overview: persona card sub-paragraph */
.persona-card-sub{font-size:var(--text-sm);color:var(--text-2);margin-top:.6rem;line-height:1.5}

/* Architecture: intro body paragraph */
.arch-intro-body{
  font-size:var(--text-md);color:var(--text-2);line-height:1.75;max-width:480px;margin:0
}

/* Privacy stack: hdr inner flex row */
.priv-hdr-inner{display:flex;align-items:baseline;gap:.45rem}

/* Privacy stack: IP seal lock icon */
.priv-ip-icon{font-size:1rem}

/* Privacy stack: IP seal fine-print span */
.priv-lock-s-fine{font-weight:400;color:var(--text-3)}

/* Privacy overlay: lock icon */
.priv-lock-icon{font-size:1.1rem}

/* Modals: contact block */
.modal-contact-block{
  background:var(--bg-s);border:1px solid var(--b0);
  border-radius:10px;padding:1.2rem 1.4rem;margin-bottom:1.4rem
}
.modal-contact-name{color:var(--text-1)}
.modal-contact-email{color:var(--gold)}
.modal-contact-last{margin-bottom:0}
.modal-contact-links{
  display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;
  padding-top:1.1rem;border-top:1px solid var(--b0)
}

/* Modals: privacy fine-print */
.modal-privacy-fine{margin-top:1.5rem;font-size:0.85em;opacity:0.7}

@media(max-width:480px){
  .rn-tagline{font-size:var(--text-md)}
}

/* ── LIGHT THEME OVERRIDES ────────────────────────────────── */
/* Decorative watermark numbers: more opaque on light bg */
[data-theme="light"] .moat-num{
  color:rgba(170,63,54,.30);
  -webkit-text-stroke:1px rgba(170,63,54,.56)
}
/* Card titles: use near-black instead of brand-coral on light bg */
[data-theme="light"] .moat-title{color:var(--text-1)}
/* Italic quote block: near-black for readability on light bg */
[data-theme="light"] .arch-quote{color:var(--text-1)}
/* Orbit rings: darken dashed borders for white background */
[data-theme="light"] .rn-orbit-1{border-color:rgba(170,63,54,.60)}
[data-theme="light"] .rn-orbit-2{border-color:rgba(170,63,54,.40)}
/* rn-core: reduce large glow that creates phantom ring on white bg */
[data-theme="light"] .rn-core{
  box-shadow:0 0 30px rgba(232,117,106,.30)
}
