@font-face{font-family:Zen Maru Gothic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/zen-maru-gothic-v19-japanese_latin-regular.woff2) format("woff2")}@font-face{font-family:Zen Maru Gothic;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/zen-maru-gothic-v19-japanese_latin-500.woff2) format("woff2")}@font-face{font-family:Zen Maru Gothic;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/zen-maru-gothic-v19-japanese_latin-700.woff2) format("woff2")}@font-face{font-family:Noto Sans JP;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/noto-sans-jp-v56-japanese_latin-300.woff2) format("woff2")}@font-face{font-family:Noto Sans JP;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/noto-sans-jp-v56-japanese_latin-regular.woff2) format("woff2")}@font-face{font-family:Noto Sans JP;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/noto-sans-jp-v56-japanese_latin-500.woff2) format("woff2")}@font-face{font-family:Noto Sans JP;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/noto-sans-jp-v56-japanese_latin-700.woff2) format("woff2")}:root{--bg: #faf5ec;--bg-soft: #f3ead7;--bg-card: #fdfaf2;--bg-warm: #efe2c9;--ink: #3d342a;--ink-soft: #6a5e4f;--ink-mute: #9b8e7c;--rule: #e6d9bf;--rule-soft: #efe5d0;--accent: oklch(70% .07 35);--accent-deep: oklch(56% .09 35);--accent-soft: oklch(94% .025 35);--moss: oklch(64% .06 120);--font-serif: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Hiragino Sans", "Yu Gothic UI", sans-serif;--font-sans: "Noto Sans JP", "Hiragino Sans", "Yu Gothic UI", "Yu Gothic", "Meiryo", sans-serif;--font-mono: "Noto Sans JP", "Hiragino Sans", sans-serif;--radius-card: 18px;--radius-input: 12px;--max-w: 1200px;--pad-x: clamp(20px, 4vw, 56px)}@media(max-width:640px){:root{--pad-x: 20px}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.8;letter-spacing:.02em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;font-feature-settings:"palt" 1}@media(max-width:640px){body{font-size:14px;line-height:1.85}}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:500;letter-spacing:.02em;margin:0;color:var(--ink);text-wrap:pretty}:focus-visible{outline:2px solid var(--accent-deep);outline-offset:3px;border-radius:4px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only:focus,.sr-only:focus-visible{position:fixed;top:12px;left:12px;width:auto;height:auto;padding:8px 14px;background:var(--ink);color:var(--bg);z-index:9999;border-radius:999px;clip:auto}.container{max-width:var(--max-w);margin:0 auto;padding-left:var(--pad-x);padding-right:var(--pad-x)}.section{padding-block:clamp(72px,10vw,128px);position:relative}@media(max-width:640px){.section{padding-block:64px}}.section--soft{background:var(--bg-soft)}.section--ink{background:var(--bg-warm);color:var(--ink)}.section--ink h1,.section--ink h2,.section--ink h3{color:var(--ink)}.eyebrow{font-family:var(--font-sans);font-size:13px;letter-spacing:.06em;color:var(--accent-deep);display:inline-flex;align-items:center;gap:10px;font-weight:500}.eyebrow:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--accent-deep);display:inline-block;flex-shrink:0}.section-title{font-size:clamp(26px,3.4vw,44px);line-height:1.4;margin-top:18px;margin-bottom:14px}@media(max-width:640px){.section-title{font-size:26px;line-height:1.5}}.section-lede{color:var(--ink-soft);max-width:56ch;font-size:15px;line-height:2;white-space:pre-line}.section-header{margin-bottom:56px;max-width:760px}@media(max-width:640px){.section-header{margin-bottom:36px}.section-lede{font-size:14px;line-height:1.95}}.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}.nav.is-scrolled{border-bottom-color:var(--rule-soft)}.nav__inner{display:flex;align-items:center;justify-content:space-between;height:72px}@media(max-width:640px){.nav__inner{height:60px}}.brand{display:flex;align-items:baseline;gap:10px;white-space:nowrap}.brand__mark{font-family:var(--font-serif);font-size:22px;letter-spacing:.12em;white-space:nowrap}.brand__sub{font-family:var(--font-mono);font-size:10px;letter-spacing:.24em;color:var(--ink-mute);text-transform:uppercase;white-space:nowrap}.nav__menu{display:flex;gap:32px;align-items:center}.nav__menu a{font-size:13px;color:var(--ink-soft);position:relative;padding:6px 0;transition:color .2s;white-space:nowrap}@media(max-width:1180px)and (min-width:1081px){.nav__menu{gap:22px}.nav__menu a{font-size:12px}}.nav__menu a:hover{color:var(--ink)}.nav__menu a.is-active{color:var(--accent-deep)}.nav__menu a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--accent-deep)}.nav__cta{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;background:var(--ink);color:var(--bg);font-size:12px;letter-spacing:.12em;transition:background .2s,transform .2s;white-space:nowrap}.nav__cta:hover{background:var(--accent-deep);transform:translateY(-1px)}.nav__burger{display:none}@media(max-width:1080px){.nav__menu--desktop{display:none!important}.nav__cta{padding:8px 14px;font-size:11px}.nav__cta-label-full{display:none}.nav__burger{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--rule);border-radius:999px;background:transparent;margin-left:10px;color:var(--ink);transition:background .2s,color .2s}.nav__burger.is-open{background:var(--ink);color:var(--bg);border-color:var(--ink)}}.nav__drawer{position:fixed;inset:72px 0 0;background:var(--bg);z-index:40;transform:translate(100%);transition:transform .35s ease;overflow-y:auto;border-top:1px solid var(--rule-soft);display:none}.nav__drawer.is-open{transform:translate(0)}.nav__drawer-inner{display:flex;flex-direction:column;padding:24px var(--pad-x) 48px}.nav__drawer-inner a{font-size:18px;font-family:var(--font-serif);color:var(--ink);padding:18px 0;border-bottom:1px solid var(--rule-soft);letter-spacing:.04em}.nav__drawer-inner a.is-active{color:var(--accent-deep)}.nav__drawer-cta{margin-top:28px;background:var(--accent-deep);color:#fff!important;text-align:center;border:0!important;border-radius:999px;padding:16px 24px!important;font-size:14px!important;letter-spacing:.04em;font-family:var(--font-sans)!important;font-weight:500}@media(max-width:1080px){.nav__drawer{display:block}}@media(max-width:640px){.nav__drawer{inset:60px 0 0}}.hero{padding-top:clamp(48px,8vw,96px);padding-bottom:clamp(72px,10vw,128px);position:relative;overflow:hidden}@media(max-width:640px){.hero{padding-top:40px;padding-bottom:64px}}.hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:center}@media(max-width:880px){.hero__grid{grid-template-columns:1fr}}.hero__eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.28em;color:var(--accent-deep);text-transform:uppercase;margin-bottom:28px}.hero__title{font-size:clamp(32px,5.2vw,68px);line-height:1.35;letter-spacing:.02em;margin-bottom:28px}@media(max-width:640px){.hero__title{font-size:32px;line-height:1.45;margin-bottom:22px}.hero__eyebrow{margin-bottom:20px;font-size:10px}.hero__lede{font-size:14.5px;line-height:2;margin-bottom:32px}}.hero__title .accent{color:var(--accent-deep);font-style:italic;font-weight:400}.hero__lede{color:var(--ink-soft);font-size:16px;line-height:2.1;max-width:46ch;margin-bottom:40px}.hero__cta{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:999px;font-size:14px;letter-spacing:.04em;transition:all .2s;border:1px solid transparent;white-space:nowrap;font-weight:500;background:transparent;color:inherit}@media(max-width:640px){.btn{padding:13px 22px;font-size:12px}.hero__cta{flex-direction:column;align-items:stretch}.hero__cta .btn{justify-content:center}}.btn--primary{background:var(--accent-deep);color:#fff}.btn--primary:hover{background:var(--accent);transform:translateY(-1px)}.btn--ghost{background:transparent;border-color:var(--rule);color:var(--ink)}.btn--ghost:hover{border-color:var(--ink);background:var(--bg-card)}.btn--light{background:var(--bg);color:var(--ink)}.btn--light:hover{background:var(--accent-soft)}.hero__meta{margin-top:56px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-top:28px;border-top:1px solid var(--rule-soft)}@media(max-width:640px){.hero__meta{margin-top:40px;gap:16px}.hero__meta-item .v{font-size:14px}}.hero__meta-item .k{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-mute);text-transform:uppercase;display:block;margin-bottom:6px}.hero__meta-item .v{font-family:var(--font-serif);font-size:16px}.hero__visual{position:relative}.wireframe{position:relative;background:var(--bg-card);border:2px dashed var(--rule);border-radius:var(--radius-card);overflow:hidden;isolation:isolate}.wireframe img{width:100%;height:100%;object-fit:cover;display:block}.wireframe--has-image{border-style:solid}.wireframe__label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;z-index:2;font-family:var(--font-sans);text-align:center;padding:24px}.wireframe__label .tag{font-size:11px;letter-spacing:.04em;color:var(--accent-deep);font-weight:500}.wireframe__label .name{font-size:13px;color:var(--ink-soft);letter-spacing:.02em;line-height:1.7;white-space:pre-line}.wireframe__label .dim{font-size:11px;color:var(--ink-mute);margin-top:2px}.wireframe__label .icon{width:56px;height:56px;border-radius:999px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;color:var(--accent-deep);margin-bottom:6px}.wireframe--square{aspect-ratio:1 / 1}.wireframe--portrait{aspect-ratio:3 / 4}.wireframe--landscape{aspect-ratio:4 / 3}.wireframe--wide{aspect-ratio:16 / 9}.hero__visual .wireframe{aspect-ratio:4 / 5;border-radius:var(--radius-card)}@media(max-width:880px){.hero__visual .wireframe{aspect-ratio:4 / 3}}.hero__visual-caption{position:absolute;left:20px;bottom:24px;background:var(--bg);color:var(--ink-soft);padding:10px 18px;font-family:var(--font-sans);font-size:12px;letter-spacing:.02em;z-index:3;border-radius:999px;box-shadow:0 2px 12px #3d342a14;font-weight:500}@media(max-width:640px){.hero__visual-caption{left:12px;bottom:16px;padding:8px 12px;font-size:11px}}.about__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,6vw,96px);align-items:start}@media(max-width:880px){.about__grid{grid-template-columns:1fr}}.about__body p{color:var(--ink-soft);font-size:15px;line-height:2.1;margin:0 0 18px}.about__body p:first-of-type{font-size:17px;color:var(--ink);font-family:var(--font-serif);font-weight:500;line-height:2}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}@media(max-width:640px){.pillars{grid-template-columns:1fr}}.pillar{border-top:2px solid var(--accent-soft);padding-top:18px}.pillar__num{font-family:var(--font-sans);font-size:12px;letter-spacing:.04em;color:var(--accent-deep);margin-bottom:10px;font-weight:600}.pillar__title{font-family:var(--font-serif);font-size:19px;margin-bottom:8px;font-weight:500}.pillar__text{font-size:13px;color:var(--ink-soft);line-height:1.95;margin:0}.lessons__list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media(max-width:760px){.lessons__list{grid-template-columns:1fr}}.lesson{background:var(--bg-card);border:1px solid var(--rule-soft);border-radius:var(--radius-card);padding:32px 30px;display:flex;flex-direction:column;gap:14px;transition:transform .25s,box-shadow .25s,border-color .25s;position:relative}.lesson:hover{transform:translateY(-2px);box-shadow:0 8px 24px #3d342a0f;border-color:var(--accent-soft)}@media(max-width:640px){.lesson{padding:26px 22px}.lesson__title{font-size:19px}.lesson__desc{font-size:13.5px;line-height:1.9}.lesson__meta{gap:12px;font-size:11.5px}}.lesson__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.lesson__num{font-family:var(--font-sans);font-size:11px;letter-spacing:.04em;color:var(--ink-mute);font-weight:500}.lesson__tag{font-family:var(--font-sans);font-size:11px;letter-spacing:.02em;padding:4px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent-deep);font-weight:500}.lesson__title{font-size:22px;line-height:1.5;font-weight:500}.lesson__desc{color:var(--ink-soft);font-size:14px;line-height:1.95;margin:0}.lesson__meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:8px;padding-top:16px;border-top:1px dotted var(--rule);font-size:12.5px;color:var(--ink-mute)}.lesson__meta span{display:inline-flex;gap:6px;align-items:center}.lesson__meta strong{color:var(--ink);font-weight:500}.therapist__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,88px);align-items:start}@media(max-width:880px){.therapist__grid{grid-template-columns:1fr}}.therapist__photo .wireframe{aspect-ratio:3 / 4}.therapist__name{font-size:clamp(28px,3vw,36px);line-height:1.4;margin-bottom:6px}.therapist__name .en{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.24em;color:var(--ink-mute);margin-top:10px;text-transform:uppercase}.therapist__title{font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;color:var(--accent-deep);margin-top:8px;margin-bottom:24px}.therapist__body p{color:var(--ink-soft);line-height:2;margin:0 0 16px}.creds{margin-top:28px;padding-top:24px;border-top:1px solid var(--rule)}.creds__title{font-family:var(--font-sans);font-size:12px;letter-spacing:.04em;color:var(--ink-mute);margin-bottom:14px;font-weight:500}.creds__list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.creds__list li{display:grid;grid-template-columns:80px 1fr;gap:14px;font-size:13px;color:var(--ink-soft);padding-bottom:10px;border-bottom:1px dotted var(--rule);line-height:1.7}@media(max-width:480px){.creds__list li{grid-template-columns:60px 1fr;font-size:12.5px;gap:10px}}.creds__list li .year{font-family:var(--font-sans);font-size:12px;color:var(--accent-deep);letter-spacing:.02em;font-weight:500}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media(max-width:880px){.flow{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.flow{grid-template-columns:1fr}}.step{position:relative;padding:28px 24px;background:var(--bg-card);border:1px solid var(--rule-soft);border-radius:var(--radius-card)}.step__num{font-family:var(--font-sans);font-size:12px;letter-spacing:.04em;color:var(--accent-deep);margin-bottom:12px;font-weight:600}.step__title{font-family:var(--font-serif);font-size:19px;margin-bottom:10px;font-weight:500}.step__text{font-size:13px;color:var(--ink-soft);line-height:1.95;margin:0}.step__dot{position:absolute;top:22px;right:22px;width:32px;height:32px;background:var(--accent-soft);color:var(--accent-deep);border-radius:999px}.price-table{background:var(--bg-card);border-radius:var(--radius-card);padding:8px 32px;border:1px solid var(--rule-soft)}.price-row{display:grid;grid-template-columns:1.4fr .9fr 1fr .7fr;gap:16px;align-items:baseline;padding:22px 0;border-bottom:1px dotted var(--rule)}.price-row:last-child{border-bottom:none}@media(max-width:760px){.price-row{grid-template-columns:1fr 1fr;row-gap:10px}.price-row__name{grid-column:1 / -1}.price-row__duration{font-size:13px}.price-row__price{text-align:right;font-size:18px}.price-row__freq{text-align:right!important}.price-row--head{display:none}}.price-row--head{font-family:var(--font-sans);font-size:12px;letter-spacing:.04em;color:var(--ink-mute);padding:14px 0;font-weight:500}.price-row__name{font-family:var(--font-serif);font-size:18px;font-weight:500}.price-row__note{font-size:12.5px;color:var(--ink-mute);display:block;margin-top:4px;font-family:var(--font-sans);letter-spacing:.01em}.price-row__duration{color:var(--ink-soft);font-size:14px}.price-row__price{font-family:var(--font-serif);font-size:22px;letter-spacing:.02em;font-weight:500;color:var(--accent-deep)}.price-row__price .yen{font-size:12px;color:var(--ink-mute);margin-left:4px;font-weight:400}.price-row__freq{font-size:12.5px;color:var(--ink-mute);font-family:var(--font-sans);letter-spacing:.02em}.price-note{margin-top:32px;padding:24px 28px;background:var(--accent-soft);border-radius:var(--radius-card);font-size:13.5px;color:var(--ink-soft);line-height:2}.price-note strong{color:var(--ink);font-weight:500}.voices{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}@media(max-width:880px){.voices{grid-template-columns:1fr}}.voice{background:var(--bg-card);border:1px solid var(--rule-soft);border-radius:var(--radius-card);padding:32px 28px;display:flex;flex-direction:column;gap:16px;position:relative}@media(max-width:640px){.voice{padding:28px 22px}.voice__body{font-size:13.5px;line-height:1.95}}.voice:before{content:"“";position:absolute;top:-8px;left:22px;font-family:Georgia,serif;font-size:56px;color:var(--accent);line-height:1;background:var(--bg);padding:0 8px;border-radius:999px}.section--soft .voice:before{background:var(--bg-soft)}.voice__body{font-size:14.5px;line-height:2;color:var(--ink-soft);font-family:var(--font-sans);margin:16px 0 0}.voice__meta{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--rule-soft);margin-top:auto}.voice__avatar{width:44px;height:44px;border-radius:999px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-size:14px;color:var(--accent-deep);font-weight:500}.voice__who{font-size:14px;color:var(--ink)}.voice__who small{display:block;font-size:11.5px;color:var(--ink-mute);margin-top:2px;font-family:var(--font-sans);letter-spacing:.02em}.faq__list{background:var(--bg-card);border-radius:var(--radius-card);padding:4px 28px;border:1px solid var(--rule-soft)}.faq__item{border-bottom:1px dotted var(--rule)}.faq__item:last-child{border-bottom:none}.faq__item>summary{list-style:none;width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 4px;font-family:var(--font-serif);font-size:17px;color:var(--ink);transition:color .2s;cursor:pointer}.faq__item>summary::-webkit-details-marker{display:none}.faq__item>summary:hover{color:var(--accent-deep)}@media(max-width:640px){.faq__item>summary{font-size:15px;padding:20px 2px;gap:10px}.faq__q-text .q-mark{margin-right:8px;font-size:11px}.faq__a{padding-left:24px;font-size:13.5px;line-height:1.95;padding-bottom:20px}}.faq__q-text .q-mark{font-family:var(--font-serif);font-size:18px;color:var(--accent-deep);margin-right:14px;font-weight:500}.faq__icon{flex-shrink:0;width:28px;height:28px;background:var(--accent-soft);color:var(--accent-deep);border-radius:999px;display:flex;align-items:center;justify-content:center;transition:transform .25s,background .25s,color .25s}.faq__item[open]>summary .faq__icon{background:var(--accent-deep);color:#fff;transform:rotate(45deg)}.faq__a{padding:0 4px 24px 38px;color:var(--ink-soft);font-size:14px;line-height:2}.faq__a:before{content:"A.";font-family:var(--font-serif);color:var(--moss);margin-left:-28px;margin-right:14px;font-weight:500}.access__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,64px);align-items:start}@media(max-width:880px){.access__grid{grid-template-columns:1fr}}.access__map .wireframe{aspect-ratio:4 / 3}.access__info{display:grid;gap:8px}.info-row{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--rule-soft);align-items:baseline}@media(max-width:480px){.info-row{grid-template-columns:1fr;gap:6px;padding:14px 0}}.info-row__k{font-family:var(--font-sans);font-size:12px;letter-spacing:.02em;color:var(--accent-deep);font-weight:500}.info-row__v{font-size:14px;color:var(--ink);line-height:1.8}.info-row__v small{display:block;color:var(--ink-mute);font-size:12px;margin-top:2px}.section--ink .eyebrow{color:var(--accent-deep)}.section--ink .eyebrow:before{background:var(--accent-deep)}.section--ink .section-lede{color:var(--ink-soft)}.form{display:grid;grid-template-columns:1fr 1fr;gap:24px 32px;margin-top:16px;background:var(--bg-card);padding:40px;border-radius:var(--radius-card);border:1px solid var(--rule-soft)}@media(max-width:760px){.form{grid-template-columns:1fr;padding:28px 22px}}.form__full{grid-column:1 / -1}.field{display:flex;flex-direction:column;gap:8px}.field label{font-family:var(--font-sans);font-size:12.5px;letter-spacing:.02em;color:var(--ink-soft);font-weight:500}.field label .req{color:var(--accent-deep);margin-left:4px}.field input,.field textarea,.field select{background:var(--bg);border:1px solid var(--rule);border-radius:var(--radius-input);padding:12px 14px;font-family:var(--font-sans);color:var(--ink);font-size:15px;transition:border-color .2s,background .2s;width:100%}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--accent-deep);background:#fff}.field textarea{resize:vertical;min-height:96px}.radio-row{display:flex;gap:10px;flex-wrap:wrap;padding-top:4px}.radio-row>label{font-family:var(--font-sans);letter-spacing:.02em;font-size:13px;color:var(--ink);padding:9px 18px;border:1px solid var(--rule);border-radius:999px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px;background:var(--bg)}.radio-row>label:hover{border-color:var(--accent-deep);color:var(--accent-deep)}.radio-row>label:has(input:checked){background:var(--accent-deep);color:#fff;border-color:var(--accent-deep)}.radio-row>label>input{position:absolute;opacity:0;pointer-events:none}.form__submit{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding-top:24px;border-top:1px dotted var(--rule);flex-wrap:wrap}@media(max-width:480px){.form__submit{flex-direction:column;align-items:stretch}.form__submit .btn{justify-content:center;width:100%}.form__submit .note{text-align:center}}.form__submit .note{font-size:12px;font-family:var(--font-sans);color:var(--ink-mute);letter-spacing:.02em}.form__status{font-size:13px;color:var(--ink-soft);margin:0}.form__success{grid-column:1 / -1;padding:40px 32px;background:var(--bg);border:1px solid var(--accent);border-radius:var(--radius-card);text-align:center;font-family:var(--font-serif);color:var(--ink);white-space:pre-line}.form__success .check{width:56px;height:56px;border-radius:999px;background:var(--accent-deep);color:#fff;display:inline-flex;align-items:center;justify-content:center;margin-bottom:18px;font-size:28px}.form__success h3{margin:0 0 10px;font-size:22px}.form__success p{color:var(--ink-soft);margin:0;font-size:14px;line-height:2}.cf-turnstile{grid-column:1 / -1}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.footer{background:var(--bg);padding:56px 0 32px;border-top:1px solid var(--rule-soft)}.footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;align-items:start;padding-bottom:40px;border-bottom:1px solid var(--rule-soft)}@media(max-width:760px){.footer__grid{grid-template-columns:1fr 1fr;gap:28px}.footer__brand{grid-column:1 / -1}}@media(max-width:480px){.footer__grid{grid-template-columns:1fr}}.footer__brand p{font-size:13px;color:var(--ink-soft);line-height:1.9;margin:12px 0 0;max-width:36ch;white-space:pre-line}.footer__col h4{font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:.02em;color:var(--accent-deep);margin:0 0 16px}.footer__col ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.footer__col a,.footer__col li{font-size:13px;color:var(--ink-soft);transition:color .2s}.footer__col a:hover{color:var(--accent-deep)}.footer__bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;font-family:var(--font-sans);font-size:12px;letter-spacing:.02em;color:var(--ink-mute);flex-wrap:wrap;gap:12px}.footer__bottom a{color:inherit}.footer__bottom a:hover{color:var(--accent-deep)}@media(max-width:480px){.footer__bottom{font-size:11px;letter-spacing:.01em}}.wave-divider{height:56px;background-image:radial-gradient(ellipse at center,var(--accent-soft) 0,var(--accent-soft) 2px,transparent 2px);background-size:28px 28px;background-position:center;opacity:.7}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.tag-list span{font-family:var(--font-sans);font-size:12px;letter-spacing:.02em;color:var(--accent-deep);background:var(--accent-soft);padding:6px 14px;border-radius:999px;font-weight:500}
