@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Noto+Sans+JP:wght@400;500;600;700&family=Shippori+Mincho:wght@500;600;700&display=swap";:root{--canvas:#f7f8f6;--surface:#fff;--subtle:#eff2f5;--dark:#0f172a;--ink:#111827;--muted:#566274;--border:#dce3e9;--primary:#4f46e5;--cyan:#22d3ee;--violet:#9b4dff;--gradient:linear-gradient(120deg, #22d3ee 0%, #4f8dff 48%, #9b4dff 100%);--sans:"DM Sans", "Noto Sans JP", sans-serif;--serif:"Shippori Mincho", serif;--shell:min(1160px, calc(100vw - 48px))}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--canvas);line-break:strict}body{color:var(--ink);background:var(--canvas);font-family:var(--sans);letter-spacing:.025em;-webkit-font-smoothing:antialiased;margin:0;line-height:1.85}body:before{content:"";pointer-events:none;opacity:.24;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E");position:fixed;inset:0}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);letter-spacing:.02em;text-wrap:pretty;font-weight:600;line-height:1.35}h1{font-size:clamp(2.8rem,6.8vw,6.5rem)}h2{font-size:clamp(2rem,4.5vw,4.2rem)}h3{font-size:1.25rem;line-height:1.6}::selection{color:#fff;background:var(--primary)}.shell{width:var(--shell);margin-inline:auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;color:#fff;background:var(--dark);padding:10px 16px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}.eyebrow{color:var(--muted);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:24px;font-size:.72rem;font-weight:600;display:flex}.eyebrow>span{background:currentColor;width:32px;height:1px}.eyebrow-light{color:#aab4c4}.section-heading{max-width:1000px;margin-bottom:64px}.section-heading h2{margin-bottom:24px}.section-heading.is-center{text-align:center;margin-inline:auto}.section-heading.is-center .eyebrow{justify-content:center}.section-lead{max-width:1120px;color:var(--muted);font-size:clamp(1rem,1.5vw,1.14rem)}.section-heading.is-center .section-lead{margin-inline:auto}.gradient-text{color:#0000;background:var(--gradient);-webkit-background-clip:text;background-clip:text}.button{color:#fff;background:var(--dark);border:1px solid var(--dark);letter-spacing:.08em;border-radius:3px;justify-content:center;align-items:center;min-height:58px;padding:0 28px;font-size:.9rem;font-weight:600;transition:transform .2s,background .2s,color .2s;display:inline-flex}.button:hover{background:var(--primary);border-color:var(--primary);transform:translateY(-2px)}.button:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.button-small{min-height:44px;padding-inline:19px;font-size:.78rem}.button-outline{color:var(--ink);background:0 0;border-color:#a9b1bc}.button-outline:hover{color:#fff}.button-light{color:var(--dark);background:#fff;border-color:#fff}.button-light:hover{color:#fff;background:var(--primary);border-color:var(--primary)}.button-line,.button-line:hover{color:#fff;background:#006b2d;border-color:#006b2d}.line-official{color:#fff;width:116px;height:36px;line-height:1;transition:transform .2s,filter .2s;display:inline-block}.line-official:hover{color:#fff;filter:brightness(.92);transform:translateY(-2px)}.line-official-visual{width:116px;height:36px;display:block;position:relative;overflow:hidden}.line-official-visual img{width:116px;max-width:none;height:36px;display:block}.line-official-label{color:#fff;letter-spacing:0;text-align:center;white-space:nowrap;background:#00b900;justify-content:center;align-items:center;padding:0 8px;font-size:.78rem;font-weight:700;line-height:1.2;display:flex;position:absolute;inset:0 0 0 29%}.line-official-label:after{content:attr(data-label)}.header-cta{width:173px;height:58px}.header-cta .line-official-visual{background:#00b900;align-items:center;width:173px;height:58px;display:flex}.header-cta .line-official-visual img{width:173px;max-width:none;height:auto}.header-cta .line-official-label{font-size:.94rem;left:50px}.hero-line{width:173px;height:58px}.hero-line .line-official-visual{background:#00b900;align-items:center;width:173px;height:58px;display:flex}.hero-line .line-official-visual img{display:none}.hero-line .line-official-label{font-size:.94rem;left:0}.cta-line{width:116px;height:36px}.cta-actions .cta-line{width:230px;height:58px}.cta-actions .cta-line .line-official-visual{background:#00b900;align-items:center;width:230px;height:58px;display:flex}.cta-actions .cta-line .line-official-visual img{flex:none;width:187px;max-width:none;height:58px}.cta-actions .cta-line .line-official-label{font-size:.94rem;left:55px}.instagram-official{color:#fff;letter-spacing:.02em;white-space:nowrap;border:1px solid #ffffff8c;border-radius:3px;align-items:center;gap:10px;width:230px;height:58px;padding:0 16px;font-size:.82rem;font-weight:700;transition:transform .2s,filter .2s;display:inline-flex}.instagram-official:hover{color:#fff;filter:brightness(.92);transform:translateY(-2px)}.instagram-official:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.instagram-official-icon{flex:0 0 34px;width:34px;height:34px}.instagram-official-arrow{margin-left:auto;font-size:1.1rem}.guide-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:28px;display:flex}.guide-actions .guide-line{width:230px;height:58px}.guide-actions .guide-line .line-official-visual{background:#00b900;align-items:center;width:230px;height:58px;display:flex}.guide-actions .guide-line .line-official-visual img{flex:none;width:187px;max-width:none;height:58px}.guide-actions .guide-line .line-official-label{font-size:.94rem;left:55px}.guide-actions .guide-instagram{width:230px;height:58px;color:var(--ink);border-color:var(--border)}.guide-actions .guide-instagram:hover{color:var(--ink)}.diagnosis-cta{background:var(--gradient);border-color:#0000;box-shadow:0 10px 24px #4f46e533}.diagnosis-cta:hover{background:linear-gradient(120deg,#16b7d7,#4338ca);border-color:#0000}.text-link{border-bottom:1px solid #9ca3af;align-items:center;gap:14px;padding-bottom:5px;font-size:.88rem;font-weight:600;display:inline-flex}.text-link:hover{border-color:var(--primary);color:var(--primary)}.text-link-light{color:#fff;border-color:#64748b}.site-header{z-index:50;border-bottom:1px solid #0000;transition:transform .35s,background .25s,border-color .25s;position:sticky;top:0}.site-header.is-scrolled{border-color:var(--border);backdrop-filter:blur(14px);background:#f7f8f6f0}.site-header.is-hidden{transform:translateY(-100%)}.header-inner{grid-template-columns:210px 1fr auto;align-items:center;min-height:88px;display:grid}.brand{align-items:center;width:132px;display:inline-flex}.brand img{width:100%}.desktop-nav{justify-content:center;align-items:center;gap:clamp(18px,2.4vw,34px);display:flex}.desktop-nav a{color:#374151;padding:12px 0;font-size:.78rem;font-weight:500;position:relative}.desktop-nav a:after{content:"";background:var(--primary);height:1px;transition:right .2s;position:absolute;bottom:6px;left:0;right:100%}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{right:0}.menu-button{background:0 0;border:0;width:46px;height:46px;padding:13px 9px;display:none}.menu-button>span:not(.sr-only){background:var(--ink);height:1px;margin:6px 0;display:block}.mobile-menu{border-top:1px solid var(--border);background:var(--canvas)}.mobile-menu nav{width:var(--shell);margin:0 auto;padding:18px 0 28px}.mobile-menu a{border-bottom:1px solid var(--border);font-family:var(--serif);gap:24px;padding:14px 0;font-size:1.2rem;display:flex}.mobile-menu a span{color:var(--muted);font-family:var(--sans);font-size:.68rem}.home-hero{min-height:calc(100svh - 88px);padding:5vh 0 72px;position:relative;overflow:hidden}.home-hero:after{content:"";aspect-ratio:1;filter:blur(8px);background:radial-gradient(circle,#22d3ee24,#4f8dff14 38%,#9b4dff08 60%,#0000 71%);border-radius:50%;width:min(55vw,720px);position:absolute;top:5%;right:-12vw}.hero-grid{z-index:1;border-top:1px solid var(--border);border-bottom:1px solid var(--border);min-height:71vh;display:block;position:relative}.hero-main{flex-direction:column;justify-content:center;max-width:980px;padding:7vh 0;display:flex}.hero-kicker{color:var(--muted);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:13px;margin-bottom:42px;font-size:.74rem;font-weight:600;display:flex}.hero-kicker:before{content:"";background:var(--gradient);width:42px;height:3px}.hero-copy{max-width:780px;color:var(--muted);margin-bottom:40px;font-size:clamp(1rem,1.6vw,1.2rem)}.desktop-break{display:block}.hero-actions{flex-wrap:wrap;align-items:center;gap:26px;display:flex}.hero-side{flex-direction:column;justify-content:space-between;padding:42px 0 42px 38px;display:flex}.hero-index{color:#bbc2cc;letter-spacing:.18em;writing-mode:vertical-rl;font-size:.7rem}.hero-note{max-width:260px}.hero-note strong{font-family:var(--serif);margin-bottom:12px;font-size:1.25rem;display:block}.hero-note p{color:var(--muted);margin:0;font-size:.84rem}.scroll-cue{color:var(--muted);letter-spacing:.2em;transform-origin:100%;align-items:center;gap:13px;font-size:.62rem;display:flex;position:absolute;bottom:26px;right:24px;transform:rotate(90deg)}.page-hero{border-bottom:1px solid var(--border);padding:92px 0 100px}.page-hero-grid{border-top:1px solid var(--border);grid-template-columns:1.4fr .6fr;display:grid}.page-hero h1{max-width:880px;margin:0;padding:60px 6vw 0 0;font-size:clamp(3rem,7vw,6.8rem)}.page-hero-side{border-left:1px solid var(--border);flex-direction:column;justify-content:space-between;min-height:390px;padding:34px 0 0 42px;display:flex}.page-number{color:var(--muted);align-self:flex-end;font-size:4rem;font-weight:500;line-height:1}.page-hero-side p{max-width:360px;color:var(--muted);margin-bottom:0}.section{padding:120px 0}.section-subtle{background:var(--subtle)}.section-dark{color:#fff;background:var(--dark)}.section-dark .eyebrow,.section-dark .section-lead,.section-dark .step p,.section-dark .step:before{color:#aab4c4}.problem-grid,.value-grid,.principles-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.problem-item,.value-item,.principle-item{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:270px;padding:34px}.problem-item span,.value-item span,.principle-item>span{color:var(--muted);letter-spacing:.12em;margin-bottom:55px;font-size:.7rem;display:block}.problem-item h3,.value-item h3,.principle-item h3{font-family:var(--serif);overflow-wrap:normal;font-size:1.35rem}.problem-item p,.value-item p,.principle-item p{color:var(--muted);font-size:.9rem}.guide-panel{border:1px solid var(--border);grid-template-columns:.75fr 1.25fr;min-height:520px;display:grid}.guide-visual{background:var(--dark);position:relative;overflow:hidden}.guide-visual:before,.guide-visual:after{content:"";background:var(--gradient);transform-origin:0;width:70%;height:1px;position:absolute;inset:50% auto auto 50%;transform:rotate(-45deg)}.guide-visual:after{transform:rotate(45deg)}.guide-mark{border:2px solid #fff;width:70px;height:70px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.guide-visual-label{color:var(--cyan);letter-spacing:.2em;font-size:.68rem;font-weight:700;position:absolute;top:30px;left:34px}.guide-visual-node{color:#fff;letter-spacing:.08em;border:1px solid #ffffffa6;place-items:center;min-width:92px;min-height:42px;padding:0 12px;font-size:.68rem;font-weight:600;display:grid;position:absolute}.node-line{top:128px;left:34px}.node-instagram{bottom:128px;right:34px}.guide-visual-core{color:#fff;border:1px solid var(--cyan);width:124px;height:58px;font-family:var(--serif);place-items:center;font-size:1rem;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.guide-visual p{color:#aab4c4;margin:0;font-size:.82rem;line-height:1.8;position:absolute;bottom:28px;left:34px;right:34px}.guide-content{flex-direction:column;justify-content:center;padding:clamp(40px,7vw,100px);display:flex}.guide-content blockquote{font-family:var(--serif);margin:0 0 30px;font-size:clamp(1.7rem,3.4vw,3.3rem);line-height:1.55}.contact-mobile-break{display:none}.guide-content p{max-width:590px;color:var(--muted)}.contact-steps{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(3,1fr);margin-top:80px;display:grid}.contact-steps article{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:220px;padding:30px}.contact-steps article>span{color:var(--muted);letter-spacing:.14em;margin-bottom:38px;font-size:.7rem;display:block}.contact-steps h3{font-family:var(--serif);margin-bottom:12px;font-size:1.2rem}.contact-steps p{color:var(--muted);margin:0;font-size:.86rem}.contact-notice{margin-top:42px}.plan-list{border-top:1px solid var(--border)}.plan-row{border-bottom:1px solid var(--border);grid-template-columns:80px 1fr 220px 36px;align-items:center;gap:30px;padding:36px 14px;transition:background .2s,padding .2s;display:grid}.plan-row:hover{background:var(--surface);padding-inline:28px}.plan-number{color:var(--muted);font-size:.72rem}.plan-row h3{font-family:var(--serif);margin:0 0 3px;font-size:clamp(1.25rem,2.2vw,1.8rem)}.plan-row p{color:var(--muted);margin:0;font-size:.84rem}.plan-price{text-align:right;font-size:1.15rem;font-weight:600}.plan-price small{color:var(--muted);font-size:.65rem;font-weight:400;display:block}.plan-arrow{font-size:1.3rem}.steps{counter-reset:steps;border-top:1px solid var(--border)}.step{border-bottom:1px solid var(--border);grid-template-columns:80px 64px minmax(220px,.65fr) 1fr;gap:24px;padding:42px 0;display:grid}.step:before{counter-increment:steps;content:"0" counter(steps);color:#9aa4b1;grid-area:1/1/span 2;font-size:.75rem}.step-visual{width:48px;height:48px;color:var(--primary);border:1px solid var(--border);border-radius:50%;grid-area:1/2/span 2;place-items:center;display:grid}.step-visual svg{width:26px;height:26px}.step-content{grid-column:3/5}.step-heading{align-items:center;gap:14px;margin-bottom:8px;display:flex}.step h3{font-family:var(--serif);margin:0;font-size:1.45rem}.step-actor{color:var(--primary);border:1px solid;border-radius:99px;padding:4px 9px;font-size:.68rem;font-weight:700;display:inline-flex}.step p{color:var(--muted);margin:0}.section-dark .step{grid-template-columns:80px minmax(220px,.65fr) 1fr}.section-dark .step:before{grid-area:1/1/span 2}.section-dark .step h3{grid-column:2}.section-dark .step p{grid-column:3}.works-stage{color:#fff;background:var(--dark);min-height:470px;padding:70px;position:relative;overflow:hidden}.works-stage:after{content:"";border:1px solid #64748b;border-radius:50%;width:500px;height:500px;position:absolute;bottom:-300px;right:-80px;box-shadow:0 0 0 70px #4f8dff0f,0 0 0 150px #9b4dff08}.works-stage h3{max-width:640px;font-family:var(--serif);margin:45px 0 26px;font-size:clamp(2rem,4vw,4rem)}.works-stage p{color:#aab4c4;max-width:620px}.case-grid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:1px;margin-top:60px;display:grid}.case-card{background:var(--canvas);min-height:330px;padding:40px}.case-card .case-status{color:var(--muted);border:1px solid var(--border);letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;font-size:.64rem;display:inline-block}.case-card h3{font-family:var(--serif);margin-top:70px;font-size:1.55rem}.case-card p{color:var(--muted);font-size:.88rem}.pricing-grid{border:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.pricing-card{background:var(--canvas);border-right:1px solid var(--border);flex-direction:column;min-height:610px;padding:34px;display:flex;position:relative}.pricing-card:last-child{border-right:0}.pricing-card.is-featured{background:var(--dark);color:#fff}.pricing-card .tag{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;align-self:flex-start;margin-bottom:34px;font-size:.65rem}.pricing-card.is-featured .tag,.pricing-card.is-featured p,.pricing-card.is-featured li{color:#aab4c4}.pricing-card h2{margin-bottom:12px;font-size:1.7rem}.pricing-card .price{margin:20px 0 0;font-size:1.7rem;font-weight:600}.pricing-card .price-note{min-height:28px;font-size:.72rem}.pricing-card .plan-lead{border-bottom:1px solid var(--border);min-height:100px;color:var(--muted);padding-bottom:25px;font-size:.86rem}.pricing-card ul{margin:26px 0 34px;padding:0;list-style:none}.pricing-card li{color:var(--muted);padding:6px 0 6px 22px;font-size:.82rem;position:relative}.pricing-card li:before{content:"—";position:absolute;left:0}.pricing-card .button{margin-top:auto}.pricing-card.is-featured .button{color:var(--dark);background:#fff;border-color:#fff}.price-table{border-collapse:collapse;width:100%}.price-table th,.price-table td{border-bottom:1px solid var(--border);text-align:left;padding:22px 12px}.price-table th{width:34%;font-family:var(--serif);font-size:1.05rem}.price-table td:nth-child(2){font-weight:600}.subscription-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.subscription-card{border:1px solid var(--border);background:var(--surface);padding:38px}.subscription-card h3{font-family:var(--serif)}.subscription-card strong{margin:22px 0 5px;font-size:1.45rem;display:block}.subscription-card p{color:var(--muted);margin:0;font-size:.84rem}.faq-list{border-top:1px solid var(--border)}.faq-list details{border-bottom:1px solid var(--border)}.faq-list summary{cursor:pointer;min-height:104px;font-family:var(--serif);grid-template-columns:80px 1fr 30px;align-items:center;font-size:clamp(1rem,1.8vw,1.25rem);list-style:none;display:grid}.faq-list summary::-webkit-details-marker{display:none}.faq-number{color:var(--muted);font-family:var(--sans);font-size:.7rem}.faq-list summary i{width:18px;height:18px;position:relative}.faq-list summary i:before,.faq-list summary i:after{content:"";background:var(--ink);height:1px;position:absolute;top:8px;left:2px;right:2px}.faq-list summary i:after{transition:transform .2s;transform:rotate(90deg)}.faq-list details[open] summary i:after{transform:none}.faq-answer{color:var(--muted);grid-template-columns:80px 1fr;padding:0 30px 38px 80px;display:grid}.faq-answer>span{color:var(--primary);font-weight:600}.faq-answer p{max-width:760px;margin:0}.cta-section{background:var(--canvas);padding:100px 0}.cta-panel{color:#fff;background:var(--dark);grid-template-columns:1.3fr .7fr;align-items:end;gap:50px;padding:clamp(45px,7vw,90px);display:grid}.cta-panel h2{margin-bottom:20px;font-size:clamp(2rem,4vw,4rem)}.cta-panel p:not(.eyebrow){color:#aab4c4;max-width:620px}.cta-actions{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.site-footer{color:#dce3e9;background:#0b1220;padding:90px 0 28px}.footer-grid{grid-template-columns:1.4fr .6fr .6fr;gap:70px;padding-bottom:70px;display:grid}.footer-brand img{filter:brightness(1.5);width:180px}.footer-brand p{font-family:var(--serif);margin:38px 0 16px;font-size:1.3rem}.footer-brand small{color:#8290a3}.footer-nav{flex-direction:column;gap:12px;display:flex}.footer-nav .eyebrow{color:#aab4c4}.footer-nav a{color:#aab4c4;font-size:.83rem}.footer-nav a:hover{color:#fff}.footer-bottom{color:#8290a3;border-top:1px solid #273244;justify-content:space-between;padding-top:24px;font-size:.68rem;display:flex}.mobile-line-cta{display:none}.hero-area{color:var(--muted);margin:22px 0 0;font-size:.78rem}.purpose-grid{grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px;display:grid}.purpose-card{color:#fff;background:var(--dark);align-content:center;min-height:330px;padding:48px;display:grid}.purpose-mark{color:var(--cyan);letter-spacing:.24em;font-size:.72rem}.purpose-card p{font-family:var(--serif);white-space:nowrap;margin:26px 0 0;font-size:clamp(1.25rem,2.1vw,1.7rem);line-height:1.55}.purpose-grid .section-lead{max-width:none;font-size:clamp(.9rem,1.25vw,1rem)}.subscription-note{color:var(--muted);margin:24px 0 0;font-size:.86rem}.editorial-section{max-width:820px}.editorial-section p{max-width:760px;color:var(--muted)}.mvv-grid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.mvv-grid article{background:var(--canvas);padding:32px}.mvv-grid span{color:var(--muted);letter-spacing:.15em;font-size:.7rem}.mvv-grid h3{font-family:var(--serif);margin:24px 0 0}.campaign-note{color:var(--muted);margin:20px 0 0;font-size:.82rem}.campaign-callout{background:linear-gradient(120deg,#eef0ff,#f8f7ff);border:1px solid #a8b4ff}.compact-campaign{align-items:center;gap:16px;padding:16px 20px;display:flex}.compact-campaign p{color:var(--muted);margin:0;font-size:.84rem}.compact-campaign p strong{color:var(--ink);font-size:1rem}.plan-price .campaign-price{color:#3730a3;letter-spacing:.01em;font-size:1.55rem;font-weight:800;display:block}.plan-price .regular-price{margin-top:3px;display:block}.regular-price{text-decoration:line-through}.plan-price .campaign-deadline{margin-top:4px;font-size:.72rem;font-weight:700;display:block}.compact-campaign p span{margin-left:8px}.campaign-badge{color:#fff;background:var(--primary);letter-spacing:.08em;align-items:center;width:fit-content;padding:5px 10px;font-size:.68rem;font-weight:700;display:inline-flex}.pricing-card.is-featured .campaign-badge{color:#fff}.campaign-price{color:#3730a3}.pricing-card-price{flex-direction:column;align-items:flex-start;height:220px;min-height:220px;display:flex}.pricing-card .price.campaign-price{letter-spacing:.01em;margin-top:14px;font-size:clamp(2.35rem,4vw,3.1rem);font-weight:800}.pricing-card.is-featured .campaign-price{color:#c4b5fd}.pricing-card .campaign-badge{margin-bottom:12px}.pricing-card .regular-price{color:var(--muted);font-size:.86rem;font-weight:400}.campaign-deadline{color:var(--primary);margin:-8px 0 14px;font-size:.75rem;font-weight:600}.plan-inclusion{color:var(--primary);margin:0 0 10px;font-size:.75rem;font-weight:700}.campaign-feature{justify-content:space-between;align-items:center;gap:30px;padding:42px 50px;display:flex}.campaign-feature h2{margin:18px 0 10px;font-size:clamp(1.8rem,3.3vw,3.1rem)}.campaign-feature p{color:var(--muted);margin:0}.diagnosis-banner-section{padding-top:0}.diagnosis-banner{color:#fff;background:var(--dark);justify-content:space-between;align-items:center;gap:30px;padding:52px 60px;display:flex}.diagnosis-banner h2{max-width:1000px;margin-bottom:10px;font-size:clamp(1.8rem,3.6vw,3.4rem)}.diagnosis-banner p:not(.eyebrow){color:#aab4c4;margin:0}.diagnosis-banner .button{flex:none}.diagnosis-lead{max-width:700px;color:var(--muted);margin-bottom:44px}.route-grid .problem-item{min-height:250px}.wayfinding{color:#fff;background:linear-gradient(145deg,#121b34,#0b1220);border-radius:2px;min-height:360px;position:relative;overflow:hidden}.wayfinding-line{transform-origin:0;background:linear-gradient(90deg,#22d3ee,#9b4dff);width:38%;height:1px;position:absolute;left:26%}.wayfinding-line.line-one{top:30%;transform:rotate(18deg)}.wayfinding-line.line-two{top:43%;transform:rotate(6deg)}.wayfinding-line.line-three{top:57%;transform:rotate(-6deg)}.wayfinding-line.line-four{top:70%;transform:rotate(-18deg)}.wayfinding-node,.wayfinding-hub,.wayfinding-end{letter-spacing:.08em;background:#0f172ad9;border:1px solid #ffffff7a;place-items:center;padding:11px 14px;font-size:.76rem;display:grid;position:absolute}.node-sns{top:20%;left:8%}.node-search{top:40%;left:8%}.node-map{top:60%;left:8%}.node-referral{top:80%;left:8%}.wayfinding-hub{border-color:#22d3ee;top:42%;left:48%}.wayfinding-end{border-color:#06c755;top:64%;right:8%}.works-showcase{gap:20px;display:grid}.work-showcase{border:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(250px,.85fr) 1.15fr;gap:34px;padding:24px;display:grid}.work-visual{background:var(--dark);min-height:230px;overflow:hidden}.work-visual img{object-fit:cover;width:100%;height:100%}.work-visual picture{width:100%;height:100%;display:block}.project-cover{color:#fff;height:100%;min-height:230px;font-family:var(--serif);background:linear-gradient(145deg,#121b34,#4338ca);place-items:center;font-size:clamp(1.5rem,3vw,2.4rem);display:grid}.work-copy h3{font-family:var(--serif);margin:8px 0;font-size:1.7rem}.work-meta{color:var(--muted);margin:0 0 18px;font-size:.76rem}.work-copy p{color:var(--muted)}.prose{max-width:780px}.prose h2{margin:70px 0 25px;font-size:2rem}.prose h3{font-family:var(--serif);margin:42px 0 16px}.prose p,.prose li{color:var(--muted)}.case-capture{margin:0 0 70px}.case-capture img{border:1px solid var(--border);width:100%;height:auto;display:block}.case-capture figcaption{color:var(--muted);margin-top:10px;font-size:.75rem}.prose ul{padding-left:1.3em}.notice{border-left:3px solid var(--primary);background:var(--subtle);color:var(--muted);padding:24px;font-size:.88rem}.diagnosis-shell{max-width:900px}.diagnosis-progress{color:var(--muted);grid-template-columns:90px 1fr;align-items:center;gap:22px;margin-bottom:54px;font-size:.75rem;display:grid}.diagnosis-progress>div{background:var(--border);height:2px}.diagnosis-progress i{background:var(--gradient);width:0;height:100%;transition:width .3s;display:block}.diagnosis-intro{max-width:720px}.diagnosis-intro h2{font-size:clamp(2rem,4.5vw,3.6rem)}.diagnosis-intro>p:not(.eyebrow){color:var(--muted);margin-bottom:34px}.diagnosis-section form fieldset{border:0;padding:0}.diagnosis-section legend{width:100%;font-family:var(--serif);margin-bottom:38px;font-size:clamp(1.6rem,4vw,2.8rem);line-height:1.5}.diagnosis-section legend small{color:var(--muted);font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;font-size:.68rem;display:block}.diagnosis-options{gap:10px;display:grid}.diagnosis-options label{cursor:pointer;position:relative}.diagnosis-options input{opacity:0;position:absolute}.diagnosis-options span{border:1px solid var(--border);background:var(--canvas);grid-template-columns:44px 1fr;align-items:center;min-height:68px;padding:12px 20px;transition:border .2s,background .2s,transform .2s;display:grid}.diagnosis-options i{color:var(--muted);font-size:.72rem;font-style:normal}.diagnosis-options label:hover span{border-color:#9ca3af;transform:translate(4px)}.diagnosis-options input:checked+span{border-color:var(--primary);box-shadow:inset 3px 0 var(--primary);background:#eeefff}.diagnosis-options input:focus-visible+span{outline:3px solid var(--cyan);outline-offset:3px}.diagnosis-controls{justify-content:space-between;gap:16px;margin-top:34px;display:flex}.diagnosis-controls button:disabled{opacity:.4;cursor:not-allowed}.diagnosis-error{color:#b42318;min-height:30px;margin:18px 0 0;font-size:.84rem}.diagnosis-result{scroll-margin-top:100px}.diagnosis-result>h2{margin-bottom:10px;font-size:clamp(2rem,5vw,4rem)}.diagnosis-result>h2:focus-visible{outline:3px solid var(--cyan);outline-offset:6px}.result-label{color:var(--muted);letter-spacing:.1em;margin:0;font-size:.75rem}.result-price{margin-bottom:28px;font-size:1.4rem;font-weight:600}.result-price .campaign-price{color:#3730a3;font-size:2em;font-weight:700;display:block}.result-price .regular-price{color:var(--muted);margin-top:4px;font-size:.62em;font-weight:400;display:block}.result-grid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:1px;margin:50px 0 24px;display:grid}.result-grid>div,.result-subscription{background:var(--surface);padding:32px}.result-grid h3,.result-subscription h3{font-family:var(--serif)}.result-grid p,.result-grid li,.result-subscription p{color:var(--muted);font-size:.86rem}.result-assessment{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:24px;padding:24px 0}.result-assessment h3{font-family:var(--serif)}.result-assessment p{color:var(--muted);font-size:.86rem}.result-subscription{border:1px solid var(--border);margin-bottom:24px}.result-subscription p{margin-bottom:4px}.result-subscription strong{margin-top:18px;display:block}.diagnosis-restart{cursor:pointer;background:0 0;border-top:0;border-left:0;border-right:0}.js [data-reveal]{transition:transform .65s;transform:translateY(18px)}.js [data-reveal].is-visible{transform:none}@media (width<=960px){:root{--shell:min(100% - 40px, 760px)}.header-inner{grid-template-columns:1fr auto auto;min-height:74px}.desktop-nav{display:none}.menu-button{margin-left:7px;display:block}.home-hero{min-height:auto;padding-top:3vh}.hero-grid{grid-template-columns:1fr;min-height:auto}.hero-main{border-right:0;min-height:70vh}.hero-side{display:none}.page-hero-grid{grid-template-columns:1fr}.page-hero h1{padding-right:0}.page-hero-side{border-top:1px solid var(--border);border-left:0;min-height:auto;margin-top:55px;padding:28px 0 0}.page-number{display:none}.guide-panel{grid-template-columns:1fr}.guide-visual{min-height:300px}.contact-steps{grid-template-columns:1fr;margin-top:54px}.problem-grid,.value-grid,.principles-grid{grid-template-columns:repeat(2,1fr)}.pricing-grid{grid-template-columns:1fr}.pricing-card{border-right:0;border-bottom:1px solid var(--border);min-height:auto}.pricing-card:last-child{border-bottom:0}.pricing-card .plan-lead{min-height:0}.pricing-card .button{margin-top:20px}.cta-panel{grid-template-columns:1fr}.site-header.is-hidden{transform:none}.purpose-grid{grid-template-columns:1fr;gap:34px}.mvv-grid{grid-template-columns:1fr}.diagnosis-banner{padding:42px 34px}}@media (width<=640px){:root{--shell:calc(100% - 32px)}body{padding-bottom:calc(68px + env(safe-area-inset-bottom));font-size:.94rem}.header-cta{display:none}.header-inner{grid-template-columns:1fr auto}.brand{width:112px}.home-hero{padding-bottom:42px}.hero-main{min-height:0;padding-top:42px;padding-bottom:36px;padding-right:0}.home-hero h1{font-size:clamp(2rem,8.5vw,3.2rem)}.desktop-break{display:none}.hero-actions{flex-direction:column;align-items:stretch;gap:18px}.hero-actions .button{width:100%}.hero-actions .hero-line{display:none}.page-hero{padding:48px 0 70px}.page-hero h1{padding-top:35px;font-size:clamp(2.6rem,13vw,4rem)}.section{padding:84px 0}.section-heading{margin-bottom:42px}.problem-grid,.value-grid,.principles-grid{grid-template-columns:1fr}.problem-item,.value-item,.principle-item{min-height:230px}.plan-row{grid-template-columns:46px 1fr 20px;gap:14px;padding:26px 3px}.plan-price{text-align:left;grid-column:2}.plan-arrow{grid-area:1/3/span 2}.step{grid-template-columns:48px 1fr;gap:16px}.step p{grid-column:2}.works-stage{min-height:500px;padding:36px 26px}.case-grid,.subscription-grid,.result-grid{grid-template-columns:1fr}.case-card{min-height:290px;padding:30px}.price-table th,.price-table td{width:100%;padding:12px 5px;display:block}.price-table th{border-bottom:0;padding-top:22px}.faq-list summary{grid-template-columns:45px 1fr 24px;min-height:94px}.faq-answer{grid-template-columns:38px 1fr;padding:0 0 30px 45px}.cta-section{padding:70px 0}.cta-panel{padding:42px 28px}.guide-actions{flex-direction:column;align-items:stretch}.guide-actions .guide-line,.guide-actions .guide-instagram{width:100%}.contact-mobile-break{display:inline}.footer-grid{grid-template-columns:1fr;gap:45px}.footer-bottom{flex-direction:column;gap:8px}.mobile-line-cta{z-index:60;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));color:#fff;background:var(--dark);background:#006b2d;border-radius:3px;justify-content:space-between;align-items:center;min-height:54px;padding:0 22px;font-size:.88rem;font-weight:600;display:flex;position:fixed;box-shadow:0 10px 30px #0f172a40}.diagnosis-banner{padding:34px 24px;display:block}.diagnosis-banner .button{width:100%;margin-top:24px}.work-showcase{grid-template-columns:1fr;padding:16px}.work-visual,.project-cover{min-height:180px}}@media (width>=961px){.hero-main{max-width:1120px}.home-hero h1{white-space:nowrap;max-width:none}.hero-copy{max-width:1080px}}.home-hero{min-height:0;padding:24px 0 42px}.hero-grid{min-height:0}.hero-main{min-height:0;padding-top:54px;padding-bottom:54px}.hero-kicker{text-transform:none;letter-spacing:.08em;margin-bottom:26px}.home-hero h1{max-width:980px;margin-bottom:24px;font-size:clamp(3rem,6vw,6.2rem)}.hero-copy{margin-bottom:28px}.hero-side{padding-top:32px;padding-bottom:32px}.hero-index,.scroll-cue,.page-number{display:none}.page-hero{padding:48px 0 64px}.page-hero-inner{border-top:1px solid var(--border);padding-top:30px}.page-hero .eyebrow{padding-top:0}.page-hero h1{max-width:920px;padding:28px 0 0}.page-hero-lead{max-width:1000px;color:var(--muted)}.page-hero-grid,.page-hero-side{border:0;min-height:0;padding:0;display:block}.page-hero-side{margin-top:20px}.problem-item h3{overflow-wrap:normal}@media (width>=961px){.problem-grid:not(.route-grid){grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.js [data-reveal]{transform:none}}@media (width<=640px){.home-hero h1{font-size:clamp(2rem,8.5vw,3.2rem)}.pricing-card-price{height:auto;min-height:0}.step{grid-template-columns:48px 52px 1fr;gap:12px}.step:before{grid-area:1/1/span 2}.step-visual{grid-area:1/2/span 2;width:42px;height:42px}.step-content{grid-column:3}.step-heading{flex-direction:column;align-items:flex-start;gap:5px}.section-dark .step{grid-template-columns:48px 1fr;gap:16px}.section-dark .step h3,.section-dark .step p{grid-column:2}.purpose-card{padding:32px}.purpose-card p{font-size:clamp(1rem,5.2vw,1.7rem)}.hero-actions .hero-line .line-official-visual{width:100%;height:58px}.hero-actions .hero-line .line-official-visual img{flex:none;width:187px;height:58px}.hero-actions .hero-line .line-official-label{left:55px}}@media (width>=961px){.hero-main{max-width:1120px}.home-hero h1{white-space:nowrap;max-width:none}.hero-copy{max-width:1080px}.page-hero h1{white-space:nowrap;max-width:none}}@media (width<=640px){.mobile-line-cta{background:0 0;border-radius:0;width:116px;height:36px;min-height:36px;padding:0;left:auto;right:16px;box-shadow:0 8px 22px #0f172a33}.hero-actions .hero-line,.hero-actions .hero-line .line-official-visual{width:100%;height:58px}.hero-actions .hero-line .line-official-visual img{flex:none;width:187px;height:58px}.hero-actions .hero-line .line-official-label{left:55px}}
