@font-face{font-family:"Shippori Mincho";src:url("/assets/landing/shippori-mincho-600.woff2") format("woff2");font-display:swap;font-weight:600}
@font-face{font-family:"Zen Kaku Gothic New";src:url("/assets/landing/zen-kaku-gothic-400.woff2") format("woff2");font-display:swap;font-weight:400}
@font-face{font-family:"Zen Kaku Gothic New";src:url("/assets/landing/zen-kaku-gothic-700.woff2") format("woff2");font-display:swap;font-weight:700}
@font-face{font-family:"Gowun Batang";src:url("/assets/landing/gowun-batang-700.woff2") format("woff2");font-display:swap;font-weight:700}
:root{--yoru:#191634;--yoru-2:#241f45;--ink:#2b2733;--light:#f7f7f5;--white:#fff;--gold:#a87c36;--gold-soft:#c9a85c;--line:rgba(43,39,51,.16);--dark-line:rgba(232,227,243,.18);--dark-text:#e8e3f3;--dark-body:#c8c2dc;--muted:#625d6e;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:clamp(4rem,8vw,8rem);--max:86rem;--ease:cubic-bezier(.16,1,.3,1);--z-header:20;--z-dialog:40}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--yoru)}body{margin:0;color:var(--ink);background:var(--light);font-family:"Zen Kaku Gothic New",sans-serif;font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:"Shippori Mincho",serif;font-weight:600;text-wrap:balance}p{text-wrap:pretty}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--gold-soft);color:var(--yoru);padding:.75rem 1rem}.skip-link:focus{top:1rem}.scroll-progress{position:fixed;z-index:60;top:0;left:0;height:2px;width:100%;transform:scaleX(var(--progress,0));transform-origin:left;background:var(--gold-soft)}
.site-header{height:5rem;position:fixed;z-index:var(--z-header);top:0;left:0;right:0;display:flex;align-items:center;padding:0 clamp(1.25rem,4vw,4rem);color:var(--dark-text);transition:background .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease);border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(25,22,52,.94);border-color:var(--dark-line)}.brand{display:flex;align-items:center;gap:.75rem;font-size:.78rem;letter-spacing:.28em;font-weight:700}.brand img{border-radius:50%}.desktop-nav{margin-left:auto;display:flex;gap:clamp(1.25rem,2.4vw,2.75rem);font-size:.76rem}.desktop-nav a,.language{color:var(--dark-body);transition:color .2s}.desktop-nav a:hover,.language:hover{color:var(--white)}.header-actions{display:flex;align-items:center;gap:1.5rem;margin-left:2.5rem}.language{font-size:.72rem}.header-cta{border:1px solid rgba(201,168,92,.6);color:var(--gold-soft);padding:.56rem .9rem;font-size:.72rem;transition:background .2s,color .2s}.header-cta:hover{background:var(--gold-soft);color:var(--yoru)}.menu-button{display:none;width:44px;height:44px;padding:0;border:0;background:transparent}.menu-button span{display:block;width:22px;height:1px;margin:6px auto;background:currentColor}.mobile-menu{z-index:var(--z-dialog);width:100%;height:100%;max-width:none;max-height:none;border:0;margin:0;padding:1.5rem;background:var(--yoru);color:var(--dark-text)}.mobile-menu::backdrop{background:var(--yoru)}.mobile-menu[open]{display:flex;flex-direction:column}.menu-top{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;letter-spacing:.28em}.menu-top button{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:2rem}.mobile-menu nav{display:flex;flex-direction:column;margin:auto 0;gap:1.5rem;font-family:"Shippori Mincho";font-size:clamp(1.7rem,8vw,2.6rem)}
.hero{min-height:100svh;position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(20rem,.9fr) minmax(28rem,1.1fr);align-items:center;gap:2rem;padding:8rem max(5vw,2rem) 5rem;color:var(--dark-text);background:radial-gradient(circle at 80% 40%,rgba(36,31,69,.85),transparent 52%),var(--yoru)}.hero::after{content:"";position:absolute;inset:auto 0 0;height:12rem;background:linear-gradient(transparent,rgba(15,13,31,.38));pointer-events:none}.hero-copy{position:relative;z-index:2;max-width:42rem;padding-left:clamp(0rem,4vw,4rem)}.hero-kicker{color:var(--gold-soft);font-size:.67rem;letter-spacing:.24em;margin-bottom:2rem}.hero h1{font-size:clamp(3.5rem,7.2vw,6rem);line-height:1.16;letter-spacing:-.035em}.hero-body{max-width:35rem;margin-top:2rem;color:var(--dark-body);font-size:clamp(1rem,1.45vw,1.2rem);line-height:1.9}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2.5rem}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.35rem;border:1px solid transparent;font-weight:700;font-size:.86rem}.button-gold{background:var(--gold-soft);color:var(--yoru);transition:transform .25s var(--ease),background .2s}.button-gold:hover{background:#d9b968;transform:translateY(-2px)}.text-link{font-size:.84rem;color:var(--dark-body);border-bottom:1px solid var(--dark-line);padding:.8rem 0}.text-link span{display:inline-block;margin-left:.5rem}.hero-note{display:flex;align-items:center;gap:.6rem;margin-top:1.25rem;color:#aaa3ca;font-size:.72rem}.hero-note span{width:6px;height:6px;border-radius:50%;background:var(--gold-soft);box-shadow:0 0 0 5px rgba(201,168,92,.12)}
.hero-orbit{position:relative;justify-self:center;width:min(54vw,45rem);aspect-ratio:1;transform:translate3d(calc(var(--mx,0)*12px),calc(var(--my,0)*12px),0);transition:transform .5s var(--ease)}.hero-orbit::before{content:"";position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(201,168,92,.12),transparent 62%);filter:blur(20px)}.hero-orbit svg{width:100%;height:100%;overflow:visible}.orbit-faint,.orbit-dash,.orbit-line,.axis{fill:none;stroke:var(--gold-soft)}.orbit-faint{opacity:.16;stroke-width:1}.orbit-dash{opacity:.55;stroke-dasharray:2 8;animation:spin 40s linear infinite;transform-origin:center}.orbit-line{opacity:.7;stroke-width:1}.axis{opacity:.55;stroke-width:1}.season-points circle{fill:var(--gold-soft)}.core circle{fill:var(--gold);opacity:.96}.core path{fill:var(--light);stroke:var(--gold-soft);stroke-width:3}.core{transform-origin:center;animation:pulse 5s var(--ease) infinite}.season{position:absolute;color:var(--gold-soft);font-family:"Shippori Mincho";font-size:.75rem}.spring{top:1%;left:50%;transform:translateX(-50%)}.summer{right:0;top:50%;transform:translateY(-50%)}.autumn{bottom:1%;left:50%;transform:translateX(-50%)}.winter{left:0;top:50%;transform:translateY(-50%)}.hero-scroll{position:absolute;z-index:3;left:50%;bottom:1.5rem;width:28px;height:44px;border:1px solid var(--dark-line);border-radius:18px}.hero-scroll span{display:block;width:2px;height:8px;margin:8px auto;background:var(--gold-soft);animation:scrollCue 2s var(--ease) infinite}
.section-light{background:var(--light)}.intro{min-height:68vh;display:grid;grid-template-columns:1fr 3fr;gap:3rem;padding:var(--space-3xl) max(6vw,1.5rem);align-items:start}.section-index{font-size:.67rem;letter-spacing:.2em;color:var(--gold)}.intro-copy{display:grid;grid-template-columns:minmax(24rem,1.2fr) minmax(20rem,.8fr);gap:clamp(2rem,6vw,7rem);align-items:end}.intro h2{font-size:clamp(2.6rem,5.2vw,5rem);line-height:1.32;letter-spacing:-.03em}.intro p{max-width:37rem;color:var(--muted);font-size:1.05rem}
.proof{padding:0 max(6vw,1.5rem) var(--space-3xl)}.proof-row{max-width:var(--max);min-height:42rem;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,9vw,10rem);align-items:center;border-top:1px solid var(--line);padding:var(--space-3xl) 0}.proof-copy{max-width:34rem}.section-label{font-size:.7rem;letter-spacing:.16em;color:var(--gold);margin-bottom:1.5rem}.proof h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.35;letter-spacing:-.025em}.proof-copy>p:last-of-type{margin-top:1.5rem;color:var(--muted);font-size:1.05rem}.fact-list{list-style:none;padding:0;margin:2rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem}.fact-list li{border:1px solid var(--line);padding:.5rem .75rem;font-size:.75rem;color:var(--muted)}.chart-visual{position:relative;min-height:34rem;background:var(--yoru);color:var(--dark-text);padding:clamp(2rem,4vw,4rem);overflow:hidden}.chart-visual::before{content:"";position:absolute;width:28rem;height:28rem;border:1px solid rgba(201,168,92,.34);border-radius:50%;right:-8rem;bottom:-9rem}.chart-meta,.chart-pillars{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.chart-meta{font-size:.65rem;color:#9c96c4}.chart-pillars{margin-top:1rem;font-family:"Shippori Mincho";font-size:clamp(2rem,4vw,3.6rem);line-height:1.5}.chart-pillars b{font-weight:600;color:var(--gold-soft)}.chart-visual>p{position:absolute;left:3rem;bottom:2.5rem;font-size:.75rem;color:var(--dark-body)}.element-orbit{position:absolute;width:12rem;aspect-ratio:1;right:3rem;bottom:2rem;border:1px solid var(--gold);border-radius:50%}.element-orbit::before,.element-orbit::after{content:"";position:absolute;inset:24%;border:1px solid rgba(201,168,92,.45);transform:rotate(45deg)}.element-orbit i{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--gold-soft);left:50%;top:50%;transform:rotate(calc(var(--i)*72deg)) translateY(-6rem)}.element-orbit i:nth-child(1){--i:0}.element-orbit i:nth-child(2){--i:1}.element-orbit i:nth-child(3){--i:2}.element-orbit i:nth-child(4){--i:3}.element-orbit i:nth-child(5){--i:4}
.phone{width:min(100%,21rem);aspect-ratio:.51;border:7px solid #14131a;border-radius:2.7rem;background:var(--yoru);color:var(--dark-text);padding:1.25rem;box-shadow:0 1.5rem 4rem rgba(15,13,31,.18);overflow:hidden}.phone-consult{justify-self:end}.phone-bar{display:flex;justify-content:space-between;align-items:center;font-size:.66rem;color:var(--dark-body)}.phone-bar b{font-family:"Shippori Mincho";font-size:.9rem}.messages{padding-top:4rem;display:flex;flex-direction:column;gap:1rem}.message{max-width:88%;padding:.9rem;border-radius:.9rem;font-size:.74rem;line-height:1.7}.message.user{align-self:flex-end;background:#343047;color:var(--white)}.message.reply{border:1px solid var(--dark-line);background:#201d3e}.message.reply strong{display:block;font-weight:400}.message.reply span{display:block;margin-top:.9rem;padding-top:.75rem;border-top:1px solid var(--dark-line);color:var(--gold-soft);font-size:.65rem}.saved{color:#9c96c4;font-size:.65rem;text-align:center}.composer{position:absolute}.phone-consult{position:relative}.phone-consult .composer{left:1.2rem;right:1.2rem;bottom:1.2rem;border:1px solid var(--dark-line);border-radius:.7rem;padding:.7rem;color:#77718f;font-size:.65rem}.composer span{float:right;color:var(--gold-soft)}.dialogue .proof-copy{order:2}.trace-visual{display:flex;flex-direction:column}.trace-visual div{display:grid;grid-template-columns:7rem 1fr;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}.trace-visual div:first-child{border-top:1px solid var(--line)}.trace-visual span{font-size:.62rem;letter-spacing:.15em;color:var(--gold)}.trace-visual b{font-weight:400;color:var(--muted)}
.flow{background:var(--yoru);color:var(--dark-text);padding:var(--space-3xl) max(6vw,1.5rem)}.flow-heading{max-width:var(--max);margin:0 auto 4rem;display:flex;justify-content:space-between;align-items:end;gap:2rem}.flow-heading span{font-size:.65rem;letter-spacing:.18em;color:var(--gold-soft)}.flow-heading h2{max-width:42rem;font-size:clamp(2.3rem,4vw,4rem);line-height:1.35}.flow ol{max-width:var(--max);margin:0 auto;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr)}.flow li{position:relative;min-height:14rem;padding:1.5rem;border-top:1px solid var(--dark-line);border-right:1px solid var(--dark-line);display:flex;flex-direction:column;justify-content:space-between}.flow li:last-child{border-right:0}.flow li>span{font-size:.65rem;color:var(--gold-soft)}.flow h3{font-size:1.3rem}.flow p{margin-top:.6rem;color:var(--dark-body);font-size:.8rem}.flow li:not(:last-child)::after{content:"→";position:absolute;z-index:2;right:-.55rem;top:45%;color:var(--gold-soft);background:var(--yoru);padding:.25rem}
.product{padding:var(--space-3xl) max(4vw,1.5rem);overflow:hidden}.product-heading{max-width:var(--max);margin:0 auto 5rem;display:grid;grid-template-columns:1.3fr .7fr;gap:4rem;align-items:end}.product-heading h2{font-size:clamp(2.5rem,5vw,5rem);line-height:1.32}.product-heading p{color:var(--muted);max-width:35rem}.phones-stage{min-height:48rem;display:flex;justify-content:center;align-items:flex-end;gap:clamp(1rem,4vw,4rem);padding:3rem 2rem 0;background:linear-gradient(180deg,#e8e8e5,var(--white))}.phones-stage .phone{position:relative;width:min(25vw,20rem)}.phone-today{transform:translateY(4rem) rotate(-5deg)}.phone-chart{transform:translateY(-2rem);z-index:2}.phone-third{transform:translateY(4rem) rotate(5deg)}.screen-date{margin-top:3rem;color:#9c96c4;font-size:.62rem}.phone h3{font-size:1.25rem;margin-top:.5rem}.daily-orbit{width:8rem;aspect-ratio:1;margin:2.5rem auto;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;position:relative}.daily-orbit::before{content:"";position:absolute;inset:22%;border:1px solid rgba(201,168,92,.45);border-radius:50%}.daily-orbit span{color:var(--gold-soft);font-family:"Shippori Mincho"}.phone-today>p:last-of-type{font-size:.74rem;color:var(--dark-body)}.rhythm{display:flex;align-items:end;gap:.4rem;height:4rem;margin-top:2rem}.rhythm i{flex:1;background:var(--gold);opacity:.3}.rhythm i:nth-child(1),.rhythm i:nth-child(7){height:35%}.rhythm i:nth-child(2),.rhythm i:nth-child(6){height:52%}.rhythm i:nth-child(3),.rhythm i:nth-child(5){height:70%}.rhythm i:nth-child(4){height:96%;opacity:.85}.phone-chart h3{margin-top:2.5rem}.phone-chart>p{font-size:.64rem;color:#9c96c4;margin-top:.4rem}.mini-chart{display:grid;grid-template-columns:repeat(4,1fr);margin-top:2.5rem;text-align:center;font-family:"Shippori Mincho";font-size:1.55rem;line-height:1.55}.mini-chart b{color:var(--gold-soft)}.five{display:flex;justify-content:space-between;margin-top:3rem}.five i{width:2.25rem;height:2.25rem;display:grid;place-items:center;border:1px solid var(--dark-line);border-radius:50%;font-style:normal;font-size:.66rem}.five i:nth-child(1){color:#8eb087}.five i:nth-child(2){color:#e18369}.five i:nth-child(3){color:#d3ae62}.five i:nth-child(4){color:#c8c2b8}.five i:nth-child(5){color:#7fa5d2}.luck-lines{margin-top:2.5rem}.luck-lines span{display:block;height:1px;background:var(--dark-line);margin:1rem 0}.luck-lines span:nth-child(2){width:75%}
.ai{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,10rem);padding:var(--space-3xl) max(6vw,1.5rem);background:var(--yoru);color:var(--dark-text)}.ai-intro{position:sticky;top:9rem;align-self:start}.ai-intro>span{color:var(--gold-soft);font-size:.65rem;letter-spacing:.18em}.ai-intro h2{font-size:clamp(2.5rem,4.5vw,4.5rem);line-height:1.35;margin-top:1.5rem}.ai-intro p{max-width:38rem;margin-top:2rem;color:var(--dark-body)}.ai-path{border-top:1px solid var(--dark-line)}.ai-path article{min-height:18rem;padding:2.5rem 0;border-bottom:1px solid var(--dark-line);display:grid;grid-template-columns:5rem 1fr;grid-template-rows:auto 1fr}.ai-path article>span{grid-row:1/3;color:var(--gold-soft);font-size:.68rem}.ai-path h3{font-size:clamp(1.6rem,2.8vw,2.5rem)}.ai-path p{align-self:end;max-width:31rem;color:var(--dark-body)}
.about{min-height:80vh;padding:var(--space-3xl) max(8vw,1.5rem);display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,9vw,10rem);align-items:center}.about-mark img{width:min(24vw,15rem);height:auto;border-radius:22%}.about>div:last-child>p:first-child{color:var(--gold);font-size:.65rem;letter-spacing:.2em}.about h2{font-size:clamp(2.8rem,5.5vw,5.5rem);line-height:1.28;margin-top:1.5rem}.about-body{max-width:48rem;margin-top:2rem;color:var(--muted);font-size:1.05rem}
.download{position:relative;min-height:74vh;overflow:hidden;padding:var(--space-3xl) max(6vw,1.5rem);display:grid;place-items:center;background:var(--yoru);color:var(--dark-text)}.download-copy{position:relative;z-index:2;width:min(100%,48rem);text-align:center}.download h2{font-size:clamp(3rem,6vw,5.5rem)}.download-copy>p{margin:1rem auto 2.5rem;color:var(--dark-body);max-width:35rem}.download-orbit{position:absolute;width:min(72vw,62rem);aspect-ratio:1;border:1px solid rgba(201,168,92,.18);border-radius:50%}.download-orbit::before,.download-orbit::after{content:"";position:absolute;border:1px solid rgba(201,168,92,.12);border-radius:50%}.download-orbit::before{inset:12%}.download-orbit::after{inset:30%}.download-orbit span{position:absolute;width:10px;height:10px;background:var(--gold-soft);border-radius:50%}.download-orbit span:nth-child(1){top:0;left:50%}.download-orbit span:nth-child(2){right:8%;top:66%}.download-orbit span:nth-child(3){left:12%;top:24%}.notify-form{text-align:left}.notify-form>label,.contact-form label{display:block;color:var(--dark-body);font-size:.74rem}.notify-form label span,.contact-form label>span{color:var(--gold-soft);font-size:.65rem}.inline-field{display:flex;margin-top:.6rem}.inline-field input{flex:1;min-width:0;border:1px solid var(--dark-line);border-right:0;background:rgba(255,255,255,.05);color:var(--white);padding:1rem 1.1rem;outline:0}.inline-field input::placeholder{color:#aaa4c0}.inline-field input:focus{border-color:var(--gold-soft)}.inline-field button,.contact-form button{border:0;background:var(--gold-soft);color:var(--yoru);font-weight:700;padding:1rem 1.3rem;cursor:pointer}.form-note,.form-status{font-size:.7rem!important;color:#aaa4c0!important;margin-top:.75rem!important}.form-status:not(:empty){padding:.65rem .8rem;border:1px solid var(--dark-line)}.honeypot{position:absolute!important;left:-9999px!important}
.faq{padding:var(--space-3xl) max(6vw,1.5rem);display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(3rem,8vw,10rem)}.faq-heading span,.contact-intro>span{font-size:.65rem;letter-spacing:.18em;color:var(--gold)}.faq h2,.contact h2{font-size:clamp(2.6rem,4.5vw,4.5rem);margin-top:1rem}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 0;font-family:"Shippori Mincho";font-size:1.1rem}summary::-webkit-details-marker{display:none}summary span:last-child{font-family:"Zen Kaku Gothic New";color:var(--gold);transition:transform .25s}details[open] summary span:last-child{transform:rotate(45deg)}details p{max-width:58rem;color:var(--muted);padding:0 3rem 1.75rem 0}
.contact{padding:var(--space-3xl) max(6vw,1.5rem);display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,8vw,10rem);border-top:1px solid var(--line)}.contact-intro>p{max-width:28rem;margin-top:1.5rem;color:var(--muted)}.contact-intro>a{display:inline-block;margin-top:2rem;color:var(--gold);border-bottom:1px solid currentColor}.contact-form{display:flex;flex-direction:column;gap:1.2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:.45rem;border:1px solid var(--line);border-radius:0;background:var(--white);color:var(--ink);padding:.9rem 1rem;outline:0}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#77717f}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,124,54,.12)}.contact-form textarea{resize:vertical;min-height:10rem}.form-submit{display:flex;align-items:center;gap:1.5rem}.form-submit a{font-size:.78rem;color:var(--muted);border-bottom:1px solid var(--line)}.contact-form .form-status{color:var(--muted)!important;border-color:var(--line)}
footer{background:#0f0d1f;color:var(--dark-body);padding:3rem max(6vw,1.5rem);display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:end}.footer-brand{display:flex;align-items:center;gap:.9rem;color:var(--white);letter-spacing:.25em;font-size:.8rem}.footer-brand img{border-radius:50%}footer>p{font-family:"Shippori Mincho";font-size:1.15rem}footer>div{grid-column:1/-1;padding-top:2rem;border-top:1px solid var(--dark-line);display:flex;gap:1.5rem;font-size:.7rem}footer>div span{margin-left:auto}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{transform:scale(.94);opacity:.82}50%{transform:scale(1.04);opacity:1}}@keyframes scrollCue{0%{transform:translateY(0);opacity:1}80%,100%{transform:translateY(18px);opacity:0}}
@media(max-width:960px){.desktop-nav,.header-cta{display:none}.header-actions{margin-left:auto}.menu-button{display:block;color:var(--dark-text)}.hero{grid-template-columns:1fr;padding-top:9rem;padding-bottom:3rem;align-content:start}.hero-copy{padding-left:0}.hero-orbit{width:min(92vw,38rem);margin-top:-1rem}.intro{grid-template-columns:1fr;min-height:auto}.intro-copy{grid-template-columns:1fr}.proof-row{grid-template-columns:1fr;min-height:auto}.proof-row.dialogue .proof-copy{order:0}.phone-consult{justify-self:center}.flow ol{grid-template-columns:1fr 1fr}.flow li:nth-child(2){border-right:0}.flow li:not(:last-child)::after{display:none}.product-heading{grid-template-columns:1fr}.phones-stage{min-height:42rem;gap:.75rem}.phones-stage .phone{width:31vw}.ai{grid-template-columns:1fr}.ai-intro{position:static}.about{grid-template-columns:.45fr 1fr}.faq,.contact{grid-template-columns:1fr}.faq-heading{margin-bottom:1rem}}
@media(max-width:640px){.site-header{height:4.5rem;padding:0 1rem}.brand span{font-size:.7rem}.header-actions{gap:.9rem}.hero{min-height:100svh;padding:7.5rem 1.25rem 3rem}.hero h1{font-size:clamp(3.2rem,16vw,4.6rem)}.hero-body br{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:.7rem}.hero-orbit{width:min(100%,34rem);margin-inline:auto;margin-top:-2rem}.hero-scroll{display:none}.intro,.proof,.flow,.product,.ai,.about,.download,.faq,.contact{padding-left:1.25rem;padding-right:1.25rem}.intro{padding-top:5rem;padding-bottom:5rem}.intro h2{font-size:2.45rem}.proof-row{padding:5rem 0;gap:3rem}.proof h2{font-size:2.25rem}.chart-visual{min-height:29rem;padding:2rem 1.25rem}.chart-visual>p{left:1.5rem}.element-orbit{width:9rem;right:1.5rem}.element-orbit i{transform:rotate(calc(var(--i)*72deg)) translateY(-4.5rem)}.trace-visual div{grid-template-columns:5.5rem 1fr;gap:.75rem}.flow-heading{align-items:start;flex-direction:column;margin-bottom:2rem}.flow ol{grid-template-columns:1fr}.flow li{min-height:11rem;border-right:0}.product-heading{margin-bottom:2.5rem}.phones-stage{min-height:35rem;width:calc(100% + 2.5rem);margin-left:-1.25rem;padding:2rem .75rem 0;align-items:flex-end;overflow:hidden}.phones-stage .phone{flex:none;width:58vw;max-width:15rem}.phone-today{margin-left:62vw}.phone-third{margin-right:62vw}.phone{border-width:5px;border-radius:2rem;padding:.9rem}.messages{padding-top:2rem}.message{font-size:.62rem}.phone-consult .composer{left:.8rem;right:.8rem;bottom:.8rem}.screen-date{margin-top:1.6rem}.daily-orbit{width:6rem;margin:1.5rem auto}.mini-chart{font-size:1.15rem;margin-top:1.5rem}.five{margin-top:1.5rem}.five i{width:1.7rem;height:1.7rem}.ai-path article{grid-template-columns:4rem 1fr;min-height:16rem}.about{grid-template-columns:1fr;min-height:auto}.about-mark img{width:7rem}.about h2{font-size:2.75rem}.inline-field{flex-direction:column;gap:.6rem}.inline-field input{border-right:1px solid var(--dark-line);min-height:52px}.inline-field button{min-height:52px}.download-orbit{width:130vw}.faq h2,.contact h2{font-size:2.6rem}.form-row{grid-template-columns:1fr}.form-submit{align-items:flex-start;flex-direction:column}.contact-form button{width:100%;min-height:52px}footer{grid-template-columns:1fr}footer>div{flex-wrap:wrap}footer>div span{width:100%;margin-left:0}.mobile-menu{padding:max(1.5rem,env(safe-area-inset-top)) 1.5rem max(1.5rem,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero-orbit{transform:none!important}}
@media(print){.site-header,.scroll-progress,.hero-scroll,.mobile-menu,.download,.contact{display:none}.hero{min-height:auto;color:var(--ink);background:white}.hero-orbit{width:20rem}.section-light,.flow,.ai,footer{color:#000;background:#fff}.proof-row,.flow li,.faq-list,details{break-inside:avoid}}

/* Final responsive and accessibility hardening */
html{scroll-padding-top:6rem}
[id]{scroll-margin-top:6rem}
.site-header{height:calc(5rem + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}
.brand,.language{min-height:44px;display:flex;align-items:center}
.language{padding-inline:.35rem}
.mobile-menu{overflow-y:auto;overscroll-behavior:contain}
.hero-copy{width:100%;min-width:0}
.intro{display:block}
.intro-copy{margin-left:25%}
.intro,.proof,.flow,.product,.ai,.about,.download,.faq,.contact{padding-left:max(6vw,calc((100vw - var(--max))/2));padding-right:max(6vw,calc((100vw - var(--max))/2))}
.contact-form .form-submit a,footer>div a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:960px){.hero{grid-template-columns:minmax(0,1fr)}.intro-copy{margin-left:0}.phones-stage .phone{width:min(29vw,18rem)}}
@media(max-width:640px){.site-header{height:calc(4.5rem + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.intro,.proof,.flow,.product,.ai,.about,.download,.faq,.contact{padding-left:1.25rem;padding-right:1.25rem}.hero-copy{max-width:100%}.hero-kicker{overflow-wrap:anywhere}.phones-stage .phone{width:58vw}}

/* Type roles */
body{font-kerning:normal}
body[data-locale=ko] h1,body[data-locale=ko] h2,body[data-locale=ko] h3,body[data-locale=ko] summary{font-family:"Gowun Batang","Batang",serif}
body[data-locale=ko] h1,body[data-locale=ko] h2,body[data-locale=ko] h3,body[data-locale=ko] summary{word-break:keep-all;overflow-wrap:normal;line-break:strict}
body[data-locale=ko] p{word-break:keep-all;overflow-wrap:break-word}
body[data-locale=ko] .intro h2{font-size:clamp(2.8rem,4vw,3.8rem)}
body[data-locale=ko] .intro h2 .title-line{display:inline-block;white-space:nowrap}
.hero-kicker,.section-label,.flow-heading>span,.ai-intro>span,.about>div:last-child>p:first-child,.trace-visual span{font-size:.7rem;line-height:1.25}
.mobile-menu nav,.flow h3,.phone h3,.ai-path h3,.download h2,.faq h2,.contact h2,summary,footer>p{line-height:1.35}
.flow p{font-size:1rem;max-width:28ch}
.about-body{max-width:68ch}
details p{max-width:70ch}
.section-index,.chart-meta,.flow li>span,.ai-path article>span,.notify-form label span,.contact-form label>span,.faq-heading span,.contact-intro>span{font-size:.7rem}
.form-note{font-size:.8rem!important}.form-status{font-size:.9rem!important}
summary{font-size:1.125rem}
.section-index,.section-label,.trace-visual span,.about>div:last-child>p:first-child,.faq-heading span,.contact-intro>span,.contact-intro>a,summary span:last-child{color:#755624}
.phone-consult .composer{color:#aaa4c0}
@media(max-width:640px){.hero h1{font-size:clamp(2.8rem,14vw,3.5rem)}}
@media(max-width:640px){body[data-locale=ko] .intro h2{font-size:clamp(2rem,10.3vw,2.65rem)}}

/* Consultation preview mirrors the app's information hierarchy in the landing palette. */
.consult-concept{display:flex;flex-direction:column;position:relative;padding:1.15rem 0 0;background:var(--yoru);color:var(--dark-text)}
.consult-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:0 1.15rem 1rem;border-bottom:1px solid var(--dark-line)}
.consult-head>div{min-width:0}.consult-head b{display:block;font-family:"Shippori Mincho";font-size:1.05rem;line-height:1.35}.consult-head small{display:block;margin-top:.25rem;color:var(--gold-soft);font-size:.58rem;line-height:1.35}
.consult-new{flex:none;min-height:36px;display:inline-flex;align-items:center;padding:.45rem .65rem;border:1px solid var(--dark-line);color:var(--dark-text);font-size:.6rem;font-weight:700}
.consult-profile{padding:1rem 1.15rem;border-bottom:1px solid var(--dark-line)}.consult-profile>span{display:block;margin-bottom:.45rem;color:var(--gold-soft);font-size:.58rem;font-weight:700}
.consult-profile>div{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .8rem;border:1px solid var(--dark-line);background:rgba(255,255,255,.035)}
.consult-profile b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem}.consult-profile i{color:var(--gold-soft);font-size:.7rem;font-style:normal}
.concept-thread{flex:1;display:flex;flex-direction:column;gap:1.25rem;padding:2rem 1.15rem 1rem}
.concept-question{align-self:flex-end;max-width:82%;padding:.85rem 1rem;background:#343047;color:var(--dark-text);border-radius:.85rem .85rem .2rem .85rem;font-size:.7rem;line-height:1.65}
.concept-answer{width:92%;padding:1rem;border:1px solid var(--dark-line);border-radius:.85rem .85rem .85rem .2rem;background:#201d3e}
.concept-answer h4{margin:0;color:var(--gold-soft);font-family:"Shippori Mincho";font-size:.84rem;font-weight:600;line-height:1.5}
.concept-answer p{margin-top:.65rem;color:var(--dark-text);font-size:.68rem;line-height:1.75}
.concept-answer strong{display:block;margin-top:.9rem;padding-top:.75rem;border-top:1px solid var(--dark-line);color:var(--gold-soft);font-size:.58rem;line-height:1.5}
.concept-composer{display:flex;align-items:center;gap:.7rem;margin:0 1.15rem 1.15rem;border:1px solid var(--dark-line);border-radius:.75rem;padding:.58rem .6rem .58rem .8rem;color:#aaa4c0}
.concept-composer span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem}.concept-composer i{font-style:normal;color:var(--dark-body)}.concept-composer b{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--gold-soft);color:var(--yoru);font-size:.7rem}
body[data-locale=ko] .consult-head b,body[data-locale=ko] .concept-answer h4{font-family:"Gowun Batang","Batang",serif}

body[data-locale=ko] .faq h2{white-space:nowrap;font-size:clamp(2.5rem,4vw,3.8rem)}
@media(max-width:640px){body[data-locale=ko] .faq h2{font-size:clamp(2.25rem,10vw,2.6rem)}.concept-thread{padding:1.5rem .9rem .8rem;gap:1rem}.consult-head{padding-inline:.9rem}.consult-profile{padding-inline:.9rem}.concept-question,.concept-answer{padding:.8rem}.concept-composer{margin-inline:.9rem;padding:.55rem .6rem}}

/* Japanese legal documents */
.legal-page{min-height:100vh;background:var(--light)}
.legal-header{min-height:5rem;display:flex;align-items:center;justify-content:space-between;padding:env(safe-area-inset-top) max(6vw,calc((100vw - var(--max))/2)) 0;background:var(--yoru);color:var(--dark-text);border-bottom:1px solid var(--dark-line)}
.legal-header>a:last-child{min-height:44px;display:inline-flex;align-items:center;color:var(--dark-body);font-size:.78rem}
.legal-main{width:min(100% - 3rem,68rem);margin:0 auto;padding:clamp(4rem,8vw,7rem) 0}
.legal-hero{padding-bottom:clamp(3rem,6vw,5rem);border-bottom:1px solid var(--line)}
.legal-hero>p{color:#755624;font-size:.7rem;letter-spacing:.18em}
.legal-hero h1{margin-top:1.2rem;font-size:clamp(2.8rem,6vw,5.5rem);line-height:1.2}
.legal-hero>div{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.5rem;color:var(--muted);font-size:.78rem}
.legal-main article{padding:clamp(2.5rem,5vw,4rem) 0}
.legal-main article section{padding:2rem 0;border-bottom:1px solid var(--line)}
.legal-main article h2{font-size:clamp(1.25rem,2.2vw,1.55rem);line-height:1.5}
.legal-main article p{max-width:76ch;margin-top:1rem;color:var(--muted);font-size:.96rem;line-height:1.95}
.legal-main aside{padding:clamp(1.5rem,4vw,2.5rem);background:#eeeae2;border:1px solid var(--line)}
.legal-main aside strong{font-family:"Shippori Mincho";font-size:1.25rem}
.legal-main aside p{margin-top:.6rem;color:var(--muted)}
.legal-main aside .button{margin-top:1.25rem}
.legal-footer{padding:max(2.5rem,env(safe-area-inset-bottom)) max(6vw,calc((100vw - var(--max))/2));display:flex;flex-wrap:wrap;gap:1rem 2rem;background:#0f0d1f;color:var(--dark-body);font-size:.72rem}
.legal-footer a{min-height:44px;display:inline-flex;align-items:center}
.legal-footer span{margin-left:auto;align-self:center}
@media(max-width:640px){.legal-header{min-height:4.5rem;padding-left:1.25rem;padding-right:1.25rem}.legal-main{width:min(100% - 2.5rem,68rem);padding:3.5rem 0}.legal-hero h1{font-size:2.75rem}.legal-main article section{padding:1.6rem 0}.legal-footer{padding-left:1.25rem;padding-right:1.25rem}.legal-footer span{width:100%;margin-left:0}}
