/* Character scale and the nationwide journey share the established painted identity. */
.section-guide{width:144px;height:174px;right:6%;top:50px;filter:drop-shadow(0 4px 4px #193e4910)}.section-guide.mascot-think{top:55px}.benefits-section .section-heading,.price-overview .section-heading,.flow-section .section-heading{padding-right:155px;min-height:120px;align-items:center}.special-price-bubble{padding:12px 17px}.special-price-bubble strong{font-size:16px}.nationwide-travel{display:block;height:170vh;min-height:1150px;padding-top:0;padding-bottom:0;overflow:clip;isolation:isolate}.nationwide-stage{position:sticky;top:84px;min-height:650px;height:calc(100svh - 84px);display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.nationwide-stage>div:first-child{max-width:620px;padding:30px 0}.nationwide-travel .vertical-word{top:95px}.nationwide-travel .national-map{animation:none;aspect-ratio:700/470;align-self:center;position:relative;overflow:visible;margin-top:-55px;min-width:0}.nationwide-travel .national-map svg{height:auto;width:100%;max-height:none;display:block;overflow:visible}.nationwide-travel .national-map .nationwide-flyer{width:140px;height:168px;position:absolute;top:94%;left:27%;right:auto;animation:none;transform:translate(-50%,-50%);transform-origin:center;z-index:3;will-change:left,top,transform;pointer-events:none;filter:drop-shadow(0 5px 4px #193e491e)}.national-map svg .flight-route-base{fill:none;stroke:var(--green);stroke-width:2;stroke-dasharray:4 7;opacity:.22}.national-map svg .flight-route-progress{fill:none;stroke:var(--gold);stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 1px 1px #193e4910)}.national-map .map-pins circle{fill:#96b2a3;transition:fill .2s,r .2s;stroke:var(--paper);stroke-width:2}.national-map .map-pins circle.is-visited{fill:var(--gold);r:7}.national-map .map-pins circle.is-current{r:10;fill:var(--gold);filter:drop-shadow(0 0 8px #e8a73799)}.flight-meta{position:absolute;right:6%;bottom:35px;width:40%;display:flex;align-items:center;gap:20px;border-top:1px solid #193e4925;padding-top:18px;z-index:2}.flight-meta>span{font:700 11px var(--font);letter-spacing:.1em}.flight-meta strong{font-size:22px;white-space:nowrap}.flight-meta small{font-size:11px;margin-left:auto;white-space:nowrap}.nationwide-stage+.flight-meta{position:sticky}.nationwide-stage .flight-meta{position:absolute;right:0;bottom:40px;width:46%;min-height:45px}.nationwide-travel .national-map:after{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse,#e8a7370a,transparent 65%);pointer-events:none;z-index:-1}
@media(min-width:751px) and (max-width:1100px){.section-guide{width:115px;height:138px;top:70px}.benefits-section .section-heading,.price-overview .section-heading,.flow-section .section-heading{padding-right:125px;min-height:140px}.nationwide-stage{gap:4%;min-height:620px}.nationwide-travel h2{font-size:38px}.nationwide-stage p{font-size:16px}.nationwide-stage li{font-size:14px}.nationwide-travel .national-map .nationwide-flyer{width:115px;height:138px}.flight-meta>span{display:none}}
@media(max-width:750px){.section-guide{width:86px;height:103px;right:5%;top:55px}.section-guide.mascot-think{top:55px}.benefits-section .section-heading,.price-overview .section-heading,.flow-section .section-heading{padding-right:80px;min-height:90px}.benefits-section .section-heading>span{font-size:clamp(37px,9vw,57px)}.benefits-section .section-heading h2{font-size:20px}.special-price-bubble{padding:10px 12px}.special-price-bubble strong{font-size:13px}.nationwide-travel{height:auto;min-height:0;padding-top:70px;padding-bottom:80px;overflow:clip}.nationwide-stage{position:relative;top:auto;height:auto;min-height:0;display:block}.nationwide-stage>div:first-child{padding:0}.nationwide-travel .national-map{margin:35px 0 65px;aspect-ratio:700/470;width:100%}.nationwide-travel .national-map .nationwide-flyer{width:85px;height:102px}.nationwide-stage .flight-meta{bottom:0;right:0;width:100%;gap:18px;padding-top:14px;min-height:40px}.flight-meta>span{font-size:9px}.flight-meta strong{font-size:20px}.flight-meta small{font-size:10px}.nationwide-stage>div:first-child>p{font-size:16px}.nationwide-travel .vertical-word{top:35px}.nationwide-travel:after{display:none}}
@media(max-width:359px){.section-guide{width:76px;height:91px;top:55px}.benefits-section .section-heading,.price-overview .section-heading,.flow-section .section-heading{padding-right:65px}.special-price-bubble{padding:9px 10px}.special-price-bubble strong{font-size:12px}.flight-meta>span{font-size:8px}.flight-meta small{font-size:9px}.nationwide-travel .national-map .nationwide-flyer{width:75px;height:90px}}
@media(prefers-reduced-motion:reduce){.nationwide-travel{height:auto;min-height:0;padding-top:90px;padding-bottom:90px}.nationwide-stage{position:relative;top:auto;min-height:600px}.nationwide-travel .national-map .nationwide-flyer{will-change:auto}.nationwide-stage .flight-meta small{visibility:hidden}}
@media(min-width:1101px){.nationwide-stage .flight-meta{padding-right:110px}}@media(min-width:751px) and (max-width:1100px){.flight-meta small{display:none}}@media(max-width:750px){.nationwide-stage{display:flow-root}.nationwide-travel .national-map{margin-bottom:85px}.nationwide-stage .flight-meta{padding-right:0;bottom:0}.flight-meta>span{display:none}.flight-meta small{display:block}}
/* Section rhythm: avoid adding two large blank gutters at each transition. */
.selected-works,.service-overview,.benefits-section,.price-overview,.flow-section,.creator-section,.cost-scope,.recruit-selection,.works-catalogue,.contact-section{padding-top:88px;padding-bottom:88px}.service-detail{padding-top:86px;padding-bottom:86px}.selected-works{padding-bottom:60px}.selected-works+.service-overview{padding-top:64px}.section-link{margin-top:24px}.service-overview+.benefits-section{padding-top:76px}.brand-page-title+.service-overview,.brand-page-title+.price-overview{padding-top:72px}
@media(max-width:750px){.selected-works,.service-overview,.benefits-section,.price-overview,.flow-section,.creator-section,.cost-scope,.recruit-selection,.works-catalogue,.contact-section{padding-top:56px;padding-bottom:56px}.service-detail{padding-top:58px;padding-bottom:58px}.selected-works{padding-bottom:44px}.selected-works+.service-overview{padding-top:48px}.section-link{margin-top:20px}.service-overview+.benefits-section{padding-top:52px}.brand-page-title+.service-overview,.brand-page-title+.price-overview{padding-top:52px}}
/* Keep document geometry fixed; animate the header surface and children only. */
.site-header,.site-header.scrolled,.menu-open .site-header,.menu-open .site-header.scrolled{height:110px;padding:0;display:block;position:sticky;top:0;background:transparent;backdrop-filter:none;border:0;box-shadow:none;transition:none;pointer-events:none;--header-logo-dx:0px;--header-logo-dy:0px;--header-logo-scale:1;--header-nav-opacity:0;--header-nav-y:8px;--header-nav-events:none;--header-menu-opacity:1;--header-menu-y:0px;--header-menu-events:auto;--header-surface-scale:1}
.site-header::before{content:'';position:absolute;inset:0;z-index:-1;background:#f4f1e8f5;backdrop-filter:blur(15px);border-bottom:1px solid #193e4912;box-shadow:0 3px 25px #193e4909;transform:scaleY(var(--header-surface-scale));transform-origin:top center;pointer-events:none}
.site-header.scrolled{--header-logo-dx:var(--compact-logo-dx,0px);--header-logo-dy:-13px;--header-logo-scale:.75862069;--header-nav-opacity:1;--header-nav-y:0px;--header-nav-events:auto;--header-menu-opacity:0;--header-menu-y:-8px;--header-menu-events:none;--header-surface-scale:.76363636}
.site-header>.brand-logo,.site-header.scrolled>.brand-logo{position:absolute;left:4%;top:50%;width:232px;margin:0;transform:translate3d(var(--header-logo-dx),calc(-50% + var(--header-logo-dy)),0) scale(var(--header-logo-scale));transform-origin:left center;pointer-events:auto;will-change:transform}
.site-header>.header-links,.site-header.scrolled>.header-links,.menu-open .site-header.scrolled>.header-links{display:flex;position:absolute;left:var(--compact-nav-left,50%);top:42px;gap:32px;width:max-content;margin:0;padding:0;justify-content:flex-start;flex-wrap:nowrap;opacity:var(--header-nav-opacity);transform:translate3d(0,calc(-50% + var(--header-nav-y)),0);pointer-events:var(--header-nav-events);will-change:transform,opacity}
.site-header>.header-links>a{font-size:14px}
.site-header>.menu-toggle,.site-header.scrolled>.menu-toggle,.menu-open .site-header.scrolled>.menu-toggle{display:block;position:absolute;right:4%;top:50%;margin:0;opacity:var(--header-menu-opacity);transform:translate3d(0,calc(-50% + var(--header-menu-y)),0);pointer-events:var(--header-menu-events);will-change:transform,opacity}
.site-header.header-motion-ready::before{transition:transform .46s cubic-bezier(.22,1,.36,1),background .3s}
.site-header.header-motion-ready>.brand-logo{transition:transform .48s cubic-bezier(.22,1,.36,1)}
.site-header.header-motion-ready>.header-links,.site-header.header-motion-ready>.menu-toggle{transition:opacity .3s ease,transform .46s cubic-bezier(.22,1,.36,1)}
.menu-open .site-header,.menu-open .site-header.scrolled{--header-logo-dx:0px;--header-logo-dy:0px;--header-logo-scale:1;--header-nav-opacity:0;--header-nav-y:8px;--header-nav-events:none;--header-menu-opacity:1;--header-menu-y:0px;--header-menu-events:auto;--header-surface-scale:1}
@media(min-width:751px) and (max-width:1100px){.site-header>.header-links,.site-header.scrolled>.header-links{gap:20px}.site-header>.header-links>a{font-size:12px}}
@media(max-width:750px){.site-header,.site-header.scrolled,.menu-open .site-header,.menu-open .site-header.scrolled{height:80px;display:block;padding:0}.site-header.scrolled{--header-logo-dy:-16px;--header-logo-scale:.63888889;--header-surface-scale:1.2}.site-header>.brand-logo,.site-header.scrolled>.brand-logo{left:5%;width:180px;top:50%}.site-header>.menu-toggle,.site-header.scrolled>.menu-toggle{right:5%;top:50%}.site-header>.header-links,.site-header.scrolled>.header-links,.menu-open .site-header.scrolled>.header-links{left:4%;top:65px;width:92%;justify-content:center;gap:14px;padding:0;flex-wrap:nowrap}.site-header>.header-links>a,.site-header.scrolled>.header-links>a{font-size:12px;min-height:33px}.site-header>.header-links>a:nth-child(4),.site-header.scrolled>.header-links>a:nth-child(4){font-size:11px}.menu-open .site-header.scrolled{--header-logo-dy:0px;--header-logo-scale:1;--header-surface-scale:1}}
@media(max-width:359px){.site-header>.header-links,.site-header.scrolled>.header-links{gap:9px}.site-header>.header-links>a,.site-header.scrolled>.header-links>a{font-size:11.5px}.site-header>.header-links>a:nth-child(4),.site-header.scrolled>.header-links>a:nth-child(4){font-size:10.5px}}
@media(prefers-reduced-motion:reduce){.site-header.header-motion-ready::before,.site-header.header-motion-ready>.brand-logo,.site-header.header-motion-ready>.header-links,.site-header.header-motion-ready>.menu-toggle{transition:none;will-change:auto}}
/* The character faces northeast, so it enters from the lower-left after loading. */
.hero-guide{opacity:0;animation:none;--hero-entry-x:-85vw;--hero-entry-y:46vh;pointer-events:none}.ready .hero-guide{opacity:1;animation:hero-arrival 1.7s .25s cubic-bezier(.32,.64,.25,1) both,bob 5s 1.95s infinite}
@keyframes hero-arrival{0%{translate:var(--hero-entry-x) var(--hero-entry-y);rotate:-8deg;opacity:0}12%{opacity:1}70%{translate:-5vw 2vh;rotate:2deg}100%{translate:0 0;rotate:0deg;opacity:1}}
@media(max-width:750px){.hero-guide{--hero-entry-x:-95vw;--hero-entry-y:14vh}}
@media(prefers-reduced-motion:reduce){.hero-guide,.ready .hero-guide{opacity:1;translate:0 0;rotate:0deg;animation:none!important}}
