:root{--or-bg:#FFFFFF;--or-bg-deep:#F5F5F5;--or-gold:#D62D34;--or-ink:#191919;--or-white:#FFFFFF;--or-line:#D8D8D8;--or-brand-line:#06C755;--or-serif:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",sans-serif;--or-sans:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",sans-serif;--fs-question:20px;--fs-option:16px;--fs-body:15px;--fs-note:12px;--h-option:56px;--h-input:52px;--h-cta:56px;--radius:12px;--gap:10px;--side:18px}*{box-sizing:border-box}html{overflow-anchor:none}body{margin:0;color:var(--or-ink);background:white;font-family:var(--or-sans);font-size:15px;line-height:1.7}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--or-gold);outline-offset:3px}button:disabled{cursor:default}a{color:inherit}.preview{font-size:12px;display:flex;align-items:center;justify-content:center;gap:12px;padding:5px 8px;background:#191919;color:white}.preview nav{display:flex;gap:6px}.preview a{font-size:12px;text-decoration:none;padding:0 6px;border:1px solid #888;border-radius:3px}.preview a.active{background:white;color:#191919}.sticky-top{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid #e6e6e6}header{max-width:1170px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:17px 30px 7px}header img{display:block;width:135px;height:auto}header>span{font-size:12px;color:#333}.progress-panel{max-width:1170px;padding:0 30px 10px;margin:auto}.progress-row{display:flex;justify-content:space-between;align-items:center;min-height:25px;margin:0 0 4px}.progress-row button{border:0;background:transparent;color:#222;font-size:12px;padding:2px 6px 2px 0;min-width:55px;text-align:left}.progress-row button:disabled{opacity:.35}.progress-row>span{font-size:12px;font-weight:700;color:var(--or-gold)}.track{height:6px;background:#eee;border-radius:6px;overflow:hidden}.track>div{height:100%;background:var(--or-gold);transition:width .3s;width:0}main{max-width:1170px;margin:auto;padding:25px 30px 0}.workflow{display:grid;grid-template-columns:1.12fr 1fr;gap:28px;padding:0 0 34px;align-items:stretch;scroll-margin-top:120px}.hero{position:relative;min-height:600px;overflow:hidden;background:#fff;border-bottom:10px solid var(--or-gold);padding:28px 24px 0}.hero::after{content:'';position:absolute;left:0;right:0;bottom:0;height:72px;background:var(--or-gold);clip-path:polygon(0 87%,100% 0,100% 100%,0 100%);z-index:0}.hero-copy{position:relative;z-index:2}.lead{display:inline-block;background:#191919;color:white;font-size:16px;margin:0 0 20px;padding:4px 11px;letter-spacing:.025em;font-weight:700}.hero h1{font-size:35px;line-height:1.35;margin:0;font-weight:900;letter-spacing:-.04em}.hero .age{display:block;font-size:31px}.hero .income{display:flex;align-items:baseline;color:var(--or-gold);line-height:1.05;white-space:nowrap;margin-top:5px}.income small{font-size:25px;margin-right:5px;font-weight:800;letter-spacing:-.1em}.income b{font-size:87px;font-family:Arial,sans-serif;font-weight:900;letter-spacing:-.07em}.income em{font-style:normal;font-size:30px;margin-left:5px;letter-spacing:-.1em}.closing{display:block;margin-top:13px;font-size:35px}.hero-bottom{margin-top:26px;max-width:255px}.hero-bottom p{font-size:15px;line-height:1.9;margin:0}.hero-bottom strong{font-size:15px;font-weight:800}.hero-bottom .hero-note{font-size:12px;color:#555;margin-top:12px}.portrait-wrap{position:absolute;width:220px;height:330px;right:7px;bottom:0;z-index:1}.hero-portrait{display:block;width:100%;height:100%;object-fit:contain;object-position:bottom}.image-caption{position:absolute;bottom:8px;right:10px;font-size:12px;background:white;padding:1px 7px;color:#191919;white-space:nowrap}.diagnosis{border:2px solid var(--or-gold);border-radius:4px;align-self:start;background:white;min-height:600px}.form-banner{background:var(--or-gold);color:white;font-size:14px;font-weight:700;padding:13px 10px;text-align:center}.form-banner>span{background:white;color:var(--or-gold);font-size:12px;padding:2px 6px;margin-right:3px}.screen-wrap{padding:13px 24px 24px}.workflow:has(.hero[hidden]){grid-template-columns:1fr}.workflow:has(.hero[hidden]) .diagnosis{width:100%;max-width:580px;margin:auto;min-height:400px}.question-row{display:flex;align-items:flex-start;gap:11px;margin:12px 0 18px}.avatar{display:block;width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#eee}.avatar img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 25%;transform:scale(2.3);transform-origin:50% 28%}.bubble{background:#f5f5f5;color:#191919;border-radius:4px 12px 12px 12px;padding:14px 16px;position:relative;flex:1}.bubble::before{content:'';position:absolute;left:-7px;top:12px;border-right:8px solid #f5f5f5;border-top:5px solid transparent;border-bottom:5px solid transparent}.bubble h2{font-size:20px;font-weight:700;line-height:1.5;margin:0}.bubble h2 em{font-style:normal;color:var(--or-gold)}.choices{display:grid;grid-template-columns:1fr;gap:10px}.choice{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:56px;padding:13px 18px;font-size:16px;font-weight:700;color:var(--or-ink);background:white;border:2px solid #d9d9d9;border-radius:12px;text-align:left;line-height:1.5}.choice .check{width:23px;text-align:right;color:transparent;flex-shrink:0}.choice[aria-pressed="true"]{border-color:var(--or-gold);background:#fff6f6}.choice[aria-pressed="true"] .check{color:var(--or-gold)}.choice:hover:not(:disabled){border-color:var(--or-gold)}.choice:disabled{color:#191919;opacity:1}.step-note{font-size:12px;color:#555;margin:14px 0 0;text-align:center}.section-heading{font-size:25px;font-weight:800;line-height:1.6;margin:12px 0;color:#191919}.body-copy{font-size:15px;margin:10px 0}.panel{background:#f5f5f5;border-radius:12px;padding:18px;margin:18px 0}.result-preview{text-align:center;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:12px;padding:18px 12px;margin:18px 0}.result-preview p{font-size:15px;margin:0}.blur-amount{font-size:42px;font-weight:800;color:var(--or-gold);filter:blur(9px);user-select:none;pointer-events:none;line-height:1.8}.result-preview .note{font-size:12px;margin-top:3px;color:#555}form{margin-top:20px}label{display:block;font-size:15px;font-weight:700;margin:18px 0 0}.label-head{display:flex;flex-wrap:wrap;column-gap:12px;align-items:baseline}.label-head small{font-size:12px;font-weight:400;color:#555}input,select{width:100%;min-height:52px;border:2px solid #d3d3d3;border-radius:8px;background:white;color:#191919;padding:11px 12px;margin-top:7px;font-size:16px;line-height:1.6}input[aria-invalid="true"]{border-color:var(--or-gold)}.field-error{min-height:0;color:#b82028;font-size:12px;margin:4px 0 0;display:block}.field-error:empty{display:none}.callout{background:#f4f4f4;color:#191919;padding:14px 16px;border-radius:8px;font-size:15px;margin:18px 0 12px;border-left:3px solid var(--or-gold)}.note,.fineprint{font-size:12px;line-height:1.8;color:#555;margin:12px 0}.assurance{font-size:12px;color:#333;margin:12px 0}.text-link{border:0;background:none;color:inherit;text-decoration:underline;font-size:12px;padding:5px 0}.primary{display:flex;justify-content:center;align-items:center;min-height:56px;border:0;background:var(--or-gold);color:white;border-radius:12px;width:100%;padding:14px 16px;margin-top:20px;font-size:16px;font-weight:700;text-decoration:none}.primary:disabled{opacity:.4}.secondary{background:white;color:#191919;border:1px solid #191919;min-height:52px;border-radius:12px;padding:12px 14px;width:100%;font-size:15px;text-decoration:none;display:flex;justify-content:center;align-items:center;margin-top:15px}.line{background:var(--or-brand-line);color:white}.result{text-align:center;padding:20px 12px;background:#f5f5f5;border-radius:12px;margin:18px 0}.result p{font-size:15px;margin:0}.result strong{display:block;font-size:46px;color:var(--or-gold);font-weight:800;line-height:1.8}.result strong span{font-size:20px;margin-left:5px}.result .note{font-size:12px;margin-top:7px}.analysing{padding:90px 12px;text-align:center}.spinner{width:40px;height:40px;border:3px solid #eee;border-top-color:var(--or-gold);border-radius:50%;margin:0 auto 22px;animation:spin 1s linear infinite}.analysing h2{font-size:24px}.analysing p{font-size:15px}.support{display:flex;gap:20px;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:25px 0;align-items:center}.support img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:50% 25%;flex-shrink:0}.support h2{font-size:19px;margin:0 0 7px;font-weight:800}.support p{font-size:15px;margin:0;color:#444}.faq{padding:28px 0 38px;max-width:760px;margin:auto}.faq h2{font-size:22px;margin:0 0 10px}details{border-bottom:1px solid #ddd;padding:15px 0;font-size:15px}summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;list-style:none;font-size:15px;font-weight:600}summary::after{content:'＋';color:var(--or-gold);flex-shrink:0}details[open] summary::after{content:'−'}details p{font-size:15px;color:#444;margin:12px 0 0}footer{text-align:center;padding:26px 18px;background:#191919;font-size:12px;color:white}footer img{width:110px}footer p{font-size:12px;margin:14px 0 8px}footer button{margin:0 9px}footer small{display:block;font-size:12px;margin-top:12px}dialog{max-width:480px;width:calc(100% - 36px);border:1px solid #191919;border-radius:12px;padding:24px;background:white;color:#191919;font-size:15px}dialog h2{font-size:22px}dialog::backdrop{background:#0009}[hidden]{display:none!important}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:701px) and (max-width:1100px){.workflow{gap:20px}.hero{padding:24px 16px 0}.income b{font-size:66px}.income small{font-size:20px}.income em{font-size:25px}.closing{font-size:29px}.hero-bottom{max-width:215px}.hero-bottom p,.hero-bottom strong{font-size:13px}.portrait-wrap{width:185px;height:285px;right:0}.screen-wrap{padding:10px 16px 20px}.form-banner{font-size:12px}}@media(max-width:700px){header{padding:13px 18px 4px}header img{width:110px}.progress-panel{padding:0 18px 10px}main{padding:0}.workflow{display:flex;flex-direction:column;gap:0;padding-bottom:25px}.hero{min-height:0;height:285px;padding:16px 20px 0;border-bottom-width:0}.hero::after{height:45px}.lead{font-size:13px;padding:2px 7px;margin:0 0 9px}.hero .age{font-size:22px}.income b{font-size:64px}.income small{font-size:20px;margin-right:3px}.income em{font-size:23px;margin-left:4px}.closing{font-size:26px;margin-top:6px}.hero-bottom{margin-top:13px;max-width:216px}.hero-bottom p,.hero-bottom strong{font-size:12px;line-height:1.9}.hero-bottom .hero-note{font-size:12px;margin-top:5px}.portrait-wrap{width:120px;height:181px;right:5px}.image-caption{font-size:12px;bottom:6px;right:0;padding:0 4px}.diagnosis{margin:0 15px;width:calc(100% - 30px);align-self:stretch;min-height:0}.form-banner{font-size:12px;padding:10px 5px}.form-banner>span{font-size:12px;padding:1px 5px}.screen-wrap{padding:8px 16px 20px}.question-row{margin:12px 0 15px}.bubble{padding:13px 12px}.bubble h2{font-size:20px}.choice{padding:13px 14px}.workflow:has(.hero[hidden]) .diagnosis{margin:18px 15px 0;width:calc(100% - 30px);min-height:400px}.support{margin:0 18px;padding:22px 0;gap:15px}.support h2{font-size:17px}.support p{font-size:15px}.faq{padding:25px 18px 30px}.faq h2{font-size:20px}.preview{gap:8px}.preview nav{gap:4px}}@media(max-width:360px){.preview{gap:6px;flex-wrap:wrap}.hero{padding-left:17px;height:290px}.income b{font-size:56px}.income small{font-size:17px}.income em{font-size:20px}.closing{font-size:24px}.hero-bottom{max-width:185px}.portrait-wrap{width:100px;height:155px;right:0}.image-caption{font-size:12px}.screen-wrap{padding-left:12px;padding-right:12px}}@media(prefers-reduced-motion:reduce){.track>div{transition:none}.spinner{animation:none}}
@media(max-width:700px){.hero{height:310px}}@media(max-width:360px){.hero{height:310px}}
/* v6: generated first-view artwork; questionnaire stays native HTML. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.workflow{grid-template-columns:1.25fr 1fr;gap:24px}.hero.hero-artwork{padding:0;border:0;min-height:0;height:auto;align-self:start;background:white}.hero.hero-artwork::after{display:none}.fv-artwork{display:block;width:100%;height:auto;max-width:100%}.diagnosis{min-height:0}@media(max-width:700px){.workflow{gap:0}.hero.hero-artwork{width:100%}}
/* Official logo is a separate asset, never baked into generated artwork. */
.fv-logo{position:absolute;z-index:2;top:4.5%;left:3.5%;width:22%;height:auto;display:block}
/* v8: pair similar-height elements only when the viewport has enough room. */
@media(min-width:1200px){.workflow{grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:28px}.hero.hero-artwork,.diagnosis{align-self:center}.screen-wrap{padding:10px 20px 20px}.question-row{margin:10px 0 16px}.form-banner{font-size:12px}.bubble{padding:12px}.workflow:has(.hero[hidden]){grid-template-columns:1fr}}
@media(min-width:701px) and (max-width:1199px){header,.progress-panel{max-width:668px;padding-left:24px;padding-right:24px}main{max-width:668px;padding:20px 24px 0}.workflow{display:flex;flex-direction:column;gap:18px}.hero.hero-artwork,.diagnosis{width:100%;align-self:stretch}.screen-wrap{padding:12px 22px 22px}.workflow:has(.hero[hidden]) .diagnosis{margin:0 auto}.support{gap:16px}}
/* v9: use the same phone photograph in both circular portraits. */
.avatar img{object-position:43% 50%;transform:scale(2);transform-origin:42% 8%}.support .support-avatar{display:block;width:64px;height:64px;border-radius:50%;overflow:hidden;flex-shrink:0}.support .support-avatar img{width:100%;height:100%;border-radius:0;object-fit:cover;object-position:43% 50%;transform:scale(2);transform-origin:42% 8%}

.consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.7;margin:18px 0}.consent input{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:2px 0;accent-color:#D62D34}
[hidden]{display:none!important}
