:root{--red:#ae392b;--ink:#362f2b;--paper:#fbf5e9;--line:#e2d5c3}body{color:var(--ink);letter-spacing:.015em}.header{background:#fffcf5ed;backdrop-filter:blur(14px);height:88px}.brand{letter-spacing:.035em}.brand img{width:44px;height:44px}nav>a:not(.button){position:relative;padding-block:10px}nav>a:not(.button):after{content:"";position:absolute;bottom:4px;left:0;width:0;height:2px;background:var(--red);transition:width .2s}nav>a:not(.button):hover:after{width:100%}.button{border-radius:999px;padding:19px 30px;letter-spacing:.025em;box-shadow:0 7px 19px #84342712}.button.small{padding:13px 22px}.button.outline{box-shadow:none}h2{font-weight:800;line-height:1.55;letter-spacing:.045em}.eyebrow{display:flex;align-items:center;gap:13px}.eyebrow:before{content:"";height:1px;width:25px;background:currentColor;flex-shrink:0}.hero{display:block;isolation:isolate;min-height:750px}.hero-art{position:absolute;inset:0;z-index:-2;min-height:0;width:100%;height:100%;object-fit:cover;object-position:70% center}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fbf5e9 0%,#fbf5e9f7 24%,#fbf5e9da 38%,#fbf5e94d 52%,#fbf5e900 66%)}.hero-copy{max-width:none;width:58%;padding:82px 25px 72px max(45px,calc((100vw - 1120px)/2))}.hero .eyebrow{font-size:13px;letter-spacing:.12em;margin-bottom:25px}.hero h1{font-size:clamp(51px,5.15vw,78px);line-height:1.4;margin-bottom:26px;letter-spacing:.015em}.hero h1 .hero-line{color:var(--ink);white-space:nowrap}.hero h1 .hero-emphasis{color:var(--red)}.hero-lead{font-size:19px;line-height:2.1;font-weight:600}.hero-service{font-size:13px;line-height:1.9;color:#746152;margin-bottom:26px}.hero-next{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:700;color:#6b574a;text-decoration:none;width:fit-content;margin-top:25px}.hero-next span{font-size:19px;transition:transform .2s}.hero-next:hover span{transform:translateY(4px)}.micro{font-size:12px}.promise-strip{border-bottom:1px solid var(--line);background:#fffdf8}.promise-strip>.wrap{display:flex;justify-content:center;align-items:center;gap:42px;padding-block:25px}.promise-strip p{font-size:15px;font-weight:700;margin:0;white-space:nowrap}.promise-strip p span{color:var(--red);font-family:Georgia,serif;font-size:24px;font-weight:400;margin-right:12px}.promise-strip i{height:1px;width:60px;background:var(--line)}.intro{padding-block:108px}.intro h2{font-size:clamp(32px,3.3vw,46px)}.intro>p:not(.eyebrow):not(.note){max-width:850px;line-height:2.2}.audience{gap:70px;border-top:0;margin-top:35px;padding-bottom:32px}.audience>p+ p{border-left:1px solid var(--line);padding-left:45px}.audience strong{color:var(--ink);font-size:21px;margin-bottom:10px}.audience strong:before{content:"＋";color:var(--red);font-weight:400;margin-right:12px}.paper{background:#f5eedf}.methods{gap:62px;margin-top:45px}.methods article{position:relative;padding-top:6px}.methods .number{position:absolute;right:5px;top:-16px;font-size:84px;font-family:Georgia,serif;font-weight:400;color:#aa856626;line-height:1;pointer-events:none}.methods h3{position:relative;padding-top:5px;padding-right:45px;font-size:21px;min-height:65px;margin-bottom:5px}.methods h3 small{display:block;margin-top:5px}.methods .feature-lead{font-size:30px;line-height:1.75;margin-top:10px;margin-bottom:28px}.methods img{border-radius:14px 14px 48px 14px;aspect-ratio:1.55;box-shadow:0 10px 30px #7156370b}.methods article:nth-child(2) img{border-radius:14px 14px 14px 48px}.methods article>p:not(.feature-lead):not(.note){line-height:2.05}.methods .text-link{border-bottom:1px solid #b33d2e66;text-decoration:none}.reassuring{font-size:25px;letter-spacing:.03em;margin-top:50px}.example{background:#fffdf8;border:1px solid var(--line);border-radius:10px;padding:34px 38px;gap:62px;margin-top:35px;position:relative}.example>div+div{border-left:1px solid var(--line);padding-left:38px}.example h3{font-size:26px;line-height:1.7}.step-label{font-size:12px;letter-spacing:.08em;margin-bottom:13px}.example-routes{gap:50px;font-size:14px;line-height:2}.example-routes strong{font-size:17px}.check-list li:before{font-size:14px}.check-list li{padding-top:8px;padding-bottom:8px}#activities{background:#39332e;color:#fff9ee;position:relative;overflow:hidden}#activities .eyebrow{color:#e7b79b}#activities h2{color:#fff9ee}#activities .main-activity{gap:55px;margin-top:45px;margin-bottom:45px}#activities .main-activity>img{border-radius:8px 8px 48px 8px;aspect-ratio:1.6;box-shadow:0 15px 40px #0002}#activities .main-activity h3{font-size:32px}#activities .figures{gap:45px;border-block:1px solid #fff3;padding-block:18px;margin-bottom:20px}#activities .figures strong{font-family:Georgia,"Yu Gothic",serif;font-size:49px;font-weight:400;line-height:1.5}#activities .figures small{font-family:"Yu Gothic",sans-serif;font-size:17px}#activities .activity-row{gap:30px;border-top:1px solid #fff3;padding-top:35px}#activities .activity-row img{border-radius:5px;aspect-ratio:1.6;transition:filter .25s}#activities .activity-row article:hover img{filter:brightness(1.07)}#activities .note{color:#d2c7b9;font-size:12px;line-height:1.9;margin-top:30px}.support-list{column-gap:58px;margin-top:45px}.support-list li{padding-block:30px;gap:24px}.support-list li>span{font-family:Georgia,serif;font-size:38px;font-weight:400;line-height:1.25;color:#ae392b}.support-list h3{font-size:21px}.support-list p{color:#6b6056;line-height:1.95}.timeline{display:grid;grid-template-columns:240px 1fr;column-gap:30px;background:#f6efdf;border-top:0;border-left:3px solid var(--red);padding:27px 30px;margin-top:35px;border-radius:0 8px 8px 0}.timeline .eyebrow{grid-column:1;font-size:12px;display:block;margin-bottom:3px}.timeline .eyebrow:before{display:none}.timeline strong{grid-column:1;font-size:35px;line-height:1.5}.timeline>p:not(.eyebrow){grid-column:2;font-size:14px;margin:0}.timeline>p:not(.eyebrow):not(.note){grid-row:1 / 3;align-self:center}.timeline .note{margin-top:15px!important;grid-column:1 / -1!important;font-size:12px!important}.plans{background:linear-gradient(150deg,#f6eadf 0%,#f7efe3 65%,#efe1d1 100%)}.plans h2{margin-bottom:20px}.plan-invite{font-size:16px;line-height:2;color:#6b6056}.plan-intros{margin-top:45px}.plan-intros p{font-size:27px;line-height:1.7}.pricing{border:1px solid #d8c5b3;box-shadow:0 16px 45px #5a3a2510;border-radius:8px;border-collapse:separate;border-spacing:0;overflow:hidden}.pricing th,.pricing td{border-width:0 1px 1px 0;padding:19px 23px}.pricing tr>*:last-child{border-right:0}.pricing tr:last-child>*{border-bottom:0}.pricing thead th{font-size:19px;padding-block:22px}.pricing .price-row td{padding-block:27px}.price-row strong{font-family:Georgia,serif;font-size:57px;font-weight:400}.price-row td:last-child strong{font-size:67px}.price-row span{font-family:"Yu Gothic",sans-serif;font-size:24px}.plan-actions .button{padding:13px 20px;font-size:14px;box-shadow:none}.plan-notes{line-height:1.95;margin-top:25px}.subsidy-columns{gap:65px;border-top:1px solid var(--line);padding-top:35px}.subsidy-columns h3{font-size:21px}.notice{border-left-width:2px;padding:22px 28px;line-height:2;font-size:13px}#faq{background:#f7f1e5}#faq h2{margin-bottom:34px}#faq details{padding-block:25px}#faq summary{font-size:17px;padding-left:32px}#faq summary:before{content:"Q";position:absolute;left:0;top:0;color:var(--red);font-family:Georgia,serif;font-size:20px;font-weight:400}#faq details>p{padding-left:32px;line-height:2}.consult{position:relative;background:#eae0ce}.consult .wrap{gap:60px}.consult h2{font-size:clamp(30px,3.2vw,44px);line-height:1.6}.consult-layout>img{border-radius:48px 8px 8px 8px;aspect-ratio:1.15;box-shadow:0 15px 35px #614b3310}.consult .button{font-size:17px;padding:20px 30px;margin-top:18px}.consult .text-link{font-size:13px;text-decoration:none;border-bottom:1px solid #a6372966}.footer{padding-block:40px}.footer .brand img{width:34px;height:34px}.footer p{color:#6b6056}.footer small{color:#7b6b5d}
@media(min-width:1600px){.hero-copy{width:57%;padding-left:calc((100vw - 1120px)/2)}}
@media(max-width:1050px) and (min-width:761px){.header{padding-inline:28px}.hero{min-height:690px}.hero-copy{width:62%;padding:70px 28px 60px 40px}.hero h1{font-size:clamp(48px,5.4vw,59px)}.hero-lead{font-size:17px}.hero:after{background:linear-gradient(90deg,#fbf5e9 0%,#fbf5e9ed 38%,#fbf5e977 57%,#fbf5e900 78%)}.methods{gap:36px}.methods .feature-lead{font-size:26px}.example{padding:30px;gap:32px}.example>div+div{padding-left:28px}#activities .main-activity{gap:30px}#activities .figures{gap:24px}#activities .figures strong{font-size:40px}.plan-intros p{font-size:24px}.timeline{grid-template-columns:190px 1fr}}
@media(max-width:760px){.header{height:74px;padding-inline:20px}.brand{font-size:22px}.brand img{width:35px;height:35px}.header nav{top:74px}.header nav>a:not(.button){padding-block:14px}.header nav .button{margin-top:10px}.menu{padding:9px 12px;font-size:12px}.hero{display:flex;isolation:isolate;min-height:0;overflow:hidden}.hero:after{display:none}.hero-copy{width:100%;padding:34px 24px 30px;background:var(--paper)}.hero .eyebrow{font-size:11px;letter-spacing:.05em;margin-bottom:20px}.hero .eyebrow:before{width:20px}.hero h1{font-size:clamp(36px,11.4vw,49px);line-height:1.5;margin:0 0 20px}.hero-lead{font-size:16px;line-height:2;margin-bottom:20px}.hero-service{font-size:12px;margin-bottom:22px}.hero .button{padding:17px 22px;font-size:14px}.hero-next{font-size:12px;margin-top:20px;gap:15px}.hero-art{position:relative;inset:auto;z-index:0;min-height:0;width:100%;height:auto;max-height:none;aspect-ratio:1.65;object-fit:cover;object-position:75% 68%}.hero .micro{font-size:11px}.promise-strip>.wrap{width:calc(100% - 32px);gap:13px;justify-content:space-between;padding-block:19px}.promise-strip p{font-size:11px;white-space:normal;line-height:1.5}.promise-strip p span{display:block;font-size:19px;margin:0 0 3px}.promise-strip i{width:24px}.intro{padding-block:65px}.intro h2{font-size:29px}.intro>p:not(.eyebrow):not(.note){font-size:14px;line-height:2.1}.eyebrow{font-size:12px;letter-spacing:.04em;gap:10px}.eyebrow:before{width:20px}.audience{gap:22px;padding-bottom:24px;margin-top:25px}.audience>p+ p{border-left:0;padding-left:0}.audience strong{font-size:18px;margin-bottom:8px}.audience span{font-size:14px}.methods{gap:35px;margin-top:32px}.methods .number{font-size:67px;top:0;right:3px}.methods h3{font-size:19px;min-height:48px;padding-top:10px;padding-right:50px}.methods .feature-lead{font-size:27px;margin-top:5px;margin-bottom:23px}.methods img{border-radius:8px 8px 32px 8px}.methods article:nth-child(2) img{border-radius:8px 8px 8px 32px}.methods article>p:not(.feature-lead):not(.note){font-size:14px}.reassuring{font-size:20px;line-height:1.8;margin-top:35px}.example{padding:24px 21px;gap:20px;margin-top:26px}.example>div+div{padding:22px 0 0;border-left:0;border-top:1px solid var(--line)}.example h3{font-size:23px}.example-routes{gap:10px;font-size:14px}.example-routes strong{font-size:17px}#activities .main-activity{gap:26px;margin-top:30px;margin-bottom:28px}#activities .main-activity>img{aspect-ratio:1.6;border-radius:6px 6px 30px 6px}#activities .main-activity h3{font-size:27px}#activities .figures{padding-block:14px;gap:35px}#activities .figures strong{font-size:43px}#activities .activity-row{padding-top:27px;gap:24px}#activities .activity-row img{aspect-ratio:1.25}#activities .note{font-size:11px}.support-list{margin-top:30px}.support-list li{padding-block:25px;gap:20px}.support-list li>span{font-size:32px}.support-list h3{font-size:19px}.support-list p{font-size:14px}.timeline{display:block;padding:22px 20px}.timeline strong{font-size:30px}.timeline>p:not(.eyebrow){font-size:13px;margin-top:14px;line-height:1.9}.timeline .note{font-size:11px!important}.plan-invite{font-size:14px;line-height:2}.mobile-plans{gap:27px;margin-top:28px}.mobile-plans article{padding:26px 22px;border-radius:12px;box-shadow:0 10px 30px #6a49360a}.mobile-plans article.full-plan{border-radius:12px;border:1px solid #b33d2e;border-top:5px solid #b33d2e}.mobile-plans h3{font-size:24px}.mobile-plans .mobile-price{font-family:Georgia,serif;font-size:56px;font-weight:400}.mobile-plans .mobile-price span{font-family:"Yu Gothic",sans-serif;font-size:17px}.mobile-plans dl>div{grid-template-columns:96px 1fr;font-size:14px;line-height:1.9}.mobile-plans .button{font-size:14px;padding-block:15px}.plan-notes{font-size:12px}.subsidy-columns{padding-top:27px;gap:20px;margin-top:28px}.subsidy-columns h3{font-size:20px}.notice{padding:19px 20px;font-size:12px}#faq summary{font-size:15px;padding-left:29px}#faq details{padding-block:23px}#faq details>p{padding-left:29px;font-size:13px}.consult .wrap{gap:33px}.consult h2{font-size:29px}.consult .button{font-size:15px;padding:18px 24px}.consult .text-link{font-size:13px}.consult-layout>img{aspect-ratio:1.4;border-radius:32px 6px 6px 6px}.footer{padding-top:32px;padding-bottom:105px}.footer .brand{font-size:21px}.mobile-cta{font-size:14px;padding-top:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));background:#a63729;letter-spacing:.03em}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Keep reading rhythm responsive instead of carrying desktop line breaks to phones. */
.header-booking{flex-shrink:0;margin-right:auto}
.header .header-booking{font-size:13px;padding:12px 18px}
.booking-short{display:none}
.header .menu{flex-shrink:0}
@media(min-width:761px) and (max-width:1100px){.header{gap:16px;padding-inline:20px}.header-booking .booking-wide{display:none}.header-booking .booking-short{display:inline}.header nav{gap:15px;font-size:13px}.header .brand{font-size:20px}.header .brand-copy small{font-size:10px}}
@media(max-width:760px){.header{height:82px;padding-inline:12px;gap:8px}.header .brand{gap:6px;min-width:0;flex-shrink:1}.header .brand img{width:26px;height:30px}.header .brand-copy{max-width:130px;gap:3px}.header .brand-copy>span{font-size:18px}.header .brand-copy small{font-size:9px;white-space:normal;line-height:1.45}.header .header-booking{font-size:11px;padding:11px 10px;margin-right:0;margin-left:auto;letter-spacing:0}.header-booking .booking-wide{display:none}.header-booking .booking-short{display:inline}.header .menu{font-size:18px;line-height:1;padding:8px 5px;border:0}.header nav{top:82px}html{scroll-padding-top:92px}}
.subsidy-scene{margin:35px 0 0;max-width:860px}
.subsidy-scene img{width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;object-position:center 48%;border-radius:10px 10px 40px 10px}
.subsidy-scene figcaption{margin-top:9px;font-size:11px;color:#746152;text-align:right;line-height:1.6}
@media(max-width:760px){.subsidy-scene{margin-top:28px}.subsidy-scene img{aspect-ratio:1.5;border-radius:8px 8px 28px 8px}.subsidy-scene figcaption{font-size:10px}}
.brand-copy{display:flex;flex-direction:column;gap:2px;line-height:1.35}
.brand-copy small{font-size:11px;font-weight:500;color:var(--ink);letter-spacing:.035em}
@media(max-width:760px){.header .brand{gap:7px}.header .brand-copy small{font-size:9px;letter-spacing:0}.header .brand-copy>span{font-size:21px}.header .brand img{width:30px;height:30px}.header{gap:10px;padding-inline:16px}.menu{padding:9px 8px}}
.reading-sentence{display:block;text-wrap:pretty}
.reading-sentence+.reading-sentence{margin-top:.4em}
.reading-sentence:empty{display:none}
.reassuring .reading-sentence+.reading-sentence{margin-top:0}
@media(max-width:760px){.reassuring{font-size:clamp(16px,4.6vw,20px)}#faq details>p .reading-phrase{font-size:inherit}}
.reading-sentence .reading-sentence{margin-top:0}
.reading-phrase{display:inline-block;white-space:nowrap;max-width:100%}
.audience .note .reading-phrase{font-size:inherit}
.support-list p{line-height:1.95}
.activity-row p{line-height:1.95}
@media(max-width:760px){.example h3{font-size:clamp(19px,5.7vw,23px)}.example h3 .reading-sentence+.reading-sentence{margin-top:0}.plan-notes p{margin-bottom:16px}.mobile-plans article>p .reading-sentence+.reading-sentence{margin-top:.15em}}
.audience .audience-choice{display:block;margin-top:4px}
.audience-choice>span{display:inline-block;white-space:nowrap}
.intro-story{max-width:850px;line-height:2.2}
.intro-story .intro-ideas{margin-bottom:12px}
.intro-ideas>span{display:inline-block;white-space:nowrap}
@media(max-width:760px){.intro-story{font-size:14px;line-height:2.1}.intro-ideas>span{display:block}.intro-story .intro-ideas{margin-bottom:18px}}
h1,h2,h3{overflow-wrap:normal;word-break:normal;line-break:strict}
h2,h3,.feature-lead,.reassuring,.plan-intros p,.plan-tagline{text-wrap:balance}
p,li,dd,summary{line-break:strict;word-break:normal;overflow-wrap:break-word}
.hero h1{font-size:clamp(44px,4.5vw,68px)}
.hero-lead br{display:block}
.hero-lead{max-width:26em;text-wrap:balance}
.audience span br{display:none}
.methods h3{padding-right:18px}
.button,.mobile-cta{white-space:nowrap}
@media(min-width:761px) and (max-width:1050px){
 .hero h1{font-size:clamp(36px,4.45vw,47px)}
 .hero-lead{max-width:23em}
 .methods .feature-lead{font-size:clamp(21px,2.55vw,26px)}
}
@media(max-width:760px){
 .hero h1{font-size:clamp(29px,9.15vw,49px);line-height:1.55}
 .hero-lead{max-width:23em;text-wrap:pretty}
 .hero-lead br{display:block}
 h2,.intro h2,.consult h2{font-size:clamp(22px,6.4vw,29px);line-height:1.65}
 h2 br,.example h3 br,.mobile-plans article>p br{display:none}
 .methods .feature-lead{font-size:clamp(20px,6.1vw,25px)}
 .support-list h3{font-size:clamp(17px,4.85vw,19px)}
 .mobile-plans h3{font-size:clamp(21px,5.8vw,24px)}
 .mobile-plans article>p:not(.mobile-price){text-wrap:pretty}
 .reassuring{font-size:clamp(16px,4.6vw,20px)}
 .consult .button{font-size:clamp(13px,3.85vw,15px);padding-inline:18px}
 .heading-phrase,.feature-phrase{display:inline-block;white-space:nowrap}
 p{text-wrap:pretty}
}

.brand-purpose{display:inline-block;white-space:nowrap}
@media(max-width:760px){.header .brand-copy>span{font-size:18px}.header .brand img{width:26px;height:30px}}

.audience .audience-description-line{display:block}.audience-description-line,.shop-kind{white-space:nowrap}.shop-kind{display:inline-block}

.question-phrase{display:inline-block;white-space:nowrap}#faq summary{line-height:1.9}#faq .question-phrase{font-size:inherit}
