:root{--ink:#173a56;--blue:#0879b8;--gold:#b78832;--line:#d8e5ee;--paper:#f5faff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;background:#f8fbfe;line-height:1.85}a{color:inherit}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #99701d;outline-offset:5px}[hidden]{display:none!important}header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 5%;background:#ffffffed;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;backdrop-filter:blur(12px)}.brand{font-size:20px;letter-spacing:.05em;font-weight:800;text-decoration:none}.crown{color:var(--gold);font-size:28px;margin-right:8px}.header-link{font-size:13px;text-underline-offset:5px;flex-shrink:0}.skip-link{position:fixed;left:16px;top:-100px;z-index:10;background:white;padding:12px}.skip-link:focus{top:10px}.hero{background:linear-gradient(90deg,#fff9 0%,#fff2 60%,transparent 80%),url('assets/welcome-gates.jpg') center/cover;min-height:540px;display:flex;align-items:center;border-bottom:2px solid #dec48d}.hero-inner{max-width:1280px;width:100%;margin:auto;padding:60px 6%}.hero-mobile{display:none}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.2em;color:#87651f;margin:0 0 14px}.welcome-tag{display:inline-block;border-block:1px solid #c9a35d;padding:5px 0;color:#45627a;font-size:14px;letter-spacing:.05em}h1{font-size:clamp(30px,3.3vw,48px);line-height:1.55;letter-spacing:.01em;margin:22px 0}h1 em{font-style:normal;color:#086c9d}h2{font-size:clamp(25px,2.5vw,34px);line-height:1.55;letter-spacing:.025em;margin:0 0 16px}p{margin:0 0 16px}.hero-copy{font-size:17px;margin-bottom:24px}.button{border:1px solid #126a99;border-radius:12px;padding:17px 20px;background:linear-gradient(110deg,#086b9d,#1296c9);color:#fff;display:inline-flex;align-items:center;justify-content:space-between;gap:14px;text-decoration:none;font-size:15px;line-height:1.6;font-weight:700;box-shadow:0 7px 18px #10699114;cursor:pointer;min-height:56px;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #10699128}.button>span:last-child{flex-shrink:0}.hero-note{font-size:12px;color:#506e84;margin:14px 0 0}.wrap{max-width:1120px;width:90%;margin-inline:auto}.setup-wrap{padding-top:36px}.progress-panel{background:#fff;border:1px solid #d3bd86;border-radius:20px;padding:28px 32px;box-shadow:0 12px 32px #17456a08}.progress-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.progress-top h2{font-size:25px;margin-bottom:14px}.progress-top .eyebrow{margin-bottom:6px}.progress-count{font-size:24px;white-space:nowrap;color:#86631f;font-family:Georgia,serif}.progress-panel progress{display:block;width:100%;height:8px;border:0;border-radius:20px;overflow:hidden;background:#edf2f6;accent-color:#ad812b}.progress-panel progress::-webkit-progress-bar{background:#edf2f6;border-radius:20px}.progress-panel progress::-webkit-progress-value{background:linear-gradient(90deg,#ae842e,#e2c375);border-radius:20px}.progress-panel progress::-moz-progress-bar{background:#ae842e}.progress-status{margin:14px 0 6px;font-weight:800;font-size:17px}.progress-description{font-size:14px;margin-bottom:6px;color:#506e84}.storage-note{font-size:12px;color:#526c7f;margin:0}.resume-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:14px;margin-top:14px;border-top:1px solid var(--line);font-size:13px}.resume-row a{font-weight:700;flex-shrink:0;text-underline-offset:4px}.quick{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:20px 0;margin:0}.quick a{text-align:center;text-decoration:none;border:1px solid var(--line);border-radius:9px;background:white;padding:10px 4px;font-size:12px}.quick b{font:18px Georgia,serif;color:#8b6621;margin-right:6px}.quick a.is-done{background:#e8f4ed;border-color:#a6c8b5}.quick a.is-current{border-color:#b48b38;box-shadow:inset 0 0 0 1px #b48b38}.join-intro{padding:30px 0 22px}.join-intro h2{font-size:30px;margin-bottom:12px}.join-intro p:last-child{font-size:14px;color:#526d81;margin:0}.mobile-break{display:none}.chat-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.setup-card{min-width:0;background:#fff;border:1px solid #d8e5ee;border-radius:20px;padding:30px;box-shadow:0 10px 30px #123d5f05;scroll-margin-top:12px}.chat-card{display:flex;flex-direction:column;background:linear-gradient(145deg,#fff,#eef8ff)}.kingdom-card{background:linear-gradient(145deg,#fffdf5,#fff);border-color:#d7bf84}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px}.step-number{width:42px;height:42px;display:grid;place-content:center;background:#f5edda;border:1px solid #decb9c;border-radius:50%;font:22px Georgia,serif;color:#86631f}.step-status{font-size:11px;color:#546c7c;padding:3px 10px;background:#f0f4f7;border-radius:30px}.setup-card.is-done .step-status{background:#e4f2e9;color:#276147}.card-kicker{font-size:12px;letter-spacing:.03em;color:#8b6725;font-weight:700;margin:0 0 10px}.room-name{font-size:12px;color:#506e84;margin-bottom:16px}.card-description{font-size:14px;color:#506e84;flex-grow:1}.setup-card .button{width:100%}.check-row{display:flex;align-items:center;gap:12px;min-height:64px;padding:14px;margin-top:14px;border:1px solid #cbdbe7;border-radius:12px;background:#fff;cursor:pointer;font-size:14px;line-height:1.6}.check-row:has(input:checked){border-color:#75a28a;background:#eef7f1}.check-row input{width:22px;height:22px;flex-shrink:0;margin:0;accent-color:#237556;cursor:pointer}.check-row strong{display:block;font-weight:700}.check-row small{display:block;font-size:11px;color:#526c7f}.note{font-size:12px;line-height:1.85;color:#526c7f;margin:12px 0 0}.join-followup{padding:24px 4px 32px;text-align:center}.join-followup>p:first-child{margin-bottom:8px;font-size:14px}.text-link{font-size:14px;text-underline-offset:5px;font-weight:700}.next-steps{display:grid;gap:22px}.next-card .card-heading{margin-bottom:16px}.next-card-body{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.next-copy>p:last-child{font-size:14px;color:#506e84;margin-bottom:0}.next-actions{min-width:0}.consult-card{background:radial-gradient(ellipse at 100% 0%,#fff0bb88,transparent 60%),#fffdf8;border-color:#cfb471}.gold-button{position:relative;overflow:hidden;background:linear-gradient(110deg,#c79634,#ffe9a6 48%,#dbb257);border-color:#b68d36;color:#173a56;box-shadow:inset 0 1px 1px #fff8,0 8px 22px #aa802825;font-size:18px;min-height:80px}.gold-button small{display:block;font-size:11px;letter-spacing:.04em;font-weight:400}.gold-button:after{content:'';position:absolute;inset:-50% auto -50% -80%;width:32%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,#fff9,transparent);animation:shine 6s ease-in-out infinite;pointer-events:none}@keyframes shine{0%,75%{left:-80%}100%{left:150%}}.consult-options{border:0;padding:0;margin:18px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.consult-options legend{font-size:12px;margin-bottom:8px;color:#526c7f}.consult-options .check-row{margin:0;padding:12px 10px;min-height:52px;font-size:12px;gap:8px}.consult-options input{width:20px;height:20px}.login-card{border-color:#aac8de;background:linear-gradient(135deg,#eaf6ff,#fff)}.message{text-align:center;padding:65px 0 45px}.message h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(28px,3.6vw,42px)}.message-phrase{display:inline-block;white-space:nowrap}.message-lead{font-size:19px;font-weight:700}.message>p{color:#506e84}.sign{margin-top:25px;font-size:13px}.sign strong{font-size:20px;margin-left:16px;letter-spacing:.12em}.help{border:1px solid #d9c494;border-radius:16px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fffcf5}.help h2{font-size:22px;margin-bottom:8px}.help p{font-size:13px;margin:0}.outline{background:#fff;color:#176c95;box-shadow:none;flex-shrink:0}.save{text-align:center;padding:50px 0}.save h2{font-size:20px;margin-bottom:12px}.save p{font-size:13px}.save input{width:min(100%,550px);border:1px solid #aac2d4;padding:10px;color:#173a56}#copy-status{min-height:1.8em;margin:10px 0}.noscript-note{padding:20px;border:1px solid #d9c494;margin-top:20px}footer{text-align:center;background:#eff7fc;padding:30px;border-top:1px solid var(--line)}footer p,footer>a:last-child{font-size:12px}
@media(max-width:800px){html{scroll-padding-top:74px}header{min-height:56px;padding:8px 5%}.brand{font-size:14px;letter-spacing:.02em}.crown{font-size:22px;margin-right:3px}.header-link{font-size:11px}.hero{display:block;min-height:0;background:#f5fbff}.hero-mobile{display:block;width:100%;height:clamp(150px,26svh,210px);object-fit:contain;background:#edf7fe}.hero-inner{padding:16px 5% 20px;background:linear-gradient(#f5fbff,#fff);text-align:center}.hero .eyebrow{font-size:9px;letter-spacing:.17em;margin-bottom:8px}.welcome-tag{font-size:12px;padding:3px 0}.hero h1{font-size:clamp(20px,5.5vw,28px);line-height:1.5;margin:12px 0}.hero-copy{font-size:clamp(11px,3.25vw,14px);line-height:1.8;margin:10px 0 14px}.hero .button{min-height:46px;padding:10px 20px;font-size:14px}.hero-note{font-size:10px;margin-top:10px}.setup-wrap{padding-top:22px}.progress-panel{padding:20px;border-radius:16px}.progress-top h2{font-size:19px}.progress-count{font-size:22px}.progress-description{font-size:13px}.progress-status{font-size:15px}.storage-note{font-size:11px}.quick{gap:5px;padding:14px 0}.quick a{font-size:10px;padding:8px 2px}.quick b{display:block;font-size:16px;margin:0}.join-intro{padding:22px 0 18px}.join-intro h2{font-size:25px}.mobile-break{display:block}.chat-grid{grid-template-columns:1fr;gap:16px}.setup-card{padding:22px;border-radius:16px}.card-heading{margin-bottom:18px}.setup-card h2{font-size:clamp(22px,6vw,28px)}.card-description{font-size:14px}.setup-card .button{font-size:14px;padding:15px;gap:10px}.join-followup{padding:22px 0 28px}.next-card-body{grid-template-columns:1fr;gap:20px}.next-steps{gap:16px}.gold-button{font-size:17px!important}.message{padding:50px 0 35px}.message h2{font-size:clamp(24px,6.3vw,34px);letter-spacing:0}.message-lead{font-size:16px}.message>p:not(.eyebrow){font-size:13px;text-wrap:pretty}.help{display:block;padding:24px;overflow-wrap:anywhere}.help .button{margin-top:20px;width:100%}.help h2{font-size:20px}.save h2{font-size:18px}.save{padding:40px 0}.eyebrow{font-size:10px}.resume-row{font-size:12px}.note{font-size:11px}}
@media(max-width:360px){.setup-card{padding:18px}.brand{font-size:12px}.header-link{font-size:10px}.setup-card .button{font-size:13px}.consult-options{grid-template-columns:1fr}.progress-panel{padding:18px}.progress-top h2{font-size:17px}.progress-count{font-size:20px}}
@media(max-width:800px) and (max-height:650px){.hero-mobile{height:23svh;min-height:105px}.hero-inner{padding-top:10px;padding-bottom:12px}.hero h1{margin:8px 0}.hero-copy{margin:6px 0 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
