:root{
  --ink:#f2edf8;--muted:#a79eb4;--muted2:#7e748d;--night:#07060b;--night2:#0e0b16;
  --violet:#a78bfa;--violet2:#6d4cc7;--gold:#d8bd83;--line:rgba(230,218,255,.14);
  --glass:rgba(18,13,28,.58);--serif:"Iowan Old Style","Palatino Linotype",Palatino,Baskerville,Georgia,serif;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}
*{box-sizing:border-box}html{background:var(--night);scroll-behavior:smooth}
body{margin:0;min-height:100vh;color:var(--ink);font-family:var(--sans);background:
radial-gradient(1000px 700px at 18% -8%,rgba(98,68,153,.32),transparent 70%),
radial-gradient(900px 700px at 85% 12%,rgba(57,63,118,.18),transparent 68%),
linear-gradient(180deg,#09070e 0%,#08060d 52%,#050509 100%);overflow-x:hidden}
body:before,body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1}
body:before{background-image:
radial-gradient(circle at 12% 24%,rgba(255,255,255,.8) 0 1px,transparent 1.4px),
radial-gradient(circle at 26% 71%,rgba(226,210,255,.7) 0 1px,transparent 1.4px),
radial-gradient(circle at 47% 18%,rgba(255,255,255,.55) 0 1px,transparent 1.2px),
radial-gradient(circle at 64% 42%,rgba(255,255,255,.7) 0 1px,transparent 1.4px),
radial-gradient(circle at 82% 70%,rgba(216,189,131,.7) 0 1px,transparent 1.4px),
radial-gradient(circle at 91% 28%,rgba(255,255,255,.5) 0 1px,transparent 1.3px);
background-size:340px 340px,420px 420px,500px 500px,380px 380px,460px 460px,520px 520px;opacity:.24}
body:after{background:linear-gradient(90deg,transparent 49.85%,rgba(255,255,255,.025) 50%,transparent 50.15%);opacity:.25}
a{color:inherit}
.shell{width:min(1180px,calc(100% - 40px));margin:0 auto}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:28px 0 16px}
.wordmark{font-family:var(--serif);font-size:18px;letter-spacing:.26em;text-transform:uppercase}
.wordmark small{display:block;font:600 9px/1 var(--sans);letter-spacing:.42em;color:var(--muted2);margin-top:6px}
.lang-switch{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:4px}
.preview-note{display:none;margin:12px 0 0;padding:9px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#c7b6f4}
.hero{position:relative;min-height:640px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:50px;padding:70px 0 90px}
.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:24px}
.hero h1{font:400 clamp(58px,8.4vw,112px)/.88 var(--serif);letter-spacing:-.055em;margin:0;max-width:760px}
.hero h1 em{font-style:italic;color:#d9c9ef}
.hero p{max-width:620px;margin:30px 0 0;color:#bdb4c8;font-size:17px;line-height:1.75}
.hero-side{display:flex;justify-content:center;align-items:center;min-height:480px;position:relative}
.zodiac-orbit{width:min(410px,74vw);aspect-ratio:1;border:1px solid rgba(216,189,131,.22);border-radius:50%;position:relative;box-shadow:0 0 80px rgba(124,90,185,.06) inset}
.zodiac-orbit:before,.zodiac-orbit:after{content:"";position:absolute;border:1px solid rgba(211,194,239,.14);border-radius:50%;inset:9%}
.zodiac-orbit:after{inset:24%;border-color:rgba(216,189,131,.20)}
.zodiac-center{position:absolute;inset:34%;border-radius:50%;display:grid;place-items:center;font:italic 28px var(--serif);color:#e6d9f7;background:radial-gradient(circle,rgba(107,72,160,.18),transparent 68%)}
.zodiac-center:before{content:"☉";font-style:normal;font-size:38px;color:var(--gold)}
.zodiac-glyph{position:absolute;font:400 19px var(--serif);color:#bbaed0;transform:translate(-50%,-50%)}
.zodiac-orbit .g1{left:50%;top:2%}.zodiac-orbit .g2{left:74%;top:8%}.zodiac-orbit .g3{left:92%;top:26%}.zodiac-orbit .g4{left:98%;top:50%}.zodiac-orbit .g5{left:92%;top:74%}.zodiac-orbit .g6{left:74%;top:92%}.zodiac-orbit .g7{left:50%;top:98%}.zodiac-orbit .g8{left:26%;top:92%}.zodiac-orbit .g9{left:8%;top:74%}.zodiac-orbit .g10{left:2%;top:50%}.zodiac-orbit .g11{left:8%;top:26%}.zodiac-orbit .g12{left:26%;top:8%}
.section-kicker{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted2);margin-bottom:14px}
.section-title{font:400 clamp(38px,5.5vw,72px)/1 var(--serif);letter-spacing:-.04em;margin:0 0 48px}
.products{padding:80px 0 120px;border-top:1px solid var(--line)}
.product-row{display:grid;grid-template-columns:110px 1fr 180px 200px;gap:26px;align-items:center;padding:28px 0;border-top:1px solid var(--line);position:relative}
.product-row:last-child{border-bottom:1px solid var(--line)}
.product-symbol{font:400 42px/1 var(--serif);color:var(--gold);text-align:center;opacity:.9}
.product-main h2{font:400 clamp(28px,3vw,42px)/1.1 var(--serif);margin:0 0 8px;letter-spacing:-.02em}
.product-main p{margin:0;color:var(--muted);line-height:1.6;max-width:640px;font-size:14px}
.product-price{font:400 24px var(--serif);color:#e6d9f7;text-align:right}
.product-action{display:flex;justify-content:flex-end}
.astral-btn{appearance:none;border:1px solid rgba(216,189,131,.36);background:transparent;color:var(--ink);padding:12px 18px;border-radius:999px;font:600 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.25s;text-decoration:none}
.astral-btn:hover{border-color:var(--gold);background:rgba(216,189,131,.08);transform:translateY(-1px)}
.astral-btn[disabled]{opacity:.35;cursor:not-allowed;transform:none;background:transparent}
.editorial-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;padding:110px 0;border-top:1px solid var(--line)}
.editorial-split h2{font:400 clamp(40px,5vw,66px)/1.02 var(--serif);margin:0;letter-spacing:-.04em}
.editorial-split p{color:var(--muted);font-size:15px;line-height:1.75;margin:0 0 18px}
.contact-panel{padding:90px 0;border-top:1px solid var(--line)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.contact-grid h2{font:400 48px/1 var(--serif);margin:0 0 18px}
.contact-form{display:grid;gap:0;border-top:1px solid var(--line)}
.contact-form input,.contact-form textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--ink);padding:18px 0;font:inherit;outline:none}
.contact-form textarea{min-height:120px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:rgba(216,189,131,.5)}
.contact-form .astral-btn{justify-self:start;margin-top:22px}
.footer{padding:44px 0 70px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;color:var(--muted2);font-size:11px;line-height:1.7}
.footer-links a{margin-left:18px;text-decoration:none;color:var(--muted)}
/* modal */
.portal{position:fixed;inset:0;display:none;z-index:60;background:rgba(4,3,8,.89);backdrop-filter:blur(12px);padding:28px;overflow:auto}
.portal.open{display:grid;place-items:center}.intake{width:min(780px,100%);position:relative;border:1px solid rgba(216,189,131,.22);background:linear-gradient(180deg,rgba(18,13,28,.97),rgba(8,6,12,.98));padding:44px clamp(24px,5vw,58px);box-shadow:0 40px 120px rgba(0,0,0,.55)}
.intake:before,.intake:after{content:"✦";position:absolute;color:var(--gold);font-size:12px;opacity:.6}.intake:before{left:-7px;top:-8px}.intake:after{right:-7px;bottom:-8px}
.intake-close{position:absolute;right:22px;top:18px;border:0;background:none;color:var(--muted);font-size:28px;cursor:pointer}
.intake-kicker{font-size:10px;letter-spacing:.27em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.intake h2{font:400 clamp(38px,5vw,58px)/1 var(--serif);margin:0 0 8px}.intake-price{font:italic 18px var(--serif);color:#cdbce1;margin-bottom:28px}
.intake-note{color:var(--muted);line-height:1.6;font-size:13px;margin-bottom:26px;max-width:610px}
.form-section-title{grid-column:1/-1;font:italic 20px var(--serif);color:#dbc9ef;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 26px}
.field.full{grid-column:1/-1}.field label{display:block;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted2);margin:0 0 8px}
.field input{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(226,218,240,.18);padding:8px 0 12px;color:var(--ink);font:15px var(--sans);outline:none}
.field input:focus{border-color:rgba(216,189,131,.62)}
.form-note{grid-column:1/-1;color:var(--muted2);font-size:11px;line-height:1.6;margin-top:2px}
.form-actions{display:flex;align-items:center;gap:20px;margin-top:28px}.form-error{font-size:12px;color:#e8a7a7}
.birth-seal{width:70px;height:70px;border:1px solid rgba(216,189,131,.3);border-radius:50%;display:grid;place-items:center;margin-bottom:26px;color:var(--gold);font-size:26px;position:relative}
.birth-seal:after{content:"";position:absolute;inset:8px;border:1px solid rgba(211,194,239,.12);border-radius:50%}
/* report */
.report-shell{width:min(980px,calc(100% - 32px));margin:0 auto;padding:28px 0 80px}
.report-head{min-height:520px;display:grid;place-items:center;text-align:center;position:relative;border-bottom:1px solid var(--line);padding:80px 20px}
.report-head:before{content:"";width:min(420px,76vw);aspect-ratio:1;border:1px solid rgba(216,189,131,.17);border-radius:50%;position:absolute;box-shadow:0 0 0 38px rgba(211,194,239,.035),0 0 0 76px rgba(211,194,239,.02)}
.report-head-inner{position:relative;z-index:1}.report-kicker{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:24px}
.report-head h1{font:400 clamp(52px,8vw,92px)/.95 var(--serif);letter-spacing:-.05em;margin:0 auto;max-width:800px}
.report-meta{font:italic 16px var(--serif);color:var(--muted);margin-top:22px}
.report-body{max-width:780px;margin:0 auto;padding:70px 0 30px;font-family:var(--serif);font-size:18px;line-height:1.8;color:#e6deeb}
.report-body h1{display:none}.report-body h2{font:400 36px/1.1 var(--serif);letter-spacing:-.025em;margin:64px 0 24px;padding-top:24px;position:relative;color:#fbf7ff}
.report-body h2:before{content:"✦";display:block;font:400 12px var(--sans);letter-spacing:0;color:var(--gold);margin-bottom:16px}
.report-body h3{font:italic 25px/1.2 var(--serif);color:#ddcdec;margin:42px 0 14px}.report-body p{margin:0 0 22px}
.report-body strong{color:#fff;font-weight:600}.report-body em{color:#cbbbdc}
.report-body ul,.report-body ol{margin:12px 0 28px;padding-left:24px}.report-body li{margin:9px 0}
.report-body blockquote{margin:40px 0;padding:26px 32px;border-left:1px solid var(--gold);background:rgba(216,189,131,.035);font-style:italic}
.report-state{padding:120px 0;text-align:center;color:var(--muted)}.report-error{color:#dba3a3}
.report-disclaimer{text-align:center;border-top:1px solid var(--line);padding:28px 10px;color:var(--muted2);font-size:11px;line-height:1.6}
/* demo */
.demo-strip{margin:18px 0 0;text-align:center;font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:#c7b6f4}
.demo-nav{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:18px 0 0}.demo-nav a{font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 3px}
@media(max-width:850px){
.hero{grid-template-columns:1fr;min-height:auto;padding:55px 0 70px}.hero-side{min-height:390px}.product-row{grid-template-columns:70px 1fr 110px}.product-action{grid-column:2/-1;justify-content:flex-start}.editorial-split,.contact-grid{grid-template-columns:1fr;gap:34px}.product-price{text-align:right}
}
@media(max-width:600px){
.shell{width:min(100% - 28px,1180px)}.topbar{padding-top:20px}.hero h1{font-size:56px}.hero p{font-size:15px}.zodiac-orbit{width:300px}.products{padding-top:55px}.product-row{grid-template-columns:48px 1fr;gap:16px;padding:25px 0}.product-symbol{font-size:30px}.product-price{grid-column:2;text-align:left;font-size:20px}.product-action{grid-column:2}.footer{display:block}.footer-links a{margin:0 14px 0 0}.portal{padding:12px}.intake{padding:34px 22px}.form-grid{grid-template-columns:1fr}.field.full,.form-section-title,.form-note{grid-column:1}.report-head{min-height:430px}.report-body{font-size:17px;padding-top:52px}.report-body h2{font-size:31px}.report-shell{width:min(100% - 24px,980px)}
}

/* calculated natal chart */
.chart-overview{max-width:980px;margin:0 auto;padding:72px 0 18px;border-bottom:1px solid var(--line)}
.chart-overview-title{display:flex;align-items:center;gap:14px;margin-bottom:34px}
.chart-overview-title span{color:var(--gold);font-size:12px}
.chart-overview-title h2{font:400 38px/1 var(--serif);margin:0;letter-spacing:-.025em}
.chart-overview-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:54px;align-items:start}
.chart-wheel-panel{position:relative}
.natal-wheel{display:block;width:100%;max-width:520px;margin:0 auto;filter:drop-shadow(0 16px 45px rgba(0,0,0,.22))}
.wheel-caption{text-align:center;color:var(--muted2);font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-top:10px}
.chart-snapshot{padding-top:10px}
.placement-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.placement-grid>div{padding:16px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:82px}
.placement-grid span,.chart-ruler-card span,.chart-meta-line span{display:block;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted2);margin-bottom:7px}
.placement-grid strong{display:block;font:400 16px/1.35 var(--serif);color:#eee5f4}
.chart-ruler-card{margin:18px 0 26px;padding:17px 18px;border:1px solid rgba(216,189,131,.24);background:rgba(216,189,131,.035)}
.chart-ruler-card strong{font:italic 20px/1.35 var(--serif);color:#e8d7f4}
.chart-summary-block{margin:22px 0}
.chart-summary-block h3{font:400 18px var(--serif);margin:0 0 12px;color:#ded3e8}
.chart-bar-row{margin:8px 0}.chart-bar-label{display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted)}
.chart-bar-label b{font-weight:600;color:#cfc4db}
.chart-bar-track{height:3px;background:rgba(255,255,255,.07);margin-top:5px;overflow:hidden}
.chart-bar-track i{display:block;height:100%;background:linear-gradient(90deg,rgba(167,139,250,.7),rgba(216,189,131,.82))}
.chart-meta-line{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.chart-meta-line span{margin:0}.chart-meta-line strong{font-size:12px;font-weight:500;line-height:1.5;color:#c6bdcf}
@media(max-width:820px){.chart-overview-grid{grid-template-columns:1fr;gap:28px}.chart-snapshot{padding-top:0}}
@media(max-width:520px){.chart-overview{padding-top:48px}.chart-overview-title h2{font-size:31px}.placement-grid{grid-template-columns:1fr}.chart-meta-line{grid-template-columns:1fr}.chart-meta-line span{margin-bottom:3px}}

/* Report identities and product-specific context */
.report-visual-heading{font:400 36px/1.15 var(--serif);margin:0 0 16px}
.chart-intro,.chart-person-meta,.chart-basis{color:var(--muted);font:400 13px/1.7 var(--sans);overflow-wrap:anywhere}
.chart-intro{margin:0 0 28px}.chart-person-meta{margin:-12px 0 24px}.chart-basis{font-size:11px;margin:20px 0 0}
.chart-persons-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.chart-persons-pair .chart-person{min-width:0;padding:24px;border:1px solid var(--line)}
.chart-persons-pair .chart-overview-grid{grid-template-columns:1fr;gap:24px}
.chart-persons-pair .chart-overview-title h2{font-size:28px;line-height:1.2;overflow-wrap:anywhere}
.chart-persons-pair .placement-grid{grid-template-columns:1fr 1fr}
.chart-persons-pair .placement-grid>div{padding:12px;min-width:0}
.chart-persons-pair .placement-grid strong{font-size:14px;overflow-wrap:anywhere}
.synastry-connections,.forecast-calculation-period{margin-top:32px;padding:24px 0;border-top:1px solid var(--line)}
.synastry-connections h3,.forecast-calculation-period h3{font:400 27px/1.2 var(--serif);margin:0 0 14px}
.synastry-connections li{font-size:13px;line-height:1.7;margin-bottom:10px;overflow-wrap:anywhere}
.chart-quality-note{border-left:2px solid var(--gold);padding:12px 16px;font-size:13px;line-height:1.6;color:var(--muted)}
.natal-wheel{overflow:visible}
@media(max-width:820px){.chart-persons-pair{grid-template-columns:1fr}.chart-persons-pair .chart-overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}}
@media(max-width:600px){.chart-persons-pair .chart-overview-grid{grid-template-columns:1fr}.chart-persons-pair .chart-person{padding:18px}.report-visual-heading{font-size:29px}}

.report-head-pair h1{font-size:clamp(40px,6.4vw,76px);line-height:1.06}
.report-participants{font:400 clamp(24px,3vw,36px)/1.25 var(--serif);color:var(--gold);margin:22px auto 0;max-width:780px;overflow-wrap:anywhere}
.report-head-pair .report-head-inner{padding-top:52px;padding-bottom:52px}

/* Premium zodiac illustration used in both locales */
.zodiac-wheel-art{display:block;width:min(465px,82vw);height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 0 22px rgba(123,71,180,.22))}
@media(max-width:700px){.zodiac-wheel-art{width:min(340px,86vw)}}

/* Commercial trust / FAQ sections */
.trust-preview,.trust-quality,.trust-privacy,.trust-faq{padding:54px 0;border-top:1px solid rgba(213,180,118,.19)}
.trust-preview>p,.trust-quality>p,.trust-privacy>p{max-width:720px;color:var(--muted);line-height:1.75}
.trust-quality{border:1px solid rgba(223,181,103,.28);border-radius:24px;padding:32px;margin:22px 0;background:linear-gradient(120deg,rgba(190,143,76,.09),rgba(25,17,43,.24))}
.trust-quality h2{font-size:clamp(24px,3.4vw,35px);line-height:1.2;max-width:710px}
.trust-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:27px}
.trust-tile{padding:24px;border:1px solid rgba(218,182,127,.2);border-radius:18px;background:rgba(255,255,255,.025)}
.trust-tile h3{margin:0 0 12px;color:#e7cb9b;font-size:17px}.trust-tile p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.trust-question{border-bottom:1px solid rgba(218,182,127,.19);padding:0 5px}
.trust-question summary{cursor:pointer;padding:21px 0;font-weight:600;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px}
.trust-question summary::-webkit-details-marker{display:none}.trust-question summary:after{content:'+';font-size:22px;color:#e7cb9b}
.trust-question[open] summary:after{content:'−'}
.trust-question p{color:var(--muted);line-height:1.7;margin:0 0 22px;max-width:760px}
@media(max-width:700px){.trust-tiles{grid-template-columns:1fr}.trust-preview,.trust-quality,.trust-privacy,.trust-faq{padding-top:36px;padding-bottom:36px}}

/* Sample buttons / sample preview modal */
.product-action{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.sample-btn{border:1px solid rgba(221,182,113,.57);border-radius:50px;background:transparent;color:#eacfa2;cursor:pointer;font-size:11px;font-weight:600;letter-spacing:1.1px;padding:14px 17px;white-space:nowrap}
.sample-btn:hover,.sample-btn:focus-visible{background:rgba(211,167,95,.12);outline-offset:3px}
.sample-modal{display:none;position:fixed;inset:0;z-index:9999;background:rgba(6,4,13,.83);align-items:center;justify-content:center;padding:20px;overflow-y:auto}
.sample-modal.open{display:flex}
.sample-panel{width:min(620px,100%);max-height:90vh;overflow:auto;position:relative;padding:clamp(24px,4vw,44px);background:linear-gradient(135deg,#1f1825,#100d1b);border:1px solid rgba(224,187,120,.46);border-radius:24px;box-shadow:0 25px 80px #0009}
.sample-panel h2{font-size:clamp(28px,4vw,45px);line-height:1.15}
.sample-panel p{color:var(--muted);line-height:1.7}
.sample-close{position:absolute;right:18px;top:14px;background:transparent;border:0;color:#e7ca9c;font-size:30px;cursor:pointer}
.sample-buy{margin-top:20px}
@media(max-width:900px){.product-action{justify-content:flex-start}.sample-btn{font-size:11px}}

.sample-panel{width:min(900px,100%);height:min(94vh,1000px);display:flex;flex-direction:column}
.sample-panel h2{margin:10px 0 14px}
.sample-document{display:block;width:100%;flex:1;min-height:300px;border:1px solid rgba(214,172,100,.3);border-radius:15px;background:#100d19}
.sample-document[hidden]{display:none}
.sample-panel .sample-buy{align-self:flex-start}
@media(max-width:650px){.sample-panel{height:95vh;padding:23px 18px}.sample-document{min-height:260px}}

/* Preview UX v2: one-column document reading experience */
.sample-modal{padding:clamp(10px,2vh,24px);box-sizing:border-box}
.sample-panel{box-sizing:border-box!important;width:min(900px,100%)!important;height:min(94dvh,980px)!important;max-height:94dvh!important;min-height:0!important;overflow:hidden!important;padding:clamp(18px,2.8vw,32px)!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr) auto!important;row-gap:15px!important;align-items:stretch!important;justify-items:stretch!important}
.sample-header{min-width:0;padding-right:38px}
.sample-header .section-kicker{font-size:11px;letter-spacing:2.3px}
.sample-panel .sample-header h2{font-size:clamp(24px,3.2vw,38px)!important;line-height:1.1!important;margin:10px 0 0!important}
.sample-panel .sample-document{box-sizing:border-box!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;margin:0!important;border:0!important;border-radius:14px!important;display:block;grid-column:1;grid-row:2;background:#120e19}
.sample-panel .sample-document[hidden]{display:none!important}
.sample-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;grid-row:3}
.sample-caption{font:12px/1.5 system-ui,sans-serif;color:#b2a7b9}
.sample-panel .sample-buy{margin:0!important;flex-shrink:0;align-self:center!important}
.sample-panel .sample-loading{grid-row:2;align-self:center}
.sample-close{right:19px;top:12px;z-index:2}
@media(max-width:650px){
.sample-modal{padding:8px}
.sample-panel{height:96dvh!important;max-height:96dvh!important;border-radius:17px!important;padding:19px 15px!important;row-gap:12px!important}
.sample-panel .sample-header h2{font-size:clamp(24px,6vw,32px)!important}
.sample-footer{flex-wrap:wrap;gap:8px}
.sample-caption{font-size:11px}
.sample-panel .sample-buy{padding:12px 16px;font-size:11px}
}

/* Custom, consistent product pictograms */
.product-symbol{display:flex;justify-content:center;align-items:center;color:#d5b57b;opacity:1}
.product-symbol svg{display:block;width:62px;height:62px;max-width:100%;filter:drop-shadow(0 0 9px rgba(188,147,83,.11))}
@media(max-width:700px){.product-symbol svg{width:38px;height:38px}}


.astral-main-nav{display:flex;align-items:center;gap:27px}
.astral-main-nav a{text-decoration:none;color:#cfc3dc;font-size:12px}
.astral-main-nav .lang-switch{color:var(--muted)}
.astral-main-nav a:hover{color:var(--gold)}
.gift-promo{margin:4px 0 90px;padding:45px 50px;display:flex;align-items:center;justify-content:space-between;gap:25px;border:1px solid #d8bd8355;border-radius:15px;background:radial-gradient(circle at 90% 15%,rgba(169,115,235,.15),transparent 45%),#13101c}
.gift-promo h2{font:400 clamp(36px,5vw,58px)/1.1 var(--serif);margin:8px 0 15px}
.gift-promo p:last-child{color:#c4b6d0;font-size:14px;line-height:1.7;max-width:640px}
.gift-promo .astral-btn{flex-shrink:0}
@media(max-width:700px){.astral-main-nav{gap:14px}.astral-main-nav a{font-size:11px}.gift-promo{display:block;padding:30px 24px;margin-bottom:55px}.gift-promo .astral-btn{display:inline-block;margin-top:14px}}
@media(max-width:390px){.astral-main-nav{gap:8px}.astral-main-nav a{font-size:10px}.topbar .wordmark{font-size:13px;letter-spacing:.17em}}

/* 2026-10-27: two equally visible navigation choices after the zodiac wheel */
.astral-paths{border-top:1px solid var(--line);padding:62px 0 104px}
.astral-paths-heading{text-align:center;margin:0 auto 36px;max-width:780px}
.astral-paths-heading h2{font:400 clamp(35px,4.4vw,57px)/1.12 var(--serif);letter-spacing:-.035em;margin:0 0 14px;color:#f1e8f5}
.astral-paths-heading p{font:400 15px/1.65 var(--sans);max-width:620px;margin:0 auto;color:#b9aec6}
.astral-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:970px;margin:0 auto}
.astral-path-card{position:relative;overflow:hidden;min-height:270px;padding:36px 35px 33px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid #d8bd8339;border-radius:18px;background:linear-gradient(145deg,rgba(24,19,35,.93),rgba(11,9,18,.98));box-shadow:0 12px 36px #0003;color:#f5edf6;text-decoration:none;transition:transform .22s,border-color .22s,background .22s,box-shadow .22s}
.astral-path-self{border-color:#b4a1d048}
.astral-path-gift{border-color:#d8bd8355;background:linear-gradient(145deg,rgba(33,26,34,.95),rgba(14,10,17,.98))}
.astral-path-card:hover,.astral-path-card:focus-visible{border-color:var(--gold);background:linear-gradient(145deg,#21172e,#16111d);box-shadow:0 20px 52px #0006;transform:translateY(-4px)}
.astral-path-card:focus-visible{outline:2px solid #e9d098;outline-offset:4px}
.astral-path-icon{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:#d8bd830e;color:#e4cfa0;margin-bottom:17px}
.astral-path-self .astral-path-icon{color:#d7c9f0;background:#b4a1d00e}
.astral-path-icon svg{width:54px;height:54px}
.astral-path-card h3{font:400 clamp(27px,3vw,36px)/1.13 var(--serif);margin:0 0 12px;letter-spacing:-.018em}
.astral-path-card p{color:#b7adbf;font-size:14px;line-height:1.5;margin:0}
.astral-path-arrow{position:absolute;right:24px;bottom:20px;font-size:21px;color:#d8bd83;transition:transform .2s}
.astral-path-card:hover .astral-path-arrow{transform:translate(3px,-3px)}
/* This class applies only on the index page to keep the gateway close to the wheel. */
body:has(.astral-paths) .hero{min-height:490px;padding:38px 0 38px}
body:has(.astral-paths) .hero-side{min-height:380px}
body:has(.astral-paths) .hero h1{font-size:clamp(55px,7.2vw,98px)}
body:has(.astral-paths) .hero p{margin-top:22px}
.reading-intro{padding:77px 0 30px;max-width:730px}
.reading-intro h1{font:400 clamp(52px,6.4vw,86px)/1 var(--serif);margin:0 0 20px;letter-spacing:-.04em}
.reading-intro p{font:16px/1.8 var(--sans);color:#bdb2c9;max-width:570px;margin:0 0 24px}
.reading-back{font-size:12px;color:#d8bd83;text-decoration:none}
.reading-back:hover{text-decoration:underline}
body:has(.reading-intro) .products{border-top:0;padding-top:34px}
body:has(.reading-intro) .products .section-title{font-size:clamp(31px,4vw,49px);margin-bottom:25px}
body:has(.reading-intro) .products .section-kicker{display:none}
body:has(.astral-paths) .footer{margin-top:0}
@media(max-width:850px){body:has(.astral-paths) .hero{min-height:auto;padding:32px 0 22px}body:has(.astral-paths) .hero-side{min-height:270px}}
@media(max-width:620px){
 body:has(.astral-paths) .hero{gap:4px;padding:35px 0 25px}
 body:has(.astral-paths) .hero h1{font-size:clamp(46px,12vw,58px)}
 body:has(.astral-paths) .hero p{font-size:14px;line-height:1.65}
 body:has(.astral-paths) .hero-side{min-height:220px}
 body:has(.astral-paths) .zodiac-wheel-art{width:min(255px,70vw)}
 .astral-paths{padding:45px 0 65px}
 .astral-paths-heading{margin-bottom:23px}
 .astral-paths-heading h2{font-size:clamp(31px,9vw,42px)}
 .astral-paths-heading p{font-size:13px}
 .astral-path-grid{grid-template-columns:1fr;gap:13px}
 .astral-path-card{min-height:195px;padding:24px 22px 28px}
 .astral-path-icon{width:57px;height:57px;margin-bottom:10px}
 .astral-path-icon svg{width:39px;height:39px}
 .astral-path-card h3{font-size:29px;margin-bottom:8px}
 .astral-path-card p{font-size:12px}
 .astral-path-arrow{right:18px;bottom:15px;font-size:18px}
 .reading-intro{padding:50px 0 18px}
 .reading-intro h1{font-size:clamp(43px,11vw,58px)}
 .reading-intro p{font-size:14px}
}

/* AICF NAV 20261027 */
.astral-main-nav [aria-current="page"]{color:var(--gold);font-weight:600}
.astral-main-nav a{white-space:nowrap}
@media(max-width:720px){
 .topbar:has(.astral-main-nav){flex-wrap:wrap;align-items:center;row-gap:16px}
 .topbar:has(.astral-main-nav) .astral-main-nav{display:flex;flex-basis:100%;width:100%;justify-content:space-between;flex-wrap:nowrap;gap:8px;padding-bottom:6px}
 .astral-main-nav a{font-size:clamp(10px,2.8vw,12px)}
 .astral-main-nav .lang-switch{font-size:clamp(10px,2.8vw,12px)}
}
@media(max-width:370px){.astral-main-nav{gap:5px!important}}


/* Premium celestial seal collection · 2026-10-27. Inline SVG, no external assets. */
.celestial-icon{display:block;overflow:visible;width:100%;height:100%;filter:drop-shadow(0 0 12px rgba(220,178,104,.12));}
.astral-path-icon{width:134px;height:134px;border-radius:0;background:none!important;margin-bottom:14px;color:#e7d2a5}
.astral-path-self .astral-path-icon{color:#e6d3a6;background:none!important}
.astral-path-icon .celestial-icon{display:block;width:134px;height:134px;transition:transform .35s ease, filter .35s ease}
.astral-path-card:hover .celestial-icon,.astral-path-card:focus-visible .celestial-icon{transform:scale(1.045);filter:drop-shadow(0 0 18px rgba(222,184,112,.24))}
.product-symbol{color:#e6c98c;overflow:visible}
.product-symbol .celestial-icon{display:block;width:93px;height:93px;max-width:none;filter:drop-shadow(0 0 10px rgba(218,176,107,.13));transition:transform .25s,filter .25s}
.product-row:hover .product-symbol .celestial-icon{transform:scale(1.045);filter:drop-shadow(0 0 15px rgba(218,176,107,.2))}
@media(max-width:700px){
 .astral-path-icon{width:94px;height:94px;margin-bottom:13px}
 .astral-path-icon .celestial-icon{width:94px;height:94px}
 .product-row{grid-template-columns:64px 1fr}
 .product-symbol .celestial-icon{width:60px;height:60px}
 .astral-path-card{min-height:212px}
}
@media(prefers-reduced-motion:reduce){
 .astral-path-icon .celestial-icon,.product-symbol .celestial-icon{transition:none}
 .astral-path-card:hover .celestial-icon,.product-row:hover .product-symbol .celestial-icon{transform:none}
}


/* For You hero: same zodiac wheel as the Gifts hero, one shared optimized WebP. */
.reading-intro.reading-hero-grid{max-width:none;display:grid;grid-template-columns:1.15fr .55fr;gap:45px;align-items:center;padding:90px 0 70px;min-height:380px}
.reading-hero-copy{min-width:0}
.reading-intro.reading-hero-grid h1{font-size:clamp(48px,5.7vw,80px);line-height:1.06}
.reading-hero-wheel{display:flex;justify-content:center;align-items:center}
.reading-hero-wheel img{display:block;width:100%;max-width:360px;height:auto;filter:drop-shadow(0 0 55px #b99b6240)}
@media(max-width:810px){
 .reading-intro.reading-hero-grid{grid-template-columns:1fr;gap:0;padding:60px 0 40px;min-height:auto}
 .reading-hero-wheel{display:none}
}


/* Birthday Astral Gift report: a distinct solar chart and 12 birthday-year periods. */
.birthday-solar-section{margin:52px auto 0;padding:46px 0 12px;border-top:1px solid var(--line)}
.birthday-solar-section>.chart-intro{max-width:850px}
.birthday-solar-chart{margin:32px auto 0}
.birthday-solar-chart .chart-overview-grid{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr)}
.birthday-month-timeline{margin:52px auto 0;padding:34px 0 18px;border-top:1px solid var(--line)}
.birthday-month-timeline h3{font:400 clamp(26px,3vw,36px)/1.2 var(--serif);margin:0 0 23px}
.birthday-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.birthday-month{border:1px solid var(--line);padding:17px 18px;min-width:0;background:rgba(216,189,131,.02)}
.birthday-month span{display:block;color:var(--gold);font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
.birthday-month strong{display:block;color:var(--ink);font:400 15px/1.45 var(--serif)}
@media(max-width:850px){.birthday-solar-chart .chart-overview-grid{grid-template-columns:1fr}.birthday-month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.birthday-month-grid{grid-template-columns:1fr}.birthday-month{padding:13px 16px}}


/* Print-friendly personalized reports and birthday-year keepsake. */
.report-export-actions{max-width:980px;margin:0 auto 22px;padding:24px 0 10px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;border-bottom:1px solid var(--line)}
.report-export-actions .astral-btn{min-width:190px}
.report-export-actions span{color:var(--muted);font:12px/1.6 var(--sans)}
.report-export-actions[hidden]{display:none}
@media print{
 @page{size:A4;margin:13mm 12mm 14mm}
 html,body{background:#0d0b14!important;color:#f4edf6!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .topbar,.report-export-actions,.sample-modal{display:none!important}
 .report-shell,.report-body,.chart-overview{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important}
 .report-head{min-height:0!important;padding:20mm 0 14mm!important;break-after:page}
 .report-head-inner{padding:0!important}
 .report-body h1,.report-body h2,.report-body h3{break-after:avoid}
 .chart-overview,.chart-person,.birthday-solar-section,.birthday-month-timeline{break-before:auto}
 .chart-overview-grid,.chart-wheel-panel,.placement-grid,.chart-ruler-card,.chart-summary-block,.birthday-month{break-inside:avoid}
 .natal-wheel{max-width:170mm!important}
 .chart-persons-pair,.birthday-month-grid{grid-template-columns:1fr 1fr}
 .report-body p,.report-body li{orphans:3;widows:3}
}

/* Birthday Astral Gift — ceremonial premium edition; isolated from standard reports. */
.birthday-edition .report-head{
  isolation:isolate;min-height:720px;overflow:hidden;
  border:1px solid rgba(215,180,113,.28);border-radius:22px;
  margin:18px auto 34px;
  background:
    radial-gradient(ellipse 64% 45% at 50% 39%,rgba(136,99,161,.18),transparent 73%),
    radial-gradient(ellipse 45% 40% at 50% 15%,rgba(215,168,89,.16),transparent 78%),
    linear-gradient(150deg,#181223,#0c0b14 62%,#161020);
}
.birthday-edition .report-head:before{
  width:min(500px,86%);inset:auto;
  box-shadow:0 0 0 43px rgba(225,190,123,.025),0 0 0 85px rgba(225,190,123,.025),
             0 0 0 124px rgba(225,190,123,.013);
  border-color:rgba(224,186,112,.13);
}
.birthday-edition .report-head:after{
  content:"";position:absolute;inset:15px;pointer-events:none;
  border:1px solid rgba(230,205,160,.13);border-radius:16px;
  background:
    radial-gradient(circle at 12% 22%,rgba(255,226,178,.85) 0 1px,transparent 2px),
    radial-gradient(circle at 86% 39%,rgba(255,226,178,.58) 0 1px,transparent 2px),
    radial-gradient(circle at 31% 78%,rgba(255,226,178,.78) 0 1px,transparent 2px),
    radial-gradient(circle at 68% 12%,rgba(255,226,178,.62) 0 1px,transparent 2px),
    radial-gradient(circle at 74% 82%,rgba(255,226,178,.56) 0 1px,transparent 2px);
}
.birthday-edition .report-head-inner{
  max-width:800px;padding:62px 32px 55px;
}
.birthday-cover-ornament{
  height:154px;width:154px;margin:0 auto 28px;
  border:1px solid rgba(218,187,127,.34);
  border-radius:50%;position:relative;display:grid;place-items:center;
  color:#f1d6a0;font:64px/1 Georgia,serif;
  background:radial-gradient(circle,rgba(225,180,103,.12),transparent 70%);
}
.birthday-cover-ornament:before{
  content:"";position:absolute;inset:12px;border:1px solid rgba(218,187,127,.27);border-radius:50%;
}
.birthday-cover-ornament:after{
  content:"✧  ✧  ✧";position:absolute;inset:auto 0 -18px;text-align:center;
  color:#bda1bf;font:12px/1 Georgia,serif;letter-spacing:9px;
}
.birthday-cover-core{transform:translateY(-3px);text-shadow:0 0 24px rgba(218,182,103,.48)}
.birthday-cover-ring{position:absolute;width:172px;height:68px;border:1px solid rgba(206,169,115,.34);border-radius:50%;transform:rotate(-28deg)}
.birthday-edition .report-kicker{
  color:#e4c48d;letter-spacing:.33em;margin-bottom:20px;line-height:1.6;
}
.birthday-edition .report-head h1{
  color:#fff4e7;text-shadow:0 0 28px rgba(197,157,108,.08);
  font:400 clamp(43px,6.3vw,72px)/1.09 var(--serif);
  letter-spacing:-.028em;max-width:700px;
}
.birthday-cover-year{font:italic clamp(18px,2.3vw,25px)/1.5 var(--serif);color:#d0b8cb;margin:20px 0 0}
.birthday-cover-separator{color:#d9b777;margin:35px auto 16px;letter-spacing:.4em}
.birthday-cover-for,.birthday-cover-period{font:600 10px/1.7 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#c6af87;margin:0}
.birthday-cover-recipient{font:400 clamp(31px,4.7vw,48px)/1.2 var(--serif);color:#f7e4c6;margin:8px 0 24px;overflow-wrap:anywhere}
.birthday-cover-period{margin:22px 0 0;font-size:10px}
.birthday-cover-period span{display:block;margin-top:7px;letter-spacing:.06em;text-transform:none;font:16px/1.6 var(--serif);color:#e0d0df}
.birthday-edition .report-meta{display:none}
.birthday-edition .report-export-actions{margin-top:26px}
.birthday-eyebrow{font:700 10px/1.6 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#ddc18b}
.birthday-gift-dedication{
  display:grid;grid-template-columns:160px minmax(0,1fr);
  max-width:950px;margin:54px auto 42px;padding:50px clamp(25px,5vw,60px);
  gap:42px;align-items:start;border:1px solid rgba(215,180,113,.28);
  border-radius:18px;
  background:linear-gradient(130deg,rgba(192,145,97,.13),rgba(104,72,125,.1) 50%,rgba(210,158,111,.05));
}
.birthday-dedication-mark{
  font:100px/1 var(--serif);color:#d5ae70;text-align:center;opacity:.9;
  text-shadow:0 0 30px rgba(224,168,91,.2);
}
.birthday-dedication-inner{min-width:0}
.birthday-dedication-inner>.birthday-eyebrow{margin:2px 0 14px}
.birthday-dedication-title{font:400 clamp(32px,4vw,48px)/1.12 var(--serif);color:#fff0d7;letter-spacing:-.02em;margin:0 0 22px;overflow-wrap:anywhere}
.birthday-dedication-copy{font:17px/1.76 var(--serif);color:#ded1df;margin:0 0 22px}
.birthday-dedication-from{font:600 10px/1.6 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#b9a3b8;margin:22px 0 4px}
.birthday-dedication-sender{font:italic 26px/1.35 var(--serif);font-weight:400;color:#e9d2aa;overflow-wrap:anywhere}
.birthday-personal-message{
  margin:34px 0 0;padding:24px 26px;border-left:2px solid #d7b37c;
  border-radius:0 12px 12px 0;background:rgba(235,201,159,.065);
}
.birthday-quote-kicker{display:block;margin-bottom:13px;font:700 10px/1.5 var(--sans);letter-spacing:.18em;color:#d9bd90;text-transform:uppercase}
.birthday-quote-text{white-space:pre-wrap;overflow-wrap:anywhere;font:italic 22px/1.58 var(--serif);color:#f3e3e1;margin:0}
.birthday-year-snapshot{max-width:980px;margin:38px auto 22px;padding:38px 0 18px}
.birthday-snapshot-heading{text-align:center;max-width:700px;margin:0 auto 32px}
.birthday-snapshot-heading h2{font:400 clamp(32px,4vw,44px)/1.15 var(--serif);color:#f4e5d4;margin:13px 0}
.birthday-snapshot-heading>p:last-child{font:15px/1.65 var(--sans);color:#a99bac}
.birthday-snapshot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.birthday-snapshot-card{
  padding:26px 16px 24px;min-height:168px;
  border:1px solid rgba(217,185,131,.24);border-radius:13px;
  background:linear-gradient(160deg,rgba(231,194,124,.08),rgba(97,72,126,.08));
}
.birthday-snapshot-symbol{display:block;font:38px/1 Georgia,serif;color:#d9bb83;margin-bottom:22px}
.birthday-data-label{display:block;text-transform:uppercase;font:700 10px/1.6 var(--sans);letter-spacing:.13em;color:#ad97ad;margin-bottom:9px}
.birthday-data-value{display:block;font:400 clamp(18px,2.2vw,24px)/1.2 var(--serif);color:#f8ecd9;overflow-wrap:anywhere}
.birthday-snapshot-foot{text-align:center;margin:28px auto 0;max-width:700px}
.birthday-snapshot-months{color:#e2c894;font:400 22px/1.5 var(--serif)}
.birthday-snapshot-basis{color:#958899;font:12px/1.7 var(--sans);margin-top:13px}
.birthday-edition .report-body{padding-top:55px}
.birthday-edition .report-body h2{color:#f4e5d5}
.birthday-edition .report-body h2:before{color:#dfb875}
.birthday-edition .birthday-letter-heading{
  padding:43px 40px 12px;border-top:1px solid rgba(213,170,107,.38);
  margin-top:72px;background:linear-gradient(145deg,rgba(220,173,105,.09),transparent 85%);
}
.birthday-edition .birthday-letter-paragraph{
  padding-left:40px;padding-right:40px;border-left:1px solid rgba(213,170,107,.19);
  border-right:1px solid rgba(213,170,107,.19);margin-bottom:0;padding-bottom:25px;
  background:linear-gradient(145deg,rgba(220,173,105,.035),transparent);
}
.birthday-finale{
  position:relative;text-align:center;overflow:hidden;
  border:1px solid rgba(218,183,123,.32);border-radius:20px;
  margin:75px auto 58px;padding:70px clamp(20px,6vw,90px);
  background:radial-gradient(ellipse at center,rgba(105,74,138,.18),transparent 68%),linear-gradient(135deg,#171021,#0c0b15);
}
.birthday-finale:after{content:"";position:absolute;inset:16px;border:1px solid rgba(218,183,123,.12);border-radius:13px;pointer-events:none}
.birthday-finale-stars{display:block;color:#d6b67b;letter-spacing:.42em;font:24px/1.2 var(--serif);margin-bottom:28px}
.birthday-finale h2{font:400 clamp(34px,4.5vw,56px)/1.15 var(--serif);color:#fff0db;margin:18px 0 25px}
.birthday-finale-wish{font:italic 24px/1.6 var(--serif);color:#e7d8ea;max-width:660px;margin:0 auto 22px}
.birthday-finale-line{font:15px/1.75 var(--sans);color:#bdb0c2;margin:0 auto 30px;max-width:530px}
.birthday-finale-signature{font:700 10px/1.6 var(--sans);letter-spacing:.25em;text-transform:uppercase;color:#d3b37c}
@media(max-width:720px){
 .birthday-edition .report-head{min-height:620px;margin:5px 0 25px;border-radius:15px}
 .birthday-edition .report-head-inner{padding:62px 17px 53px}
 .birthday-cover-ornament{height:120px;width:120px;font-size:48px}
 .birthday-cover-ring{width:136px;height:57px}
 .birthday-gift-dedication{grid-template-columns:1fr;padding:34px 25px;gap:12px;margin:35px 0}
 .birthday-dedication-mark{font-size:55px;text-align:left}
 .birthday-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .birthday-snapshot-card{min-height:145px;padding:21px 16px}
 .birthday-edition .birthday-letter-heading{padding-left:20px;padding-right:20px}
 .birthday-edition .birthday-letter-paragraph{padding-left:20px;padding-right:20px}
 .birthday-finale{padding:48px 20px}
}
@media(max-width:390px){
 .birthday-snapshot-grid{gap:8px}
 .birthday-snapshot-card{padding:18px 12px}
 .birthday-data-value{font-size:18px}
 .birthday-quote-text{font-size:19px}
}
@media print{
 .birthday-edition .report-head{
   min-height:245mm!important;break-after:page;break-inside:avoid;
   margin:0!important;border-color:#c6a36a!important;border-radius:0!important;
   padding:34mm 4mm 19mm!important;background:#141020!important;
 }
 .birthday-edition .report-head-inner{padding:12mm 4mm!important}
 .birthday-edition .report-head h1{font-size:55px!important}
 .birthday-cover-ornament{margin-top:10mm}
 .birthday-gift-dedication{break-after:page;break-inside:avoid;padding:25mm 12mm;margin:0 auto 10mm;min-height:185mm}
 .birthday-year-snapshot{break-after:page;break-inside:avoid;padding-top:12mm}
 .birthday-snapshot-grid{grid-template-columns:repeat(2,1fr)}
 .birthday-snapshot-card{break-inside:avoid}
 .birthday-edition .birthday-letter-heading,.birthday-edition .birthday-letter-paragraph{break-inside:avoid}
 .birthday-finale{break-before:page;break-inside:avoid;min-height:200mm;padding:34mm 14mm}
 .birthday-edition .report-body{padding-top:9mm}
 .birthday-edition .report-head:before,.birthday-edition .report-head:after{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

/* Birthday premium vector seals — replace generic unicode glyphs, all devices. */
.birthday-edition .birthday-cover-ornament{
  display:grid;place-items:center;width:226px;height:226px;
  margin:0 auto 20px;border:0;border-radius:50%;background:transparent;
  box-shadow:none;filter:drop-shadow(0 0 32px rgba(220,170,92,.12));
}
.birthday-edition .birthday-cover-ornament:before,
.birthday-edition .birthday-cover-ornament:after{
  content:none!important;display:none!important;
}
.birthday-edition .celestial-emblem{
  display:block;flex:none;overflow:visible;
  max-width:100%;shape-rendering:geometricPrecision;
}
.birthday-cover-ornament .celestial-emblem{width:100%;height:100%}
.birthday-edition .birthday-cover-separator{
  position:relative;width:126px;height:1px;margin:31px auto 23px;
  background:linear-gradient(90deg,transparent,rgba(216,177,112,.66),transparent);
}
.birthday-cover-separator:after{
  content:"";position:absolute;top:-3px;left:calc(50% - 4px);
  height:8px;width:8px;transform:rotate(45deg);
  background:#cfab72;border:1px solid #f4deac;
}
.birthday-edition .birthday-dedication-mark{
  width:164px;height:164px;margin:0;opacity:1;text-shadow:none;line-height:normal;
  background:radial-gradient(circle,rgba(212,168,105,.085),transparent 72%);
}
.birthday-dedication-mark .celestial-emblem{width:100%;height:100%}
.birthday-edition .birthday-snapshot-card{
  text-align:center;min-height:242px;padding:20px 15px 24px;
  border-color:rgba(218,185,131,.31);
  background:radial-gradient(circle at 50% 25%,rgba(212,172,102,.105),transparent 68%),
    linear-gradient(165deg,rgba(230,190,128,.055),rgba(102,72,125,.065));
  transition:border-color .2s ease,background .2s ease;
}
.birthday-snapshot-card .celestial-emblem{
  width:101px;height:101px;margin:0 auto 8px;
  filter:drop-shadow(0 0 11px rgba(215,170,111,.13));
}
.birthday-snapshot-card .birthday-data-label{
  margin:0 0 10px;font-size:10px;letter-spacing:.14em;line-height:1.5;
}
.birthday-snapshot-card .birthday-data-value{
  font-size:clamp(19px,2.2vw,23px);line-height:1.28;
  max-width:100%;overflow-wrap:anywhere;
}
.birthday-snapshot-months:before{
  content:"";display:block;width:115px;height:1px;margin:0 auto 18px;
  background:linear-gradient(90deg,transparent,#d4ad71,transparent);
}
.birthday-edition .birthday-finale-stars{
  width:154px;height:154px;margin:0 auto 24px;letter-spacing:normal;
}
.birthday-finale-stars .celestial-emblem{width:100%;height:100%}
@media(max-width:720px){
 .birthday-edition .birthday-cover-ornament{
   width:174px;height:174px;margin:0 auto 20px;
 }
 .birthday-edition .birthday-dedication-mark{height:136px;width:136px}
 .birthday-snapshot-card .celestial-emblem{width:85px;height:85px}
 .birthday-edition .birthday-snapshot-card{min-height:222px;padding:17px 11px 20px}
 .birthday-edition .birthday-finale-stars{width:125px;height:125px}
}
@media(max-width:390px){
 .birthday-snapshot-card .celestial-emblem{width:76px;height:76px}
 .birthday-edition .birthday-snapshot-card{min-height:211px}
 .birthday-edition .birthday-snapshot-card .birthday-data-value{font-size:17px}
}
@media(prefers-reduced-motion:reduce){
 .birthday-edition .birthday-snapshot-card{transition:none}
}
@media print{
 .birthday-edition .birthday-cover-ornament{width:54mm;height:54mm;margin:3mm auto 4mm}
 .birthday-edition .birthday-dedication-mark{width:38mm;height:38mm}
 .birthday-edition .birthday-snapshot-card{min-height:47mm}
 .birthday-edition .birthday-snapshot-card .celestial-emblem{height:27mm;width:27mm}
 .birthday-edition .birthday-finale-stars{width:42mm;height:42mm}
 .birthday-edition .celestial-emblem{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}
