:root {color-scheme:light;--ink:#202832;--muted:#5c686b;--green:#24594f;--green-dark:#183f39;--gold:#a07b3a;--line:#d8ddda;--paper:#fff;--wash:#f2f5f3;--error:#993f36;--serif:Georgia,'Times New Roman',serif;--sans:'Avenir Next','Segoe UI',Arial,sans-serif;font-family:var(--sans);font-size:16px;letter-spacing:0;color:var(--ink);background:#fff;}
* {box-sizing:border-box;} body{margin:0;} button,input,textarea{font:inherit;} button,a,input{-webkit-tap-highlight-color:transparent;} a{color:inherit;text-underline-offset:4px;} button{cursor:pointer;} button:disabled{cursor:not-allowed;} [hidden]{display:none!important;} .icon{display:inline-block;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;} .icon use{fill:none;} h1,h2,h3,p{margin-top:0;} h1,h2,h3{font-weight:400;letter-spacing:0;} h1,h2{font-family:var(--serif);} h2{font-size:2.625rem;line-height:1.16;} p{line-height:1.65;} :focus-visible{outline:3px solid #96722a;outline-offset:5px;} .skip-link{position:absolute;left:16px;top:-100px;z-index:20;background:white;padding:12px;} .skip-link:focus{top:12px;}
.site-header{height:80px;background:#fff;border-bottom:1px solid #e9ece9;position:relative;z-index:3;} .header-inner{max-width:1320px;height:100%;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;} .wordmark{font-family:var(--serif);font-size:1.625rem;display:flex;align-items:center;gap:11px;text-decoration:none;white-space:nowrap;} .wordmark .icon{width:29px;height:29px;color:var(--green);} .variant-nav{display:flex;align-items:stretch;gap:25px;height:100%;} .variant-nav a{display:flex;align-items:center;gap:8px;text-decoration:none;font-size:.875rem;border-bottom:2px solid transparent;padding:2px 0 0;color:var(--muted);} .variant-nav a[aria-current=page]{color:var(--green);border-color:var(--green);} .variant-nav .icon{width:17px;height:17px;}
.hero{height:calc(100svh - 176px);min-height:490px;max-height:660px;position:relative;overflow:hidden;background:#f5f6f4;} .quiet-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;} .hero-copy{position:relative;z-index:1;} .hero--quiet .hero-copy{max-width:1320px;margin:auto;padding:68px 48px;} .eyebrow{font-size:.75rem;line-height:1.4;text-transform:uppercase;font-weight:600;color:var(--green);letter-spacing:0;margin-bottom:20px;} .hero h1{font-size:5rem;line-height:1.06;margin:0 0 21px;white-space:nowrap;} .hero-lead{font-family:var(--serif);font-size:1.625rem;line-height:1.35;margin-bottom:12px;max-width:480px;} .hero-note{font-size:1rem;color:#3f4d51;margin-bottom:28px;max-width:390px;} .button{min-height:50px;padding:12px 23px;background:var(--green);color:#fff;border:1px solid var(--green);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;font-size:.9375rem;font-weight:600;line-height:1.4;max-width:100%;} .button:hover:not(:disabled){background:var(--green-dark);border-color:var(--green-dark);} .hero-cta .icon{margin-left:14px;} .hero-meta{font-size:.8125rem;color:#4e5d5e;margin:14px 0 0;} .hero-meta span{padding:0 10px;color:#8a9695;}
.hero--story{background:#fff;display:flex;flex-direction:column;align-items:center;padding-top:20px;} .hero--story .hero-copy{text-align:center;flex:0 0 auto;padding:0 20px;} .hero--story .eyebrow{margin-bottom:10px;} .hero--story h1{font-size:4rem;margin-bottom:8px;} .hero--story .hero-lead{font-family:var(--sans);font-size:1.125rem;max-width:none;margin-bottom:16px;} .hero--story .hero-meta{margin-top:10px;} .story-intro{margin:18px 0 0;min-height:0;flex:1 1 auto;width:min(700px,100%);display:flex;flex-direction:column;align-items:center;} .story-intro>img{display:block;width:100%;height:calc(100% - 44px);min-height:0;object-fit:contain;object-position:bottom center;flex:1 1 auto;} .story-intro figcaption{flex:0 0 44px;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:center;font-size:.8125rem;text-align:center;background:white;} .story-intro figcaption b{font-size:.6875rem;font-weight:500;color:var(--gold);margin-right:5px;}
.section-width{max-width:1120px;margin:0 auto;padding-left:48px;padding-right:48px;} .reading-section{padding-top:60px;padding-bottom:66px;display:grid;grid-template-columns:1fr 1fr;gap:64px;scroll-margin-top:20px;} .section-intro .eyebrow{margin-bottom:15px;} .section-intro h2{margin-bottom:17px;} .section-intro>p:last-child{color:var(--muted);max-width:370px;font-size:1rem;} .reading-form{padding-top:2px;} fieldset{padding:0;border:0;margin:0 0 23px;min-width:0;} legend{font-size:.875rem;font-weight:600;margin-bottom:14px;} .focus-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);} .focus-option{position:relative;cursor:pointer;min-width:0;} .focus-option input{position:absolute;opacity:0;width:1px;height:1px;} .focus-option span{height:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border-bottom:2px solid transparent;font-size:.875rem;} .focus-option:not(:last-child) span{border-right:1px solid #e8ebe8;} .focus-option input:checked+span{background:#edf3ef;border-bottom-color:var(--green);color:var(--green);font-weight:600;} .focus-option input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px;} .age-check{display:flex;align-items:center;gap:10px;font-size:.875rem;line-height:1.5;margin-bottom:20px;cursor:pointer;} .age-check input{width:18px;height:18px;margin:0;accent-color:var(--green);} .draw-button{width:100%;justify-content:flex-start;} .draw-button .icon:last-child{margin-left:auto;} .draw-button:disabled{background:#778b85;border-color:#778b85;} .form-note{font-size:.8125rem;line-height:1.5;color:var(--muted);margin:12px 0 0;} .reading-status{font-size:.875rem;margin:10px 0 0;min-height:0;} .reading-status:empty{display:none;} .reading-error{color:var(--error);font-size:.875rem;line-height:1.6;margin:12px 0 0;}
.result-section{background:var(--wash);border-top:1px solid #e1e7e2;padding:64px 0 0;} .result-layout{display:grid;grid-template-columns:280px 1fr;gap:76px;align-items:center;} .result-card{aspect-ratio:2/3;border:1px solid #c6b68e;background:#fff;padding:20px;display:flex;flex-direction:column;outline:1px solid #e6dfcf;outline-offset:-9px;border-radius:4px;} .card-top{display:flex;gap:12px;justify-content:space-between;align-items:center;color:var(--green);font-size:.75rem;} .card-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:30px;} .card-center>.icon{width:58px;height:58px;color:var(--gold);stroke-width:1;} .card-center h3{font-family:var(--serif);font-size:2.1rem;line-height:1.18;margin:0;overflow-wrap:anywhere;} .card-bottom{font-size:.875rem;text-align:center;color:var(--muted);} .result-copy h2{max-width:470px;} .result-copy>p{max-width:550px;} .result-copy .reflection-prompt{font-family:var(--serif);font-size:1.375rem;line-height:1.45;margin:22px 0;} .result-disclaimer{font-size:.8125rem;color:var(--muted);} .text-button{display:inline-flex;align-items:center;gap:9px;background:none;border:0;padding:0;text-align:left;font-size:.875rem;text-decoration:underline;text-underline-offset:4px;color:var(--green);line-height:1.5;} .redraw-button{margin-top:12px;min-height:40px;} .offer-section{display:flex;justify-content:space-between;gap:36px;border-top:1px solid #dbe3dd;padding-top:42px;padding-bottom:44px;margin-top:56px;} .offer-section h3{font-family:var(--serif);font-size:1.75rem;line-height:1.25;margin-bottom:12px;} .offer-section p:last-child{font-size:.9375rem;color:var(--muted);margin:0;} .offer-section .eyebrow{margin-bottom:14px;} .offer-price{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex:0 0 220px;} .price{font-family:var(--serif);font-size:2rem;line-height:1.2;} .offer-price>span:nth-child(2){font-size:.75rem;color:var(--muted);} .button-disabled{background:#e7ebe7;color:#57675f;border-color:#ccd5ce;min-height:43px;margin-top:10px;font-size:.8125rem;padding:10px 14px;}
.reading-context{padding-top:64px;padding-bottom:72px;border-top:1px solid #e5e9e5;} .reading-context>.eyebrow{margin-bottom:24px;} .reading-context>div{display:grid;grid-template-columns:1fr 1fr;gap:64px;} .reading-context h2{font-size:2.25rem;margin:0;} .reading-context p{font-size:1rem;color:var(--muted);margin-bottom:18px;} .text-link{display:inline-flex;align-items:center;gap:10px;font-size:.875rem;color:var(--green);text-decoration:none;border-bottom:1px solid #9bada1;padding-bottom:5px;} .site-footer{border-top:1px solid #dee5df;background:#f8faf8;padding:40px 48px 24px;} .footer-inner,.footer-bottom{max-width:1224px;margin:auto;display:flex;justify-content:space-between;gap:30px;} .footer-brand{font-family:var(--serif);font-size:1.375rem;text-decoration:none;white-space:nowrap;} .footer-brand span{font-family:var(--sans);font-size:.625rem;font-weight:500;text-transform:uppercase;margin-left:6px;color:var(--green);} .footer-inner p{font-size:.8125rem;color:var(--muted);margin:10px 0 0;} .footer-inner nav{display:flex;align-content:flex-start;justify-content:flex-end;flex-wrap:wrap;gap:14px 22px;max-width:580px;font-size:.8125rem;} .footer-inner nav a{text-decoration:none;} .footer-inner .text-button{font-size:.8125rem;} .footer-bottom{font-size:.75rem;color:#68716e;border-top:1px solid #e0e7e1;margin-top:28px;padding-top:20px;line-height:1.5;}
.consent-banner{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:10;display:flex;align-items:center;gap:24px;width:min(1050px,calc(100% - 40px));padding:22px 24px;background:white;border:1px solid #c9d5cd;border-radius:6px;box-shadow:0 8px 40px #20342a18;} .consent-banner strong{font-size:.875rem;} .consent-banner p{font-size:.8125rem;line-height:1.5;margin:6px 0 0;color:var(--muted);max-width:600px;} .consent-actions{display:flex;gap:10px;flex:0 0 auto;} .consent-actions .button{font-size:.8125rem;min-height:43px;padding:10px 14px;} .button-secondary{background:#fff;color:var(--green);border-color:#b8c7bd;} .button-secondary:hover:not(:disabled){color:#fff;}
.legal-page{max-width:850px;margin:auto;padding:62px 40px 80px;} .legal-page h1{font-size:3rem;margin-bottom:24px;} .legal-page h2{font-family:var(--sans);font-size:1.2rem;font-weight:600;margin:32px 0 12px;} .legal-page p,.legal-page li{font-size:1rem;line-height:1.75;} .legal-status{border-left:3px solid var(--gold);padding-left:18px;color:var(--muted);margin-bottom:35px;} .legal-page ul{padding-left:22px;} .legal-page .text-link{margin-top:24px;}
@media(min-width:1450px){.hero--quiet .hero-copy{padding-left:90px;}.quiet-scene{object-position:center 62%;}}
@media(max-width:760px){h2{font-size:2.1rem;}.site-header{height:68px;}.header-inner{padding:0 20px;gap:14px;}.wordmark{font-size:1.35rem;gap:8px;}.wordmark .icon{width:24px;height:24px;}.variant-nav{gap:18px;}.variant-nav a{font-size:.8125rem;gap:6px;}.variant-nav .icon{display:none;}.hero{height:calc(100svh - 152px);min-height:430px;max-height:580px;}.hero--quiet .hero-copy{padding:38px 25px;}.hero h1{font-size:3.25rem;margin-bottom:16px;}.eyebrow{font-size:.6875rem;margin-bottom:16px;}.hero-lead{font-size:1.4rem;max-width:330px;}.hero-note{max-width:255px;font-size:.9375rem;margin-bottom:25px;}.quiet-scene{object-position:64% center;}.hero-meta{font-size:.75rem;}.hero--story{padding-top:20px;}.hero--story h1{font-size:2.9rem;margin-bottom:10px;}.hero--story .hero-lead{font-size:1rem;max-width:320px;line-height:1.5;}.hero--story .eyebrow{margin-bottom:10px;}.story-intro{margin-top:15px;width:100%;}.story-intro figcaption{font-size:.75rem;gap:6px;padding:0 6px;flex-basis:50px;line-height:1.35;}.story-intro figcaption b{display:block;margin:0 0 3px;}.story-intro>img{height:calc(100% - 50px);}.section-width{padding-left:25px;padding-right:25px;}.reading-section{padding-top:36px;padding-bottom:42px;grid-template-columns:1fr;gap:20px;}.section-intro>p:last-child{max-width:none;}.section-intro h2{margin-bottom:12px;}.reading-form{padding:0;}.focus-option span{height:74px;}.reading-context{padding-top:42px;padding-bottom:45px;}.reading-context>div{grid-template-columns:1fr;gap:22px;}.reading-context h2{font-size:2rem;}.result-section{padding-top:36px;}.result-layout{grid-template-columns:1fr;gap:35px;}.result-card{width:240px;max-width:100%;justify-self:center;}.result-copy h2{font-size:2.1rem;}.offer-section{flex-direction:column;gap:24px;margin-top:35px;padding-top:30px;padding-bottom:32px;}.offer-price{align-items:flex-start;flex-basis:auto;}.site-footer{padding:32px 25px 24px;}.footer-inner,.footer-bottom{flex-direction:column;gap:23px;}.footer-inner nav{justify-content:flex-start;gap:16px 20px;}.footer-bottom{gap:10px;margin-top:26px;}.consent-banner{bottom:12px;width:calc(100% - 24px);padding:18px;flex-direction:column;align-items:stretch;gap:14px;}.consent-actions{justify-content:flex-end;}.consent-actions .button{flex:1;}.legal-page{padding:38px 25px 48px;}.legal-page h1{font-size:2.4rem;}}
@media(max-height:620px){.site-header{height:58px;}.hero{min-height:340px;height:calc(100svh - 125px);}.hero--quiet .hero-copy{padding-top:26px;}.hero h1{font-size:3rem;margin-bottom:10px;}.hero-lead{font-size:1.2rem;margin-bottom:8px;}.hero-note{margin-bottom:17px;}.hero .eyebrow{margin-bottom:12px;}.hero--story{padding-top:12px;}.hero--story h1{font-size:2.5rem;margin-bottom:5px;}.hero--story .eyebrow{display:none;}.hero--story .hero-lead{margin-bottom:10px;font-size:.9375rem;}.hero--story .hero-meta{margin-top:6px;}.story-intro{margin-top:10px;}.hero--story .button{min-height:44px;padding:10px 18px;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*::before,*::after{animation:none!important;transition:none!important;}}
.hero--story{height:auto;min-height:0;max-height:none;}
.hero--story .story-intro{flex:none;width:min(700px,100%);}
.hero--story .story-intro>img{height:auto;aspect-ratio:2/1;flex:none;}
.consent-banner{position:relative;left:auto;bottom:auto;transform:none;margin:24px auto;box-shadow:none;}
.legal-page>.eyebrow{margin-top:30px;}
@media(min-width:761px){.hero--story .story-intro{width:min(700px,calc(200svh - 860px));min-width:320px;}}
@media(max-height:480px){.hero--story .story-intro{width:240px;min-width:0;}.hero--story .hero-meta,.hero--story .hero-lead{display:none;}.hero--quiet .hero-note{display:none;}.hero{min-height:270px;}.reading-section{padding-top:22px;}}
.sanmei-section{background:#f7f8f7;border-top:1px solid #e0e6e1;border-bottom:1px solid #e0e6e1;scroll-margin-top:20px;}
.sanmei-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-top:48px;padding-bottom:52px;align-items:center;}
.sanmei-copy{min-width:0;}.sanmei-copy .eyebrow{margin-bottom:14px;}.sanmei-copy h2{font-size:2.625rem;margin-bottom:14px;}.sanmei-lead{font-family:var(--serif);font-size:1.4rem;line-height:1.35;margin-bottom:18px;}
.sanmei-copy>p:not(.eyebrow):not(.sanmei-lead){font-size:1rem;color:var(--muted);}.sanmei-copy .availability{color:#753c32!important;font-size:.875rem!important;margin:16px 0 18px;padding-left:12px;border-left:2px solid #b9574f;}
.element-key{list-style:none;padding:18px 0;margin:22px 0 20px;display:flex;flex-wrap:wrap;gap:12px 17px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.875rem;}
.element-key li{display:flex;align-items:center;gap:6px;}.element-key li::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--element);}.wood{--element:#377460;}.fire{--element:#b9574f;}.earth{--element:#ac843a;}.metal{--element:#7b8289;}.water{--element:#365c86;}
.sanmei-study{margin:0;min-width:0;}.sanmei-study img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;}.sanmei-study figcaption{font-size:.8125rem;color:var(--muted);line-height:1.5;margin-top:14px;}
.hero-meta a{text-decoration-thickness:1px;}.hero--story .hero-lead{max-width:550px;margin-left:auto;margin-right:auto;}.hero--story .story-intro{width:min(880px,100%);}.hero--story .story-intro figcaption{font-size:.875rem;}.result-card{border-color:#a69a7b;border-radius:0;}.card-center>.icon{color:var(--green);}.reading-section{padding-top:55px;}
@media(min-width:761px){.hero--story .story-intro{width:min(760px,100%,calc(200svh - 900px));min-width:320px;}}
@media(max-width:760px){.sanmei-layout{grid-template-columns:1fr;gap:26px;padding-top:32px;padding-bottom:36px;}.sanmei-copy h2{font-size:2.1rem;}.sanmei-copy>p:not(.eyebrow):not(.sanmei-lead){font-size:1rem;}.sanmei-study{max-width:560px;}.hero--story .hero-lead{max-width:320px;}.hero--story .story-intro figcaption{font-size:.8125rem;}.hero .eyebrow{font-size:.75rem;}.hero-meta{font-size:.8125rem;}.reading-section{padding-top:38px;}}
@media(max-height:480px){.hero--story .story-intro{width:240px;min-width:0;}.sanmei-layout{padding-top:22px;}}
:root{--ink:#22252a;--muted:#555f5c;--green:#2d3a56;--green-dark:#1f2940;--gold:#8b6c30;--line:#d3dad3;--paper:#fafbf8;--wash:#eef3ef;--error:#963c35;--vermillion:#9e4037;--indigo:#2d3a56;--jade:#3d6b61;}
body{background:var(--paper);}
.site-header{background:#fafbf8;border-bottom-color:#ccd6cf;box-shadow:inset 0 -2px 0 rgba(158,64,55,.22);}
.wordmark .icon{color:var(--indigo);}.variant-nav a[aria-current=page]{color:var(--vermillion);border-color:var(--vermillion);}
.hero--story{background:var(--paper);}.hero--story .hero-copy{position:relative;}
.hero--story .hero-copy::before{content:'';position:absolute;top:-9px;left:50%;width:42px;height:1px;background:var(--vermillion);transform:translateX(-50%);box-shadow:0 4px 0 rgba(154,116,53,.55);}
.eyebrow{color:var(--vermillion);}.button{background:var(--indigo);border-color:var(--indigo);}.button:hover:not(:disabled){background:var(--green-dark);border-color:var(--green-dark);}.button-secondary{background:var(--paper);color:var(--indigo);border-color:#aeb8c2;}.button-disabled{background:#e3eae4;color:#4e6153;border-color:#bdcbbf;}
.focus-option input{accent-color:var(--vermillion);}.focus-option input:checked+span{background:#f5eee4;border-bottom-color:var(--vermillion);color:var(--indigo);}
.sanmei-section{background:#f0f5f1;border-top-color:#cbd7cd;border-bottom-color:#cbd7cd;}.sanmei-copy .availability{border-left-color:var(--vermillion);color:#75372f!important;}.text-link{color:var(--indigo);border-bottom-color:#a9a997;}
.element-key{border-color:#cfc6b5;}.wood{--element:#3d6b61;}.fire{--element:#b14b40;}.earth{--element:#a27b35;}.metal{--element:#72777d;}.water{--element:#3e5e87;}
.reading-section{background:transparent;}.result-section{background:#eef3ef;border-top-color:#c9d2c9;}.card-top{color:var(--indigo);}.card-center>.icon{color:var(--vermillion);}.result-card{background:#fcfcf9;border-color:#a88b5a;outline-color:#ded2b9;}
.reading-context{background:transparent;border-top-color:#d3dad3;}.site-footer{background:#e7eee9;border-top-color:#c3cfc5;}.footer-brand span{color:var(--vermillion);}
.hero--story,.sanmei-section,.site-footer{position:relative;isolation:isolate;}
.hero--story::before,.sanmei-section::before,.site-footer::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:url('media/washi-pine-wallpaper.png');background-repeat:no-repeat;background-size:cover;background-position:center bottom;}
.hero--story::before{opacity:.72;}.sanmei-section::before{opacity:.10;}.site-footer::before{opacity:.14;}
.story-intro figcaption{background:rgba(250,251,248,.96);}
@media(max-width:760px){.hero--story::before{background-size:100% auto;background-position:center top;opacity:.40;}.sanmei-section::before{background-size:auto 100%;opacity:.07;}.site-footer::before{opacity:.08;}}
