/* Homepage typography: Fraunces (headings) + Manrope (text).
   Scoped to the homepage content only; header, footer and other pages are unchanged. */
.home #content{
	--serif:'Fraunces','Playfair Display',Georgia,serif;
	--sans:'Manrope','DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
	font-family:var(--sans);
	-webkit-font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
.home #content h1,.home #content h2,.home #content h3{font-weight:600;font-kerning:normal;font-optical-sizing:auto}
.home #content .hero h1{font-weight:700;font-size:clamp(42px,5.6vw,80px);line-height:1.04;letter-spacing:-.03em}
.home #content h1 em,.home #content h2 em{font-style:italic;font-weight:500}
.home #content .section-heading h2,.home #content .about-strip h2{font-weight:600;font-size:clamp(34px,4.4vw,56px);line-height:1.08;letter-spacing:-.025em}
.home #content .nexus-card h3,.home #content .book-card h3{font-weight:600;font-size:clamp(23px,2.5vw,30px);line-height:1.15;letter-spacing:-.015em}
.home #content .statement blockquote{font-style:italic;font-weight:500;font-size:clamp(27px,3.5vw,46px);line-height:1.28;letter-spacing:-.015em}
.home #content .cta-band h2{font-weight:600;font-size:clamp(30px,3.6vw,42px);line-height:1.12;letter-spacing:-.02em}
.home #content .hero-lead,.home #content .lead{font-size:clamp(16px,1.5vw,18.5px);line-height:1.8;font-weight:400;letter-spacing:.005em}
.home #content .eyebrow{font-weight:800;letter-spacing:.26em;font-size:11px}
.home #content .btn{font-weight:700;letter-spacing:.03em}
.home #content .nexus-card>span,.home #content .book-card>span{font-weight:800;letter-spacing:.2em}
.home #content .hero-meta,.home #content .signature{letter-spacing:.14em;font-weight:600}
.home #content .nexus-card p,.home #content .book-card p,.home #content .section-heading>p{line-height:1.75}

/* About strip visual: five worlds orbiting the RS monogram */
.home #content .orbit-visual{position:relative;overflow:hidden;display:block;aspect-ratio:4/5;min-height:0;isolation:isolate}
.home #content .orbit-visual::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 50% 46%,rgba(255,255,255,.16),transparent 58%),radial-gradient(circle at 85% 12%,rgba(120,190,255,.22),transparent 40%)}
.home #content .orbit{position:absolute;left:50%;top:47%;width:min(90%,440px);aspect-ratio:1;transform:translate(-50%,-50%);container-type:inline-size;z-index:1}
.home #content .o-ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.2)}
.home #content .o-ring.r1{inset:18%}
.home #content .o-ring.r2{inset:26%;border-style:dashed;border-color:rgba(255,255,255,.16)}
.home #content .o-spin{position:absolute;inset:0;animation:rsOrbit 80s linear infinite}
.home #content .o-node{position:absolute;top:50%;left:50%;width:0;height:0;transform:rotate(var(--a))}
.home #content .o-node i{position:absolute;left:32cqw;top:0;transform:translate(-50%,-50%);font-style:normal}
.home #content .o-node b{display:block;white-space:nowrap;padding:.55em 1em;border-radius:99px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;font:700 max(11px,3.1cqw)/1 var(--sans);letter-spacing:.06em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:rsOrbitBack 80s linear infinite}
.home #content .o-node b::before{content:"";display:inline-block;width:.55em;height:.55em;border-radius:50%;margin-right:.6em;vertical-align:.04em;background:var(--c,#9fd3ff);box-shadow:0 0 10px var(--c,#9fd3ff)}
.home #content .o-core{position:absolute;inset:32%;border-radius:50%;display:grid;place-items:center;background:#fff;border:3px solid rgba(255,255,255,.45);box-shadow:0 0 0 10px rgba(255,255,255,.1),0 0 70px rgba(150,205,255,.55)}
.home #content .o-core img{display:block;width:auto;height:66%;max-width:66%;object-fit:contain}
.home #content .o-caption{position:absolute;left:0;right:0;bottom:7%;margin:0;text-align:center;color:#cfe4f7;font:700 11px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;z-index:1}
@keyframes rsOrbit{to{transform:rotate(360deg)}}
@keyframes rsOrbitBack{from{transform:rotate(calc(-1 * var(--a)))}to{transform:rotate(calc(-1 * var(--a) - 360deg))}}
@media (prefers-reduced-motion:reduce){.home #content .o-spin,.home #content .o-node b{animation:none}.home #content .o-node b{transform:rotate(calc(-1 * var(--a)))}}
