/* Each chapter owns its viewport, including heading, controls and product view. */
html{scroll-padding-top:0;scroll-snap-type:y proximity}
main>section{scroll-snap-align:start;scroll-margin-top:0}
.container{width:min(1320px,calc(100% - 112px))}
.header{height:80px}.nav{border:0}.brand img{width:178px}
.section{height:100svh;min-height:560px;padding:32px 0}
.section>.container{height:100%;min-height:0;display:flex;flex-direction:column;justify-content:center}
.section-heading{flex:none;display:flex;align-items:center;gap:40px;margin:0 0 24px!important}
.section-heading>div{max-width:760px}.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:10px}
.section-heading h2,.center-heading h2{font-size:clamp(28px,3vw,42px);line-height:1.15;letter-spacing:-1.8px;margin:0}
.section-heading>p{font-size:13px;line-height:1.65;max-width:310px;margin:0}
.hero{height:100svh;min-height:620px;background:radial-gradient(ellipse at 80% 50%,#e5f5d8,transparent 52%),#f5f8f0}
.hero-grid{height:100%;min-height:0;padding-top:100px;padding-bottom:34px;grid-template-columns:1.08fr 1fr;gap:36px}
.hero h1{font-size:clamp(40px,min(4.9vw,7.4svh),72px);letter-spacing:-.055em;line-height:1.09;margin:0 0 22px}
.hero-copy>p{font-size:15px;line-height:1.7;margin-bottom:24px;max-width:470px}
.hero-actions{gap:18px;flex-direction:row}.hero-actions .button{min-height:48px;padding:15px 23px;font-size:12px}
.hero-proof{margin-top:22px}.hero-art{height:100%;min-height:0;position:relative}
.hero-visual{position:absolute;width:540px;max-width:none;height:540px;margin:0;left:50%;top:50%;transform:translate(-50%,-50%) scale(var(--scene-scale,.85));transform-origin:center;animation:none!important}
.hero-caption{bottom:-10px}.hero-phone{top:20px}.hero-visual .protocol-tag{bottom:20px}
.platform-section{background:linear-gradient(135deg,#fff,#f2f7f3)}
.platform-section>.container{justify-content:flex-start}
.platform-showcase{display:flex;flex-direction:column;flex:1;min-height:0;scroll-margin-top:0}
.module-tabs{flex:none;margin:0 0 18px;padding:5px;flex-wrap:nowrap;background:#e8f0e9;border:0;border-radius:14px}
.module-tabs button{padding:11px 10px;font-size:11px;min-height:42px}
.module-panel{height:auto!important;max-height:none!important;min-height:0!important;flex:1;display:grid;grid-template-columns:240px minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:26px;align-items:stretch}
.module-description{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:0;gap:20px;min-height:0}
.module-description h3{font-size:clamp(21px,2vw,28px);line-height:1.22;margin:10px 0 0;letter-spacing:-.9px}
.module-description p{font-size:13px;line-height:1.65;margin:0 0 16px}
.module-tags{gap:6px}.module-tags span{font-size:9px;background:white;padding:5px 8px}
.screen-stage{min-height:0;grid-row:auto;grid-template-rows:38px minmax(0,1fr) 36px;border-radius:16px;box-shadow:0 14px 35px -24px #075e5460}
.screen-image-button,.screen-stage.profile-mode .screen-image-button{height:100%;min-height:0;padding:12px;background:#e8eeea}
.screen-image-button img,.screen-stage.profile-mode .screen-image-button img{width:100%;height:100%;object-fit:contain}
.screen-bottom{padding:5px 12px;flex-direction:row;justify-content:space-between}.screen-bottom>span{font-size:8px;max-width:none}
.screen-toolbar>button{font-size:10px;padding:6px 10px;border:1px solid #d6e5dc}.screen-toolbar>span{font-size:10px}
.services{background:#f4f0e6}.service-layout{flex:1;min-height:0;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:stretch}
.service-list{align-content:center;gap:4px;min-height:0}
.service-tab,.service-tab.active{padding:12px 15px!important;border-radius:12px;border-bottom:0;gap:13px;min-height:54px}
.service-tab b{font-size:13px}.service-tab small{font-size:10px;margin-top:4px}.service-tab>span:first-child{width:32px;height:32px}.service-tab svg{width:20px}
.demo-stage{height:100%!important;max-height:none!important;min-height:0!important;padding:12px 18px;border-radius:20px;background:#dce9d2}
.demo-stage-label{margin-bottom:8px;font-size:8px;letter-spacing:1px}.demo-chat{border-radius:14px}.demo-chat .chat-header{padding:10px 14px}
.demo-messages{flex:1;height:auto;min-height:0;max-height:none;padding:12px;gap:8px}
.demo-input{padding:9px 12px}.chat-actions{padding:8px;min-height:50px;gap:6px}.chat-actions button{min-height:34px;padding:8px;font-size:10px}
.service-note{flex:none;margin:12px 0 0;font-size:10px;line-height:1.4}
.center-heading{margin-bottom:40px}.steps{gap:30px}.steps article{padding-top:20px}.steps h3{font-size:18px}.steps p{font-size:13px;line-height:1.65}
.management{background:#eaf3f6}.management-grid{flex:1;min-height:0;grid-template-columns:1.45fr 1fr;gap:36px;align-items:center}
.management-preview{max-height:100%;height:100%;min-height:0;display:flex;flex-direction:column;padding:12px;border-radius:18px;background:#dae9ec}
.window-bar{flex:none;padding:8px 10px;background:transparent;border:0}.preview-title{padding:10px 10px 14px;flex:none}.preview-title h3{font-size:18px;margin-top:5px}
.management-preview>img{flex:1;min-height:0;width:100%;height:100%;max-height:none;object-fit:contain;box-shadow:none;border-radius:8px;background:transparent}
.map-caption{padding:12px 4px 3px;flex:none;font-size:9px}
.management-copy{display:block}.management-copy article{gap:13px;margin-bottom:24px}.management-copy h3{font-size:17px}.management-copy p{font-size:13px;line-height:1.6}.management-copy>.text-link{font-size:12px;margin-left:37px}
.section>.evaluation-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:center}
.evaluation-copy h2{font-size:clamp(28px,3vw,40px);margin-bottom:16px}.evaluation-copy>p{font-size:13px;line-height:1.65;margin-bottom:16px}
.evaluation-examples{gap:12px;margin:18px 0}.evaluation-examples>div>span:first-child{width:34px;height:34px}.evaluation-examples b{font-size:12px}.evaluation-examples small{font-size:10px;margin-top:3px}
.law-note{padding:14px 16px}.law-note p{font-size:10px;line-height:1.6;margin:8px 0}.law-note>b{font-size:11px}
.evaluation-visual{height:100%;max-height:510px;width:100%;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:16px;border-radius:18px;margin:0;transform:none}
.evaluation-stamp{flex:none;margin:0;font-size:8px}.evaluation-screen{flex:1;min-height:0;height:100%;max-height:none;background:transparent;box-shadow:none}
.evaluation-screen img{height:100%;max-height:100%;width:100%;object-fit:contain}.evaluation-caption{margin:0;font-size:9px;flex:none}
.quotes{gap:50px}.quotes blockquote{font-size:clamp(19px,2vw,26px);line-height:1.6}.quote-decoration{font-size:100px}
.section>.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}
.faq-list details,.faq-list details:first-child{padding:0}.faq summary{padding:15px 0;font-size:13px}.faq-list details p{font-size:12px;line-height:1.65;margin:0 20px 15px 0}
.cta-section{padding:65px 0}.cta-section h2{font-size:46px}.floating-contact{width:44px;height:44px;right:14px;bottom:14px}
@media(min-width:801px) and (max-height:720px){
 .section{padding:24px 0;min-height:540px}.section-heading{margin-bottom:18px!important}.section-heading h2,.center-heading h2{font-size:32px}.section-heading>p{font-size:12px}.eyebrow{font-size:8px;margin-bottom:8px}
 .hero{min-height:540px}.hero-grid{padding-top:90px;padding-bottom:24px}.hero h1{font-size:clamp(39px,6.9svh,52px);margin-bottom:18px}.hero-copy>p{font-size:14px;margin-bottom:18px}.hero-proof{margin-top:16px}
 .module-tabs{margin-bottom:12px}.module-tabs button{padding:9px;min-height:36px}.module-description{gap:14px}.module-description h3{font-size:23px}.module-description p{font-size:12px}.module-tags span{font-size:9px}
 .evaluation-copy h2{font-size:30px}.evaluation-examples{margin:12px 0;gap:9px}.evaluation-copy>p{font-size:12px;margin-bottom:10px}.evaluation-visual{max-height:100%}.law-note{padding:12px 14px}
 .management-copy article{margin-bottom:18px}.management-copy p{font-size:12px}.steps p{font-size:12px}.center-heading{margin-bottom:30px}
}
@media(max-width:1000px) and (min-width:801px){.container{width:calc(100% - 64px)}.module-panel{grid-template-columns:210px minmax(0,1fr);gap:18px}.section-heading>p{max-width:250px}.module-tabs button{font-size:10px}.module-tabs button svg{width:15px}.hero-actions .text-link{font-size:11px}.service-layout{gap:28px}}
@media(max-width:800px){
 html{scroll-snap-type:y proximity}.container{width:calc(100% - 36px)}.header{height:68px}.brand{width:145px}.brand img{width:145px}.nav nav{top:68px}.nav-cta{min-height:36px!important}
 .section{height:100svh;min-height:640px;padding:24px 0}.section-heading{display:block;margin-bottom:16px!important}.section-heading>div{max-width:none}.section-heading h2,.center-heading h2{font-size:28px;letter-spacing:-1.2px}.section-heading>p{font-size:12px;line-height:1.5;max-width:none;margin-top:10px}.eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:8px}
 .hero{height:100svh;min-height:720px}.hero-grid{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:18px;padding-top:88px;padding-bottom:20px}.hero-copy{max-width:none}.hero h1{font-size:clamp(33px,7.8vw,49px);line-height:1.08;letter-spacing:-1.8px;margin-bottom:14px}.hero h1 br{display:none}.hero-copy>p{font-size:13px;line-height:1.6;margin-bottom:16px;max-width:580px}.hero-actions{flex-direction:row;align-items:center;gap:14px;flex-wrap:wrap}.hero-actions .button{width:auto;min-height:42px;padding:12px 18px;font-size:11px}.hero-actions .text-link{font-size:11px}.hero-proof{display:none}.hero-art{min-height:0;width:100%}.hero-visual{width:540px;height:540px;max-width:none;left:50%;top:50%;margin:0}
 .module-tabs{flex-wrap:wrap;overflow:visible;gap:3px;margin-bottom:12px;padding:5px}.module-tabs button{flex:1 1 23%;min-height:31px;padding:7px 5px;font-size:9px;gap:4px;justify-content:center}.module-tabs svg{width:14px;height:14px}
 .module-panel{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:12px}.module-description{grid-row:1;display:block;gap:0;padding:0}.module-description h3{font-size:20px;line-height:1.22;max-width:none;margin:0 0 7px}.module-description p{font-size:12px;line-height:1.5;margin:0}.module-tags,.module-number{display:none}.screen-stage{grid-row:2;grid-template-rows:34px minmax(0,1fr) 32px}.screen-toolbar>span{font-size:9px;max-width:65%}.screen-toolbar>button{font-size:9px;padding:5px 7px}.screen-bottom>span{display:none}.screen-bottom{justify-content:flex-end}.screen-image-button,.screen-stage.profile-mode .screen-image-button{padding:6px}
 .service-layout{display:flex;flex-direction:column;gap:12px}.service-list{display:flex;overflow-x:auto;flex:none;scrollbar-width:thin;gap:6px;padding-bottom:3px}.service-tab,.service-tab.active{width:auto;flex:0 0 154px;padding:10px!important;min-height:46px;gap:8px}.service-tab b{font-size:10px;line-height:1.4}.service-tab small,.tab-arrow{display:none}.service-tab>span:first-child{width:24px;height:24px}.demo-stage{flex:1;width:100%;padding:10px}.demo-stage-label{display:none}.service-note{font-size:9px;margin-top:8px}.demo-input{padding:8px 12px}.demo-messages .bubble{font-size:11px}
 .steps{grid-template-columns:1fr 1fr;gap:24px 20px}.steps article{padding-top:16px}.step-icon{margin:10px 0 14px;width:38px;height:38px}.steps h3{font-size:16px;margin-bottom:8px}.steps p{font-size:12px;line-height:1.6}.center-heading{margin-bottom:24px}
 .management-grid{display:flex;flex-direction:column;gap:18px}.management-preview{flex:1;width:100%;min-height:0;padding:8px}.preview-title{padding:6px 8px}.preview-title h3{font-size:16px}.preview-title small{display:none}.preview-title .outline-icon{width:28px;height:28px}.map-caption{font-size:8px;padding:8px 0 2px}.window-bar{display:none}
 .management-copy{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;flex:none}.management-copy article{display:block;margin:0}.management-copy article>span{display:block;margin-bottom:8px}.management-copy article svg{width:18px;height:18px}.management-copy h3{font-size:12px;line-height:1.35}.management-copy p{font-size:10px;line-height:1.5}.management-copy>.text-link{grid-column:1/-1;font-size:11px;margin:0}
 .section>.evaluation-grid{display:flex;flex-direction:column;gap:18px;align-items:stretch;justify-content:flex-start}.evaluation-copy{flex:none}.evaluation-copy h2{font-size:28px;margin-bottom:12px}.evaluation-copy>p{font-size:12px;line-height:1.55;margin-bottom:12px}.evaluation-examples{display:none}.law-note{padding:10px 12px}.law-note p{font-size:9px;margin:5px 0}.law-note a{font-size:9px}.evaluation-visual{flex:1;min-height:0;max-height:none;padding:10px;border-radius:14px}.evaluation-stamp{font-size:7px}.evaluation-caption{font-size:8px}
 .quotes{grid-template-columns:1fr;gap:24px}.quotes figure{padding-top:18px}.quotes blockquote{font-size:18px;line-height:1.5;margin-bottom:16px}.quotes figcaption img{width:36px;height:36px}.quotes figcaption b{font-size:12px}
 .section>.faq-grid{display:flex;gap:18px;align-items:stretch;justify-content:center}.faq-grid h2{font-size:28px;margin-bottom:12px}.faq-grid>div>p{font-size:12px;margin-bottom:10px}.faq-grid .text-link{margin:0;font-size:12px}.faq summary{padding:12px 0;font-size:12px}.faq-list details p{font-size:11px;margin-bottom:12px}.cta-section h2{font-size:34px}.cta-section{padding:45px 0}.cta-inner .button{margin-top:22px}
}
@media(max-width:800px) and (max-height:740px){.section{min-height:600px;padding:18px 0}.section-heading>p{display:none}.section-heading h2{font-size:25px}.hero{min-height:640px}.hero h1{font-size:34px}.hero-grid{padding-top:80px}.hero-copy>p{font-size:12px}.module-description p{font-size:11px}.evaluation-copy h2{font-size:25px}.evaluation-copy>p{font-size:11px}.law-note p{line-height:1.4}.quotes blockquote{font-size:16px}}
@media(max-height:500px){html{scroll-snap-type:none}.section{height:auto;min-height:600px}.hero{height:auto;min-height:650px}.hero-grid{height:650px}.platform-showcase{min-height:430px}.service-layout{min-height:420px}.management-grid{min-height:390px}.evaluation-visual{min-height:360px}}
@media(prefers-reduced-motion:reduce){html{scroll-snap-type:none}.hero-visual{animation:none!important}}
@media(max-width:800px){
 .hero-visual .visual-halo{width:460px;height:460px;left:20px;top:50px}
 .hero-visual .hero-phone{width:304px;left:10px;top:20px;border-width:7px}
 .hero-visual .citizen-portrait{width:218px;height:310px;right:-12px;bottom:14px;border-width:5px}
 .hero-visual .visual-word{font-size:128px;right:0;top:20px}
 .hero-visual .visual-tag{right:-8px;top:170px;font-size:10px;padding:17px}
 .hero-visual .protocol-tag{padding:17px;left:3px;bottom:20px}
 .hero-visual .hero-messages .bubble{font-size:11px}
 .evaluation-examples{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
 .evaluation-examples>div{display:block}.evaluation-examples>div>span:first-child{display:none}
 .evaluation-examples b{font-size:10px}.evaluation-examples small{font-size:9px;line-height:1.35}
}
