/* Second refinement: the visitor's own route through G.B.B. */
.eyebrow{font-family:'Noto Sans JP',sans-serif;font-size:12px;letter-spacing:.09em;font-weight:700}
.hero .eyebrow{font-family:'Noto Sans JP',sans-serif;font-size:13px;letter-spacing:.14em}
.hero h1{letter-spacing:-.055em;line-height:1.3}
.hero h1 span:first-child{font-size:.85em;margin-bottom:.1em}
.hero h1 span:nth-child(2) i{animation-delay:.2s}
.hero h1 span:nth-child(3) i{animation-delay:.4s}
.hero-lead{animation-delay:.65s;font-size:15px}
.hero-buttons{animation-delay:.85s}
.hero-base-note{width:315px;max-width:315px;bottom:112px;padding:0;overflow:hidden;gap:16px;align-items:stretch;background:linear-gradient(135deg,#163c31eb,#142c23d9);border-color:#b5d4b966;animation:fadeUp .9s 1.05s both}
.hero-base-note>img{width:100px;height:auto;object-fit:cover;flex-shrink:0}
.hero-base-note>span{padding:16px 13px 16px 0}
.hero-base-note small{font-size:9px;display:block;line-height:1.7;color:#c6dcc8}
.hero-base-note strong{font-size:15px;line-height:1.65;margin:7px 0}
.hero-base-note .base-link{font-size:11px;color:var(--lime)}
.hero-base-note>span:last-child{display:block}
.hero-base-note.control-arrived{animation:fadeUp .9s 1.05s both}
.hero-buttons .button.control-arrived:after{animation-delay:1.25s}
.hero .hero-bottom p{font-size:10px;line-height:1.7}
.hero-word{font-size:clamp(48px,7.2vw,100px)}
.hero-light{animation-duration:2.2s}
.hero-trail path{animation-delay:1.05s;animation-duration:1.2s}
.photo-label{font-family:'Noto Sans JP',sans-serif;font-size:11px;letter-spacing:.03em;line-height:1.8}
.proofbar small{font-size:11px}.section-heading p{font-size:14px;line-height:1.95}
.section h2{letter-spacing:-.035em;line-height:1.55}
.text-link{min-height:44px}.tap-ready.is-down{transition:transform .08s,box-shadow .08s,filter .08s}
.button.control-arrived:after{animation:buttonShine 1s .25s both}
.button:focus-visible:after{left:125%}.button .arrow path{stroke-dasharray:50;stroke-dashoffset:0;transition:stroke-dashoffset .4s}
.button:hover .arrow path{animation:arrowDraw .55s ease-out both}
.motion-ready .photo-reveal.visible{clip-path:inset(0)}
.motion-ready .reveal.visible .photo-reveal{clip-path:inset(0)}
.scene-tab{font-size:15px}.story-scene-copy>p{font-size:14px}.scene-answer p{font-size:13px}
.scene-answer>span,.scene-tag{font-size:11px}.scene-next{font-size:13px}
.check-copy>p{font-size:15px}.check-item strong{font-size:14px;line-height:1.7}
.check-item small{font-size:11px}.check-item[aria-pressed=true] .checkmark{animation:checkStamp .4s var(--curve) both}
.check-copy .check-note{font-size:11px!important;line-height:1.9}
.result-content>p,.result-content li{font-size:14px}.result-content .eyebrow{font-size:11px}
.result-content .button{width:100%;font-size:13px}.result-content .result-note{font-size:12px}
.result-service-link{font-size:13px;margin-top:8px}.result-count{font-family:'Noto Sans JP',sans-serif;font-size:13px;letter-spacing:.1em}
.result-content.result-updated{animation:resultFocus .55s ease-out}
.achievement-label{font-size:13px;letter-spacing:.12em;color:var(--mint)}.achievement p{font-size:13px}
.service-story{background:radial-gradient(ellipse at 100% 35%,#cce4d047,transparent 50%),var(--cream)}
.personal-route{display:grid;grid-template-columns:1fr 1fr;gap:36px;padding:28px 32px;margin-bottom:32px;border:1px solid #a7bda6;border-left:4px solid #498469;background:linear-gradient(120deg,#dce9d6,#f0f1e2);border-radius:2px 2px 20px 2px}
.route-caption{font-size:11px;letter-spacing:.08em;color:#3d7256}.personal-route h3{font-size:24px;line-height:1.6;margin:8px 0 12px}.personal-route p{font-size:13px;color:#455c4d}.personal-route ul{padding:0;list-style:none;margin:0 0 10px}.personal-route li{font-size:13px;padding:8px 0 8px 18px;border-bottom:1px solid #99b19755;position:relative}.personal-route li:before{content:'';width:5px;height:9px;position:absolute;left:2px;top:14px;background:#679373;border-radius:50%;rotate:-25deg}
.care-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #aab9aa;border-bottom:1px solid #aab9aa}
.care-tabs button{padding:25px 22px;display:flex;align-items:center;gap:17px;text-align:left;border-right:1px solid #aab9aa;background:linear-gradient(125deg,#fff5,transparent);font-weight:700;transition:background .25s,color .25s}
.care-tabs button:last-child{border-right:0}.care-tabs .num{font-size:35px;font-weight:500;color:#7b9776}.care-tabs button>span:nth-child(2){font-size:16px}.care-tabs small{display:block;font-size:11px;font-weight:400;margin-top:6px}.care-tabs button>span:last-child{margin-left:auto;color:#679573}
.care-tabs button[aria-pressed=true]{background:linear-gradient(120deg,#214d3c,#133a2d);color:#f0f5e9;box-shadow:inset 0 -3px 0 var(--mint)}.care-tabs button[aria-pressed=true] .num,.care-tabs button[aria-pressed=true]>span:last-child{color:var(--lime)}
.care-panel{display:grid;grid-template-columns:1.1fr 1fr;min-height:430px;border-bottom:1px solid var(--line)}
.care-photo{position:relative;overflow:hidden;min-height:430px}.care-photo img{position:absolute;inset:0;height:100%;animation:carePhoto .8s var(--curve)}.care-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0d2c2099);pointer-events:none}.care-photo>span{position:absolute;bottom:19px;left:23px;color:#fff;font-size:11px;z-index:1}
.care-copy{padding:44px 38px;align-self:center;animation:careText .65s var(--curve) both}.care-kicker{font-size:12px;color:#4c795a;letter-spacing:.06em}.care-copy h3{font-size:clamp(24px,2.6vw,35px);font-weight:800;line-height:1.6;letter-spacing:-.04em;margin:18px 0}.care-copy p{font-size:14px;color:#536355}.care-words{display:flex;gap:8px;flex-wrap:wrap;margin:23px 0 12px}.care-words span{font-size:12px;padding:6px 12px;border:1px solid #9db49c;border-radius:1px 1px 8px 1px}.care-copy .text-link{font-size:13px;background:transparent;color:#2a6044}
.membership-options{display:grid;grid-template-columns:1fr 1fr;margin-top:42px;gap:50px}.membership-options article{position:relative;border-top:2px solid #578b6d;padding-top:27px;scroll-margin-top:30px}.membership-label{font-size:12px;color:#3b795a}.membership-options h3{font-size:27px;line-height:1.55;letter-spacing:-.025em;margin:10px 0 18px}.membership-options h3 br{display:none}.membership-options p{font-size:14px;color:#546454;margin:10px 0;max-width:90%}.membership-options .membership-fact{font-size:13px;font-weight:700;color:#234b37}.membership-options .text-link{margin-top:10px}.service-details,.service-details p{font-size:12px}
.intro-copy p,.impact p{font-size:15px}.intro-copy p:first-of-type{font-size:19px;font-weight:600;line-height:1.9}.intro-visual .photo-label{font-size:11px}.impact-content{max-width:950px}.impact .signature>span{font-size:12px}
.day-story{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.day-story figure{position:relative;overflow:hidden}.day-story img{aspect-ratio:1.05;clip-path:polygon(0 0,100% 0,100% 87%,86% 100%,0 100%)}.day-story figcaption{font-size:12px;color:var(--muted);margin-top:16px}.day-notes{position:relative;padding-left:34px}.day-notes:before{content:'';position:absolute;top:13px;bottom:26px;left:6px;border-left:1px dashed #85a28a}.day-notes article{position:relative;padding:0 0 32px}.day-notes article:last-child{padding-bottom:0}.day-dot{position:absolute;top:8px;left:-33px;width:11px;height:11px;background:var(--mint);box-shadow:0 0 0 6px #83c8b422;border-radius:50%}.day-notes article:nth-child(2) .day-dot{background:var(--pink)}.day-notes article:nth-child(3) .day-dot{background:#aec971}.day-notes small{font-size:12px;color:#5b7e5c}.day-notes h3{font-size:23px;line-height:1.6;margin:8px 0 10px}.day-notes p{font-size:14px;color:var(--muted)}
.outcome-note{font-size:12px;color:var(--muted);margin-top:23px;border-top:1px solid var(--line)}.outcome-note summary{font-size:12px;padding:12px 0;min-height:44px}.outcome-note p{max-width:800px;padding-bottom:12px;font-size:12px}.flow-steps p{font-size:13px}.flow-steps h3{font-size:17px}.faq-list summary{font-size:15px}.faq-answer{font-size:14px}.faq-intro{font-size:14px}
.voice-lettering{font-size:clamp(38px,4.5vw,62px);line-height:1.55;font-weight:800;letter-spacing:-.04em;position:relative;z-index:1}.voice-copy p{font-size:14px}.voice-prompts a,.voice-copy .voice-note{font-size:12px}.voice-art{min-height:360px}.voice-copy h2{font-size:30px}
.contact-banner p{font-size:15px}.contact-banner p:last-child{font-size:12px!important}.access dl>div{font-size:14px}.footer-links a{font-size:13px}.footer-bottom{font-size:11px}
.faq-entry{margin-bottom:45px}.faq-entry h2{font-size:30px;line-height:1.5}.faq-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:25px}.faq-shortcuts button{position:relative;text-align:left;padding:22px 18px;background:linear-gradient(135deg,#dde9d6,#eef0e3);border:1px solid #a8b9a2;border-radius:2px 2px 17px 2px}.faq-shortcuts span{font:500 27px 'Barlow Condensed';color:#699072}.faq-shortcuts strong{display:block;font-size:15px;margin:12px 0 8px}.faq-shortcuts small{font-size:11px;color:#526f55}.faq-search{font-size:16px}.faq-empty a{border-bottom:1px solid}
.transfer-review{padding:0 22px 19px;background:#e4ecd9;border:1px solid #9bb78f;border-top:0;margin-bottom:25px}.transfer-review ul{list-style:none;padding:0;margin:0}.transfer-review li{padding:9px 0;border-bottom:1px solid #b0c3a4;font-size:13px;line-height:1.8}.transfer-review .text-link{font-size:12px;margin-top:7px}.check-transfer{margin-bottom:0;border-bottom:0;font-size:14px}.contact-form>p{font-size:15px}.contact-form .field-label{font-size:15px}.contact-types .chip{font-size:14px;min-height:46px}.contact-form textarea{font-size:16px;line-height:1.8;min-height:140px}.message-preview{font-size:14px;line-height:1.85;padding:22px;max-height:390px}.send-label{margin-top:28px}.send-label .field-label{margin:0 0 8px}.send-label p{font-size:13px;color:var(--muted)}.contact-action-row{margin-top:20px}.contact-action-row #line-contact{min-height:50px}.send-steps{font-size:11px}.contact-note{font-size:12px}.contact-aside p{font-size:14px}.contact-aside .aside-caption{font-size:11px;margin:10px 0 22px;color:var(--muted)}.voice-consent small{font-size:12px}.subhero p{font-size:15px}.breadcrumb{font-size:12px}
@keyframes carePhoto{from{opacity:.65;scale:1.05;clip-path:inset(0 4% 0 0)}to{opacity:1;scale:1;clip-path:inset(0)}}
@keyframes careText{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@keyframes resultFocus{from{background:#d7eac0}to{background:transparent}}
@keyframes buttonShine{from{left:-60%}to{left:125%}}
@keyframes arrowDraw{from{stroke-dashoffset:50}to{stroke-dashoffset:0}}
@keyframes checkStamp{0%{scale:.8}60%{scale:1.15}100%{scale:1}}
@media(max-width:1100px){.care-tabs button{padding:21px 15px;gap:12px}.care-tabs button>span:nth-child(2){font-size:14px}.care-copy{padding:30px}.care-copy h3{font-size:28px}.hero-base-note{width:280px;max-width:280px;bottom:105px}.hero-base-note>img{width:82px}.hero-base-note strong{font-size:14px}.hero-content{max-width:85%}.personal-route{padding:25px;gap:25px}.membership-options{gap:30px}.membership-options h3 br{display:block}}
@media(max-width:760px){
 html{scroll-padding-top:24px}.hero{height:auto;min-height:0;max-height:none;padding-bottom:25px}.hero-content{padding:140px 6% 28px;max-width:100%}.hero h1{font-size:clamp(37px,9.8vw,55px);line-height:1.34;letter-spacing:-.055em}.hero h1 span:first-child{font-size:.86em}.hero .eyebrow{font-size:11px;letter-spacing:.08em;margin-bottom:22px}.hero-corner{top:116px;font-size:9px}.hero-lead{font-size:14px;line-height:1.9;max-width:100%;margin:22px 0}.hero-buttons{display:flex;gap:12px 22px;align-items:center;flex-wrap:wrap}.hero-buttons .button{font-size:13px;min-height:55px;padding:14px 18px;gap:18px;max-width:100%}.hero-buttons .text-link{font-size:12px;min-height:44px}
 .hero-base-note{position:relative;left:auto;right:auto;bottom:auto;margin:0 6% 24px;width:88%;max-width:none;min-height:100px;gap:16px}.hero-base-note>img{width:92px;aspect-ratio:1}.hero-base-note>span{padding:13px 12px 13px 0;display:block}.hero-base-note small{font-size:10px}.hero-base-note strong{display:block;font-size:14px;margin:5px 0;line-height:1.65}.hero-base-note strong br{display:none}.hero-base-note .base-link{font-size:11px}.hero-bottom{position:relative;left:auto;right:auto;bottom:auto;margin:0 6%;display:block}.hero-word{font-size:11vw}.hero .hero-bottom p{font-size:10px;line-height:1.7;margin-top:10px;letter-spacing:.02em}.hero-trail{bottom:180px}
 .site-header{padding:18px 5%;gap:10px}.sound-toggle{font-size:10px;min-width:46px}.menu-toggle{font-size:10px}.header-actions{gap:6px}.brand small{font-size:9px}
 .section{padding:64px 6%}.section h2{font-size:clamp(27px,7.2vw,34px);line-height:1.58}.eyebrow{font-size:11px;letter-spacing:.065em}.section-heading{margin-bottom:28px}.section-heading p{font-size:15px;line-height:1.9}.proofbar strong{font-size:12px}.proofbar small{font-size:10px;line-height:1.8}.proofbar .num{font-size:23px}
 .scene-tab{padding:14px 10px;font-size:12px}.scene-tab .num{font-size:23px}.story-scene{min-height:0}.story-scene-copy{padding:210px 23px 28px}.story-scene-copy h3{font-size:27px;line-height:1.55}.story-scene-copy>p{font-size:15px}.scene-tag,.scene-answer>span{font-size:11px}.scene-answer p{font-size:14px}.scene-next{font-size:13px;gap:12px}.photo-label{font-size:11px}
 .check-copy>p{font-size:15px}.check-copy .check-note,.section .check-note{font-size:12px!important;max-width:calc(100% - 100px);line-height:1.9}.walking-route>div{font-size:11px}.check-item{padding:17px 14px;min-height:98px;gap:10px}.check-item strong{font-size:15px;line-height:1.7}.check-item small{font-size:12px}.check-item .num{font-size:22px}.check-feedback{font-size:13px;line-height:1.8;min-height:60px}.result-content{padding:24px 22px}.result-content h3{font-size:23px}.result-content>p,.result-content li{font-size:15px}.result-content .button{font-size:13px;min-height:56px}.result-content .result-note{font-size:12px}.result-service-link{font-size:13px}.achievement strong{font-size:21px}.achievement p{font-size:13px}
 .personal-route{grid-template-columns:1fr;gap:16px;padding:23px 21px;margin-bottom:26px}.personal-route h3{font-size:23px}.personal-route p,.personal-route li{font-size:14px}.personal-route .text-link{font-size:13px}
 .care-tabs button{display:block;padding:15px 10px;min-height:102px}.care-tabs .num{font-size:27px;display:block;margin-bottom:7px}.care-tabs button>span:nth-child(2){font-size:12px;line-height:1.6;display:block}.care-tabs small,.care-tabs button>span:last-child{display:none}.care-panel{grid-template-columns:1fr;min-height:0}.care-photo{min-height:0;aspect-ratio:1.3}.care-photo>span{left:17px;bottom:14px;font-size:11px}.care-copy{padding:28px 0 30px}.care-copy h3{font-size:27px;line-height:1.6;margin:14px 0 17px}.care-copy p{font-size:15px}.care-kicker{font-size:12px}.care-words{margin:19px 0 10px}.care-words span{font-size:12px}.care-copy .text-link{font-size:14px}
 .membership-options{grid-template-columns:1fr;gap:30px;margin-top:32px}.membership-options article{padding-top:23px}.membership-options h3{font-size:26px;line-height:1.6;margin:10px 0 13px}.membership-options h3 br{display:none}.membership-options p{max-width:100%;font-size:15px}.membership-options .membership-fact{font-size:13px}.membership-label{font-size:12px}.membership-options .text-link{font-size:14px}.service-details{gap:10px;font-size:13px}.service-details p,.service-details a{font-size:13px}
 .intro-copy p{font-size:15px;line-height:1.95}.intro-copy p:first-of-type{font-size:18px}.intro-visual .photo-label{font-size:11px}.impact h2{font-size:31px;line-height:1.65}.impact p{font-size:15px;line-height:1.95}.impact .signature>span{font-size:12px}
 .day-story{grid-template-columns:1fr;gap:31px}.day-story img{aspect-ratio:1.45}.day-story figcaption{font-size:12px}.day-notes{padding-left:30px}.day-notes h3{font-size:23px}.day-notes p{font-size:15px}.day-notes small{font-size:12px}.day-dot{left:-29px}.day-notes:before{left:6px}.outcome-note summary,.outcome-note p{font-size:12px;line-height:1.9}
 .flow-steps h3{font-size:16px;line-height:1.7}.flow-steps p{font-size:14px;line-height:1.9}.faq-list summary{font-size:15px;line-height:1.8}.faq-answer{font-size:15px;padding-left:25px;padding-right:12px}.faq-intro{font-size:15px}.voice-art{height:auto;min-height:0;padding:27px 25px}.voice-lettering{font-size:31px;line-height:1.5;max-width:100%}.voice-lettering br:last-child{display:none}.voice-copy{padding:10px 25px 30px}.voice-copy h2{font-size:26px}.voice-copy p{font-size:15px}.voice-prompts a{font-size:12px;min-height:44px}.voice-copy .voice-note{font-size:12px;line-height:1.9}.contact-banner p{font-size:15px}.contact-banner .button{font-size:14px}.access dl>div{font-size:14px;grid-template-columns:70px 1fr;line-height:1.9}.footer-links a{font-size:13px}.footer-bottom{font-size:11px;line-height:1.9}.sticky-cta>span{font-size:11px}.sticky-cta .button{font-size:12px;padding:11px 14px;min-height:46px;gap:10px}.sticky-cta .button .arrow{width:20px}
 .subhero{min-height:360px;padding-bottom:45px}.subhero h1{font-size:33px;line-height:1.6}.subhero p{font-size:14px;line-height:1.9}.faq-entry{margin-bottom:33px}.faq-entry h2{font-size:26px}.faq-shortcuts{grid-template-columns:1fr;gap:10px;margin-top:21px}.faq-shortcuts button{display:grid;grid-template-columns:30px 1fr;gap:0 14px;padding:17px 19px}.faq-shortcuts span{grid-row:1/3;align-self:center}.faq-shortcuts strong{margin:0 0 5px;font-size:16px}.faq-shortcuts small{font-size:12px}.faq-cats .chip{font-size:12px;min-height:44px}.faq-search{font-size:16px}.search-label{font-size:14px}
 .contact-form>p{font-size:15px}.contact-form .field-label{font-size:15px}.contact-types .chip{font-size:13px;min-height:48px;padding:11px 10px}.message-preview{font-size:15px;padding:21px;line-height:1.85}.contact-action-row{gap:16px}.contact-action-row .button{font-size:14px;min-height:56px}.contact-action-row #line-contact{font-size:14px;min-height:48px}.send-label p{font-size:13px}.send-steps{font-size:12px;gap:7px 15px}.contact-note{font-size:12px;line-height:1.9}.contact-aside p{font-size:15px}.contact-aside .aside-caption{font-size:12px}.check-transfer{font-size:14px}.transfer-review{padding:0 18px 17px}.transfer-review li{font-size:14px}.voice-consent label{font-size:14px}.voice-consent small{font-size:12px}.voice-consent input{width:20px;height:20px}.send-steps b{font-size:18px}
}
@media(max-width:370px){.hero h1{font-size:36px}.hero-buttons .button{width:100%}.hero-base-note>img{width:75px}.hero-base-note strong{font-size:13px}.hero-base-note{gap:12px}.hero-base-note small{font-size:9px}.check-item{grid-template-columns:20px 1fr 22px;gap:9px;padding:15px 11px}.check-item strong{font-size:14px}.care-tabs button{padding:13px 8px}.care-tabs button>span:nth-child(2){font-size:11px}.care-copy h3{font-size:25px}.sticky-cta>span{font-size:10px}.sticky-cta .button{font-size:11px;padding:10px 12px}.scene-tab{font-size:11px}.site-header{gap:6px}.brand small{font-size:8px}.hero-buttons .text-link{font-size:12px}}
@media(prefers-reduced-motion:reduce){.button.control-arrived:after,.button:hover .arrow path,.result-content.result-updated,.care-photo img,.care-copy,.check-item[aria-pressed=true] .checkmark{animation:none}.hero-base-note{animation:none}.tap-ready.is-down{filter:brightness(.92);transform:none}}
