:root{--u:calc(clamp(17px,1.2vw + 12.5px,21px)/16)}
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 500; font-stretch: 100%; font-display: swap; src: url(fonts/bricolage-grotesque-latin-ext-4.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 500; font-stretch: 100%; font-display: swap; src: url(fonts/bricolage-grotesque-latin-5.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 600; font-stretch: 100%; font-display: swap; src: url(fonts/bricolage-grotesque-latin-ext-4.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 600; font-stretch: 100%; font-display: swap; src: url(fonts/bricolage-grotesque-latin-5.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 700; font-stretch: 100%; font-display: swap; src: url(fonts/bricolage-grotesque-latin-ext-4.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 700; font-stretch: 100%; font-display: swap; src: url(fonts/bricolage-grotesque-latin-5.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 800; font-stretch: 100%; font-display: swap; src: url(fonts/bricolage-grotesque-latin-ext-4.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 800; font-stretch: 100%; font-display: swap; src: url(fonts/bricolage-grotesque-latin-5.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Caveat'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/caveat-latin-ext-6.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Caveat'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/caveat-latin-7.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Caveat'; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/caveat-latin-ext-6.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Caveat'; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/caveat-latin-7.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:root{--paper:#fffaf1;--white:#fffefa;--ink:#193d32;--muted:#546b61;--green:#2b5438;--lime:#ffcf58;--line:#d7ded1;--wash:#e8f3f8;--neutral:#f0eee6;--deep:#2b5438;--heading:'Bricolage Grotesque',sans-serif;--sun:#ffcd54;--coral:#f97b63;--sky:#d5edf8;--mint:#dceacf}
body{background:var(--paper)}h1,h2,h3{font-weight:600}h2{letter-spacing:-.045em}.header{height:88px;padding-inline:4%;border-bottom:0;background:var(--paper)}.wordmark{font-size:14px}.wordmark b{font-family:var(--heading);font-size:26px;font-weight:700}.brand-h{font-family:var(--heading);border:0;padding:9px 13px 10px 11px;letter-spacing:-3px;font-size:33px;border-radius:45% 45% 9px 9px;background:var(--sun);color:#214d34;transform:rotate(-5deg)}.header-contact{background:var(--green);color:var(--paper);border:0;padding:12px 21px;border-radius:30px}.header-actions{gap:15px}.wrap{width:min(1320px,calc(100% - 100px))}.button{border-radius:30px;font-size:14px;min-height:55px;padding:13px 24px}.button.primary{box-shadow:0 5px 0 #17341f14}.button span{font-size:20px}.section-pad{padding-block:85px}.section-index{border:0;font-size:13px;margin-bottom:32px;padding:0}.section-index>span:first-child{display:flex;align-items:center;gap:10px}.section-index>span:first-child:before{content:'';width:20px;height:8px;display:inline-block;background:var(--coral);border-radius:2px;transform:rotate(-8deg)}
.hero-viva{max-width:1600px;margin:auto;display:grid;grid-template-columns:43% 57%;min-height:610px;position:relative;padding:30px 0 25px 4%;overflow:hidden}.hero-copy{padding:25px 20px 30px 0;position:relative;z-index:2}.hero-kicker{font-size:13px;color:var(--green);display:flex;gap:10px;align-items:center;margin-bottom:24px}.hero-kicker>span{width:11px;height:11px;border-radius:50%;background:var(--coral)}.hero-viva h1{font-size:clamp(50px,4.7vw,73px);line-height:1.02;letter-spacing:-.055em;font-weight:700;color:var(--ink);position:relative;padding-bottom:26px}.hero-viva h1:after{content:'';position:absolute;bottom:10px;left:2px;width:125px;height:7px;background:var(--coral);border-radius:50%;transform:rotate(-3deg)}.hero-description{font-size:18px;line-height:1.55;max-width:380px;margin:12px 0 25px}.hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.hero-talk{font-size:13px;border-bottom:1px solid var(--green);padding:6px 0}.hero-install{font-size:12px;line-height:1.65;margin-top:26px;padding-left:15px;border-left:3px solid var(--sun)}.school-world{position:relative;align-self:stretch;min-width:0;margin-top:-10px}.school-art{width:100%;height:520px;object-fit:cover;object-position:55% center;border-radius:46% 4% 4% 6% / 36% 4% 4% 8%;mix-blend-mode:multiply}.hand-note{font-family:'Caveat',cursive;font-size:25px;line-height:1.1;color:var(--green);position:absolute;top:12px;left:4px;transform:rotate(-9deg);width:125px;z-index:2}.hand-note svg{display:block;width:75px;height:42px;margin-left:50px;fill:none;stroke:var(--coral);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.hero-system{position:absolute;bottom:0;left:13%;width:78%;background:#fff;transform:rotate(-3deg);box-shadow:0 16px 35px #304e3525,0 0 0 7px #fffefa;border-radius:8px;z-index:3}.mini-browser{height:34px;display:flex;align-items:center;gap:10px;padding:0 12px;background:#f2f4ec;border-radius:8px 8px 0 0;font-size:10px;color:#375543}.mini-browser i{width:6px;height:6px;border-radius:50%;background:#f97b63;box-shadow:10px 0 #ffcd54,20px 0 #7ba576;margin-right:23px}.mini-browser button{font-size:10px;margin-left:auto;padding:5px}.hero-screen{display:block;width:100%;padding:0;max-height:205px;overflow:hidden;border-radius:0 0 6px 6px}.hero-screen img{width:100%;height:auto}.capture-label{position:absolute;right:20px;bottom:-16px;font-size:10px;color:#244735;background:var(--sun);padding:6px 13px;transform:rotate(5deg);box-shadow:2px 3px 0 #33513510}.art-credit{font-size:9px;color:var(--muted);position:absolute;top:525px;right:15px}.hero-demo-note{text-align:center;font-size:11px;padding:15px 20px 22px}
.day-ribbon{width:calc(100% - 100px);max-width:1320px;margin:35px auto 0;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:27px 35px;background:var(--sky);border-radius:15px 50px 15px 15px}.day-ribbon>span:first-child{font-size:16px;line-height:1.3;flex-shrink:0}.day-ribbon b{font-family:var(--heading);font-size:22px;font-weight:600}.day-ribbon button{display:flex;align-items:center;gap:13px;font-size:14px;padding:5px 0;white-space:nowrap}.ribbon-line{width:45px;height:1px;background:#6f9ca260}.ribbon-mark{display:block;width:33px;height:37px;flex:none;position:relative}.mark-register{background:var(--coral);border-radius:3px 7px 7px 3px;transform:rotate(-8deg);border-left:5px solid #d75540}.mark-register:after{content:'';position:absolute;left:7px;right:5px;top:12px;height:2px;background:#fff8;box-shadow:0 6px #fff8}.mark-class{width:40px;height:29px;background:var(--green);border:3px solid #d0ac63;border-radius:3px;transform:rotate(5deg)}.mark-class:after{content:'';position:absolute;width:20px;height:2px;background:#fff9;left:6px;top:9px}.mark-direction{background:var(--sun);border-radius:50%;width:35px;height:35px;border:2px solid #c69b2d;transform:rotate(-15deg)}.mark-direction:after{content:'✓';position:absolute;inset:0;text-align:center;line-height:31px;color:#315239;font-size:23px}.mark-family{background:#fffefa;border:2px solid #60949e;height:26px;width:36px;border-radius:8px;transform:rotate(7deg)}.mark-family:after{content:'';position:absolute;left:5px;bottom:-7px;width:8px;height:8px;border-left:2px solid #60949e;background:#fffefa;transform:skewY(-35deg)}
.day-section{padding:50px 0 0;background:#edf5f8;border-radius:70% 8% 0 0 / 30px 15px 0 0}.day-intro{border:0;align-items:flex-end;padding:0 0 35px}.day-intro h2{font-size:42px;letter-spacing:-.045em;line-height:1.1}.day-intro h2 span{font-weight:600}.day-intro>p{font-size:15px;max-width:290px}.school-caption{font-family:'Caveat',cursive;font-size:24px;transform:rotate(-5deg)}.school-caption small{font-family:var(--body);font-size:10px}.role-tabs{gap:12px;position:relative;z-index:2;padding:0 7px}.role-tabs button{border:0!important;border-radius:13px 13px 0 0;padding:20px 22px;gap:13px;min-height:91px;background:#dae8d1;transition:transform .18s ease}.role-tabs button:first-child{background:#ffe4a0}.role-tabs button:nth-child(2){background:#cce6f3}.role-tabs button:nth-child(3){background:#f9c4b7}.role-tabs button:nth-child(4){background:#dbe8bb}.role-tabs button:hover{transform:translateY(-5px)}.role-tabs button[aria-selected=true]{background:var(--white);color:var(--ink);transform:translateY(-8px);box-shadow:0 -5px 0 var(--coral)}.role-tabs button:after{display:none}.tab-step{display:none}.role-tabs b{font-size:26px}.role-tabs small{font-size:11px}.role-stage{background:var(--white);color:var(--ink);padding-top:40px;border-top:1px solid #fff}.stage-inner{width:min(1400px,calc(100% - 90px));margin-inline:auto;grid-template-columns:270px minmax(0,1fr);gap:40px}.stage-copy{padding:10px 0 32px}.stage-counter{margin-bottom:25px;color:var(--muted)}.stage-counter span:first-child{color:var(--green);font-size:40px;background:var(--sun);border-radius:40% 50% 38% 44%;width:68px;height:65px;display:grid;place-items:center;transform:rotate(-8deg);letter-spacing:-2px}.stage-role{color:var(--green);font-size:13px}.stage-copy h3{font-size:33px;line-height:1.13;font-weight:600}.stage-copy p:not(.stage-role){color:var(--muted);font-size:14px}.stage-copy ul{color:var(--ink)}.stage-copy li{border-color:#d7ded1}.stage-copy li:before{color:#de7258}.stage-controls button{border-color:#a9c0a9;color:var(--green)}.stage-controls button:hover{background:var(--mint)}.stage-controls span{color:var(--muted)}.role-stage :focus-visible{outline-color:var(--green)}.screen-figure{border:8px solid #e9eedf;border-bottom:0;border-radius:13px 13px 0 0;box-shadow:0 10px 30px #25492c13;background:#fff}.screen-toolbar{background:#e9eedf;height:36px;padding:0 12px}.screen-image-button{max-height:625px}.screen-figure figcaption{background:#f5f7ef}.demo-under{border:0;background:#edf5f8;padding-block:24px;font-size:11px}
.workday-grid{gap:45px;grid-template-columns:1.1fr .75fr .65fr}.workday-title h2{font-size:44px}.phone-composition{background:#ffe5a1;border-radius:50% 45% 12% 40%;padding:30px 15px}.phone-label{font-family:'Caveat',cursive;font-size:22px;color:#2b5438;transform:rotate(-7deg)}.phone{width:230px;border-color:#254c37;background:#254c37;box-shadow:14px 15px 0 #e6b7596b;transform:rotate(4deg)}.lesson-strip{border-color:#80a5b5}.lesson-strip>div:before{width:11px;height:11px;left:-33px;background:var(--coral)}.lesson-strip strong{font-size:28px}.lesson-step{color:#7e5a24;background:#ffe4a0;padding:3px 9px;border-radius:10px;display:inline-block;margin-bottom:9px}.lesson-strip>div:nth-child(2) .lesson-step{background:#cce6f3;color:#275868}.lesson-strip>div:nth-child(3) .lesson-step{background:#f9c4b7;color:#673e31}
.rules{background-color:#fff7df;background-image:linear-gradient(90deg,transparent 49px,#efb5aa88 50px,transparent 51px),repeating-linear-gradient(0deg,transparent,transparent 35px,#b1cbd529 35px,#b1cbd529 36px);border-block:1px solid #f0e4c9}.rules-heading{gap:45px}.rules-heading h2{max-width:710px}.rule-rows article{border:0;position:relative;padding:30px 0;grid-template-columns:.5fr 1fr 1.15fr}.rule-topic{font-family:'Caveat',cursive;font-size:23px;color:#3b6045;transform:rotate(-5deg)}.rule-rows h3{font-size:30px}.rule-rows article+article:before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:#a6bdb94a}.rule-rows article:nth-child(2) .rule-topic{color:#ae5140}.rule-note{background:#ffe49d;padding:3px 8px;transform:rotate(-1deg)}.data-grid{gap:100px}.map-school{background:var(--mint);border:0;border-radius:30px 30px 5px 5px;font-family:var(--heading);font-size:20px}.map-branches>div{border:0;background:var(--sky);padding:18px;border-radius:5px}.map-branches>div:nth-child(2){background:#ffdbc9}.map-caption{font-family:'Caveat',cursive;font-size:22px}.integration{background:#2b5438;border-radius:45px 45px 0 0}.integration .section-index{color:#e4ecd9}.integration-heading h2{font-size:49px}.integration-name{color:#ffda69;font-weight:600}.integration-table article{border-color:#ffffff2c}.integration-table article:nth-child(2) .integration-name{color:#bddfee}.integration-table article:nth-child(3) .integration-name{color:#ffa68c}.technical-note{color:#d1ddc6}.roadmap-heading h2{font-size:46px}.development-feature{border-radius:5px 30px 5px 5px;background:#efede5;position:relative;gap:60px}.development-feature:before{content:'';position:absolute;width:105px;height:26px;background:#d8d4baaa;left:calc(50% - 52px);top:-12px;transform:rotate(-5deg)}.development-title h3{font-size:34px}.development-list summary{padding-block:25px}.development-list summary>span{font-family:var(--heading);font-size:21px}.implementation{background:var(--sky);border-radius:0 0 45px 45px}.implementation-layout li>span{background:var(--sun);border:0;color:var(--ink);font-weight:600}.implementation-layout li:before{background:#9abbc7!important}.implementation-layout li:nth-child(2)>span{background:var(--coral)}.implementation-layout li:nth-child(3)>span{background:var(--mint)}.contact h2{font-weight:700;font-size:clamp(65px,8vw,120px);letter-spacing:-.06em;position:relative}.contact h2:after{content:'';width:130px;height:7px;background:var(--coral);position:absolute;bottom:-13px;left:0;border-radius:50%;transform:rotate(-4deg)}.contact-bottom{border:0}.footer{background:#f3eddd;border:0}.footer-meta{border-color:#d7cfbd}.status{background:#e6e4dc}dialog{border-radius:15px}
html[data-theme=dark]{--paper:#192b25;--white:#223c31;--ink:#f0f4e6;--muted:#bdcebd;--green:#d0e4bc;--line:#486052;--wash:#243f3e;--neutral:#38453b;--mint:#395940;--sky:#28494e;--sun:#edc465}html[data-theme=dark] .school-art{mix-blend-mode:normal}html[data-theme=dark] .day-section,html[data-theme=dark] .demo-under{background:#203b3d}html[data-theme=dark] .role-tabs button{color:#213e31}html[data-theme=dark] .role-tabs button[aria-selected=true]{color:var(--ink)}html[data-theme=dark] .stage-counter span:first-child{color:#2b5438}html[data-theme=dark] .rules{background-color:#2e3829}html[data-theme=dark] .rule-topic{color:#dbeabd}html[data-theme=dark] .rule-note{color:#34482e}html[data-theme=dark] .development-feature,html[data-theme=dark] .footer{background:#263a30}html[data-theme=dark] .status{background:#35483c}html[data-theme=dark] .map-branches>div:nth-child(2){background:#4c4136}html[data-theme=dark] .implementation-layout li>span{color:#213e31}
@media(max-width:1150px){.hero-viva{grid-template-columns:44% 56%;min-height:560px;padding-top:20px}.hero-viva h1{font-size:57px}.hero-description{font-size:16px;max-width:330px}.hero-actions{gap:14px}.hero-actions .button{font-size:12px;padding:12px 17px}.hero-talk{font-size:12px}.school-art{height:450px}.hero-system{width:85%;left:6%;bottom:12px}.hero-screen{max-height:180px}.art-credit{top:455px;font-size:8px}.hand-note{font-size:22px;top:5px}.day-ribbon{width:calc(100% - 70px);padding:22px;gap:14px}.day-ribbon b{font-size:20px}.day-ribbon button{font-size:12px;gap:9px}.ribbon-line{width:20px}.stage-inner{width:calc(100% - 70px);grid-template-columns:230px minmax(0,1fr);gap:25px}.stage-copy h3{font-size:29px}.role-tabs b{font-size:23px}.role-tabs button{padding-inline:18px}.day-intro h2{font-size:35px}.workday-grid{gap:30px}.workday-title h2{font-size:38px}.phone{width:190px}.integration-heading h2{font-size:42px}}
@media(max-width:850px){.wrap{width:calc(100% - 48px)}.header{padding-inline:24px;height:80px}.hero-viva{padding-left:24px;min-height:510px}.hero-copy{padding-top:15px}.hero-kicker{font-size:11px;max-width:250px;line-height:1.5;margin-bottom:18px}.hero-viva h1{font-size:47px}.hero-description{font-size:15px;max-width:290px}.hero-actions{align-items:flex-start;flex-direction:column;gap:9px}.hero-install{font-size:11px;margin-top:17px}.school-art{height:400px;border-radius:45% 3% 3% 5%}.hero-system{bottom:25px;left:3%;width:92%}.hero-screen{max-height:165px}.art-credit{top:auto;bottom:2px;right:12px}.hand-note{top:0;left:12px;font-size:20px}.day-ribbon{width:calc(100% - 48px);gap:16px;flex-wrap:wrap;padding:22px;margin-top:18px}.day-ribbon>span:first-child{flex:0 0 100%;display:flex;gap:5px;align-items:baseline}.day-ribbon>span:first-child br{display:none}.day-ribbon button{font-size:12px}.ribbon-line{width:15px}.day-intro h2{font-size:34px}.school-caption{display:none}.day-intro p{max-width:210px;font-size:13px}.stage-inner{width:calc(100% - 48px);grid-template-columns:1fr;gap:25px}.stage-copy{display:grid;grid-template-columns:65px 1fr 85px;gap:22px;padding:0}.stage-counter span:first-child{width:55px;height:55px;font-size:32px}.stage-counter span:last-child{margin-top:8px}.stage-copy ul{display:flex;gap:4px 14px}.stage-copy li{border:0}.stage-controls{width:85px}.role-stage{padding-top:28px}.screen-image-button{max-height:470px}.role-tabs button{min-height:76px;padding:17px 12px}.role-tabs b{font-size:20px}.role-tabs small{font-size:10px}.section-pad{padding-block:65px}.workday-grid{grid-template-columns:1fr 230px}.workday-title h2{font-size:37px}.phone-composition{padding:23px 12px}.phone{width:200px}.lesson-strip>div:before{left:0;top:-5px}.rules-heading h2{font-size:41px}.rule-rows article{grid-template-columns:1fr 1.2fr}.rule-topic{grid-column:1/-1;font-size:25px}.data-grid{gap:45px}.integration-heading h2{font-size:41px}.roadmap-heading h2{font-size:40px}.development-feature{gap:35px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header{height:76px;padding-inline:20px}.brand-h{font-size:28px;padding:8px 11px 9px 9px}.wordmark{font-size:11px}.wordmark b{font-size:22px}.hero-viva{display:flex;flex-direction:column;padding:15px 0 0;min-height:0}.hero-copy{padding:5px 24px 0}.hero-kicker{font-size:11px;max-width:none;margin-bottom:18px}.hero-viva h1{font-size:clamp(44px,12vw,65px);line-height:1.01;letter-spacing:-.055em;padding-bottom:22px}.hero-viva h1 br{display:none}.hero-viva h1:after{width:95px;height:5px;bottom:7px}.hero-description{font-size:15px;line-height:1.6;max-width:350px;margin:11px 0 22px}.hero-actions{flex-direction:row;align-items:center;gap:15px}.hero-actions .button{font-size:12px;padding:11px 18px;min-height:49px;gap:15px}.hero-talk{font-size:12px}.hero-install{font-size:11px;margin-top:19px;line-height:1.6}.school-world{height:365px;margin:24px 0 0 12px;flex:none}.school-art{height:300px;width:100%;object-position:center;border-radius:42% 0 0 6% / 30% 0 0 8%}.hand-note{top:0;left:12px;font-size:20px;width:110px}.hand-note svg{width:54px;height:30px;margin-left:35px}.hero-system{width:81%;left:10%;bottom:15px;box-shadow:0 10px 22px #304e3525,0 0 0 5px #fffefa}.hero-screen{max-height:137px}.mini-browser{height:28px;font-size:8px;padding:0 9px;gap:6px}.mini-browser button{font-size:9px}.mini-browser i{width:5px;height:5px;box-shadow:8px 0 #ffcd54,16px 0 #7ba576;margin-right:16px}.capture-label{right:9px;bottom:-12px;font-size:8px;padding:4px 8px}.art-credit{bottom:0;right:12px;font-size:7px}.day-ribbon{width:calc(100% - 40px);margin-top:26px;padding:21px 19px 24px;display:grid;grid-template-columns:1fr 1fr;gap:17px 14px;border-radius:12px 32px 12px 12px}.day-ribbon>span:first-child{grid-column:1/-1;display:block;font-size:15px}.day-ribbon>span:first-child br{display:inline}.day-ribbon b{font-size:24px}.day-ribbon button{font-size:12px;gap:11px;text-align:left}.ribbon-line{display:none}.ribbon-mark{transform:scale(.85) rotate(-5deg)}.hero-demo-note{font-size:10px;line-height:1.6;padding:16px 27px 18px}.day-section{padding-top:35px;border-radius:40% 0 0 0 / 20px 0 0 0}.day-intro{padding-bottom:25px;display:block}.day-intro h2{font-size:32px;line-height:1.08}.day-intro>p{font-size:13px;max-width:330px;margin-top:14px}.role-tabs{gap:5px;padding:0}.role-tabs button{padding:16px 3px 13px;min-height:52px;border-radius:8px 8px 0 0}.role-tabs button[aria-selected=true]{transform:translateY(-5px);box-shadow:0 -3px 0 var(--coral)}.role-tabs b{font-family:var(--body);font-size:12px}.role-tabs small{display:none}.role-stage{padding-top:25px}.stage-inner{display:flex;width:100%;gap:22px}.stage-copy{display:block;padding:0 20px;min-height:0}.stage-counter{position:absolute;top:0;right:20px;display:flex;gap:5px;align-items:baseline}.stage-counter span:first-child{width:38px;height:38px;font-size:22px;letter-spacing:-1px}.stage-counter span:last-child{font-size:9px}.stage-role{font-size:11px;padding-top:3px;margin-bottom:15px}.stage-copy h3{font-size:29px;max-width:290px;margin-bottom:12px}.stage-copy p:not(.stage-role){font-size:13px;line-height:1.7}.stage-copy ul{display:block;margin-top:12px}.stage-copy li{font-size:11px;padding:3px 0}.stage-controls{position:static;width:auto;margin-top:18px}.stage-controls span{display:block}.screen-figure{width:calc(100% - 20px);margin-left:20px;border-width:5px;border-bottom:0;border-radius:9px 0 0 0}.screen-toolbar{height:33px;padding:0 7px;font-size:9px}.screen-image-button{max-height:420px}.screen-image-button img{width:1000px;transform:translateX(-166px)}.screen-figure figcaption{font-size:8px;padding:8px}.demo-under{padding-block:17px}.section-pad{padding-block:55px}.section-index{margin-bottom:28px;font-size:11px}.section-index>span:first-child:before{width:14px;height:6px}.section-index>span:last-child{font-size:10px}.workday-grid{grid-template-columns:1fr;gap:30px}.workday-title h2{font-size:35px}.workday-title>p{font-size:14px}.lesson-strip strong{font-size:22px}.lesson-step{font-size:10px;padding:2px 7px}.lesson-strip>div:before{width:8px;height:8px}.phone-composition{grid-column:auto;grid-row:auto;max-width:330px;margin:7px auto 0;width:100%;padding:27px 20px;gap:15px;flex-direction:row}.phone{width:174px;flex:none;transform:rotate(5deg)}.phone-label{font-size:22px;width:85px;max-width:none;line-height:1.05;transform:rotate(-8deg)}.rules{background-image:linear-gradient(90deg,transparent 10px,#efb5aa88 11px,transparent 12px),repeating-linear-gradient(0deg,transparent,transparent 35px,#b1cbd529 35px,#b1cbd529 36px)}.rules-heading h2{font-size:35px}.rule-rows article{grid-template-columns:1fr;gap:12px;padding:27px 0}.rule-topic{grid-column:auto;font-size:24px}.rule-rows h3{font-size:29px}.rule-rows p{font-size:14px}.rule-note{font-size:11px}.data-grid{grid-template-columns:1fr;gap:36px}.data-grid h2{font-size:37px}.integration{border-radius:27px 27px 0 0}.integration-heading h2{font-size:34px}.integration-name{font-size:32px}.integration-table article{grid-template-columns:1fr}.integration-table p{grid-column:auto}.roadmap-heading h2{font-size:35px}.development-feature{padding:28px 22px;grid-template-columns:1fr;gap:22px}.development-title h3{font-size:30px}.development-list summary>span{font-size:20px}.family-availability summary>span{font-size:17px}.implementation{border-radius:0 0 25px 25px}.implementation-layout{grid-template-columns:1fr;gap:30px}.implementation-layout h2{font-size:35px}.contact h2{font-size:clamp(50px,13vw,72px);line-height:1.1;margin-bottom:30px}.contact h2:after{width:90px;height:5px}.contact-actions{min-width:0}.footer{padding-top:30px}.footer-meta{font-size:10px}}
.art-credit{top:12px;bottom:auto;right:15px;background:#fffaf1e8;color:#375543;padding:4px 7px;border-radius:3px;font-size:9px;z-index:2}
@media(max-width:600px){.art-credit{top:8px;right:8px;font-size:8px;max-width:140px;line-height:1.3}}
.workday-grid>*{min-width:0}
@media(max-width:360px){.phone-composition{padding:24px 14px;gap:12px}.phone{width:150px}.phone-label{width:68px;font-size:20px}.hero-actions{gap:10px}.hero-viva h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){.role-tabs button{transition:none}}
/* Escola viva: movimento. Coberto pela regra global prefers-reduced-motion de styles.css; o JS não aplica estados ocultos com movimento reduzido. */
@keyframes kb{from{scale:1}to{scale:1.03}}
@keyframes word-in{from{opacity:0;translate:0 .45em}to{opacity:1;translate:none}}
@keyframes now{0%,33%,100%{scale:1;opacity:.5}8%{scale:1.7;opacity:1}22%{scale:1.1;opacity:1}}
@keyframes tab-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes live-dot{0%,100%{opacity:1}50%{opacity:.35}}
.school-art{translate:0 var(--py,0px);animation:kb 36s ease-in-out infinite alternate;will-change:scale,translate}
.hero-viva h1 .w{display:inline-block;animation:word-in .6s cubic-bezier(.2,.7,.2,1) var(--d,0ms) both}
.rv{opacity:0;translate:0 26px;transition:opacity .6s ease var(--d,0ms),translate .7s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}
.rv.rv-in{opacity:1;translate:none}
.contact h2 .w{white-space:nowrap}
.contact h2 .ch{display:inline-block}
.rv-letters .ch{opacity:0;translate:0 .4em;transition:opacity .45s ease var(--d,0ms),translate .6s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}
.rv-letters.rv-in .ch{opacity:1;translate:none}
.implementation-layout li:nth-child(2){--i:1}.implementation-layout li:nth-child(3){--i:2}
.implementation-layout li:not(:last-child):before{transform-origin:top;transform:scaleY(clamp(0,calc(var(--draw,1)*3 - var(--i,0)),1))}
.lesson-strip>div:before{animation:now 6s ease-in-out infinite}
.lesson-strip>div:nth-child(2):before{animation-delay:-4s}.lesson-strip>div:nth-child(3):before{animation-delay:-2s}
.button span,.quiet-link span{display:inline-block;transition:translate .22s ease}
.button:hover span,.button:focus-visible span,.quiet-link:hover span,.quiet-link:focus-visible span{translate:3px -3px}
.header{transition:box-shadow .25s ease}
.header.is-scrolled{box-shadow:0 6px 20px #193d3214}
html[data-theme=dark] .header.is-scrolled{box-shadow:0 6px 20px #0006}
.read-progress{position:fixed;top:0;left:0;right:0;height:3px;background:var(--coral);transform:scaleX(0);transform-origin:left;z-index:40;pointer-events:none}
@media(hover:hover) and (min-width:601px){.hero-system{transition:translate .3s ease,box-shadow .3s ease}.hero-system:hover{translate:0 -7px;box-shadow:0 26px 48px #304e3533,0 0 0 7px #fffefa}}
.life-bubble{position:absolute;top:13%;right:3%;z-index:2;display:flex;align-items:center;gap:8px;max-width:270px;padding:9px 13px;border-radius:14px 14px 14px 4px;background:var(--white);color:var(--ink);font-size:13px;line-height:1.3;box-shadow:0 10px 26px #193d321f;transition:opacity .22s ease,translate .22s ease;pointer-events:none}
.life-bubble.is-out{opacity:0;translate:0 4px}
.life-bubble i{flex:none;width:8px;height:8px;border-radius:50%;background:var(--coral);animation:live-dot 1.8s ease-in-out infinite}
.stage-controls .stage-pause{font-size:12px;letter-spacing:-1px}
.tab-progress{position:absolute;left:18px;right:18px;bottom:9px;height:3px;border-radius:3px;background:var(--coral);transform:scaleX(0);transform-origin:left;opacity:0;pointer-events:none}
.role-tabs.is-auto button[aria-selected=true] .tab-progress{opacity:1;animation:tab-fill 7s linear forwards}
.role-tabs.is-held .tab-progress{animation-play-state:paused}
#role-text{transition:opacity .15s ease,translate .15s ease}
#role-text.is-out{opacity:0;translate:0 8px}
#role-image.is-out{opacity:0}
@media(max-width:600px){.life-bubble{top:6px;right:8px;max-width:52%;font-size:11px;padding:7px 10px;gap:6px}.tab-progress{left:8px;right:8px;bottom:5px;height:2px}}

/* Ecrane foarte late: coloana de 1320px ar sta la 40% din ecran. Mărim pagina în trepte. */
@media (min-width: 2200px) { html { zoom: 1.15; } }
@media (min-width: 2600px) { html { zoom: 1.35; } }
@media (min-width: 3000px) { html { zoom: 1.55; } }
@media (min-width: 3400px) { html { zoom: 1.75; } }

/* Menu unico HostMindAI (7 entradas): abaixo de 1360px nao cabe na barra (estimado, sem navegador para medir), vai para o menu movel. */
@media (max-width: 1360px) {
  .nav { display: none; }
  .menu-toggle { display: flex; width: 40px; height: 44px; flex-direction: column; justify-content: center; align-items: center; gap: 7px; }
  #mobile-nav { position: absolute; top: 100%; left: 0; right: 0; padding: 15px 24px 22px; background: var(--paper); border-bottom: 1px solid var(--line); box-shadow: 0 20px 25px #10231613; }
  #mobile-nav[hidden] { display: none; }
  #mobile-nav a { display: block; padding: 10px 0; font-size: 15px; }
}

/* footer unico B2G */
footer.site-footer .si{display:block;flex-shrink:0}
footer.site-footer{background:#263a30;color:#fff;border:0;border-top:1px solid rgba(255,255,255,.12);display:block;padding:0;text-align:left;margin:0;width:auto;max-width:none;grid-template-columns:none;gap:0;align-items:normal;font-size:calc(16*var(--u));line-height:calc(24*var(--u))}
footer.site-footer p{color:inherit}
footer.site-footer a{text-decoration:none;color:inherit}
footer.site-footer a:focus-visible{outline-color:#fff}
footer.site-footer .f-in{padding-top:calc(64*var(--u));padding-bottom:calc(112*var(--u))}
footer.site-footer .f-grid{display:grid;grid-template-columns:1fr;gap:calc(48*var(--u))}
footer.site-footer .f-brand img{height:calc(48*var(--u));width:auto;margin-bottom:calc(24*var(--u))}
footer.site-footer .f-brand p{max-width:calc(384*var(--u));margin-bottom:calc(16*var(--u));font-size:calc(16*var(--u));line-height:calc(26*var(--u));opacity:.9}
footer.site-footer .f-brand strong{font-weight:600;color:#fff}
footer.site-footer h3{margin-bottom:calc(24*var(--u));font-size:calc(18*var(--u));line-height:calc(28*var(--u));font-weight:600;letter-spacing:-.025em}
footer.site-footer .f-list{display:flex;flex-direction:column;gap:calc(16*var(--u))}
footer.site-footer .f-ct{display:flex;align-items:center;gap:calc(12*var(--u));font-size:calc(14*var(--u));line-height:calc(20*var(--u));opacity:.9;transition:opacity .2s,color .2s}
footer.site-footer .f-ct:hover{opacity:1;color:#c8981e}
footer.site-footer .f-ic{padding:calc(8*var(--u));border-radius:calc(9999*var(--u));background:rgba(255,255,255,.1);transition:background-color .2s}
footer.site-footer .f-ct:hover .f-ic{background:rgba(200,152,30,.2)}
footer.site-footer .f-sub{display:block;font-size:calc(12*var(--u));line-height:calc(16*var(--u));opacity:.7}
footer.site-footer .f-soc{display:flex;gap:calc(16*var(--u))}
footer.site-footer .f-so{padding:calc(12*var(--u));border-radius:calc(12*var(--u));background:rgba(255,255,255,.1);transition:background-color .3s,transform .3s}
footer.site-footer .f-so:hover{background:#c8981e;transform:translateY(calc(-4*var(--u)))}
footer.site-footer .f-bottom{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:calc(16*var(--u));margin-top:calc(64*var(--u));padding-top:calc(32*var(--u));border-top:1px solid rgba(255,255,255,.1)}
footer.site-footer .f-bottom p{font-size:calc(14*var(--u));line-height:calc(20*var(--u));opacity:.7}
footer.site-footer .f-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:calc(8*var(--u)) calc(24*var(--u))}
footer.site-footer .f-legal a{font-size:calc(14*var(--u));line-height:calc(20*var(--u));opacity:.7;transition:opacity .2s,color .2s}
footer.site-footer .f-legal a:hover{opacity:1;color:#c8981e}
@media(min-width:768px){footer.site-footer .f-grid{grid-template-columns:repeat(12,1fr)}footer.site-footer .f-brand{grid-column:span 5}footer.site-footer .f-col:nth-child(2){grid-column:span 4}footer.site-footer .f-col:nth-child(3){grid-column:span 3}footer.site-footer .f-bottom{flex-direction:row}footer.site-footer .f-legal{flex-wrap:nowrap}}
footer.site-footer p,footer.site-footer h3{margin-top:0}
footer.site-footer .f-bottom p{margin:0}
footer.site-footer .f-in{width:80%;max-width:1440px;margin-inline:auto}
@media(max-width:900px){footer.site-footer .f-in{width:auto;padding-inline:calc(20*var(--u))}}

/* bula WhatsApp = WhatsAppButton.jsx de pe hub: apare dupa 300px de scroll */
.wa-bubble{position:fixed;right:calc(24*var(--u));bottom:calc(24*var(--u));z-index:50;display:flex;align-items:center;justify-content:center;width:calc(56*var(--u));height:calc(56*var(--u));border-radius:9999px;background:#25d366;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);transition:background-color .3s,transform .3s,box-shadow .3s}
.wa-bubble:hover{background:#20bd5a;transform:translateY(-2px);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}
.wa-bubble[hidden]{display:none}
.wa-bubble svg{width:calc(28*var(--u));height:calc(28*var(--u));fill:#fff;position:relative}
.wa-ping{position:absolute;inset:0;border-radius:9999px;background:#25d366;opacity:.3;animation:wa-ping 1s cubic-bezier(0,0,.2,1) infinite}
@keyframes wa-ping{75%,100%{transform:scale(2);opacity:0}}
@media(prefers-reduced-motion:reduce){.wa-ping{animation:none}}
