/* Internal pages share the approved site shell and persistent scenery.
   This layer changes content surfaces only, never the background geometry. */
.internal-page {
  --page-ink:#f1e8f6;
  --page-muted:#d0c1dc;
  --page-line:#d7be8b38;
  --page-glass:linear-gradient(135deg,#30203bd9,#170f25d9);
  color:var(--page-ink);
}
.internal-page .back-button{display:flex;align-items:center;width:fit-content;min-height:44px;margin:0 0 18px;color:var(--page-muted);font:13px/1.5 var(--ui)}
.internal-page .back-button:hover{color:#f1d6a1}
.internal-page :is(button,a,input,textarea,select,summary):focus-visible{outline:2px solid #f0d19a;outline-offset:4px}
.internal-page :is(h1,h2){text-wrap:balance}
.internal-page h1{font-size:clamp(34px,3.6vw,48px);line-height:1.35;margin:14px 0 20px}
.internal-page h2{font-size:28px;line-height:1.4}
:root body .internal-page p{color:var(--page-muted)}
:root body .internal-page .form-help{font-size:17px!important;line-height:1.5;margin:12px 0}
.internal-page .eyebrow{font:11px/1.5 var(--ui);letter-spacing:.12em;color:#e8c788}
.internal-page :is(.primary-button,.secondary-button){border-radius:12px;min-height:48px;padding:12px 20px;font:500 14px/1.5 var(--ui);justify-content:center;white-space:normal;gap:8px}
.internal-page .primary-button{color:#25172c;background:linear-gradient(110deg,#f1dbab,#c69a4d);border:1px solid #e9cf9b;box-shadow:0 5px 24px #d8b46b12}
.internal-page .primary-button:hover:not(:disabled){background:linear-gradient(110deg,#f9e6bd,#d8ae64);box-shadow:0 5px 24px #d8b46b26}
.internal-page .secondary-button{background:#22162b66;border:1px solid var(--page-line);color:#eee2f6}
.internal-page .secondary-button:hover:not(:disabled){background:#3b294988;border-color:#d7be8b88}
.internal-page button:disabled{cursor:not-allowed;opacity:.45}
.internal-page .question-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px);align-items:start}
.internal-page .question-intro{position:relative;padding:8px 0 24px;isolation:isolate;min-width:0}
/* Feathered reading veils, without rectangular panels behind ordinary text. */
.internal-page :is(.question-intro,.gallery-intro,.choose-header,.result-body,.result-sidebar,.legal,.personal-copy,.journal-subtitle){position:relative;isolation:isolate}
.internal-page :is(.question-intro,.gallery-intro,.choose-header,.result-body,.result-sidebar,.legal,.personal-copy,.journal-subtitle)::before{content:"";position:absolute;z-index:-1;inset:-24px -18px;pointer-events:none;background:#0d081cba;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent),linear-gradient(transparent,#000 48px,#000 calc(100% - 48px),transparent);mask-composite:intersect;filter:blur(18px)}
.internal-page .question-intro h1{margin-top:12px}
:root body .internal-page .question-intro>p{max-width:39ch;font-size:21px;line-height:1.55;margin:14px 0}
.ritual-object{display:block;width:150px;height:150px;object-fit:contain;filter:drop-shadow(0 8px 20px #d3b37125);margin:0 0 24px}
.ritual-object-tarot{width:90px;border-radius:10px;transform:rotate(-7deg)}
.internal-page .question-intro .ritual-object{float:right;margin:0 0 18px 16px;width:126px;height:150px}
.internal-page .question-intro .ritual-object-tarot{width:90px;margin-inline:25px}
.internal-page .question-intro .price-line{clear:both;display:block;width:fit-content;padding:8px 0;border-top:1px solid var(--page-line);color:#f1d6a1;font-size:18px;margin-top:28px}
.internal-page .question-form,.internal-page .compact-panel:not(.legal),.internal-page .account-form{background:var(--page-glass);border:1px solid #d7be8b38;border-radius:20px;padding:28px;box-shadow:0 14px 40px #08041033,inset 0 1px #f9ebff08;backdrop-filter:blur(14px);margin:0}
.internal-page .form-label{display:block;font:14px/1.5 var(--ui);margin:0 0 10px;color:#f1e8f6}
.internal-page .topic-list{gap:8px;margin:0 0 24px;display:flex;flex-wrap:wrap}
.internal-page .topic-button{min-height:44px;padding:9px 14px;font:13px/1.45 var(--ui);border-radius:24px;border:1px solid #d7be8b38;background:#170e2580;color:#d8cbe2;box-shadow:none}
.internal-page .topic-button[aria-pressed=true]{border-color:#d9b87399;background:#b78c3926;color:#f5ddaf}
.internal-page .topic-button:hover{border-color:#dfc58a99}
.internal-page :is(input:not([type=checkbox]),textarea,select){border:1px solid #b69ac157;border-radius:12px;background:#100a1db8;color:#f1e8f6;font:16px/1.6 var(--ui);padding:13px 15px;max-width:100%;min-width:0}
.internal-page :is(input,textarea)::placeholder{color:#b7a8c4;opacity:1}
.internal-page .question-field textarea{height:155px;min-height:130px;width:100%;resize:vertical}
.internal-page .question-field{border:0;background:none;padding:0}
.internal-page .form-submit{width:100%;margin-top:12px}
.internal-page .consent{font-size:13px;line-height:1.65;color:#e2d6eb;gap:12px}
.internal-page .birth-fields{gap:14px}
.internal-page .natal-form .form-label{margin-top:0}
.internal-page .natal-form .consent{margin:20px 0}
.internal-page #city-options button{font:14px/1.5 var(--ui)}
.ritual-progress{display:flex;gap:20px;padding:0 0 20px;margin:0 0 24px;list-style:none;border-bottom:1px solid var(--page-line);font:12px/1.4 var(--ui);color:#c1afcf}
.ritual-progress li{display:flex;align-items:center;gap:8px}
.ritual-progress li>span{display:grid;place-items:center;width:24px;height:24px;border:1px solid #b6a1c340;border-radius:50%;font-size:11px}
.ritual-progress [aria-current=step]{color:#f1d6a1}
.ritual-progress [aria-current=step]>span{background:#ba914d2b;border-color:#ddbd7c88}
.ritual-shell>.ritual-progress{justify-content:center;max-width:650px;margin:0 auto 26px}
.ritual-reference{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px);align-items:start;margin:32px 0 0;padding-top:22px;border-top:1px solid var(--page-line)}
.internal-page .deck-info{display:flex;align-items:center;gap:18px;padding:0;margin:0;background:none;border:0;box-shadow:none;border-radius:0;backdrop-filter:none}
.deck-info img{width:48px;height:80px;object-fit:cover;border-radius:6px}
.deck-info>span{display:grid;gap:6px}
.deck-info strong{font:24px/1.3 var(--reading);font-weight:400;color:#f0d19a}
.deck-info span span{font:12px/1.6 var(--ui);color:#d2c1df}
.internal-page .tarot-about{max-width:none;margin:0;border:0}
.internal-page .tarot-about summary{padding:12px 0;min-height:44px;font:14px/1.5 var(--ui)}
:root body .internal-page .tarot-about p{font-size:18px;line-height:1.6}
.internal-page .gallery-intro{max-width:670px;padding-bottom:6px}
.internal-page .gallery-intro h1{margin:10px 0 14px}
.internal-page .gallery-filters{margin:22px 0 16px;gap:8px}
.internal-page .gallery-filters small{opacity:1;color:#bfb0cc}
.internal-page .tarot-gallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:28px 22px}
.internal-page .gallery-card{border:0;background:none;border-radius:14px;padding:0;box-shadow:none;transition:transform .2s}
.internal-page .gallery-card img{border-radius:14px;box-shadow:0 8px 24px #0005}
.internal-page .gallery-card>span{color:#ead9b6;font:14px/1.45 var(--ui);margin-top:12px;display:block;text-align:center}
@media(hover:hover){.internal-page .gallery-card:hover{transform:translateY(-4px)}}
.internal-page .gallery-footer{padding-top:24px;border-top:1px solid var(--page-line)}
.internal-page .choose-header{max-width:670px;margin:0 auto 28px;text-align:center}
.internal-page .choose-header h1{font-size:40px;line-height:1.35}
:root body .internal-page .question-quote{max-width:50ch;margin:16px auto;font-size:20px!important}
.internal-page .selection-slots{gap:24px;margin:0 auto 28px}
.internal-page .selection-slot{width:145px}
.internal-page .selection-slot span{font:12px/1.5 var(--ui);color:#dacde4}
.internal-page .slot-line{height:2px}
.internal-page .deck{max-width:900px;margin:0 auto;padding:28px 8px}
.internal-page .card-back{border-radius:12px}
.internal-page .deck-actions{gap:14px}
.internal-page .compact-panel{max-width:650px;margin:0 auto 24px}
.internal-page .compact-panel h1{font-size:40px}
.internal-page .question-review{border-left:2px solid #dfbf7d;background:#dfbf7d08;border-radius:0;padding:16px 20px}
.internal-page .result-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:56px;max-width:none}
:root body .internal-page :is(.result-sidebar,.result-body,.journal-entry,.question-quote){background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.internal-page .result-body{padding:0}
.internal-page .result-sidebar{position:sticky;top:24px;padding:0}
:root body .internal-page .result-sidebar blockquote{font:25px/1.4 var(--reading);color:#f0e5f6;margin:14px 0 20px}
.internal-page .result-body h1{font-size:38px}
:root body .internal-page .result-body p{font-size:20px;line-height:1.65;color:#e0d3e9}
.internal-page .reading-symbols{gap:10px}
.internal-page .reading-symbols img{border-radius:12px}
.internal-page .reading-symbols figcaption{font-size:12px}
.internal-page .reading-symbols figcaption strong{font-weight:500;color:#eddcb7}
.internal-page .reading-symbols figcaption span{font-size:11px;margin-top:5px;color:#c8b7d5}
.internal-page .interpretation{padding:26px 0;border-top:1px solid var(--page-line)}
.internal-page .interpretation h2{font-size:28px}
.internal-page .reflection{border:1px solid var(--page-line);border-radius:20px;background:var(--page-glass);padding:24px;backdrop-filter:blur(14px)}
.internal-page .reflection h2{font-size:25px;line-height:1.4;margin:16px 0 24px}
.internal-page .reflection textarea{width:100%;min-height:130px}
.internal-page .launch-banner{width:fit-content;border:0;border-radius:24px;padding:8px 14px;background:#24173199;font:12px/1.5 var(--ui);margin:0 0 24px}
.internal-page .result-actions{gap:12px;align-items:start}
.internal-page .result-actions .primary-button{flex:auto}
.internal-page .journal-subtitle{max-width:600px;margin-bottom:32px}
:root body .internal-page .journal-entry{grid-template-columns:70px minmax(0,1fr) auto;gap:22px;padding:24px 0;border-top:1px solid var(--page-line)}
.internal-page .journal-entry h2{font-size:26px;margin:8px 0;line-height:1.4}
.internal-page .journal-entry small{font:12px/1.5 var(--ui);letter-spacing:0;color:#cfbbdb}
.internal-page .journal-icon .ritual-object{width:64px;height:76px;margin:0;transform:none;border-radius:7px}
.internal-page .journal-icon .ritual-object-tarot{width:46px}
.internal-page .journal-empty{border-top:1px solid var(--page-line);background:none;box-shadow:none;border-radius:0;padding:32px 0}
.internal-page .journal-empty h2{font-size:32px}
.internal-page .legal{max-width:740px;margin:0;background:none;border:0;border-radius:0;backdrop-filter:none;padding:0;box-shadow:none}
.internal-page .legal h2{margin-top:32px}
:root body .internal-page .legal p{font-size:21px;line-height:1.7;color:#e0d3e9}
.internal-page .personal-copy{max-width:740px;padding:0}
.internal-page .personal-copy h1{max-width:650px;font-size:40px;line-height:1.4}
.internal-page .personal-identity{padding:20px 0;margin:24px 0 0;border-top:1px solid var(--page-line)}
.internal-page .personal-balance{margin:0 0 24px;padding:16px 0;border-bottom:1px solid var(--page-line);width:100%;font-size:50px}
.internal-page .personal-balance small{font-size:13px}
.internal-page .account-form{max-width:480px;margin:24px 0}
.internal-page .account-form .catalog-button{width:100%}
.internal-page .account-form .account-quiet{margin:12px 0 0}
:root body .internal-page .catalog-service-note{font:16px/1.6 var(--reading);max-width:62ch;color:#cbbbd7}
@media(max-width:1000px){
 .internal-page .question-layout,.ritual-reference{gap:30px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
 .internal-page .question-intro .ritual-object{float:none;width:100px;height:110px;margin:0 0 18px}
 .internal-page .question-intro .ritual-object-tarot{width:66px}
 .internal-page .question-form{padding:24px}
 .internal-page .tarot-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
 .internal-page .result-layout{gap:32px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
}
@media(max-width:700px){
 .internal-page h1,.internal-page .personal-copy h1{font-size:34px;line-height:1.35;margin:10px 0 16px}
 .internal-page .back-button{margin-bottom:12px}
 .internal-page .question-layout{display:flex;flex-direction:column;gap:20px}
 .internal-page .question-intro{width:100%;padding:0}
 .internal-page .question-intro .ritual-object{float:right;width:80px;height:90px;margin:0 0 8px 12px}
 .internal-page .question-intro .ritual-object-tarot{width:54px;margin-right:6px;margin-left:20px}
 .internal-page .question-intro h1{font-size:32px}
 :root body .internal-page .question-intro>p{font-size:19px;line-height:1.45;margin:12px 0;max-width:none}
 .internal-page .question-intro .price-line{margin:16px 0 0;padding:8px 0 0;font-size:17px}
 :root body .internal-page .question-intro>.form-help{font-size:16px!important;margin:6px 0 0}
 .internal-page .question-form,.internal-page .compact-panel:not(.legal),.internal-page .account-form{width:100%;padding:20px;border-radius:18px}
 .internal-page .question-field textarea{height:136px}
 .ritual-progress{gap:16px;padding-bottom:16px;margin-bottom:20px;font-size:11px}
 .ritual-progress li{gap:6px}
 .ritual-progress li>span{width:22px;height:22px}
 .internal-page .topic-list{gap:7px;margin-bottom:20px}
 .internal-page .topic-button{font-size:12px;padding:9px 12px}
 .ritual-reference{grid-template-columns:1fr;gap:20px;margin-top:26px;padding-top:22px}
 .internal-page .gallery-filters{gap:7px;margin-top:20px}
 .internal-page .tarot-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;margin-top:22px}
 .internal-page .gallery-card>span{font-size:13px}
 .internal-page .choose-header h1,.internal-page .compact-panel h1{font-size:32px}
 .internal-page .selection-slots{gap:12px;margin-bottom:10px}
 .internal-page .selection-slot{width:calc((100% - 24px)/3)}
 .internal-page .selection-slot span{font-size:11px}
 .internal-page .deck{padding:22px 4px}
 .internal-page .deck-actions{flex-direction:column-reverse;gap:8px}
 .internal-page .result-layout{display:block}
 .internal-page .result-sidebar{position:relative;top:auto;padding-bottom:24px}
 .internal-page .result-body h1{font-size:32px}
 .internal-page .reading-symbols{max-width:420px}
 .internal-page .reflection{padding:20px}
 .internal-page .result-actions>*{width:100%}
 :root body .internal-page .journal-entry{grid-template-columns:48px minmax(0,1fr);gap:8px 16px;padding:20px 0}
 .internal-page .journal-entry h2{font-size:24px}
 .internal-page .journal-icon .ritual-object{width:46px;height:60px}
 .internal-page .journal-icon .ritual-object-tarot{width:36px}
 .internal-page .journal-entry>a{grid-column:2;justify-self:start;padding:0}
 .internal-page .journal-entry small{font-size:11px}
 .internal-page .personal-balance{font-size:44px}
 .internal-page .catalog-personal-actions>*{width:100%}
 .internal-page .legal h1{overflow-wrap:anywhere;font-size:31px}
 :root body .internal-page .legal p{font-size:20px}
}
@media(max-width:370px){
 .internal-page .question-form,.internal-page .compact-panel:not(.legal),.internal-page .account-form{padding:16px}
 .ritual-progress{gap:12px;font-size:10px}
 .ritual-progress li{gap:4px}
 .internal-page .birth-fields{grid-template-columns:1fr}
 .internal-page .question-intro h1{font-size:29px}
 .internal-page .question-intro .ritual-object{width:65px;height:75px}
 .internal-page .question-intro .ritual-object-tarot{width:45px}
}
@media(prefers-reduced-motion:reduce){.internal-page .gallery-card{transition:none}}

.card-description{padding-left:16px;border-left:1px solid #d9bd8666;color:var(--muted,#c6b7d1)}
.card-description>.eyebrow{display:block;margin-bottom:8px}

.internal-page .reflection .reflection-text{font-family:var(--reading);font-weight:400;white-space:pre-line;margin:0 0 24px}
