/* TOP-only visual system: studio hero, accessible case reveal, issues and flow */
:root{--hero-loop:12s;--ink:#101d31;--navy:#071426}
.hero.hero-v2{position:relative;isolation:isolate;overflow:hidden;min-height:690px;height:calc(100svh - 150px);max-height:748px;color:#fff;background:#071426;padding:0;display:grid;align-items:center}
.hero-v2 .hero-bg{position:absolute;inset:0;z-index:-3;background:radial-gradient(70% 90% at 78% 42%,rgba(86,120,190,.28),transparent 66%),radial-gradient(45% 55% at 35% 100%,rgba(151,139,201,.18),transparent 72%),linear-gradient(118deg,#030914 0%,#09172c 46%,#0a1b32 75%,#030812 100%)}
.hero-v2 .hero-bg:before,.hero-v2 .hero-bg:after{content:"";position:absolute;inset:-20%;background:radial-gradient(30% 34% at 62% 46%,rgba(173,194,255,.17),transparent 72%);animation:hero-glow var(--hero-loop) ease-in-out infinite;will-change:opacity,transform}.hero-v2 .hero-bg:after{background:radial-gradient(26% 30% at 38% 66%,rgba(221,196,255,.12),transparent 72%);animation-delay:-6s}
.hero-v2 .hero-floor{position:absolute;left:47%;right:0;bottom:-9%;height:25%;z-index:-1;background:radial-gradient(55% 100% at 50% 100%,rgba(154,178,236,.22),transparent 70%)}
.hero-v2>.wrap{position:relative;z-index:2;width:100%;max-width:none;margin:auto;padding:52px clamp(48px,7.8vw,112px) 42px;display:grid;grid-template-columns:510px minmax(0,1fr);gap:clamp(26px,3vw,44px);align-items:center}
.hero-v2 .hero-copy{max-width:610px}.hero-v2 h1{margin:0 0 18px;color:#fff;font:500 clamp(42px,4.25vw,62px)/1.42 'Noto Serif JP','Yu Mincho',serif;letter-spacing:.02em;text-shadow:0 4px 34px rgba(0,0,0,.4);white-space:nowrap}.hero-v2 .hero-sub{margin:0 0 23px;color:#dbe5f6;font-size:clamp(16px,1.35vw,19px);line-height:1.9;letter-spacing:.07em}.hero-v2 .hero-badge{display:inline-flex;align-items:center;gap:14px;margin:0 0 26px;color:#edf3ff;font-size:13px;letter-spacing:.09em}.hero-v2 .hero-badge:before{content:"";width:40px;height:1px;background:#90a9d2}.hero-v2 .hero-badge span{border:1px solid rgba(198,214,241,.56);padding:9px 16px;background:rgba(255,255,255,.035);backdrop-filter:blur(8px)}
.hero-v2 .hero-flow{display:flex;gap:7px;align-items:center;flex-wrap:nowrap;margin:0 0 24px;color:#afc1dd;font-size:10.5px}.hero-v2 .hero-flow span{padding:5px 8px;border:1px solid rgba(190,207,236,.24);border-radius:999px;background:rgba(255,255,255,.025);white-space:nowrap}.hero-v2 .hero-flow i{font-style:normal;color:#748caf}.hero-v2 .hero-actions{display:flex;gap:13px;flex-wrap:nowrap;margin:0 0 26px}.hero-v2 .hero-actions .cta{margin:0;min-width:190px;padding:16px 23px;text-align:center;background:#f8fbff;color:#0e2447;font-size:14px}.hero-v2 .hero-actions .cta.outline{background:rgba(4,12,25,.25);color:#fff;border:1px solid rgba(220,232,250,.62);backdrop-filter:blur(7px)}.hero-v2 .hero-foot{display:block;border-left:1px solid rgba(255,255,255,.28);padding-left:15px;color:#8198bb;font:500 9px/1.75 Futura,'Avenir Next',sans-serif;letter-spacing:.24em}
.hero-art2{position:relative;height:560px;min-width:0;perspective:1250px;animation:hero-art-in 1.2s cubic-bezier(.2,.7,.2,1) both .15s}.hero-curve{position:absolute;inset:-5% -12% -7% -10%;width:125%;height:120%;overflow:visible;z-index:-1}.hero-curve path{fill:none;stroke-linecap:round}.hero-curve .c1{stroke:url(#hc-grad);stroke-width:31;opacity:.62;filter:url(#hc-blur);animation:curve-breathe var(--hero-loop) ease-in-out infinite}.hero-curve .c2{stroke:url(#hc-grad2);stroke-width:5;opacity:.78}.hero-curve .c3{stroke:#fff;stroke-width:1.4;opacity:.68;stroke-dasharray:32 240;animation:hero-dash var(--hero-loop) linear infinite}.hero-curve .orb{filter:drop-shadow(0 0 8px #dce5ff) drop-shadow(0 0 18px rgba(190,205,255,.7))}
.hero-core{position:absolute;left:37%;bottom:45px;width:54px;height:54px;z-index:0;transform:rotate(45deg);background:linear-gradient(145deg,rgba(255,255,255,.44),rgba(155,178,232,.12));border:1px solid rgba(255,255,255,.7);box-shadow:0 0 66px 18px rgba(172,191,244,.33),inset 0 0 24px rgba(255,255,255,.42);backdrop-filter:blur(8px);animation:core-glow var(--hero-loop) ease-in-out infinite}.hero-core:after{content:"";position:absolute;inset:30%;border-radius:50%;background:#fff;box-shadow:0 0 18px 5px #d6e2ff}
.scene-wrap{position:absolute;inset:0;z-index:2}.scene{position:absolute;color:#10203a;background:linear-gradient(150deg,rgba(255,255,255,.97),rgba(224,234,249,.91));border:1px solid rgba(255,255,255,.9);box-shadow:0 28px 70px rgba(1,7,18,.54),inset 0 0 0 1px rgba(120,150,205,.13);backdrop-filter:blur(15px);overflow:hidden;transform-style:preserve-3d;transition:transform .35s ease,box-shadow .35s ease}.scene:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.62),transparent 35% 66%,rgba(155,185,235,.2));pointer-events:none}.scene-minutes{width:72%;left:2%;top:4px;transform:rotateY(-6deg) rotateZ(-1.4deg)}.scene-inbox{width:62%;right:0;top:181px;transform:rotateY(-8deg) rotateZ(1.5deg)}.scene-privacy{width:59%;left:8%;bottom:0;transform:rotateY(6deg) rotateZ(-1deg)}.scene:hover,.scene:focus-within{transform:translateY(-3px);box-shadow:0 34px 86px rgba(1,7,18,.65),0 0 38px rgba(161,186,241,.14)}
.scene-head{position:relative;z-index:2;min-height:116px;padding:22px 58px 19px 23px;display:flex;flex-direction:column;justify-content:center;gap:5px}.scene-eyebrow{color:#55709e;font:700 10px/1.2 Futura,'Avenir Next',sans-serif;letter-spacing:.19em}.scene-title{margin:0;color:#112039;font:500 clamp(16px,1.55vw,21px)/1.55 'Noto Serif JP',Georgia,serif;letter-spacing:.025em}.scene-toggle{position:absolute;right:16px;top:50%;transform:translateY(-50%);z-index:3;width:32px;height:32px;border:1px solid #a8b8d2;border-radius:50%;background:rgba(255,255,255,.72);color:#24446f;cursor:pointer;font-size:0}.scene-toggle:before,.scene-toggle:after{content:"";position:absolute;left:9px;right:9px;top:15px;height:1px;background:currentColor}.scene-toggle:after{transform:rotate(90deg);transition:transform .2s}.scene.is-open .scene-toggle:after{transform:rotate(0)}.scene-toggle:focus-visible{outline:3px solid #477ac0;outline-offset:3px}.hero-v2 p.scene-summary{position:relative;z-index:2;margin:-7px 23px 18px;color:#3f526f;font-size:11px;line-height:1.65;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scene-flow{position:relative;z-index:2;display:none;list-style:none;margin:0;padding:0 22px 23px;max-height:354px;overflow:auto;color:#26364e;background:rgba(247,250,255,.9);border-top:1px solid rgba(128,151,190,.22)}.scene.is-open{z-index:8;width:88%;left:6%;right:auto;top:24px;bottom:auto;transform:none}.scene.is-open .scene-head{min-height:94px}.scene.is-open .scene-summary{display:none}.scene.is-open .scene-flow{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding-top:17px}.scene.is-open .step{padding:10px 0}.scene.is-open .step-icon{display:none}.scene.is-open .step-body p,.scene.is-open .step-body li,.scene.is-open .step-body td,.scene.is-open .step-body th,.scene.is-open .step-body span{color:#26364e!important}
.step{font-size:11px;line-height:1.65}.step-label{margin:0 0 6px!important;color:#14243d!important;font-weight:700!important;font-size:12px!important}.step-note{font-size:10.5px!important;line-height:1.6!important;color:#61708a!important}.memo-stack,.tag-row{display:flex;flex-wrap:wrap;gap:5px}.memo-chip,.msg-bubble,.tag-chip,.draft-card{display:inline-block;padding:5px 7px;background:#fff;border:1px solid #dce4ef;border-radius:3px;font-size:10px;color:#34445d}.mini-table,.status-table{width:100%;border-collapse:collapse;font-size:10px}.mini-table td,.mini-table th,.status-table td{padding:3px;border-bottom:1px solid #dde4ee;text-align:left}.pick-list,.rule-list{margin:0;padding-left:17px}.check-row{display:flex;gap:6px;align-items:flex-start;font-size:10px}.masked{background:#18253a;color:#18253a!important}.draft-card{margin:0}.status{display:inline-block;padding:2px 5px;border-radius:10px}.st-wait{background:#f8e6c7}.st-check{background:#dae6f8}.st-done{background:#dceee4}
.motion-toggle{position:absolute;right:22px;bottom:17px;z-index:12;display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 13px;border:1px solid rgba(198,214,240,.38);border-radius:999px;background:rgba(4,12,25,.52);color:#dbe7fa;backdrop-filter:blur(7px);font:500 11px 'Noto Sans JP',sans-serif;cursor:pointer}.motion-toggle:focus-visible{outline:3px solid #9cc4ff;outline-offset:3px}.motion-toggle .ic{width:9px;height:9px;background:currentColor}.motion-toggle[aria-pressed=true] .ic{width:0;height:0;background:none;border-left:8px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent}
@keyframes hero-glow{0%,100%{transform:translate3d(0,0,0) scale(1);opacity:.7}50%{transform:translate3d(3%,-2%,0) scale(1.1);opacity:1}}@keyframes curve-breathe{0%,100%{opacity:.5}50%{opacity:.8}}@keyframes hero-dash{to{stroke-dashoffset:-512}}@keyframes core-glow{50%{box-shadow:0 0 86px 27px rgba(186,202,248,.44),inset 0 0 30px rgba(255,255,255,.55)}}@keyframes hero-art-in{from{opacity:0;transform:translateY(22px) scale(.97)}to{opacity:1;transform:none}}
.hero-v2.is-paused *,.hero-v2.is-offscreen *{animation-play-state:paused!important}.hero-v2.is-reduced *{animation:none!important}.hero-v2.is-reduced .orb,.hero-v2.is-paused .orb{display:none}@media(prefers-reduced-motion:reduce){.hero-v2 *{animation:none!important}.hero-v2 .orb{display:none}}
.worries{background:#f3f6fa;padding:96px 8%}.worries .wrap{max-width:1180px;margin:auto}.worries .label{font-size:clamp(34px,4.5vw,56px);margin-bottom:18px;color:#1d2836}.worries h2{margin:0 0 16px;font-size:clamp(26px,3vw,38px)}.worries .section-lead{text-align:left;margin:0 0 48px;max-width:720px}.worry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;padding:0;margin:0}.worry-grid li{background:#fff;border:1px solid var(--line);padding:26px 24px;display:grid;grid-template-rows:auto auto auto 1fr;gap:11px}.worry-grid .q{position:relative;font-size:16px;font-weight:700;line-height:1.7;padding-top:12px;color:#1d2836}.worry-grid .q:before{content:"";position:absolute;left:0;top:0;width:32px;height:2px;background:#5279ae}.worry-grid .detail{margin:0;font-size:13px;line-height:1.8;color:#6b7890}.worry-grid .arrow{font-size:11px;letter-spacing:.12em;color:#386798}.worry-grid .a{font-size:14px;line-height:1.85;color:#3d4a5c;margin:0}.worry-grid .a strong{color:#1d2836}.worry-grid .case-link{margin-top:auto;font-size:12px;color:#2458a0;font-weight:700;padding-top:7px}.worry-grid .case-link:after{content:" →"}.worries-close{margin:52px 0 0;text-align:center;border-top:1px solid var(--line);padding-top:42px}.worries-close p{font-size:clamp(20px,2.4vw,28px);font-weight:700;line-height:1.7;margin:0 0 24px}.worries-close small{display:block;margin-top:14px;font-size:13px;color:#59677a}
.process{background:#fff;padding:90px 8%}.process .wrap{max-width:1180px;margin:auto;text-align:center}.process .label{font-size:clamp(30px,4vw,48px);margin-bottom:14px;color:#1d2836}.process h2{margin:0 0 12px;font-size:clamp(24px,2.8vw,34px)}.process .section-lead{max-width:640px;margin:0 auto 42px}.process-steps{list-style:none;margin:0 0 34px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;text-align:left;background:#dce3ed}.process-steps li{position:relative;background:#f6f8fb;padding:26px 22px}.process-steps .step-no{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#173a68;color:#fff;font-weight:700;margin-bottom:13px}.process-steps h3{margin:0 0 8px;font-size:16px}.process-steps p{margin:0;font-size:13px;line-height:1.8;color:#5a6c86}
@media(max-width:1100px){.hero.hero-v2{height:auto;max-height:none;min-height:680px}.hero-v2>.wrap{grid-template-columns:.8fr 1.2fr;gap:22px;padding-left:32px;padding-right:32px}.hero-v2 h1{font-size:40px}.hero-art2{height:530px}}
@media(max-width:850px){.hero.hero-v2{height:auto;min-height:0;max-height:none}.hero-v2>.wrap{grid-template-columns:1fr;padding:54px 6% 72px;gap:28px}.hero-v2 h1{white-space:normal;font-size:clamp(36px,9vw,48px)}.hero-art2{width:100%;height:510px}.hero-v2 .hero-floor{left:4%;right:-10%}.scene-minutes{width:78%;left:0}.scene-inbox{width:63%}.scene-privacy{width:59%;left:7%}}
@media(max-width:540px){.hero-v2>.wrap{padding:38px 6% 58px}.hero-v2 h1{font-size:clamp(33px,10.3vw,42px);line-height:1.46}.hero-v2 .hero-sub{font-size:15px;margin-bottom:18px}.hero-v2 .hero-badge{font-size:11px;margin-bottom:19px}.hero-v2 .hero-badge:before{width:24px}.hero-v2 .hero-flow{font-size:10px;margin-bottom:21px}.hero-v2 .hero-actions{flex-direction:column;margin-bottom:0}.hero-v2 .hero-actions .cta{width:100%;min-width:0;padding:13px}.hero-v2 .hero-foot{display:none}.hero-art2{height:460px}.scene-head{min-height:98px;padding:16px 46px 14px 17px}.scene-title{font-size:15px}.hero-v2 p.scene-summary{margin:-5px 17px 14px;font-size:9.5px}.scene-minutes{width:87%;top:8px}.scene-inbox{width:75%;top:167px}.scene-privacy{width:72%;left:4%;bottom:6px}.scene.is-open{width:100%;left:0;top:5px}.scene.is-open .scene-flow{grid-template-columns:1fr;max-height:326px}.motion-toggle{right:10px;bottom:10px}.worries,.process{padding:62px 6%}.worry-grid{grid-template-columns:1fr}.worries .label{font-size:34px}.process .wrap{text-align:left}.process .section-lead{margin-left:0}.process-steps{grid-template-columns:1fr}.worries-close{text-align:left}}
@media(min-width:541px) and (max-width:850px){.worry-grid{grid-template-columns:1fr 1fr}.process-steps{grid-template-columns:1fr 1fr}}

/* Hero deliverable faces and final responsive fit. */
main,main button,main input{font-family:Futura,'Noto Sans JP','Yu Gothic',sans-serif}main h1,main h2,main h3,main h4,main .label,main .sectionlabel,main .eyebrow,main .num{font-family:Futura,'Noto Sans JP','Yu Gothic',sans-serif!important}
.hero-v2,.hero-v2 h1,.hero-v2 h2,.hero-v2 h3,.hero-v2 button,.worries,.process{font-family:Futura,'Noto Sans JP','Yu Gothic',sans-serif}.hero-v2 h1,.scene-title{font-family:Futura,'Noto Sans JP','Yu Gothic',sans-serif}
.scene-head{min-height:83px;padding:16px 58px 10px 21px;gap:4px}.scene-eyebrow{font-size:9px}.scene-title{font-size:clamp(15px,1.3vw,19px);line-height:1.45}.hero-v2 p.scene-summary{margin:0 21px 9px;font-size:10px;line-height:1.55}
.scene-preview{position:relative;z-index:2;margin:0 18px 15px;padding:10px 12px 9px;background:rgba(255,255,255,.72);border:1px solid rgba(121,146,186,.25);box-shadow:0 8px 20px rgba(29,53,88,.07)}.preview-kicker{display:block;margin-bottom:6px;color:#37547d;font-size:9px;font-weight:700;letter-spacing:.08em}.scene-preview dl{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.scene-preview dl div{min-width:0;border-left:2px solid #8aa3ca;padding-left:6px}.scene-preview dt{color:#657795;font-size:8px;line-height:1.3}.scene-preview dd{margin:2px 0 0;color:#172942;font-size:9px;font-weight:700;line-height:1.4}.preview-rules{display:flex;gap:5px;flex-wrap:wrap}.preview-rules span{padding:4px 7px;border-radius:99px;background:#e8eef7;color:#213d64;font-size:8px;font-weight:700}.preview-rules span:nth-child(2){background:#f3e9d5;color:#6b5125}.preview-rules span:nth-child(3){background:#efe3e6;color:#74404d}.scene-preview .preview-check{margin:7px 0 0;padding-top:6px;border-top:1px solid #dbe3ee;color:#344b6b;font-size:9px;font-weight:700}.scene.is-open .scene-preview{display:none}
@media(max-width:1100px) and (min-width:851px){.hero-v2>.wrap{grid-template-columns:440px minmax(0,1fr);padding-left:40px;padding-right:40px}.hero-v2 .hero-flow{flex-wrap:wrap}.hero-v2 .hero-actions{flex-wrap:wrap}}
@media(max-width:850px){.hero-v2>.wrap,.hero-v2 .hero-copy,.hero-art2{width:100%;max-width:100%;min-width:0}.hero-v2 .hero-flow{flex-wrap:wrap}.hero-v2 .hero-actions{flex-wrap:wrap}}
@media(max-width:540px){header .mobile-menu{display:block!important;margin-left:auto!important}header nav{display:none!important}.hero-v2>.wrap{padding-left:22px;padding-right:22px}.hero-v2 .hero-actions{width:100%;flex-wrap:nowrap}.hero-v2 .hero-actions .cta{box-sizing:border-box;max-width:100%}.hero-art2{height:540px}.scene-head{min-height:77px;padding:13px 47px 8px 15px}.scene-title{font-size:14px}.hero-v2 p.scene-summary{margin:0 15px 8px;font-size:9px}.scene-preview{margin:0 12px 11px;padding:8px 9px}.scene-preview dl{grid-template-columns:1fr}.scene-preview dl div{display:grid;grid-template-columns:60px 1fr}.scene-preview dd{margin:0}.scene-minutes{width:94%;left:0;top:4px}.scene-inbox{width:87%;right:0;top:188px}.scene-privacy{width:90%;left:2%;bottom:0}}

/* Keep all three deliverables fully visible without card overlap. */
.hero.hero-v2{height:calc(100svh - 156px);max-height:744px}
.scene-head{min-height:70px;padding:12px 58px 7px 21px;gap:3px}.hero-v2 p.scene-summary{margin-bottom:6px}.scene-preview{margin-bottom:9px;padding:7px 9px 6px}.preview-kicker{margin-bottom:4px}.scene-minutes{top:0}.scene-inbox{top:185px}.scene-privacy{bottom:0}
@media(min-width:851px){.scene-head{min-height:64px;padding-top:9px;padding-bottom:5px}.scene-inbox{top:190px}.scene-privacy .scene-preview{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:8px}.scene-privacy .preview-kicker{grid-column:1/-1}.scene-privacy .preview-check{margin:0;padding:0 0 0 8px;border-top:0;border-left:1px solid #dbe3ee;white-space:nowrap}}
@media(max-width:540px){.hero-art2{height:620px}.scene-head{min-height:66px;padding:10px 47px 6px 15px}.hero-v2 p.scene-summary{margin-bottom:5px}.scene-preview{margin-bottom:8px;padding:7px 8px}.scene-minutes{top:0}.scene-inbox{top:205px}.scene-privacy{bottom:0}}
@media(max-width:540px){.hero.hero-v2{height:auto;max-height:none}.scene.is-open{width:97%;left:1.5%}}
.hero-v2.is-reduced *,.hero-v2.is-reduced *::before,.hero-v2.is-reduced *::after{animation:none!important}
@media(prefers-reduced-motion:reduce){.hero-v2 *,.hero-v2 *::before,.hero-v2 *::after{animation:none!important}}

/* Match the typography used from SOLUTION onward: Futura for Latin glyphs,
   Noto Sans JP for Japanese. Futura is loaded from the local system font. */
body,body *{font-family:Futura,'Noto Sans JP','Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif!important}
