@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@200..800&display=swap');

/* Illustrated closing and institutional navigation. */
.discovery-closing{position:relative;overflow:hidden;text-align:center;background:linear-gradient(145deg,#f3e9fc 0%,#ead7f8 55%,#e3ccf5 100%);padding:88px 0}
.closing-copy{position:relative;z-index:1}
.discovery-closing .eyebrow{font-size:13px;letter-spacing:0;color:#6929a5}
.discovery-closing h2{font-size:clamp(36px,4.3vw,64px);line-height:1.13;letter-spacing:-2px;margin:22px 0}
.discovery-closing h2 span{color:#752caf}
.closing-copy>p:not(.eyebrow){font-size:clamp(17px,1.5vw,21px);line-height:1.7;color:#665471}
.closing-copy .button{margin-top:28px;box-shadow:0 10px 28px #66289925;font-size:16px;min-height:58px}
.closing-copy>small{display:block;margin-top:14px;font-size:14px;color:#665471}

.discovery-footer{position:relative;background:#e3ccf5;color:#fff;margin-top:-1px;padding:64px 0 26px}
.discovery-footer::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,#301b45,#241331);border-radius:44px 44px 0 0;pointer-events:none}
.discovery-footer .wrap{position:relative;width:min(1320px,calc(100% - 96px))}
.footer-intro{display:flex;align-items:center;gap:40px;padding-bottom:42px;border-bottom:1px solid #ffffff20}
.discovery-footer .brand{color:#fff;font-size:34px}
.discovery-footer .brand img{width:36px;height:40px;object-fit:contain}
.footer-intro>p{color:#d1c4dd;font-size:17px;line-height:1.65}
.footer-contact{margin-left:auto;display:inline-flex;align-items:center;gap:26px;padding:13px 21px;border:1px solid #b18bc661;border-radius:100px;background:#ffffff09;font-size:16px}
.footer-navigation{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr;gap:40px;padding:46px 0 54px}
.footer-navigation h3{font-size:17px;font-weight:650;margin-bottom:18px;color:#fff;letter-spacing:0}
.footer-navigation a{display:flex;align-items:center;gap:10px;min-height:44px;font-size:16px;color:#d1c4dd;width:fit-content}
.footer-navigation p{color:#bfb0ce;font-size:15px;line-height:1.7;margin-top:15px}
.discovery-footer a{transition:color .2s,background .2s}
.discovery-footer a:hover{color:#ffc078}
.footer-contact:hover{background:#ffffff13}
.footer-apps{margin-top:24px}
.footer-apps-label{display:block;color:#ffc078;font-size:11px;font-weight:700;letter-spacing:0;margin-bottom:12px}
.footer-store-badges{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-store-badge{display:inline-flex;align-items:center;gap:11px;width:160px;max-width:100%;min-height:49px;padding:10px 14px;border:1px solid #ffffff38;border-radius:12px;background:#ffffff08;color:#fff;font-size:16px;font-weight:600;line-height:1.2;white-space:nowrap}
.footer-store-badge svg{width:23px;height:25px;flex-shrink:0}
.footer-signoff{border-top:1px solid #ffffff20;padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#bfb0ce;font-size:13px}
.footer-signoff a{padding-block:10px;color:#e2d7eb}
@media(max-width:900px){.footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.footer-intro{flex-wrap:wrap;gap:24px}.footer-contact{margin-left:0}.footer-signoff{flex-wrap:wrap}.discovery-footer .wrap{width:calc(100% - 56px)}}
@media(max-width:600px){.discovery-closing{padding:52px 0 60px}.discovery-closing .eyebrow{font-size:11px;letter-spacing:0}.discovery-closing h2{font-size:36px;letter-spacing:-1.4px}.closing-copy>p:not(.eyebrow){font-size:17px}.closing-copy .button{font-size:15px;min-height:54px}.closing-copy>small{font-size:12px}.discovery-footer{padding-top:36px}.discovery-footer::before{border-radius:28px 28px 0 0}.discovery-footer .wrap{width:calc(100% - 40px)}.footer-intro{align-items:flex-start;flex-direction:column;gap:18px;padding-bottom:30px}.footer-intro>p{font-size:16px}.footer-navigation{gap:30px 20px;padding:30px 0}.footer-navigation h3{font-size:15px;margin-bottom:12px}.footer-navigation a{font-size:14px;line-height:1.5;padding-block:7px}.footer-navigation p{font-size:13px}.footer-signoff{flex-direction:column;align-items:flex-start;gap:8px;font-size:12px}}

:root{--ink:#2c213a;--muted:#70677b;--purple:#6929a5;--deep:#351154;--lavender:#f1eaf9;--cream:#fff3dc;--line:#e8e2ed;--paper:#fff;--accent:#ee853d;--font:'DM Sans',sans-serif;--display:var(--font)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.65 var(--font);-webkit-font-smoothing:antialiased}button,a,input{ -webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--display);line-height:1.2}img,svg{display:block}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #9d57db;outline-offset:5px}::selection{background:#e4cdf7;color:#321047}[hidden]{display:none!important}.icon{width:21px;height:21px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}.section-space{padding-block:104px}.eyebrow{font:600 11px/1.6 var(--font);letter-spacing:0;color:var(--purple)}.section-description{font-size:17px;line-height:1.8;color:var(--muted)}h2{font-size:clamp(32px,3.5vw,45px);font-weight:650;letter-spacing:-1.8px}.purple-text{color:var(--purple)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:600;color:var(--purple);min-height:44px}.text-link:hover{color:var(--deep)}.text-link span{font-size:21px}.button{min-height:51px;display:inline-flex;justify-content:center;align-items:center;gap:24px;background:linear-gradient(115deg,#542087,#7a38af);border:1px solid transparent;color:white;border-radius:100px;padding:14px 25px;font-size:14px;font-weight:550;box-shadow:0 5px 12px #63269512;transition:transform .18s,box-shadow .18s}.button:hover{transform:translateY(-2px);box-shadow:0 8px 18px #63269524}.button-small{min-height:43px;font-size:12px;padding:10px 20px}.skip-link{position:absolute;left:16px;top:-100px;z-index:100;background:white;color:var(--purple);padding:12px}.skip-link:focus{top:12px}.hero-shell{margin:16px 16px 0;border-radius:36px;background:radial-gradient(ellipse at 90% 18%,#ffeccf8c,transparent 37%),radial-gradient(ellipse at 15% 30%,#e2d3fa70,transparent 45%),linear-gradient(180deg,#f6f2fc,#f2edf8 78%,#faf8fd);padding:20px 0 34px;overflow:clip}.site-header{display:flex;align-items:center;gap:36px;border:1px solid #fff;background:#ffffffc9;padding:16px 24px;border-radius:100px;position:relative;z-index:5;min-height:78px}.brand{display:inline-flex;align-items:center;gap:8px;font:800 29px/1 var(--display);letter-spacing:-1.4px;flex-shrink:0}.brand-dot{color:var(--accent);margin-left:-7px}.main-nav{display:flex;align-items:center;gap:28px;width:100%;font-size:12px;font-weight:500;justify-content:flex-end}.main-nav>a:hover{color:var(--purple)}.nav-actions{display:flex;align-items:center;gap:22px;margin-left:auto}.login-link{display:inline-flex;align-items:center;gap:7px;font-weight:600}.login-link .icon{width:14px;height:14px}.menu-toggle{display:none}.hero{text-align:center;padding:78px 0 66px}.hero-eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid #d9cce6;background:#fff8;padding:6px 13px;border-radius:100px;font-size:10px;letter-spacing:0}.status-dot,.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#8b51bb;flex-shrink:0}.hero h1{font-size:clamp(42px,5.5vw,72px);line-height:1.16;font-weight:650;letter-spacing:-3.5px;margin:25px auto 25px;max-width:1000px}.highlight{color:var(--purple);position:relative;display:inline-block;z-index:0}.highlight:before{content:'';position:absolute;inset:8px -8px -4px;background:#e6d7f567;border-radius:12px;transform:rotate(-2deg);z-index:-1}.highlight svg{position:absolute;bottom:-8px;width:100%;height:12px;fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round}.hero-description{color:#6b6177;font-size:17px;line-height:1.8;max-width:620px;margin-inline:auto}.hero-description strong{color:#4d3b61;font-weight:550}.hero-actions{display:flex;align-items:center;justify-content:center;gap:26px;margin-top:26px}.hero-note{font-size:11px;color:#7a6c88;margin-top:16px}.product-section{scroll-margin-top:30px}.product-intro{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 5px 20px}.product-intro h2{font-size:19px;letter-spacing:-.4px;line-height:1.5;font-weight:650}.product-intro h2 span{font-size:14px;color:var(--muted);font-family:var(--font);font-weight:400;letter-spacing:0}.view-tabs{display:inline-flex;background:#fff9;padding:5px;border:1px solid #fff;border-radius:100px;gap:3px}.view-tabs button{border:0;background:transparent;min-height:40px;padding:9px 15px;display:inline-flex;align-items:center;gap:8px;border-radius:100px;font-size:12px;color:#74687d}.view-tabs button[aria-selected=true]{background:white;color:var(--purple);box-shadow:0 3px 8px #41205912;font-weight:600}.view-tabs .icon{width:16px;height:16px}.product-frame{display:grid;grid-template-columns:175px minmax(0,1fr);min-height:490px;background:#f7f6f9;border:6px solid #fff9;outline:1px solid #e4daee;border-radius:22px;box-shadow:0 20px 50px -26px #4e276142;overflow:hidden;pointer-events:auto}.demo-sidebar{background:#fff;padding:27px 18px;display:flex;flex-direction:column;border-right:1px solid #ebe7ef;gap:6px}.demo-brand{font-size:24px;margin-bottom:32px;gap:6px}.demo-side-label{font-size:8px;color:#9b90a3;letter-spacing:0;margin:0 9px 9px}.demo-nav{display:flex;align-items:center;gap:10px;padding:10px 10px;font-size:10px;color:#87798e;border-radius:8px}.demo-nav .icon{width:15px;height:15px}.demo-nav.active{background:#f0e8f7;color:var(--purple);font-weight:550}.demo-school{margin-top:auto;padding-top:30px;display:flex;align-items:center;gap:8px;font-size:9px}.demo-school small{display:block;font-size:7px;color:#918499;line-height:1.5}.school-avatar{border-radius:9px;background:#f4f0f8;width:28px;height:30px;display:grid;place-items:center;color:var(--purple);font-size:11px}.demo-main{min-width:0}.demo-topbar{height:54px;background:#fcfbfd;border-bottom:1px solid #e9e4ef;display:flex;align-items:center;justify-content:space-between;padding:0 24px;font-size:9px;color:#8d8196}.demo-user{display:flex;align-items:center;gap:7px}.initial-avatar{width:29px;height:29px;border-radius:50%;background:#ede8f1;display:inline-grid;place-items:center;font-size:10px;font-weight:600;flex-shrink:0;color:#6d567f}.demo-user .initial-avatar{width:24px;height:24px;font-size:8px;margin-left:8px}.demo-view{padding:24px;min-height:430px}.demo-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:15px}.demo-heading p{font-size:8px;letter-spacing:0;color:#8a7f93;margin-bottom:6px}.demo-heading h3{font-size:22px;letter-spacing:-.7px;font-weight:650}.demo-action{display:inline-flex;align-items:center;gap:12px;border-radius:7px;background:linear-gradient(120deg,#642597,#8543b2);color:white;padding:9px 12px;font-size:9px;white-space:nowrap;line-height:1.4}.demo-action .icon{width:12px;height:12px}.demo-columns{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(170px,1fr);gap:16px}.ui-card{background:#fff;border:1px solid #e7e2eb;border-radius:13px;padding:17px;min-width:0}.ui-heading{display:flex;align-items:center;gap:9px;margin-bottom:14px}.ui-heading h4{font-size:12px;font-weight:650;letter-spacing:-.3px}.icon-disc{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-disc.purple{color:#7834aa;background:#ede4f6}.icon-disc.amber{color:#926027;background:#fff0d4}.icon-disc.neutral{color:#71677b;background:#f1eef4}.ui-heading .icon-disc{width:29px;height:29px}.ui-heading .icon{width:15px;height:15px}.ui-text-link{margin-left:auto;font-size:8px;color:var(--purple);white-space:nowrap}.class-demo{display:flex;justify-content:space-between;align-items:center;padding:15px;border-radius:9px;background:linear-gradient(110deg,#ede5f5,#f6f3fa);gap:12px}.class-demo strong{font-size:17px;font-family:var(--display);letter-spacing:-.5px}.class-demo p{font-size:10px;color:#786b83;margin-top:3px}.class-demo small{display:block;font-size:9px;color:#786b83;margin-top:14px}.recent-demo{margin-top:14px}.record-demo{display:flex;align-items:center;gap:12px;justify-content:space-between;background:#f6f4f8;border-radius:7px;padding:10px;margin-top:7px}.record-demo:first-of-type{background:#fff6e7}.record-demo strong{display:block;font-size:10px;font-weight:550}.record-demo small{display:block;font-size:8px;color:#958b9d}.date-chip{padding:3px 6px;background:#ffffffb3;border-radius:4px;font-size:8px;color:#8b7f92;white-space:nowrap}.moment-card{background:linear-gradient(150deg,#f2eaf9,#fff);display:flex;flex-direction:column;align-items:flex-start;gap:15px;border-color:#e3d8ee}.moment-card>.icon-disc{width:38px;height:38px}.moment-card h4{font-size:22px;letter-spacing:-.65px;line-height:1.3}.moment-card p{font-size:11px;line-height:1.8;color:#7a6a86}.ui-eyebrow{font-size:8px;letter-spacing:0;color:#8d709e;font-weight:600}.review-stamp{display:flex;align-items:center;gap:5px;margin-top:auto;font-size:9px;color:#6e4d86;background:#fff;padding:7px 9px;border-radius:100px}.review-stamp .icon{width:12px;height:12px}.moment-card>small{font-size:8px;color:#8f8099}.demo-footnote{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:19px 8px 0;font-size:10px;color:#897b94}.demo-footnote>span{display:flex;align-items:center;gap:6px}.demo-footnote p{font-size:11px}.period-chip{font-size:10px;background:#fff;border-radius:7px;padding:7px 10px;color:#776680;border:1px solid #e9e3ee}.ui-muted{font-size:11px;color:#8b7d95}.student-row{display:flex;align-items:center;gap:9px;margin-top:22px;padding-top:17px;border-top:1px solid #eee8f2}.student-row strong{display:block;font-size:12px}.student-row small{display:block;font-size:9px;color:#8c7f98}.student-row .date-chip{margin-left:auto}.lilac{background:#eae0f4}.observation-note{margin-top:16px;border-radius:10px;background:#f6f3f9;padding:16px;font-size:11px;color:#71637e}.observation-note b{font-weight:600;color:#4d3c5e}.observation-note p{margin-top:7px}.context-line{display:flex;gap:7px;align-items:center;color:#8e7e9b;font-size:9px;margin-top:17px}.context-line .icon{width:15px;height:15px}.school-demo>div:not(.ui-heading){display:flex;justify-content:space-between;border-radius:6px;background:#f7f4fa;padding:11px;margin-bottom:8px;font-size:11px}.school-demo>div b{font-weight:600;color:var(--purple)}.school-demo>p{font-size:10px;color:#8c7d98;margin-top:20px}.family-demo>p{font-size:12px;line-height:1.9;color:#7e6e8b;margin-top:17px}.family-insight-title{font-size:21px;letter-spacing:-.6px;line-height:1.35}.home-question{background:#fff6e8;border-radius:9px;display:flex;gap:10px;padding:13px;margin-top:20px;color:#8c6d3e;font-size:10px}.home-question b{display:block;margin-bottom:5px;font-size:9px}.home-question .icon{width:17px;height:17px}.lua-caption{font-size:9px;margin-top:auto;color:#8a6e9f}.connection{text-align:center}.connection h2{margin:17px 0 19px}.connection-path{display:flex;align-items:center;justify-content:center;margin:38px auto 0;max-width:660px;gap:20px}.connection-path>span{display:flex;align-items:center;gap:10px;color:#84758e;font-size:14px;white-space:nowrap}.connection-path>i{height:1px;background:linear-gradient(90deg,#eee6f5,#d7c4e8);flex:1;position:relative}.connection-path>i:after{content:'';position:absolute;width:5px;height:5px;right:0;top:-2px;border-radius:50%;background:#b28dce}.connection-path .connection-brand{color:var(--deep);font:700 22px var(--display);letter-spacing:-.8px;background:#f7f2fc;border:1px solid #eee5f7;padding:14px 20px;border-radius:16px}.feature{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.feature-copy{max-width:450px}.feature-copy .eyebrow{display:flex;align-items:center;gap:12px}.label-number{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#f1ebf7;color:#8b64a8;font-size:9px;letter-spacing:0}.feature h2{margin:20px 0 22px}.feature-copy>p{font-size:16px;line-height:1.85;color:var(--muted)}.benefit-list{padding:0;list-style:none;margin:22px 0}.benefit-list li{display:flex;align-items:center;gap:10px;font-size:13px;color:#665771;margin:13px 0}.benefit-list .icon{width:16px;height:16px;color:#9a6abc}.feature-copy>.text-link{margin-top:4px;font-size:13px}.feature-art{min-height:450px;border-radius:26px;position:relative;padding:38px;display:flex;align-items:center;justify-content:center;isolation:isolate}.writing-art{background:linear-gradient(135deg,#f2eafb,#f9f5fc)}.paper-card{width:100%;background:#fff;border:1px solid #e9dfef;border-radius:17px;padding:24px;transform:rotate(-3deg);box-shadow:0 17px 30px -20px #67457f55;margin-bottom:25px}.paper-header{display:flex;align-items:center;gap:12px}.paper-header b{font-size:13px;font-weight:600;display:block}.paper-header small{font-size:10px;color:#97879f;display:block;margin-top:3px}.paper-note{font-size:16px;line-height:2;color:#716478;margin:24px 0 20px;font-weight:400}.paper-note mark{background:#f0e4ff;color:#5c337a;padding:2px 0}.paper-footer{display:flex;align-items:center;gap:10px;border-top:1px solid #f1ecf5;padding-top:16px;font-size:10px;color:#9c8ba7}.floating-review{display:flex;align-items:center;gap:12px;position:absolute;bottom:55px;right:20px;padding:16px 20px;border-radius:13px;background:#fff;box-shadow:0 8px 35px #48305715;border:1px solid #eee7f4;transform:rotate(2deg)}.floating-review strong{font-size:13px;display:block}.floating-review small{font-size:10px;color:#8f7f99;display:block}.check-circle{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#f1e8fa;color:var(--purple)}.check-circle .icon{width:17px;height:17px}.art-label{position:absolute;bottom:17px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:0;color:#97879f}.coordinator-band{background:#fcfaf7}.timeline-art{background:#f5eee4;padding:28px;min-height:460px}.history-paper{background:#fff;padding:24px;border-radius:17px;width:100%;box-shadow:0 15px 40px -25px #58442d44;border:1px solid #ede5db}.mini-timeline{list-style:none;padding:0 0 0 19px;margin:25px 0 4px;border-left:1px solid #e6d9ef}.mini-timeline li{position:relative;padding-bottom:23px}.mini-timeline li:last-child{padding-bottom:0}.mini-timeline li:before{content:'';position:absolute;width:8px;height:8px;left:-24px;top:5px;background:#a278c1;border:2px solid white;box-shadow:0 0 0 1px #d7c2e8;border-radius:50%}.timeline-date{font-size:8px;color:#b098bf;letter-spacing:0}.mini-timeline h3{font:600 12px var(--font);margin:7px 0 4px}.mini-timeline p{font-size:10px;color:#9c8fa3;line-height:1.7}.family-art{background:#f6effb;min-height:530px;overflow:hidden}.family-orbit{position:absolute;border:1px solid #e6daef;border-radius:50%;z-index:-1}.orbit-one{width:470px;height:470px}.orbit-two{width:360px;height:360px}.phone-card{background:#fff;border:5px solid #fff;outline:1px solid #e7deef;border-radius:32px;padding:16px 21px 18px;width:254px;box-shadow:0 25px 40px -25px #4e2d7660;transform:rotate(5deg);position:relative}.phone-top{display:flex;justify-content:space-between;font-size:8px;margin-bottom:24px}.phone-brand{display:flex;align-items:center;gap:4px;font:750 20px var(--display);letter-spacing:-1px;margin-bottom:25px}.phone-card>.ui-eyebrow{font-size:7px}.phone-card h3{font-size:19px;letter-spacing:-.5px;margin:8px 0 20px}.phone-subject{display:flex;align-items:center;gap:7px;font-size:10px}.phone-subject .icon-disc{width:26px;height:26px}.phone-subject .icon{width:14px;height:14px}.phone-card>p{font-size:10px;line-height:1.9;margin:12px 0 18px;color:#8c7b97}.phone-question{background:#fff5e1;border-radius:10px;padding:14px;font-size:10px}.phone-question .icon{width:16px;height:16px;color:#a78142;margin-bottom:8px}.phone-question b{font-size:9px}.phone-question p{font-size:10px;color:#998769;margin-top:6px}.phone-home{width:75px;height:3px;background:#ded7e3;border-radius:5px;margin:22px auto 0}.family-float{position:absolute;bottom:90px;left:10px;border:1px solid #ece4f3;border-radius:13px;display:flex;align-items:center;gap:10px;background:#fff;padding:15px 18px;box-shadow:0 6px 30px #4c2d6410;font-size:12px;transform:rotate(-5deg)}.family-float .icon{color:#9b6ebc;width:18px;height:18px}.section-heading{text-align:center}.section-heading h2{margin:16px 0 20px;font-size:clamp(30px,3.4vw,43px)}.evidence-section{border-top:1px solid #f0eaf4}.evidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.evidence-grid article{position:relative;padding:29px;border:1px solid #ebe5f1;border-radius:19px;display:flex;flex-direction:column;align-items:flex-start}.evidence-grid article:nth-child(2){background:#f6f0fc;border-color:#eee2f8}.evidence-grid article:nth-child(3){background:#fff9ed;border-color:#f5ecdb}.evidence-number{position:absolute;right:24px;top:24px;font-size:11px;letter-spacing:0;color:#a595af}.evidence-grid h3{font-size:22px;letter-spacing:-.6px;margin:26px 0 12px}.evidence-grid p{font-size:14px;color:#83748d;line-height:1.8;margin-bottom:30px}.evidence-caption{border-top:1px solid #8f769b24;padding-top:17px;margin-top:auto;width:100%;font-size:10px;color:#8e6ca5}.how-section{padding-top:35px}.how-intro h2{margin-top:17px;margin-bottom:20px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;list-style:none;padding:0;margin:45px 0 0}.steps li{position:relative}.steps li:not(:last-child):after{content:'';height:1px;position:absolute;top:20px;left:58px;right:-31px;background:#e8ddee}.step-count{width:41px;height:41px;display:grid;place-items:center;border:1px solid #dfcde9;border-radius:50%;font-size:12px;color:var(--purple)}.steps h3{margin:24px 0 12px;font-size:18px;letter-spacing:-.5px}.steps p{font-size:14px;color:#887990;line-height:1.8}.trust-section{border:1px solid #e8ddf0;border-radius:22px;padding:40px;display:grid;grid-template-columns:60px 1fr 1fr;gap:25px;background:#faf7fd;align-items:center}.trust-icon{width:56px;height:56px;align-self:start;display:grid;place-items:center;border-radius:50%;background:#eee4f6;color:var(--purple)}.trust-icon .icon{width:26px;height:26px}.trust-section .eyebrow{font-size:9px;letter-spacing:0}.trust-section h2{font-size:27px;letter-spacing:-.8px;margin:12px 0 15px;line-height:1.3}.trust-section p:not(.eyebrow){color:#8b7c96;font-size:13px;line-height:1.8;max-width:390px}.trust-section ul{list-style:none;padding:0 0 0 30px;border-left:1px solid #e7deed;font-size:12px;color:#806c8d}.trust-section li{display:flex;align-items:center;gap:9px;margin:17px 0}.trust-section li .icon{width:16px;height:16px;color:#a47bbd}.faq-section{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}.faq-section h2{margin-top:17px;margin-bottom:20px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:0 2px}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:14px;font-weight:550;padding:24px 0;cursor:pointer;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{font-size:14px;color:#8b7e94;line-height:1.9;padding:0 35px 24px 0}.plus{position:relative;width:24px;height:24px;border-radius:50%;background:#f4eef9;flex-shrink:0;color:var(--purple)}.plus:before,.plus:after{content:'';position:absolute;top:11px;left:7px;width:10px;height:1px;background:currentColor}.plus:after{transform:rotate(90deg)}details[open] .plus:after{transform:rotate(0)}.cta-section{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 15% 10%,#7940ab,transparent 65%),linear-gradient(125deg,#531987,#32104d);border-radius:28px;padding:65px 30px;text-align:center;color:white}.cta-section .eyebrow{color:#d0b6e6;position:relative}.cta-section h2{font-size:clamp(32px,3.5vw,44px);line-height:1.3;margin:20px 0;letter-spacing:-1.7px;position:relative}.cta-section>p:not(.eyebrow){font-size:15px;color:#d4bfe2;line-height:1.8;position:relative}.button-light{background:#fff;color:var(--deep);margin-top:27px}.cta-section>small{display:block;font-size:10px;color:#c9addf;margin-top:16px}.cta-orbit{width:590px;height:590px;border:1px solid #ffffff10;position:absolute;right:-200px;top:-80px;border-radius:50%;z-index:-1;transform:rotate(12deg)}.cta-orbit:after{content:'';position:absolute;inset:65px;border:1px solid #ffffff10;border-radius:50%}.cta-orbit span{display:grid;place-items:center;width:55px;height:55px;border-radius:15px;background:#ffffff0d;border:1px solid #ffffff15;position:absolute;color:#d1b6e5}.cta-orbit span:nth-child(1){left:30px;top:100px}.cta-orbit span:nth-child(2){left:30px;bottom:100px}.cta-orbit span:nth-child(3){left:130px;bottom:10px}.site-footer{padding:65px 0 28px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:40px;margin-bottom:48px}.footer-top p{font-size:13px;line-height:1.8;color:#94869f;margin-top:20px}.footer-top nav{display:flex;gap:30px;font-size:12px;color:#7c6c88;padding-top:14px}.footer-top a:hover{color:var(--purple)}.footer-bottom{display:flex;justify-content:space-between;gap:22px;font-size:10px;color:#9f92a9;border-top:1px solid #eee8f3;padding-top:24px}.footer-bottom>div{display:flex;gap:20px}

@media(min-width:1600px){.hero-shell{margin:24px}.hero{padding-top:90px}.hero h1{font-size:78px}}
@media(max-width:1100px){.site-header{gap:20px;padding-inline:19px}.main-nav{gap:18px;font-size:11px}.nav-actions{gap:14px}.button-small{padding-inline:15px;font-size:11px}.feature{gap:45px}.feature-art{padding:25px}.demo-columns{gap:12px;grid-template-columns:minmax(0,1.5fr) minmax(160px,1fr)}.product-frame{grid-template-columns:145px minmax(0,1fr)}.demo-sidebar{padding:24px 12px}.demo-brand{font-size:21px}.demo-view{padding:20px}.trust-section{grid-template-columns:45px 1fr 1fr;padding:30px;gap:20px}.trust-section ul{padding-left:20px}.footer-top nav{gap:20px}}
@media(max-width:900px){.wrap{width:calc(100% - 48px)}.hero-shell{margin:12px;border-radius:26px;padding-top:16px}.site-header{min-height:68px;justify-content:space-between;padding:12px 20px}.brand{font-size:26px}.brand img{width:28px;height:32px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;align-items:center;width:42px;height:42px;border:1px solid #e7deee;background:#fff;border-radius:50%}.menu-toggle span{width:17px;height:1.5px;background:var(--purple)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(5.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-5.5px) rotate(-45deg)}.main-nav{display:none;position:absolute;left:0;right:0;top:calc(100% + 10px);width:100%;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 35px #46275a15;padding:20px}.main-nav.is-open{display:flex;align-items:stretch;flex-direction:column;gap:4px}.main-nav>a{padding:10px;font-size:14px}.nav-actions{margin:8px 0 0;padding-top:14px;border-top:1px solid var(--line);justify-content:space-between}.nav-actions .button-small{font-size:12px}.login-link{font-size:13px;padding-left:10px}.hero{padding:60px 0 48px}.hero h1{font-size:53px;letter-spacing:-2.4px}.hero-description{font-size:16px}.product-intro{align-items:start;flex-direction:column;gap:17px}.view-tabs{align-self:center}.product-intro h2{align-self:center;text-align:center}.product-frame{grid-template-columns:1fr;min-height:0}.demo-sidebar{display:none}.demo-view{min-height:420px}.demo-columns{grid-template-columns:1.5fr 1fr}.demo-footnote{flex-direction:column;gap:7px;text-align:center}.feature{gap:30px}.feature-copy p{font-size:14px}.feature h2{font-size:34px;letter-spacing:-1.3px}.feature-art{padding:20px;min-height:420px}.paper-card{padding:18px}.paper-note{font-size:14px}.paper-header b{font-size:11px}.paper-header small{font-size:9px}.paper-header .icon-disc{width:32px;height:32px}.floating-review{right:12px;padding:12px;bottom:45px}.family-art{min-height:500px}.family-float{left:6px;padding:12px;font-size:10px;bottom:70px}.family-float .icon{width:14px}.benefit-list li{font-size:11px;align-items:start}.feature-copy>.text-link{font-size:11px}.section-space{padding-block:75px}.evidence-grid{gap:12px}.evidence-grid article{padding:22px}.evidence-grid h3{font-size:19px}.evidence-grid p{font-size:13px}.trust-section{grid-template-columns:45px 1fr}.trust-section ul{grid-column:2;padding:0;border:0;margin:0}.faq-section{gap:35px}.steps{gap:30px}.steps p{font-size:13px}.steps h3{font-size:16px}.steps li:not(:last-child):after{right:-15px}.footer-top nav{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.hero-shell{margin:8px 8px 0;border-radius:23px;padding-top:12px;padding-bottom:24px}.hero-shell .wrap{width:calc(100% - 28px)}.site-header{padding:9px 14px;min-height:62px}.brand{font-size:25px}.brand img{width:26px;height:30px}.hero{padding:46px 0 35px}.hero-eyebrow{font-size:8px;letter-spacing:0;padding:6px 9px}.hero h1{font-size:clamp(34px,8.7vw,49px);letter-spacing:-1.7px;line-height:1.19;margin:22px 0}.hero h1 br{display:none}.highlight:before{inset:3px -3px -1px;border-radius:7px}.highlight svg{height:9px;bottom:-5px}.hero-description{font-size:14px;line-height:1.8;max-width:310px}.desktop-break{display:none}.hero-description strong{display:block;margin-top:3px}.hero-actions{flex-direction:column;gap:8px;margin-top:23px}.button{min-height:49px;padding:13px 22px;font-size:13px}.hero-actions .text-link{font-size:12px}.hero-note{margin-top:8px;font-size:9px}.product-intro{margin:12px 0 17px;gap:13px}.product-intro h2{font-size:17px}.product-intro h2 span{font-size:12px}.view-tabs{gap:0;width:100%;justify-content:center;padding:4px}.view-tabs button{flex:1;justify-content:center;font-size:10px;padding:8px 6px;gap:5px;min-height:39px}.view-tabs .icon{width:13px;height:13px}.product-frame{border-width:4px;border-radius:15px}.demo-topbar{padding:0 12px;height:40px;font-size:7px}.demo-user{font-size:7px}.demo-view{padding:15px 12px;min-height:0}.demo-heading{margin-bottom:16px}.demo-heading h3{font-size:20px}.demo-heading p{font-size:7px;letter-spacing:0}.demo-heading>.demo-action{display:none}.demo-columns{grid-template-columns:1fr;gap:12px}.ui-card{padding:14px}.ui-heading h4{font-size:12px}.class-demo strong{font-size:18px}.class-demo p{font-size:11px}.class-demo small{font-size:10px;margin-top:8px}.class-demo .demo-action{font-size:10px;padding:9px 11px;gap:6px}.record-demo{padding:11px}.record-demo strong{font-size:11px}.record-demo small{font-size:9px}.date-chip{font-size:9px}.moment-card{gap:10px;padding:17px}.moment-card h4{font-size:20px}.moment-card h4 br{display:none}.moment-card>.icon-disc{width:30px;height:30px}.moment-card>.icon-disc .icon{width:18px;height:18px}.moment-card p{font-size:12px}.moment-card .ui-eyebrow{font-size:8px}.moment-card>.review-stamp{margin-top:3px}.demo-footnote{font-size:8px;padding:14px 0 0}.demo-footnote p{font-size:10px}.family-insight-title{font-size:19px}.ui-muted{font-size:12px}.student-row small{font-size:10px}.observation-note{font-size:12px}.context-line{font-size:10px}.school-demo>div:not(.ui-heading){font-size:12px}.home-question{font-size:11px}.family-demo>p{font-size:12px}.section-space{padding-block:60px}h2{font-size:32px;letter-spacing:-1.2px}.eyebrow{font-size:9px;letter-spacing:0}.connection .eyebrow{font-size:8px;letter-spacing:0}.connection h2{font-size:32px}.section-description{font-size:14px}.connection .section-description br{display:none}.connection-path{gap:9px;margin-top:28px}.connection-path>span{font-size:10px;gap:5px}.connection-path>span>.icon{width:15px;height:15px}.connection-path .connection-brand{font-size:17px;padding:11px 12px;gap:5px;border-radius:11px}.connection-brand img{width:20px;height:24px}.feature{grid-template-columns:1fr;gap:30px}.feature-copy{max-width:none}.feature h2{font-size:35px;line-height:1.2}.feature-copy p{font-size:15px}.benefit-list li{font-size:12px;gap:9px}.feature-copy>.text-link{font-size:12px}.feature-art{min-height:400px;padding:30px}.paper-header b{font-size:12px}.paper-note{font-size:15px;line-height:1.9}.floating-review{right:18px;bottom:39px}.feature-reverse .feature-copy{grid-row:1}.timeline-art{min-height:425px;padding:22px}.mini-timeline h3{font-size:12px}.mini-timeline p{font-size:11px}.history-paper{padding:21px}.family-art{min-height:520px}.family-float{left:14px;bottom:75px;font-size:11px}.evidence-section h2{font-size:30px;line-height:1.3}.evidence-grid{grid-template-columns:1fr;margin-top:27px}.evidence-grid article{padding:25px}.evidence-grid h3{font-size:24px;margin-top:19px}.evidence-grid p{font-size:14px;margin-bottom:22px}.evidence-grid .icon-disc{width:40px;height:40px}.evidence-caption{font-size:11px}.how-section{padding-top:15px}.how-intro h2{font-size:31px}.steps{grid-template-columns:1fr;gap:28px;margin-top:30px}.steps li{padding-left:58px;min-height:100px}.step-count{position:absolute;top:0;left:0;width:36px;height:36px}.steps li:not(:last-child):after{width:1px;height:auto;left:18px;right:auto;top:46px;bottom:-19px}.steps h3{margin:4px 0 10px;font-size:18px}.steps p{font-size:14px}.trust-section{padding:25px;grid-template-columns:1fr;gap:18px}.trust-icon{width:44px;height:44px}.trust-section ul{grid-column:1;padding-top:5px;border-top:1px solid #e6dcec;font-size:11px}.trust-section h2{font-size:28px}.trust-section p:not(.eyebrow){font-size:14px}.faq-section{grid-template-columns:1fr;gap:27px}.faq-section h2 br{display:none}.faq-section .section-description br{display:none}.faq-list summary{font-size:13px;padding-block:21px;gap:14px}.faq-list details p{font-size:13px;padding-right:10px}.cta-section{padding:45px 25px;border-radius:22px}.cta-section .eyebrow{font-size:8px;letter-spacing:0}.cta-section h2{font-size:31px;letter-spacing:-1.1px;line-height:1.3}.cta-section>p:not(.eyebrow){font-size:14px}.cta-orbit{opacity:.5}.site-footer{padding-top:43px}.footer-top{flex-direction:column;gap:22px;margin-bottom:30px}.footer-top p{font-size:12px}.footer-top nav{font-size:11px;gap:16px 35px}.footer-bottom{flex-direction:column;gap:16px;font-size:9px}}
/* Human connection in the hero; live text cards stay readable at every width. */
.family-hero-visual{padding-bottom:48px}
.family-hero-scene{position:relative;isolation:isolate;overflow:hidden;border:5px solid #ffffffab;border-radius:30px;aspect-ratio:1.85;background:#e9dfd5}
.family-hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:left top}
.family-hero-cards{position:absolute;inset:0 4% 0 auto;width:32%;display:flex;flex-direction:column;justify-content:center;gap:20px}
.family-summary-card{padding:28px;background:#fffffff5;border:1px solid #fff;border-radius:24px;box-shadow:0 16px 40px #38234514}
.family-summary-card header{display:flex;align-items:center;gap:12px;margin-bottom:23px}
.hero-card-icon{width:38px;height:38px;display:grid;place-items:center;flex-shrink:0;background:#eee4f8;border-radius:12px;color:#6929a5}
.hero-card-icon .icon{width:22px;height:22px;stroke-width:1.5}
.hero-card-art{width:72px;height:72px;object-fit:contain;flex-shrink:0}
.family-skill-card .hero-card-art{width:64px;height:64px;align-self:flex-start;margin-top:4px}
.hero-card-kicker{display:block;font-size:9px;font-weight:650;letter-spacing:0;color:#785191;line-height:1.5}
.family-summary-card header p{font-size:12px;margin-top:3px;color:#716579}
.family-summary-card h2{font-size:25px;line-height:1.25;letter-spacing:-.8px;margin:0 0 18px}
.family-summary-card>p{font-size:14px;line-height:1.75;color:#655a6e}
.family-summary-card strong{font-weight:600;color:#3e2c4b}
.family-skill-card{margin-left:20px;display:flex;gap:14px;align-items:center;padding:22px;background:#f7f1fffa;border:1px solid #fff;border-radius:20px;box-shadow:0 12px 28px #38234512}
.family-skill-card h3{font-size:19px;letter-spacing:-.4px;line-height:1.3;margin:6px 0}
.family-skill-card p{font-size:12px;line-height:1.6;color:#716579}
@media(max-width:1100px){.family-hero-cards{width:34%;right:3%;gap:14px}.family-summary-card{padding:22px}.family-summary-card h2{font-size:23px}.family-skill-card{padding:18px;margin-left:0}}
@media(max-width:900px){.family-hero-scene{aspect-ratio:auto;background:#f5f0fa;overflow:hidden}.family-hero-photo{height:auto;aspect-ratio:1.6;object-fit:cover;object-position:left top}.family-hero-cards{position:relative;inset:auto;width:auto;margin:-40px 24px 24px;display:grid;grid-template-columns:1.2fr 1fr;align-items:start;gap:16px}.family-summary-card{position:relative}.family-summary-card h2 br{display:none}.family-skill-card{margin-top:64px}.family-summary-card header{margin-bottom:16px}}
@media(max-width:600px){.family-hero-visual{padding-bottom:24px}.family-hero-scene{border-width:3px;border-radius:22px}.family-hero-photo{aspect-ratio:1.1}.family-hero-cards{display:flex;gap:12px;margin:-24px 14px 16px}.family-summary-card{padding:22px;border-radius:18px}.family-summary-card h2{font-size:24px}.family-summary-card>p{font-size:14px}.family-skill-card{margin:0;padding:18px;border-radius:16px}.family-skill-card h3{font-size:18px}.hero-card-kicker{font-size:9px}}
/* Earlier preview styles are retained for the archived prototype assets. */
body.discovery-site{background:#fff}
.discovery-site .cta-section{background:radial-gradient(ellipse at 15% 10%,#7940ab,transparent 65%),linear-gradient(125deg,#531987,#32104d)}
.discovery-site .hero-description{max-width:730px;margin-inline:auto}
.discovery-site .hero h1{font-size:clamp(40px,4.7vw,70px)}
.discovery-preview{padding-top:24px;padding-bottom:64px}
.discovery-heading{margin-bottom:36px}
.discovery-heading h2{font-size:28px;letter-spacing:-.8px;line-height:1.35}
.discovery-heading h2 span{font-weight:450;color:#574068;font-size:22px}
.discovery-composition{display:grid;grid-template-columns:1.22fr 1fr;gap:56px;align-items:center}
.feedback-capture{min-width:0;border:5px solid #ffffffb3;border-radius:24px;overflow:hidden;background:#f5f5f8;box-shadow:0 20px 50px -26px #4e276142}
.feedback-capture iframe{display:block;border:0;width:100%;height:550px;pointer-events:none}
.discovery-reading{padding:36px;border:1px solid #ffffff80;border-radius:24px;background:#fffffff2}
.discovery-kicker{font-size:10px;letter-spacing:0;font-weight:650;color:#6929a5;display:flex;align-items:center;gap:10px}
.discovery-reading h3{font-size:34px;letter-spacing:-1px;line-height:1.2;margin:19px 0 16px}
.discovery-reading>p{font-size:14px;line-height:1.8;color:#64536f}
.competency{display:flex;gap:20px;padding-top:28px;margin-top:28px;border-top:1px solid #e7dced}
.competency>span{font-size:11px;color:#8652ad;padding-top:3px}
.competency h4{font-size:19px;font-weight:650;letter-spacing:-.3px;margin-bottom:5px}
.competency p{font-size:13px;line-height:1.7;color:#64536f}
.discovery-reading>.discovery-context{font-size:11px;line-height:1.7;color:#796584;margin-top:23px}
.discovery-role{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-block:100px;border-bottom:1px solid #eee8f3}
.role-question{padding:0;border:0;background:transparent;min-height:0;display:flex;flex-direction:column;justify-content:center}
.role-question .eyebrow{align-self:flex-start;padding:8px 13px;border-radius:30px;background:#f1eaf9;color:#6929a5}
.role-question-warm .eyebrow{background:#fff3e4;color:#835527}
.role-question h2{font-size:42px;line-height:1.2;letter-spacing:-1.6px;margin:25px 0}
.role-question h2 span{color:#6929a5}.role-question>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#705b7c;max-width:320px}
.role-delivery h3{font-size:28px;line-height:1.3;letter-spacing:-.8px;margin-bottom:18px}
.role-delivery>p{font-size:16px;line-height:1.8;color:#70677b}
.discovery-benefits{list-style:none;padding:0;margin:0;display:grid;gap:32px}
.discovery-benefits li{padding:0 0 0 22px;border-left:2px solid #ddc8ed}
.discovery-benefits strong{display:block;font-size:19px;margin-bottom:8px;font-weight:650}
.discovery-benefits span{display:block;max-width:380px;font-size:15px;line-height:1.7;color:#70677b}
.role-delivery>.text-link{font-size:13px;line-height:1.6}
.role-reverse .role-question{grid-column:2;grid-row:1}.role-reverse .role-delivery{grid-column:1;grid-row:1}
.lua-prompt{display:flex;gap:14px;background:#fff;border:1px solid #e8dcef;padding:22px;border-radius:18px;margin-top:12px}
.lua-prompt .icon{flex-shrink:0;color:#6929a5}.lua-prompt p{font-size:16px;line-height:1.6;color:#513569}
@media(max-width:1100px){.discovery-role{gap:35px}.role-question{padding:30px}.role-question h2{font-size:36px}.discovery-composition{gap:18px}.discovery-reading{padding:24px}.feedback-capture iframe{height:590px}}
@media(max-width:900px){.discovery-composition{grid-template-columns:1fr}.feedback-capture iframe{height:480px}.discovery-role{grid-template-columns:1fr;gap:28px;padding-bottom:70px}.role-reverse .role-question,.role-reverse .role-delivery{grid-column:auto;grid-row:auto}.role-question{min-height:0;padding:32px}.role-question h2{font-size:38px}.discovery-reading h3 br{display:none}}
@media(max-width:600px){.discovery-site .hero h1{font-size:38px;letter-spacing:-1.7px}.discovery-site .hero h1>br{display:none}.discovery-site .hero-description{font-size:16px}.discovery-heading h2{font-size:24px}.discovery-heading h2 span{font-size:19px}.feedback-capture{border-width:3px;border-radius:20px}.feedback-capture iframe{height:570px}.discovery-reading{padding:25px}.discovery-reading h3{font-size:30px}.discovery-heading{text-align:center}.discovery-role{padding-bottom:60px}.role-question h2{font-size:34px}.role-question{padding:26px}.role-delivery h3{font-size:26px}.discovery-site .cta-section small{font-size:12px}.discovery-preview{padding-bottom:24px}}
.discovery-site .feedback-capture iframe{height:480px}
.discovery-site .trust-section{margin-top:80px}
.discovery-site .discovery-role:last-of-type{border-bottom:0}
@media(max-width:1100px){.discovery-role{gap:60px}.discovery-composition{gap:32px}.role-question{padding:0}}
@media(max-width:900px){.discovery-role{padding-block:70px;gap:32px}.role-question{padding:0}.role-question h2{margin-bottom:8px}.discovery-reading{max-width:none}.discovery-site .trust-section{margin-top:60px}}
@media(max-width:600px){.discovery-site .feedback-capture iframe{height:clamp(450px,calc(900px - 100vw),560px)}}
/* Supporting copy remains readable on the light demonstration surfaces. */
/* Original Pekria symbol and a more readable navigation scale. */
/* Show the top of the product, cropped flush with the hero's lower edge. */
.product-captures{border:5px solid #ffffffb3;border-bottom:0;border-radius:22px 22px 0 0;overflow:hidden;background:#f5f5f8;box-shadow:0 20px 50px -26px #4e276142}
.product-canvas{width:100%;aspect-ratio:2.1;overflow:hidden;position:relative;background:#f5f5f8}
.product-canvas iframe{display:block;width:1400px;height:1000px;border:0;transform:scale(var(--capture-scale,1));transform-origin:top left;pointer-events:none}
.product-capture:focus-visible{outline:3px solid #621ca4;outline-offset:-3px}
/* Ten-second tours use the real, inert product screens as their moving stage. */
.product-captures{position:relative}
.product-motion-stage{position:absolute;left:0;top:0;width:1400px;height:1000px;transform-origin:0 0;will-change:transform}
.product-canvas .product-motion-stage iframe{position:absolute;inset:0;transform:none}
.product-motion-spotlight{position:absolute;z-index:3;pointer-events:none;border:2px solid #8240b7;border-radius:24px;box-shadow:0 0 0 1800px #28113e0a,0 8px 30px #621ca414;opacity:0}
.product-motion-pointer{position:absolute;z-index:4;width:20px;height:20px;border:5px solid white;background:#621ca4;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 2px 12px #30124855;pointer-events:none;opacity:0}
.product-motion-pointer span{position:absolute;inset:-9px;border:2px solid #621ca4;border-radius:50%}
.product-motion-controls{position:absolute;z-index:2;bottom:14px;left:18px;right:18px;display:flex;align-items:center;gap:12px;min-height:54px;padding:10px 14px 13px;border:1px solid #ffffffef;border-radius:16px;background:#fffffff5;box-shadow:0 6px 24px #30124814;color:#30213e;overflow:hidden}
.motion-caption{display:flex;align-items:center;gap:10px;min-width:0;margin-right:auto;font-size:13px;font-weight:550}
.motion-chapters{display:flex;gap:4px}
.product-motion-controls .motion-chapters button{width:32px;padding:4px;background:#f1edf5;color:#716879}
.product-motion-controls .motion-chapters button[aria-pressed=true]{background:#e7d8f3;color:#621ca4;box-shadow:inset 0 0 0 1px #c4a2df}
.motion-time{color:#716879;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}
.product-motion-controls button{flex-shrink:0;min-height:34px;border:0;border-radius:9px;padding:6px 12px;font-size:12px;font-weight:550}
.motion-toggle{background:#621ca4;color:#fff;min-width:83px}
.motion-replay{background:#f1edf5;color:#621ca4}
.motion-track{position:absolute;left:0;right:0;bottom:0;height:3px;background:#e8dfef}
.motion-track span{display:block;width:100%;height:100%;background:#8240b7;transform:scaleX(0);transform-origin:left}
@media(max-width:600px){.product-motion-controls{bottom:7px;left:7px;right:7px;gap:6px;padding:7px 8px 10px;border-radius:11px;flex-wrap:wrap}.motion-caption{flex-basis:100%;font-size:10px;gap:6px}.motion-chapter{width:20px;height:20px;border-radius:6px;font-size:9px}.motion-time{margin-right:auto;font-size:10px}.product-motion-controls button{min-height:30px;padding:4px 9px;font-size:10px}.motion-toggle{min-width:74px}}
@media(max-width:600px){.product-motion-controls{position:relative;left:auto;right:auto;bottom:auto;margin:0;border-radius:0;border-color:#eee5f6;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.product-motion-stage{will-change:auto}.product-motion-spotlight{display:none}}
.view-tabs button{min-height:50px;padding:10px 18px;gap:10px;font-size:14px;font-weight:550;color:#594369}
.view-tabs .icon{width:24px;height:24px;fill:none;stroke-width:1.5;color:#621ca4}
.view-tabs button[aria-selected=true]{color:#621ca4}
.view-tabs button[aria-selected=true] .icon{stroke-width:1.6}
@media(max-width:600px){.view-tabs button{min-height:46px;padding:8px 7px;gap:6px;font-size:11px}.view-tabs .icon{width:22px;height:22px}}
.hero-shell{padding-bottom:0;background:radial-gradient(circle,#6929a51f 1px,transparent 1.4px) 0 0/24px 24px,linear-gradient(to bottom,#fff 0%,#fff 8%,#f4edfb 28%,#ddc5f3 52%,#b18bdd 75%,#7636ad 100%);box-shadow:0 18px 48px -22px #54208730,0 4px 18px -8px #35115414}
@media(max-width:600px){.product-canvas{aspect-ratio:2}.product-captures{border-width:3px;border-bottom:0;border-radius:16px 16px 0 0}}
.brand{color:var(--deep);letter-spacing:-.8px;gap:10px}
.brand img,.connection-brand img,.phone-brand img{object-fit:contain;aspect-ratio:1;height:auto}
html{scroll-padding-top:128px}
.hero-shell:before{content:"";display:block;height:82px}
.hero-shell .site-header{position:fixed;top:20px;left:50%;transform:translateX(-50%);width:min(1600px,calc(100% - 80px));z-index:50;border:0;border-radius:0;background:transparent;box-shadow:none;display:grid;grid-template-columns:1fr auto 1fr;gap:24px;padding:0;min-height:60px}
@media(max-width:900px){html{scroll-padding-top:112px}.hero-shell:before{height:68px}.hero-shell .site-header{top:20px;width:calc(100% - 72px)}.site-header .main-nav{max-height:calc(100dvh - 112px);overflow-y:auto}}
@media(max-width:600px){html{scroll-padding-top:104px}.hero-shell:before{height:62px}.hero-shell .site-header{width:calc(100% - 44px)}}
.site-header .brand img{width:42px;height:42px}
.site-header .main-nav{display:contents;font-family:var(--font);font-size:13px;font-weight:400;text-transform:uppercase;letter-spacing:0}
.site-header .nav-links{display:flex;align-items:center;justify-content:center;justify-self:center;gap:30px;min-height:60px;padding:12px 28px;border:1px solid #e8e5eb;border-radius:100px;background:#ffffffbd;box-shadow:0 3px 16px #40205a08;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.site-header .nav-links a{color:#77727c;white-space:nowrap;padding-block:8px;transition:color .18s}
.site-header .nav-links a:hover{color:#6929a5}
.site-header .nav-actions{margin:0;gap:10px;white-space:nowrap;justify-self:end}
.site-header .login-link{font-size:13px;font-weight:400;background:#17131d;color:#fff;border-radius:100px;padding:14px 22px;min-height:48px;justify-content:center}
.site-header .button-small{font-family:inherit;font-size:13px;font-weight:600;min-height:48px;padding:13px 22px;background:#e6d5f5;color:#4e2374;border:1px solid #f5eaff;box-shadow:inset 0 1px 0 #fff9,0 7px 20px #6929a515}
@media(min-width:1101px) and (max-width:1500px){.hero-shell .site-header{grid-template-columns:auto 1fr auto}}
@media(min-width:1101px) and (max-width:1350px){.hero-shell .site-header{width:calc(100% - 48px);gap:16px;grid-template-columns:auto 1fr auto}.site-header .brand{font-size:25px}.site-header .brand img{width:34px;height:34px}.site-header .main-nav,.site-header .login-link,.site-header .button-small{font-size:11px}.site-header .nav-links{gap:18px;padding-inline:20px;min-height:54px}.site-header .login-link,.site-header .button-small{padding-inline:17px}}
/* Compact header and floating mobile panel, inspired by Human Academy. */
.mobile-header-login,.mobile-nav-label,.mobile-nav-resources,.mobile-nav-contact{display:none}
@media(max-width:1100px){
  .hero-shell .site-header{display:flex;justify-content:flex-start;gap:10px;top:16px;width:calc(100% - 40px);min-height:48px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
  /* Full-width frosted surface keeps the mobile brand legible over photos. */
  .hero-shell .site-header::before{content:"";position:absolute;inset:-16px -20px -12px;z-index:-1;pointer-events:none;background:rgba(241,238,247,.94);border-bottom:1px solid #ddd5e880;box-shadow:0 5px 22px #30203908;-webkit-backdrop-filter:blur(24px) saturate(125%);backdrop-filter:blur(24px) saturate(125%)}
  .site-header .brand{margin-right:auto;font-size:28px}
  .site-header .brand img{width:34px;height:34px}
  .mobile-header-login{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;height:48px;min-width:90px;padding:0 22px;border:1px solid #e9e5ee;border-radius:100px;background:#f8f6fbd9;color:#5b5860;font-size:14px;font-weight:400;line-height:1;text-transform:uppercase;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
  .site-header .menu-toggle{display:flex;flex-shrink:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:48px;height:48px;padding:0;border:1px solid #e9e5ee;background:#f8f6fbd9;border-radius:50%;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
  .site-header .menu-toggle span{width:17px;height:1.5px;border-radius:2px;background:#5b5860;transition:transform .22s ease,opacity .18s ease}
  .site-header .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(5.5px) rotate(45deg)}
  .site-header .menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
  .site-header .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-5.5px) rotate(-45deg)}
  .site-header .main-nav{display:flex;position:absolute;left:-8px;right:-8px;top:calc(100% + 12px);width:auto;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:22px 12px 12px;border:1px solid #63516e;border-radius:26px;background:linear-gradient(145deg,#33273e,#251b2e 80%);color:#f7f2fc;box-shadow:0 20px 60px #26123140,inset 0 1px 0 #ffffff0a;font-size:15px;font-weight:400;text-transform:none;max-height:calc(100dvh - 92px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#6c587b transparent;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px) scale(.98);transform-origin:top right;transition:opacity .22s ease,transform .26s cubic-bezier(.22,1,.36,1),visibility .26s}
  .site-header .main-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);display:flex;gap:0}
  .site-header .main-nav>*{flex-shrink:0}
  .site-header .mobile-nav-label{display:block;padding:0 8px;color:#b7a7c5;font-size:10px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;line-height:1.6}
  .site-header .nav-links{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 20px;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
  .site-header .nav-links a{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:10px 12px;border-radius:12px;color:#f7f2fc;white-space:normal;transition:background .18s}
  .site-header .nav-links a::after{content:'';width:18px;height:18px;flex-shrink:0;background:#aa96ba;-webkit-mask:url('/assets/arrow-up-right.svg') center/contain no-repeat;mask:url('/assets/arrow-up-right.svg') center/contain no-repeat;transform:rotate(45deg)}
  .site-header .nav-links a:hover{color:#fff;background:#ffffff0a}
  .mobile-nav-resources{display:block}
  .mobile-nav-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:10px}
  .mobile-nav-grid a{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:12px;border:1px solid #ffffff12;border-radius:14px;background:linear-gradient(145deg,#ffffff05,#ffffff02);box-shadow:inset 0 1px 3px #ffffff05;line-height:1.35;transition:background .18s,border-color .18s}
  .mobile-nav-grid a:hover{background:#ffffff0a;border-color:#ffffff30}
  .mobile-nav-grid .mobile-nav-art{display:block;flex-shrink:0;width:28px;height:28px;margin-bottom:7px;background-color:#d4bfe5;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}
  .mobile-nav-art-school{-webkit-mask-image:url('/assets/navigation/school.png');mask-image:url('/assets/navigation/school.png')}
  .mobile-nav-art-teacher{-webkit-mask-image:url('/assets/navigation/teacher.png');mask-image:url('/assets/navigation/teacher.png')}
  .mobile-nav-art-family{-webkit-mask-image:url('/assets/navigation/family.png');mask-image:url('/assets/navigation/family.png')}
  .mobile-nav-art-messages{-webkit-mask-image:url('/assets/navigation/messages.png');mask-image:url('/assets/navigation/messages.png')}
  .mobile-nav-grid strong{font-size:13px;font-weight:500;color:#f7f2fc}
  .mobile-nav-grid a>span{font-size:12px;color:#baacc6}
  .site-header .nav-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0 0;padding-top:12px;border-top:1px solid #ffffff12;white-space:normal}
  .site-header .button-small{grid-column:1/-1;grid-row:1;min-height:46px;padding:10px 14px;background:#e6d5f5;color:#38204c;border:1px solid #e6d5f5;box-shadow:none;font-size:14px;font-weight:500}
  .site-header .button-small::after{content:'';width:18px;height:18px;flex-shrink:0;background:currentColor;-webkit-mask:url('/assets/arrow-up-right.svg') center/contain no-repeat;mask:url('/assets/arrow-up-right.svg') center/contain no-repeat}
  .site-header .login-link,.site-header .mobile-nav-contact{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;border:1px solid #ffffff1a;border-radius:100px;background:transparent;color:#f1eaf7;font-size:12px;font-weight:400;text-align:center}
  .site-header .login-link{grid-column:2;grid-row:2}
  .site-header .mobile-nav-contact{grid-column:1;grid-row:2}
  .site-header .login-link:hover,.site-header .mobile-nav-contact:hover{background:#ffffff0a}
  .site-header .main-nav a:focus-visible{outline-color:#e6d5f5;outline-offset:-3px}
  html.mobile-menu-open{overflow:hidden}
  html.mobile-menu-open body{position:fixed;top:var(--menu-scroll-y);width:100%;overflow:hidden}
  .mobile-menu-open .cookie-notice,.mobile-menu-open .whatsapp-float{visibility:hidden}
}
@media(max-width:360px){.site-header .brand{font-size:26px;gap:8px}.site-header .brand img{width:32px;height:32px}}
@media(prefers-reduced-motion:reduce){.site-header .main-nav,.site-header .menu-toggle span{transition:none}}

.demo-side-label,.demo-school small,.demo-topbar,.demo-heading p,.record-demo small,.date-chip,.moment-card>small,.demo-footnote,.ui-muted,.student-row small,.context-line,.school-demo>p,.paper-header small,.paper-footer,.art-label,.timeline-date,.mini-timeline p,.phone-card>p,.evidence-number,.footer-top p,.footer-bottom{color:#75657f}
.feature-copy .eyebrow,.section-heading .eyebrow{font-weight:650}
.hero .hero-description strong{display:inline;margin:0;font-weight:700;color:#4d3b61}
.discovery-site .hero h1{font-family:var(--font);font-weight:600;letter-spacing:-.045em}
.discovery-site .hero h1 strong{font-weight:800;color:#6929a5}
@supports ((background-clip:text) or (-webkit-background-clip:text)){.discovery-site .hero h1 strong{background:linear-gradient(110deg,#542087 0%,#6929a5 45%,#9347be 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}}
@media(forced-colors:active){.discovery-site .hero h1 strong{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText}}
.discovery-site .hero-description{font-size:clamp(17px,1.5vw,19px)}
.hero-actions [data-demo-cta="hero"]{background:linear-gradient(110deg,#542087 0%,#7330a5 25%,#934ac3 45%,#7330a5 65%,#542087 100%);background-size:250% 100%;background-position:100% 50%;animation:hero-cta-gradient 5s ease-in-out infinite alternate}
@keyframes hero-cta-gradient{from{background-position:100% 50%}to{background-position:0% 50%}}
.hero-actions .hero-cta-arrow{width:24px;height:24px;stroke-width:1.8}
.coordinator-section{padding-block:100px;border-bottom:0}
.coordinator-heading{text-align:center;margin:0 auto 40px;max-width:990px}
.coordinator-heading .eyebrow{display:inline-block;letter-spacing:0;font-size:13px;font-weight:700;color:#6929a5;background:#f2eafa;padding:9px 16px;border-radius:30px}
.coordinator-heading h2{font-family:var(--font);font-size:clamp(34px,3.6vw,48px);font-weight:650;line-height:1.15;letter-spacing:-.035em;margin:23px 0 28px}
.coordinator-heading h2 span{color:#6929a5}
.coordinator-benefits{display:flex;justify-content:center;flex-wrap:wrap;gap:18px 46px;list-style:none;margin:0;padding:0;color:#7b7285;font-size:14px;font-weight:400;letter-spacing:0;text-transform:uppercase}
.coordinator-benefits li{display:flex;align-items:center;gap:11px}
.coordinator-benefits strong{color:#40344f;font-weight:750}
.coordinator-scene{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1.5;min-height:780px;border-radius:30px;background:#eee4da;box-shadow:0 18px 45px -28px #49256655}
.coordinator-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:left center}
.coordinator-examples{position:absolute;inset:30px 3% 30px auto;width:43%;display:flex;flex-direction:column;justify-content:center;gap:14px}
.coordinator-card{padding:22px 25px;background:#fffffff5;border:1px solid #ffffffbf;border-radius:22px;box-shadow:inset 0 1px 0 #fffffff2,inset 0 -1px 0 #ffffff59,0 12px 30px -14px #39264540}
.coordinator-card-label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#6929a5;font-size:12px;font-weight:700;margin:0 0 12px;line-height:1.4}
.coordinator-card-label span{color:#82758d;font-size:10px;font-weight:400}
.coordinator-card h3{font-family:var(--display);font-size:clamp(18px,1.65vw,23px);font-weight:700;line-height:1.25;letter-spacing:-.6px;margin:0 0 10px}
.coordinator-card>p:last-child{font-size:14px;line-height:1.65;color:#756780;margin:0}
.coordinator-card strong{font-weight:600;color:#4e3c60}
.coordinator-card-step{background:#fbf8fff5;margin-left:18px}
.coordinator-card-potential{background:#f3eafbf5}
.student-card-profile{display:flex;align-items:center;gap:14px;margin:0 0 15px}
.student-card-avatar{width:64px;height:64px;border-radius:18px;object-fit:cover;flex-shrink:0}
.student-card-profile h3{margin:0 0 5px;font-size:23px}
.student-card-profile p{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin:0;font-size:12px;color:#756780}
.student-card-profile p span{background:#ffc928;color:#513600;border-radius:6px;padding:3px 7px;font-size:10px;font-weight:600}
.student-observation{padding:11px 14px;border-radius:12px;background:#f7f3fa80;box-shadow:inset 0 1px 0 #ffffff9c}
.student-observation>strong{display:block;font-size:13px;font-weight:650}
.student-observation p{font-size:12px;line-height:1.55;margin:3px 0 0;color:#756780}
.student-observation b{font-weight:600;color:#4e3c60}
.student-card-note{display:block;margin-top:10px;color:#82758d;font-size:10px;line-height:1.5}
.student-step-heading{display:flex;align-items:center;gap:11px;margin-bottom:13px}
.student-step-heading img{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}
.student-step-heading h3{font-size:19px;line-height:1.3;margin:0}
.student-next-steps{margin:0;display:grid;gap:10px;padding-left:17px;border-left:2px solid #ddc7ed}
.student-next-steps dt{color:#6929a5;font-size:11px;font-weight:700;margin-bottom:3px}
.student-next-steps dd{margin:0;color:#756780;font-size:12px;line-height:1.5}
.student-potential-heading{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.student-potential-heading img{width:60px;height:60px;object-fit:contain;flex-shrink:0}
.student-potential-heading h3{font-size:20px;margin:0 0 5px}
.student-potential-heading p{font-size:11px;color:#756780;margin:0}
.student-talent-tags{display:flex;flex-wrap:wrap;list-style:none;gap:7px;padding:0;margin:0 0 12px}
.student-talent-tags li{border:1px solid #ffffffb3;background:#ffffff40;box-shadow:inset 0 1px 0 #ffffff80,0 2px 6px #49256608;color:#6929a5;border-radius:20px;font-size:11px;padding:5px 10px}
.coordinator-card-potential>p:last-child{font-size:12px;line-height:1.55}
.teacher-section{width:100%;margin-block:0;padding:64px 0 78px;background:linear-gradient(155deg,#fff8ed 0%,#ffe2c4 32%,#f5b89e 70%,#e9b4ce 100%);color:#382b32}
.teacher-content{padding-inline:38px}
.teacher-heading{text-align:center;margin:0 auto 34px;max-width:850px}
.teacher-heading .eyebrow{letter-spacing:0;font-size:12px;color:#88471f}
.teacher-heading h2{font-size:clamp(32px,3.5vw,46px);line-height:1.2;margin:18px 0}
.teacher-heading h2 span{color:#a7522b}
.teacher-heading>p:last-child{font-size:18px;line-height:1.7;color:#796256;max-width:740px;margin-inline:auto}
.teacher-heading>p:last-child strong{font-weight:650;color:#624536}
.teacher-scene{overflow:hidden;border-radius:24px;background:#e9c7ae}
.teacher-photo{width:100%;height:500px;object-fit:cover;object-position:center 30%}
.teacher-cards{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:stretch;gap:14px;margin:-85px 20px 0}
.teacher-card{padding:24px;border:1px solid #ffffffc9;border-radius:20px;background:#fffcf7;box-shadow:0 12px 28px -18px #663e4845;min-width:0}
.teacher-card-label{display:flex;flex-direction:column;gap:5px;font-size:10px;letter-spacing:0;line-height:1.4;font-weight:700;color:#985326;margin-bottom:20px}
.teacher-card-label>span{align-self:flex-start;font-weight:500;letter-spacing:0;color:#806b60;font-size:11px;background:#f3eae2;border-radius:6px;padding:3px 8px;margin-top:3px}
.teacher-card h3{font-size:21px;line-height:1.3;letter-spacing:-.6px;margin-bottom:15px}
.teacher-card>p:not(.teacher-card-label){font-size:13px;line-height:1.65;color:#735f55}
.teacher-method{margin-top:24px;padding:16px 18px;background:#ffe1b9;border-radius:12px;display:flex;flex-direction:column;gap:6px}
.teacher-method span{font-size:11px;color:#815023}
.teacher-method strong{font-size:17px;color:#994a25}
.teacher-student-card{background:#fff}
.teacher-student{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.teacher-student img{flex-shrink:0;width:48px;height:48px;object-fit:cover;border-radius:50%}
.teacher-student h3{font-size:19px;margin:0}
.teacher-progress{display:grid;gap:10px}
.teacher-progress p{padding:13px 15px;border-radius:12px;background:#f6f3f8;font-size:12px;line-height:1.65;color:#756780}
.teacher-progress .teacher-progress-result{background:#e9d9fa}
.teacher-progress span{display:block;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:0;color:#77518d;margin-bottom:5px}
.teacher-progress strong{font-weight:600;color:#553665}
.teacher-plan-card{background:#7135a0;color:white;border-color:#a871c5}
.teacher-plan-card .teacher-card-label{color:#fff}
.teacher-plan-card .teacher-card-label>span{color:#fff;background:#ffffff24}
.teacher-plan-card>p:not(.teacher-card-label){color:#f7edff}
.teacher-activity{background:#f5eaff;color:#48225f;border-radius:12px;padding:16px 18px}
.teacher-activity>span{display:block;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:0;color:#754194;margin-bottom:7px}
.teacher-activity p{font-size:13px;line-height:1.65;font-weight:550}
.teacher-plan-note{margin-top:18px}
.teacher-plan-note strong{display:block;font-size:11px;color:#fff;margin-bottom:5px}
.teacher-decision{display:block;font-size:11px;font-weight:600;color:#fff;margin-top:20px}
.teacher-disclaimer{text-align:center;font-size:10px;color:#846d60;margin-top:22px}
@media(max-width:1100px){.teacher-section{padding:48px 0 75px}.teacher-content{padding-inline:24px}.teacher-cards{margin-inline:0;gap:12px}.teacher-card{padding:20px}.teacher-card h3{font-size:19px}}
@media(max-width:900px){.teacher-photo{height:auto;aspect-ratio:1.6}.teacher-cards{grid-template-columns:1fr;margin:-30px 18px 0}.teacher-card{padding:26px}.teacher-card h3{font-size:23px}.teacher-card-label{flex-direction:row;justify-content:space-between;gap:12px}.teacher-method{margin-top:18px}.teacher-heading h2 br{display:none}}
@media(max-width:600px){.teacher-section{padding:38px 0 52px;margin-block:0}.teacher-content{padding-inline:12px}.teacher-heading{padding-inline:10px;margin-bottom:26px}.teacher-heading h2{font-size:31px;letter-spacing:-1.2px}.teacher-heading>p:last-child{font-size:16px}.teacher-scene{border-radius:18px}.teacher-photo{aspect-ratio:1.15;object-position:center}.teacher-cards{margin:-20px 8px 0;gap:12px}.teacher-card{padding:22px;border-radius:18px}.teacher-card h3{font-size:22px}.teacher-card-label{font-size:9px}.teacher-disclaimer{padding-inline:10px}}
.family-bento-section{padding:88px 0 92px;background:radial-gradient(ellipse at 85% 15%,#8953b340,transparent 55%),linear-gradient(145deg,#1d142b 0%,#3d2058 45%,#6a3694 100%);color:#fff}
.family-bento-wrap{width:min(1320px,calc(100% - 96px))}
.family-bento-heading{text-align:center;max-width:850px;margin:0 auto 46px}
.family-bento-heading .eyebrow{color:#d6b4f3;letter-spacing:0;font-size:12px}
.family-bento-heading h2{font-family:var(--font);font-size:clamp(36px,4vw,54px);font-weight:600;line-height:1.12;margin:20px 0;letter-spacing:-1.7px}
.family-bento-heading h2 span{color:#cba2ee}
.family-bento-heading>p:last-child{color:#d5c9df;font-size:18px;line-height:1.7}
.family-bento-grid{display:grid;grid-template-columns:1fr 1fr 2.05fr;gap:18px;align-items:stretch}
.family-bento-card{min-width:0;border:1px solid #ffffff20;border-radius:24px;padding:28px;background:linear-gradient(135deg,#ffffff0b,#ffffff03),#281e37;overflow:hidden}
.family-bento-card h3{font-size:25px;line-height:1.25;letter-spacing:-.7px;font-weight:600;margin:16px 0 12px}
.family-bento-card>p,.family-lua-content>p{font-size:16px;line-height:1.7;color:#d5c9df}
.family-bento-label{display:block;font-size:12px;letter-spacing:0;font-weight:650;color:#d8b6f4}
.family-bento-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.family-day-card .family-bento-label{color:#fff;font-weight:700}
.family-day-card{grid-column:1/3}
.family-day-card h3{font-size:29px}
.family-day-note{margin-top:23px;padding:18px 20px;border-radius:14px;background:#efe2fa;color:#432654}
.family-day-note>span,.family-home-idea>span{font-size:11px;font-weight:650;letter-spacing:0}
.family-day-note p{font-size:16px;line-height:1.65;margin-top:6px}
.family-day-note strong{font-weight:650}
.family-bento-art{width:88px;height:88px;object-fit:contain;margin-bottom:18px;flex-shrink:0}
.family-card-identity{display:flex;align-items:center;gap:16px}
.family-card-identity .family-bento-art{margin-bottom:0;width:76px;height:76px}
.family-day-card .family-bento-card-top{align-items:center}
.family-conversation-starter{margin-top:18px;padding-left:16px;border-left:2px solid #b67bdf}
.family-conversation-starter>span,.family-talent-example>span{display:block;font-size:11px;letter-spacing:0;font-weight:650;color:#d8b6f4}
.family-conversation-starter p{font-size:16px;color:#f0e6f7;margin-top:6px;line-height:1.6}
.family-talent-card,.family-home-card{display:flex;flex-direction:column;align-items:flex-start}
.family-talent-example{margin-top:22px;padding:16px;border:1px solid #bc8bdb40;border-radius:14px;background:#8654ad26;width:100%}
.family-talent-example strong{display:block;font-size:17px;margin:9px 0 6px;color:#f0daff}
.family-talent-example p{font-size:14px;line-height:1.7;color:#d5c5e0}
.family-home-idea strong{display:block;margin-top:9px;font-size:16px;line-height:1.4}
.family-talent-card h3,.family-home-card h3{font-size:22px}
.family-home-card{background:#f8e8d6;color:#432e26;border-color:#ffe9cd}
.family-home-card .family-bento-label{color:#8d4a26}
.family-home-card>p{color:#796052}
.family-home-idea{background:#ffdab0;border-radius:12px;padding:15px;margin-top:20px;color:#74401f}
.family-home-idea p{font-size:14px;line-height:1.6;margin-top:7px}
.family-lua-card{grid-column:3;grid-row:1/3;display:flex;flex-direction:column;padding:0;background:linear-gradient(145deg,#4d2a6b,#2b1c3d)}
.family-lua-photo{position:relative;height:260px;flex-shrink:0;overflow:hidden}
.family-lua-photo>img{width:100%;height:100%;object-fit:cover;object-position:15% 38%}
.family-lua-photo-label{position:absolute;left:22px;bottom:18px;background:#261536a8;border:1px solid #ffffff66;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:8px 13px;border-radius:30px;color:white;font-size:9px;letter-spacing:0}
.family-lua-content{--lua-content-padding:28px;padding:var(--lua-content-padding);display:flex;flex-direction:column;flex:1;min-height:0}
.family-lua-content h3{font-size:27px}
.family-lua-intro{display:flex;align-items:center;gap:6px;flex-shrink:0;margin:calc(-1 * var(--lua-content-padding)) calc(-1 * var(--lua-content-padding)) 18px;padding:28px var(--lua-content-padding);background:linear-gradient(120deg,#f5edfc,#e8d8f6);color:#30213f}
.family-lua-intro h3{margin-bottom:0;color:#30213f}
.family-lua-intro .family-bento-label{color:#7032a0}
.family-lua-mascot{width:138px;height:115px;object-fit:contain;flex-shrink:0;margin-left:-28px;filter:drop-shadow(0 8px 18px #b46aff40)}
.family-lua-intro>div{min-width:0}
.family-lua-conversation{margin-top:8px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.family-chat-toolbar{display:flex;justify-content:flex-end;min-height:32px}
.family-chat-toggle{display:grid;place-items:center;width:32px;height:32px;border:1px solid #ffffff40;border-radius:50%;background:#ffffff0d;color:#e9d8f7}
.family-chat-toggle:hover{background:#ffffff20}
.family-chat-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-play-icon{display:none}
.family-chat-toggle[aria-pressed=true] .chat-play-icon{display:block}
.family-chat-toggle[aria-pressed=true] .chat-pause-icon{display:none}
/* A clipped animation stage: page scrolling stays native, messages move themselves. */
.family-lua-conversation{height:auto;overflow:visible;padding:4px 0 16px;position:relative;display:block}
.is-motion-ready .family-lua-conversation{flex:1;height:0;min-height:360px;overflow:clip}
.family-chat-transcript,.family-chat-stream{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%}
.family-chat-stream{display:none}
.is-motion-ready .family-chat-stream{display:flex;position:absolute;top:4px;left:0;transition:transform .35s ease-out;will-change:transform}
.is-motion-ready .family-chat-transcript{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.family-chat-stream>div{flex-shrink:0}
.family-chat-typing{display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:3px 0}
.family-chat-typing i{width:5px;height:5px;background:currentColor;border-radius:50%;opacity:.45;animation:lua-typing-dot 1s ease-in-out infinite;animation-play-state:paused}
.family-chat-typing i:nth-child(2){animation-delay:.15s}.family-chat-typing i:nth-child(3){animation-delay:.3s}
.is-playing .family-chat-typing i{animation-play-state:running}
p.is-typing:after{content:"";display:inline-block;width:2px;height:1em;background:currentColor;margin-left:3px;vertical-align:-.1em;opacity:.65}
p.is-typing:has(.family-chat-typing):after{display:none}
@keyframes lua-typing-dot{50%{opacity:1;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.family-chat-toolbar{display:none}.family-chat-typing i{animation:none}}
@media(max-width:900px){.is-motion-ready .family-lua-conversation{flex:none;height:400px;min-height:0}}
.family-chat-question{align-self:flex-end;background:#a76bd1;color:#fff;padding:12px 16px;border-radius:16px 16px 4px 16px;font-size:13px;line-height:1.6;max-width:90%}
.family-chat-answer{background:#f5edfc;color:#483156;padding:16px 18px;border-radius:16px 16px 16px 4px;max-width:95%}
.family-chat-answer>span{color:#7838a7;font-size:11px;font-weight:700}
.family-chat-answer p{font-size:13px;line-height:1.7;margin-top:5px}
.family-chat-parent{align-self:flex-end;max-width:86%;display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.family-chat-parent>span{font-size:10px;color:#d7c2e6;padding-right:5px}
.family-chat-parent .family-chat-question{max-width:100%;background:#8c48ba}
.family-chat-lua{display:flex;align-items:flex-end;gap:8px;width:94%}
.family-chat-lua .family-chat-answer{max-width:none;flex:1;padding:13px 16px}
.family-chat-avatar{position:relative;display:block;width:36px;height:42px;flex-shrink:0;overflow:hidden}
.family-chat-avatar img{position:absolute;width:82px;height:55px;max-width:none;left:-23px;top:-7px;object-fit:contain}
@media(max-width:1100px){.family-lua-mascot{width:106px;height:98px;margin-left:-22px}.family-lua-intro h3{font-size:23px}}
@media(max-width:600px){.family-lua-intro h3{font-size:24px}.family-chat-parent{max-width:92%}.family-chat-lua{width:100%}.family-chat-lua .family-chat-answer{padding:12px 14px}}
@media(max-width:1100px){.family-bento-card{padding:22px}.family-lua-card{padding:0}.family-lua-content{--lua-content-padding:24px;padding:var(--lua-content-padding)}.family-bento-grid{gap:14px}.family-bento-card h3{font-size:23px}.family-talent-card h3,.family-home-card h3{font-size:20px}.family-bento-card-top{align-items:flex-start;flex-direction:column;gap:7px}}
@media(max-width:900px){.family-bento-wrap{width:calc(100% - 48px)}.family-bento-grid{grid-template-columns:1fr 1fr}.family-lua-card{grid-column:1/3;grid-row:auto;display:grid;grid-template-columns:1fr 1fr}.family-lua-photo{height:100%;min-height:400px}.family-lua-photo>img{object-position:20% center}.family-bento-card-top{flex-direction:row}.family-bento-section{padding-block:64px}}
@media(max-width:600px){.family-bento-wrap{width:calc(100% - 40px)}.family-bento-section{padding-block:50px}.family-bento-heading{margin-bottom:30px}.family-bento-heading h2{font-size:37px}.family-bento-heading>p:last-child{font-size:16px}.family-bento-grid{grid-template-columns:1fr}.family-day-card,.family-lua-card{grid-column:auto}.family-bento-card{border-radius:20px;padding:24px}.family-bento-card h3{font-size:25px}.family-bento-card-top{flex-direction:column}.family-lua-card{display:block;padding:0}.family-lua-photo{height:230px;min-height:0}.family-lua-content{--lua-content-padding:24px;padding:var(--lua-content-padding)}.family-bento-art{margin-bottom:14px}.family-home-time{min-height:0;margin-bottom:22px}}
@media(min-width:901px){.coordinator-section.wrap,.teacher-content.wrap{width:min(1320px,calc(100% - 96px))}.teacher-content.wrap{padding-inline:0}}
.family-summary-card,.family-skill-card{border-color:#ffffffbf;box-shadow:inset 0 1px 0 #fffffff2,inset 0 -1px 0 #ffffff59,0 12px 30px -14px #39264540}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .coordinator-card,.family-summary-card,.family-skill-card{background:linear-gradient(145deg,#ffffffb8 0%,#ffffff73 55%,#ffffff52 100%),var(--card-glass-tint,#ffffff1f);-webkit-backdrop-filter:blur(24px) saturate(125%);backdrop-filter:blur(24px) saturate(125%)}
  .family-skill-card{--card-glass-tint:#dec2f54d}
  .coordinator-card-step{--card-glass-tint:#eee1ff38}
  .coordinator-card-potential{--card-glass-tint:#dec2f54d}
  .student-talent-tags li{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
}
@media(prefers-reduced-transparency:reduce){.coordinator-card,.family-summary-card,.family-skill-card{background:#fcf9ff;-webkit-backdrop-filter:none;backdrop-filter:none}.student-talent-tags li{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}}
@media(forced-colors:active){.coordinator-card,.family-summary-card,.family-skill-card,.student-talent-tags li{background:Canvas;border-color:CanvasText;-webkit-backdrop-filter:none;backdrop-filter:none}}
@media(max-width:1100px){.coordinator-scene{aspect-ratio:1.4;min-height:800px}.coordinator-examples{width:46%;inset-block:24px}.coordinator-card{padding:20px}.coordinator-card-step{margin-left:0}}
@media(max-width:900px){.coordinator-section{padding-block:70px}.coordinator-scene{aspect-ratio:auto;min-height:0;background:#f4eef9}.coordinator-photo{height:auto;aspect-ratio:1.6;object-fit:cover;object-position:left center}.coordinator-examples{position:relative;inset:auto;width:auto;margin:-55px 24px 24px;gap:14px}.coordinator-card{position:relative;max-width:580px;width:100%;align-self:center}.coordinator-card h3{font-size:22px}.coordinator-heading h2 br{display:none}}
@media(max-width:600px){.coordinator-section{padding-block:60px}.coordinator-heading{margin-bottom:28px}.coordinator-heading .eyebrow{font-size:12px}.coordinator-heading h2{font-size:34px;margin-top:20px}.coordinator-benefits{gap:10px 18px;font-size:13px}.coordinator-scene{border-radius:22px}.coordinator-photo{aspect-ratio:1.1;object-fit:cover;object-position:left center}.coordinator-examples{margin:-22px 12px 14px;gap:12px}.coordinator-card{padding:20px;border-radius:18px}.coordinator-card h3{font-size:21px}.coordinator-card-label{font-size:11px}.coordinator-card-label span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover{transform:none}}

/* Floating contact: animated rings stay behind the WhatsApp symbol. */
.whatsapp-float{position:fixed;right:30px;bottom:30px;z-index:45;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#963bd4,#602099);color:#fff;box-shadow:0 6px 24px #55208440;isolation:isolate;transition:transform .2s}
.whatsapp-float svg{width:33px;height:33px}
.whatsapp-float::before,.whatsapp-float::after{content:"";position:absolute;inset:-5px;border:2px solid #963bd4;border-radius:50%;z-index:-1;pointer-events:none;animation:whatsapp-pulse 2.8s ease-out infinite}
.whatsapp-float::after{animation-delay:1.4s}
.whatsapp-float:hover{transform:translateY(-3px)}
@keyframes whatsapp-pulse{0%{transform:scale(.92);opacity:.5}100%{transform:scale(1.45);opacity:0}}
@media(max-width:600px){.whatsapp-float{width:56px;height:56px;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px))}.whatsapp-float svg{width:29px;height:29px}}
@media(prefers-reduced-motion:reduce){.whatsapp-float::before,.whatsapp-float::after{animation:none;opacity:.2}.whatsapp-float::after{display:none}.whatsapp-float{transition:none}}

.footer-group{min-width:0;text-align:center}
.footer-group-content{display:flex;flex-direction:column;align-items:center}
.footer-group-content a{justify-content:center;text-align:center}
.footer-group summary{list-style:none;cursor:default}
.footer-group summary::-webkit-details-marker{display:none}
.footer-chevron{display:none}
@media(max-width:600px){
  .footer-navigation{grid-template-columns:1fr;gap:0;padding:14px 0 24px}
  .footer-group{border-bottom:1px solid #ffffff20}
  .footer-group summary{position:relative;display:flex;align-items:center;justify-content:center;min-height:62px;cursor:pointer;padding:18px 28px}
  .footer-navigation .footer-group h3{margin:0;font-size:16px}
  .footer-chevron{position:absolute;right:4px;top:calc(50% - 6px);display:block;width:9px;height:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-right:4px;transition:transform .2s}
  .footer-group[open] .footer-chevron{transform:rotate(225deg)}
  .footer-group-content{padding:0 0 22px}
  .footer-store-badges{flex-direction:row;flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.footer-chevron{transition:none}}

/* Center the footer identity and store availability beneath the signoff. */
.discovery-footer .footer-intro{flex-direction:column;align-items:center;gap:16px;text-align:center}
.discovery-footer .footer-signoff{flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}
.footer-signoff .footer-apps{margin-top:14px}
.footer-signoff .footer-apps-label{font-size:12px;margin-bottom:14px}
.footer-signoff .footer-store-badges{flex-direction:row;justify-content:center;gap:12px}
.footer-signoff .footer-store-badge{width:190px;min-height:62px;padding:10px 18px;gap:12px;background:#09090b;border:1px solid #ffffff30;border-radius:14px;text-align:left}
.footer-store-badge>span{display:flex;flex-direction:column;gap:2px}
.footer-store-badge small{font-size:11px;font-weight:500;color:#c5c5ca}
.footer-store-badge strong{font-size:22px;font-weight:650;letter-spacing:-.5px}
.footer-signoff .footer-store-badge svg{width:29px;height:32px}
@media(max-width:600px){
 .discovery-footer{padding-bottom:100px}
 .footer-group:last-child{border-bottom:0}
 .footer-signoff .footer-store-badges{flex-wrap:nowrap;gap:8px}
 .footer-signoff .footer-store-badge{width:155px;min-height:56px;padding:9px 12px;gap:9px}
 .footer-store-badge strong{font-size:18px}
 .footer-store-badge small{font-size:10px}
 .footer-signoff .footer-store-badge svg{width:24px;height:28px}
}
@media(max-width:359px){.footer-signoff .footer-store-badge{width:140px;padding:9px}.footer-store-badge strong{font-size:16px}}

/* Shared translucent pills, matching the observed-potential tags. */
:is(.student-talent-tags li,.student-card-profile p span,.coordinator-heading .eyebrow,.teacher-card-label>span,.teacher-plan-card .teacher-card-label>span,.family-lua-photo-label){
 border:1px solid #fff;
 border-radius:999px;
 background:#ffffffc7;
 color:#6929a5;
 padding:6px 12px;
 box-shadow:inset 0 1px 0 #ffffffb3,0 2px 6px #49256608;
 -webkit-backdrop-filter:blur(8px);
 backdrop-filter:blur(8px);
}
@media(prefers-reduced-transparency:reduce){
 :is(.student-talent-tags li,.student-card-profile p span,.coordinator-heading .eyebrow,.teacher-card-label>span,.family-lua-photo-label){background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}
}
@media(forced-colors:active){
 :is(.student-talent-tags li,.student-card-profile p span,.coordinator-heading .eyebrow,.teacher-card-label>span,.family-lua-photo-label){background:Canvas;color:CanvasText;border-color:CanvasText;-webkit-backdrop-filter:none;backdrop-filter:none}
}



/* Compact privacy controls, separate from the floating contact button. */
.cookie-notice[hidden]{display:none}
.cookie-notice{position:fixed;bottom:24px;left:24px;z-index:1000;width:min(430px,calc(100vw - 48px));padding:22px;background:#f5f4f7;color:#29232f;border:1px solid #e2dfe7;border-radius:24px;box-shadow:0 12px 48px #25123526;text-align:left}
.cookie-notice h2{font-size:18px;line-height:1.3;font-weight:650;margin:0 0 8px;letter-spacing:0}
.cookie-notice p,.cookie-dialog p{font-size:14px;line-height:1.6;color:#615a69;margin:0 0 18px}
.cookie-notice a,.cookie-policy{color:#532083;text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;align-items:center;gap:8px}
.cookie-actions button,.cookie-save{font:inherit;font-size:13px;font-weight:600;border:0;border-radius:12px;padding:12px 14px;cursor:pointer;min-height:44px}
.cookie-preferences{background:transparent;color:#615a69;margin-right:auto;padding-left:0!important}
.cookie-essential{background:#e8e5ed;color:#322b39}
.cookie-accept{background:linear-gradient(110deg,#59208c,#8235af);color:white}
.cookie-actions button:hover,.cookie-save:hover{filter:brightness(.95)}
.footer-cookie-settings{font:inherit;color:inherit;background:none;border:0;padding:0;text-align:inherit;cursor:pointer}
.cookie-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:28px;border:1px solid #e2dfe7;border-radius:26px;background:#fff;color:#29232f;box-shadow:0 24px 80px #25123530;margin:auto}
.cookie-dialog::backdrop{background:#24153066;backdrop-filter:blur(4px)}
.cookie-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.cookie-dialog h2{font-size:24px;line-height:1.2;margin:0;letter-spacing:0}
.cookie-close{border:0;background:#f4f3f6;border-radius:50%;width:40px;height:40px;font-size:26px;color:#615a69;cursor:pointer;flex-shrink:0}
.cookie-category{padding:18px;background:#f5f4f7;border-radius:16px;margin-bottom:18px}
.cookie-category>div{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.cookie-category h3{font-size:16px;margin:0}
.cookie-category span{font-size:12px;color:#532083;font-weight:600}
.cookie-category p{margin:0}
.cookie-policy{font-size:14px}
.cookie-save{display:block;width:100%;margin-top:24px}
.cookie-notice button:focus-visible,.cookie-dialog button:focus-visible,.footer-cookie-settings:focus-visible{outline:3px solid #9c6ac6;outline-offset:3px}
@media(max-width:600px){.cookie-notice{left:12px;bottom:90px;width:calc(100vw - 24px);padding:18px;border-radius:20px}.cookie-actions{gap:6px}.cookie-actions button{padding:11px 10px;font-size:12px}.cookie-dialog{padding:22px}}

/* Social profiles, centered alongside the footer identity. */
.footer-social{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:24px 0 32px}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 18px;border:1px solid #ffffff30;border-radius:999px;background:#ffffff0a;color:#fff;text-decoration:none;font-size:15px;transition:background .2s,border-color .2s}
.footer-social svg{width:20px;height:20px;flex-shrink:0}
.footer-social a:hover{background:#ffffff18;border-color:#ffffff70}
.footer-social a:focus-visible{outline:3px solid #d6b2f3;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.footer-social a{transition:none}}

/* Quiet texture at the closing invitation, with a clear reading area. */
.discovery-closing::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='164' height='164' viewBox='0 0 164 164'%3E%3Crect x='3' y='3' width='158' height='158' rx='24' fill='none' stroke='%23774499' stroke-opacity='.14'/%3E%3Ccircle cx='82' cy='82' r='1.5' fill='%23774499' fill-opacity='.15'/%3E%3C/svg%3E");
  -webkit-mask-image:radial-gradient(ellipse at center,transparent 24%,#000 85%);
  mask-image:radial-gradient(ellipse at center,transparent 24%,#000 85%);
}
.hero .button,.closing-copy .button {position:relative;overflow:hidden;isolation:isolate}
@media (prefers-reduced-motion:no-preference) {
  .site-header .brand img {animation:brand-arrive 650ms cubic-bezier(.22,1,.36,1) both}
  .hero .button::after,.closing-copy .button::after {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(110deg,transparent 35%,#ffffff24 50%,transparent 65%);
    transform:translateX(-120%);
    animation:cta-glint 8s ease-in-out infinite;
  }
  .closing-copy .button::after {animation-delay:2s}
  @keyframes brand-arrive {
    from {opacity:0;transform:translateY(5px) scale(.94)}
    to {opacity:1;transform:translateY(0) scale(1)}
  }
  @keyframes cta-glint {
    0%,70% {transform:translateX(-120%)}
    88%,100% {transform:translateX(120%)}
  }
}
@media (max-width:600px) {
  .discovery-closing::before {background-size:112px 112px;opacity:.65}
}

/* Rounded-square texture over the family section's purple gradient. */
.family-bento-section { position:relative; isolation:isolate; }
.family-bento-section::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.45;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='164' height='164' viewBox='0 0 164 164'%3E%3Crect x='3' y='3' width='158' height='158' rx='24' fill='none' stroke='%23e5ccff' stroke-opacity='.13'/%3E%3Ccircle cx='82' cy='82' r='1.5' fill='%23e5ccff' fill-opacity='.15'/%3E%3C/svg%3E");
  -webkit-mask-image:radial-gradient(ellipse at 50% 160px,transparent 12%,#000 80%);
  mask-image:radial-gradient(ellipse at 50% 160px,transparent 12%,#000 80%);
}
@media (max-width:600px) {
  .family-bento-section::before { background-size:112px 112px; opacity:.3; }
}

/* Compact, touch-friendly card groups on phones. Desktop composition is preserved. */
.family-information-cards { display: contents; }
.mobile-card-pagination { display: none; }
@media (max-width: 600px) {
  .family-hero-cards, .coordinator-examples, .teacher-cards,
  .family-information-cards {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 0;
    gap: 12px;
    padding: 0 0 4px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .family-hero-cards::-webkit-scrollbar, .coordinator-examples::-webkit-scrollbar,
  .teacher-cards::-webkit-scrollbar, .family-information-cards::-webkit-scrollbar { display: none; }
  .family-hero-cards > article, .coordinator-examples > article,
  .teacher-cards > article, .family-information-cards > article {
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
    align-self: stretch;
    box-sizing: border-box;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
  .family-information-cards { min-width: 0; width: 100%; }
  .mobile-card-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 8px 0 18px;
  }
  .mobile-card-pagination button {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }
  .mobile-card-pagination button::after {
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 99px;
    background: #b5a4c8;
    transition: width .2s, background .2s;
  }
  .mobile-card-pagination button[aria-current="true"]::after {
    width: 22px;
    background: #782bb4;
  }
  .mobile-card-pagination button:focus-visible { outline: 2px solid #9254c1; outline-offset: 2px; border-radius: 10px; }
  .family-bento-grid > .mobile-card-pagination { margin-top: -18px; padding-bottom: 0; }
  .family-bento-grid > .mobile-card-pagination button[aria-current="true"]::after { background: #e2bbff; }
}
