/* Monumental editorial composition, retaining Arcana's original artwork. */
.hero{position:relative;grid-template-columns:1.25fr 1fr;min-height:790px;padding-block:65px 100px;gap:0;isolation:isolate}
.hero h1{font-size:clamp(84px,8.3vw,128px);line-height:.88;letter-spacing:-.03em;max-width:none;text-wrap:initial;position:relative;z-index:2;margin-bottom:38px}
.hero h1 em{white-space:nowrap}.hero-description{font-size:16px}.hero-copy{max-width:none;min-width:0}.hero-art{margin-left:0;min-width:0;transform:translateY(20px);overflow:clip}
.hero-format{margin-top:42px;border-top:1px solid var(--line);padding-top:25px}.promise-strip{background:transparent;border-block:1px solid var(--line)}
.commercial-heading h2,.deck-heading-row h2,.how-section .section-heading h2,.example-section h2,.principles h2,.faq h2{font-size:clamp(48px,4.8vw,64px);line-height:.98;letter-spacing:-.02em}
.commercial-heading{align-items:end;gap:55px;margin-bottom:55px}.commercial-heading>p{max-width:30ch;font-size:16px}
.spread-picker{padding-block:120px}.spread-offers{gap:18px;align-items:stretch}.spread-offer{border-radius:2px;min-height:350px;padding:30px;overflow:hidden}.spread-offer>strong{font-size:38px;line-height:1.02;letter-spacing:-.035em}.spread-offer.offer-daily,.spread-offer.offer-three{min-height:440px}.spread-offer.offer-daily>strong{font-size:48px}.spread-offer.offer-three>strong{font-size:48px}.spread-offer .offer-meta{letter-spacing:.02em;text-transform:none;font-size:13px}.spread-offer .offer-art{right:-15px;bottom:-38px}.spread-offer .offer-description{max-width:25ch}.spread-offer .offer-action{position:relative;z-index:2}.spread-offer:nth-child(4){background:#263137}.spread-offer:nth-child(5){background:#202a3d}.spreads-footnote{max-width:62ch;margin-top:28px}
.deck-world{padding-block:110px 65px;background:#1b2938}.deck-heading-row{gap:60px}.deck-heading-row h2{max-width:22ch}.arcana-gallery{gap:38px;padding-block:45px}.gallery-card{flex-basis:230px}.gallery-card:nth-child(even){margin-top:38px}.gallery-caption{display:grid;grid-template-columns:1fr 2fr;gap:20px;align-items:start}.gallery-caption h3{font-size:42px;margin:0}.gallery-caption>span{grid-column:2}
.how-section{padding-block:120px}.how-section .section-heading{max-width:none}.how-section .section-heading h2{max-width:22ch}.steps{gap:0}.steps li{border-top:1px solid var(--line);padding:32px 20px 32px 0}.steps .step-number{font:400 68px/.9 var(--serif);color:var(--gold)}.steps h3{font-size:34px;line-height:1.1}.how-bottom{padding-top:45px;border-top:1px solid var(--line)}.how-bottom p{font-size:38px;max-width:28ch}
.example-section{position:relative;padding-block:110px;background:#202b3b}.example-section h2{max-width:22ch}.example-reading{border-radius:0;padding:48px;transform:none;box-shadow:none}.example-reading h3{font-size:44px;line-height:1.07}.example-reading .reflection p{font-size:33px}
.pricing-section{padding-block:100px}.plans{border-radius:0;border:1px solid #bda77955;background:#151b26}.plan-card,.plan-card.plan-featured{border-radius:0;padding:35px 28px;background:transparent}.plan-card.plan-featured{background:#252a30}.plan-card .plan-price{font-size:88px;letter-spacing:-.055em}.plan-card h3{font-size:35px}.pricing-free{border-top:1px solid var(--line);padding-top:35px}
.principles{padding-block:90px}.principles h2{max-width:22ch}.principle-list article{padding-block:28px}.principle-list h3{font-size:35px;letter-spacing:-.025em}.principle-list article>span{font-size:28px;font-family:var(--serif)}
.faq{padding-block:80px;background:#10151c;border-block:1px solid #c9d5ed24}.faq h2{max-width:22ch}.faq summary{font-family:inherit;font-size:22px;line-height:1.25;padding-block:25px}.faq details p{max-width:65ch;line-height:1.85}.privacy{padding-block:40px;border-top:1px solid var(--line)}
.closing{padding-block:110px 125px;position:relative}.closing h2{font-size:clamp(76px,9vw,130px);line-height:.94;letter-spacing:-.03em;max-width:18ch}.closing>p{font-size:17px}.closing .button{margin-top:32px}.footer{border-top:1px solid var(--line);padding-block:35px;color:#c4c8cf}.footer p{max-width:32ch}.footer .brand{font-size:32px}
@media(min-width:1000px){.spread-offers .spread-offer{grid-column:auto}.spread-offers{grid-template-columns:repeat(2,minmax(0,1fr))}.spread-offer:nth-child(n+3){min-height:190px}.spread-offer:nth-child(3),.spread-offer:nth-child(6){margin-left:0}}
@media(max-width:800px){.hero{grid-template-columns:1fr;min-height:0;padding-block:50px 40px}.hero h1{font-size:clamp(60px,12.5vw,96px);max-width:11ch;line-height:.96;margin-bottom:28px}.hero-art{margin-left:0;transform:none}.hero-description{font-size:16px}.hero-format{margin-top:28px}.commercial-heading h2,.deck-heading-row h2,.how-section .section-heading h2,.example-section h2,.principles h2,.faq h2{font-size:clamp(40px,7vw,44px);line-height:1.02}.commercial-heading{gap:25px;margin-bottom:30px}.commercial-heading>p{max-width:36ch}.spread-picker,.how-section,.pricing-section,.principles,.faq{padding-block:65px}.spread-offers{gap:16px}.spread-offer,.spread-offer.offer-daily,.spread-offer.offer-three{min-height:320px;padding:24px}.spread-offer>strong,.spread-offer.offer-daily>strong,.spread-offer.offer-three>strong{font-size:42px;max-width:11ch}.spread-offer .offer-description{max-width:23ch;font-size:16px}.deck-world{padding-block:65px 40px}.gallery-card{flex-basis:185px}.gallery-card:nth-child(even){margin-top:25px}.gallery-caption{display:block}.gallery-caption h3{font-size:34px;margin-bottom:14px}.arcana-gallery{gap:22px}.steps li{padding-block:25px}.steps .step-number{font-size:42px}.steps h3{font-size:29px}.how-bottom p{font-size:31px}.example-section{padding-block:65px}.example-reading{padding:30px 23px;transform:none;box-shadow:none}.example-reading h3{font-size:33px}.example-reading .reflection p{font-size:27px}.plan-card,.plan-card.plan-featured{padding:28px 24px}.plan-card .plan-price{font-size:72px}.principle-list h3{font-size:29px}.faq summary{font-size:18px}.closing{padding-block:70px 80px}.closing h2{font-size:clamp(49px,10vw,78px);line-height:1.02}.closing .button{margin-top:22px}}
@media(max-width:360px){.hero h1{font-size:54px;letter-spacing:-.03em}.commercial-heading h2,.deck-heading-row h2,.how-section .section-heading h2,.example-section h2,.principles h2,.faq h2{font-size:40px}.spread-offer>strong,.spread-offer.offer-daily>strong,.spread-offer.offer-three>strong{font-size:37px}.spread-offer .offer-description{max-width:24ch}.gallery-card{flex-basis:160px}.closing h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){.example-reading{transform:none}}

.how-section .section-heading p{font-size:16px;line-height:1.8;max-width:54ch}

@media(max-width:360px){.how-section .section-heading h2{font-size:34px}}

/* Small crafted details: each surface keeps its own material and feedback. */
.steps li::before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 240ms var(--ease-out)}
.steps li.is-current::before{transform:scaleX(1)}
.example-reading{position:relative}
.plan-card{position:relative}
.plan-card::after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid transparent;transition:border-color 180ms ease}
.plan-card.is-previewing::after,.plan-card:focus-within::after{border-color:var(--gold)}
.gallery-card:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
.faq details[open]{border-bottom-color:#dfc39066}
.faq details[open] summary::after{content:'−'}
@media(hover:hover) and (pointer:fine){.spread-offer:hover .offer-art{transform:rotate(5deg) translateY(-12px)}.spread-offer:hover .offer-art-secondary{transform:rotate(-12deg) translateY(-6px)}.plan-card:hover::after{border-color:#dfc39088}}
@media(prefers-reduced-motion:reduce){.steps li::before,.plan-card::after{transition:none}.spread-offer:hover .offer-art,.spread-offer:hover .offer-art-secondary{transform:none}}
.keyboard-input .steps li::before,.keyboard-input .plan-card::after{transition:none}

/* Quiet material edges connect the exhibition and editorial surfaces. */
.deck-world{border-top-color:#dec59655}.example-section{border-block:1px solid #dec59626}.privacy a{text-underline-offset:4px}

/* Readable type and restrained hierarchy across the landing. */
body{font-size:16px}
main h2 em{font-style:normal}
.commercial-heading>p,.deck-heading-row p,.how-section .section-description,.steps p,.example-reading>p,.principle-list p,.faq details p,.privacy p,.pricing-notes p,.plan-features,.plan-detail,.pricing-free p{font-size:16px;line-height:1.7}
.spread-offer .offer-description{font-size:16px;line-height:1.6;position:relative;z-index:2;max-width:26ch}
.spread-offer .offer-action{font-size:14px}
.spread-offer .offer-art{opacity:.55;max-width:35%;right:-25px}
.spread-offer.offer-three .offer-art-secondary{opacity:.25}
.hero-format>span>span,.gallery-caption>span,.spreads-footnote,.footer span,.footer a,.preview-mark,.promise-strip,.plan-unit{font-size:14px;line-height:1.6}
.gallery-caption p{font-size:16px;line-height:1.7}
.closing h2{font-size:clamp(48px,6vw,76px);letter-spacing:-.035em;line-height:1.05}
@media(max-width:800px){.closing h2{font-size:42px}.spread-offer .offer-description{max-width:24ch}.hero-description{font-size:16px}.spread-offer>strong,.spread-offer.offer-daily>strong,.spread-offer.offer-three>strong{font-size:38px;max-width:11ch}.faq details p,.steps p,.principle-list p,.privacy p,.example-reading>p{font-size:16px}}

.spreads-footnote,.plan-unit,.footer span{font-size:14px;line-height:1.6}
@media(max-width:800px){.spread-offer>strong,.spread-offer.offer-daily>strong,.spread-offer.offer-three>strong{max-width:75%}.spread-offer .offer-art{right:-20px;bottom:-40px}}/* Secondary information is still meant to be read. */
.header nav a,.header .header-cta,.hero .hero-note,.text-link,.reading-workspace .funnel-note,.plan-card .plan-unit,.pricing-preview p,.pricing-details p,.footer p,.footer>div>a{font-size:14px;line-height:1.65}
.example-layout .example-description{font-size:16px;line-height:1.7}
.example-cards small{font-size:14px;line-height:1.5}.example-reading .example-label{font-size:13px;line-height:1.6;letter-spacing:.04em}.plan-card .plan-features{font-size:16px;line-height:1.7}
.faq h2{font-family:inherit;font-size:36px;font-weight:500;line-height:1.15;letter-spacing:-.025em;max-width:18ch}
@media(max-width:800px){.faq h2{font-size:30px}.header .header-cta{font-size:12px}.hero .hero-note{font-size:14px}}
@media(max-width:800px){.spread-offer:nth-child(n+3){min-height:0;padding:24px 88px 24px 0;border:0;border-bottom:1px solid var(--line);background:transparent;gap:12px}.spread-offer:nth-child(n+3)>strong{font-size:30px;max-width:100%;width:100%}.spread-offer:nth-child(n+3) .offer-description{max-width:100%}.spread-offer:nth-child(n+3) .offer-art{width:68px;max-width:68px;right:0;bottom:28px;opacity:.85;transform:none}.spread-offer:nth-child(n+3) .offer-action{margin-top:4px}}
/* The sample uses the real deck, rather than empty diagram tiles. */
.example-cards>div{min-width:0;padding:0;border:0;background:none}
.example-card-art{position:relative;aspect-ratio:2/3;margin-bottom:12px}
.example-card-art .tarot-face{position:absolute;inset:0;width:100%;height:100%}
.example-card-art .face-name{font-size:14px}
.example-cards small{display:block;color:#555b62;font-size:14px;line-height:1.5}
