@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{--navy: #102a43;--navy-2: #071d31;--blue: #176b87;--blue-dark: #0e526c;--blue-light: #e8f5f7;--teal: #149481;--teal-light: #e6f7f3;--green: #247b57;--green-light: #e8f6ee;--orange: #b95f16;--orange-light: #fff3df;--red: #b4232c;--red-light: #fff0f1;--purple: #6d5ba7;--purple-light: #f1eff9;--bg: #f5f7f9;--text: #243447;--muted: #66788a;--border: #dce4e9;--white: #fff;--shadow: 0 20px 50px rgba(16, 42, 67, .09);--radius: 14px;--radius-lg: 24px;--max: 1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font-family:DM Sans,system-ui,sans-serif;line-height:1.55}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--navy);font-family:Manrope,system-ui,sans-serif;line-height:1.14}h1{font-size:clamp(2.1rem,4vw,4.2rem);letter-spacing:-.045em}h2{letter-spacing:-.025em}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(23,107,135,.3);outline-offset:3px}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.eyebrow{margin-bottom:8px;color:var(--teal);font-size:.75rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #bedce2;border-radius:99px;padding:7px 12px;background:#ffffffc2;color:var(--blue-dark);font-size:.82rem;font-weight:700}.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:9px;padding:9px 16px;font-weight:700;cursor:pointer;transition:.18s ease}.button svg{width:18px}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:wait;transform:none}.button.primary{background:var(--blue);color:#fff;box-shadow:0 9px 20px #176b8733}.button.primary:hover{background:var(--blue-dark)}.button.secondary{border-color:var(--border);background:#fff;color:var(--navy)}.button.success{background:var(--green);color:#fff}.button.danger{background:var(--red);color:#fff}.button.danger-outline{border-color:#edc7ca;background:#fff;color:var(--red)}.button.large{min-height:54px;padding-inline:22px}.button.small{min-height:35px;padding:6px 10px;font-size:.8rem}.button.full{width:100%}.text-button,.back-link{display:inline-flex;align-items:center;gap:5px;border:0;padding:0;background:none;color:var(--blue);font-weight:700;cursor:pointer}.text-button svg,.back-link svg{width:17px}.demo-notice{display:flex;min-height:33px;align-items:center;justify-content:center;gap:7px;padding:6px 20px;background:var(--navy-2);color:#dbe9ed;font-size:.75rem}.public-header{position:sticky;z-index:40;top:0;border-bottom:1px solid rgba(220,228,233,.8);background:#fffffff0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.header-inner{display:flex;height:74px;align-items:center;gap:30px}.brand{display:inline-flex;align-items:center;gap:9px;color:var(--navy);font:800 1.25rem Manrope,sans-serif}.brand-mark{display:grid;width:35px;height:35px;place-items:center;border-radius:10px 10px 10px 3px;background:var(--blue);color:#fff;font-size:1.05rem}.brand-light{color:#fff}.marketing-nav{display:flex;align-items:center;gap:27px;margin-left:auto}.marketing-nav>a{color:#536778;font-size:.86rem;font-weight:600}.marketing-nav>a:hover{color:var(--blue)}.marketing-nav .nav-pilot{display:inline-flex;align-items:center;gap:7px;border-radius:8px;padding:10px 14px;background:var(--navy);color:#fff}.nav-pilot svg{width:15px}.mobile-menu-button{display:none;margin-left:auto;border:0;background:none;cursor:pointer}.landing-page{overflow:hidden;background:#fff}.landing-hero{position:relative;padding:96px 0 105px;background:radial-gradient(circle at 88% 15%,rgba(20,148,129,.11),transparent 25%),linear-gradient(135deg,#f9fcfc,#edf6f7)}.landing-hero:before{position:absolute;right:2%;bottom:-180px;width:420px;height:420px;border:1px solid rgba(23,107,135,.08);border-radius:50%;content:""}.hero-layout{position:relative;display:grid;grid-template-columns:1.04fr .82fr;align-items:center;gap:80px}.hero-copy h1{max-width:720px;margin:20px 0 22px}.hero-copy h1 span{color:var(--blue)}.hero-copy>p{max-width:680px;color:#53697a;font-size:1.12rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:31px 0 22px}.hero-trust{display:flex;flex-wrap:wrap;gap:22px;color:var(--muted);font-size:.79rem}.hero-trust span{display:flex;align-items:center;gap:6px}.hero-trust svg{width:16px;color:var(--teal)}.hero-preview{position:relative;border:1px solid rgba(255,255,255,.85);border-radius:23px;padding:23px;background:#ffffffeb;box-shadow:0 35px 80px #102a4326}.hero-preview:before{position:absolute;z-index:-1;top:25px;right:-18px;bottom:-18px;left:25px;border-radius:23px;background:#176b8717;content:""}.preview-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:17px}.preview-top span,.preview-top strong{display:block}.preview-top span{color:var(--muted);font-size:.67rem}.preview-top strong{color:var(--navy);font-family:Manrope}.live-chip{display:flex!important;align-items:center;gap:6px;border-radius:20px;padding:6px 9px;background:var(--teal-light);color:var(--green)!important;font-weight:700}.live-chip i{width:6px;height:6px;border-radius:50%;background:var(--teal)}.preview-days{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:17px 0;color:var(--muted);font-size:.67rem;text-align:center}.preview-days span{border-radius:8px;padding:7px 2px}.preview-days .active{background:var(--navy);color:#fff}.preview-days b{display:block;font-size:.9rem}.preview-session{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:10px;margin:8px 0;border-left:3px solid var(--blue);border-radius:8px;padding:12px;background:#f6f9fa}.preview-session.amber{border-color:var(--orange)}.preview-session.teal{border-color:var(--teal)}.preview-session time{color:var(--navy);font-size:.78rem;font-weight:800}.preview-session strong,.preview-session small{display:block}.preview-session strong{color:var(--navy);font-size:.76rem}.preview-session small{color:var(--muted);font-size:.63rem}.preview-session em{border-radius:15px;padding:4px 7px;background:var(--blue-light);color:var(--blue-dark);font-size:.59rem;font-style:normal;font-weight:700}.preview-session.amber em{background:var(--orange-light);color:var(--orange)}.preview-footer{display:flex;align-items:center;gap:7px;margin-top:16px;border-radius:8px;padding:10px;background:var(--green-light);color:var(--green);font-size:.7rem;font-weight:700}.preview-footer svg{width:15px}.trust-strip{border-block:1px solid var(--border);background:#fff}.trust-strip .container{display:flex;min-height:86px;align-items:center;justify-content:center;gap:18px}.trust-strip span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.trust-strip strong{display:flex;align-items:center;gap:6px;color:var(--navy);font-size:.85rem}.trust-strip svg{width:18px;color:var(--blue)}.trust-strip i{color:#a2b0bc;font-style:normal}.trust-strip .result{color:var(--teal)}.landing-section{padding:104px 0}.section-heading{max-width:730px;margin-bottom:45px}.section-heading h2{margin:7px 0 14px;font-size:clamp(2rem,3.5vw,3rem)}.section-heading>p:last-child{color:var(--muted);font-size:1.03rem}.section-heading.centered{margin-inline:auto;text-align:center}.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.problem-grid article{min-height:185px;border:1px solid var(--border);border-radius:var(--radius);padding:24px;background:#fbfcfd}.problem-grid svg{width:39px;height:39px;border-radius:10px;padding:9px;background:var(--blue-light);color:var(--blue)}.problem-grid p{margin:31px 0 0;color:#3f5262;font-weight:600}.process-section{background:var(--navy-2)}.process-section h2,.process-section h3{color:#fff}.process-section .eyebrow{color:#60d0bd}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.process-grid article{border:1px solid rgba(255,255,255,.1);border-radius:15px;padding:25px;background:#ffffff09}.process-grid article>span{display:grid;width:38px;height:38px;place-items:center;margin-bottom:25px;border-radius:50%;background:#36bea91f;color:#6dd6c4;font-size:.76rem;font-weight:800}.process-grid h3{font-size:1rem}.process-grid p{margin:0;color:#aebfc9;font-size:.87rem}.formula{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:35px;border-radius:13px;padding:18px;background:#fff1;color:#c9d7de;font-size:.82rem}.formula span{border-radius:7px;padding:8px 11px;background:#ffffff0f}.formula i{font-style:normal}.formula strong{color:#70d3c2}.formula b{display:flex;align-items:center;gap:6px;color:#70d3c2}.formula svg{width:17px}.demo-section{background:#f2f7f7}.demo-promo{display:grid;grid-template-columns:.95fr .8fr;align-items:center;gap:85px}.demo-promo h2{max-width:620px;font-size:clamp(2rem,3.5vw,3rem)}.demo-promo>div>p:not(.eyebrow){color:var(--muted)}.demo-promo ul{display:grid;gap:8px;margin:25px 0 30px;padding:0;list-style:none}.demo-promo li{display:flex;gap:8px;color:#455b6b}.demo-promo li svg{width:18px;color:var(--teal)}.pricing-section{background:#fff}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);align-items:stretch;gap:18px}.price-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:18px;padding:30px;background:#fff}.price-card.featured{border:2px solid var(--blue);box-shadow:var(--shadow)}.recommended{position:absolute;top:-14px;right:22px;border-radius:20px;padding:6px 11px;background:var(--blue);color:#fff;font-size:.7rem;font-weight:800}.price-card>p{margin:0 0 15px;color:var(--blue);font-size:.77rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.price{display:flex;align-items:baseline;gap:7px;padding-bottom:22px;border-bottom:1px solid var(--border)}.price strong{color:var(--navy);font:800 2rem Manrope}.price span{color:var(--muted);font-size:.8rem}.price-card ul{display:grid;flex:1;gap:9px;margin:24px 0;padding:0;list-style:none}.price-card li{display:flex;align-items:flex-start;gap:8px;color:#4b5f6e;font-size:.86rem}.price-card li svg{width:16px;flex:0 0 auto;color:var(--teal)}.price-card>small{margin:-8px 0 20px;color:var(--orange);font-weight:600}.pricing-notes{display:flex;justify-content:center;gap:35px;margin-top:30px;color:var(--muted);font-size:.8rem}.pricing-notes span{display:flex;align-items:center;gap:6px}.pricing-notes svg{width:16px;color:var(--green)}.faq-section{background:#f5f8f9}.faq-layout{display:grid;grid-template-columns:.67fr 1fr;gap:80px}.faq-layout .section-heading{margin:0}.faq-list{display:grid;gap:10px}.faq-list details{border:1px solid var(--border);border-radius:12px;padding:0 20px;background:#fff}.faq-list summary{display:flex;min-height:63px;align-items:center;justify-content:space-between;gap:20px;color:var(--navy);font-weight:700;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary svg{width:18px;flex:0 0 auto;transition:.2s}.faq-list details[open] summary svg{transform:rotate(180deg)}.faq-list details p{padding:0 25px 19px 0;color:var(--muted);font-size:.9rem}.contact-section{background:#fff}.contact-layout{display:grid;grid-template-columns:.68fr 1fr;gap:80px}.contact-copy{padding-top:20px}.contact-copy h2{font-size:clamp(2rem,3.5vw,3rem)}.contact-copy>p:not(.eyebrow){color:var(--muted)}.contact-copy>div{display:flex;align-items:center;gap:12px;margin-top:25px}.contact-copy>div>svg{width:41px;height:41px;border-radius:10px;padding:10px;background:var(--blue-light);color:var(--blue)}.contact-copy span,.contact-copy small,.contact-copy strong{display:block}.contact-copy small{color:var(--muted)}.contact-copy a,.contact-copy strong{color:var(--navy)}.contact-form{border:1px solid var(--border);border-radius:20px;padding:35px;background:#fbfcfd;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid label{display:grid;gap:6px;color:#354b5c;font-size:.82rem;font-weight:700}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.booking-card input,.booking-card select,.modal-form input,.modal-form select,.modal-form textarea{width:100%;min-height:45px;border:1px solid #cbd7dd;border-radius:8px;padding:9px 11px;background:#fff;color:var(--text)}.form-grid textarea,.modal-form textarea{resize:vertical}.consent{display:flex!important;grid-template-columns:auto 1fr;align-items:flex-start}.consent input{width:17px;min-height:17px;margin-top:2px;accent-color:var(--blue)}.field-error,.form-error{color:var(--red);font-weight:600}.contact-form>.button{margin-top:24px}.form-feedback,.conflict-message{display:flex;align-items:flex-start;gap:8px;margin:15px 0 0;border-radius:8px;padding:11px;background:var(--orange-light);color:#7c4a16;font-size:.82rem}.form-feedback svg,.conflict-message svg{width:17px;flex:0 0 auto}.landing-footer{padding:45px 0;background:var(--navy-2);color:#afc0ca}.footer-grid{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:55px}.footer-grid p{margin:9px 0 0;font-size:.8rem}.footer-grid nav{display:grid;gap:6px;font-size:.8rem}.footer-grid nav a:hover{color:#fff}.footer-status{display:flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:7px 10px;font-size:.7rem}.footer-status i{width:7px;height:7px;border-radius:50%;background:#56c5af}.demo-app{min-height:calc(100vh - 107px);padding-left:250px;background:#f4f6f8}.demo-sidebar{position:fixed;z-index:20;top:107px;bottom:0;left:0;display:flex;width:250px;flex-direction:column;padding:25px 16px 18px;background:var(--navy-2);color:#fff}.demo-sidebar>.brand{padding-inline:8px}.school-switcher{display:flex;align-items:center;gap:10px;margin:28px 0 20px;border:1px solid rgba(255,255,255,.11);border-radius:10px;padding:11px;background:#ffffff0d}.school-avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;background:var(--teal);font-weight:800}.school-switcher small,.school-switcher strong{display:block}.school-switcher small{color:#91a8b8;font-size:.61rem}.school-switcher strong{font-size:.8rem}.demo-sidebar nav{display:grid;gap:5px}.demo-sidebar button,.demo-sidebar-bottom a{display:flex;width:100%;align-items:center;gap:11px;border:0;border-radius:8px;padding:10px 11px;background:none;color:#afc3cf;font-size:.83rem;text-align:left;cursor:pointer}.demo-sidebar button svg,.demo-sidebar-bottom svg{width:18px}.demo-sidebar nav button.active{background:#45b7a621;color:#71dac8}.demo-sidebar nav em{display:grid;min-width:20px;height:20px;place-items:center;margin-left:auto;border-radius:50%;background:var(--orange);color:#fff;font-size:.65rem;font-style:normal}.demo-sidebar-bottom{display:grid;gap:2px;margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding-top:13px}.demo-sidebar-bottom a,.demo-sidebar-bottom button{font-size:.75rem}.demo-main{min-width:0}.demo-topbar{display:flex;min-height:72px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:10px 34px;background:#fff}.demo-topbar span,.demo-topbar strong{display:block}.demo-topbar span{color:var(--muted);font-size:.66rem}.demo-topbar strong{color:var(--navy)}.demo-content{width:min(100% - 56px,1300px);margin:0 auto;padding:38px 0 70px}.demo-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:28px}.demo-heading h1{margin:3px 0 6px;font-size:2rem}.demo-heading p:last-child{margin:0;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric-grid article{display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:12px;padding:19px;background:#fff}.metric-grid article>span{display:grid;width:43px;height:43px;flex:0 0 auto;place-items:center;border-radius:10px}.metric-grid svg{width:21px}.metric-grid span.blue{background:var(--blue-light);color:var(--blue)}.metric-grid span.green{background:var(--green-light);color:var(--green)}.metric-grid span.purple{background:var(--purple-light);color:var(--purple)}.metric-grid span.orange{background:var(--orange-light);color:var(--orange)}.metric-grid strong,.metric-grid small{display:block}.metric-grid strong{color:var(--navy);font:800 1.65rem Manrope;line-height:1}.metric-grid small{margin-top:4px;color:var(--muted);font-size:.7rem}.dashboard-columns{display:grid;grid-template-columns:1fr 320px;align-items:start;gap:17px;margin-top:17px}.panel{overflow:hidden;border:1px solid var(--border);border-radius:13px;background:#fff}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--border)}.panel-head h2{margin:0;font-size:1rem}.panel-head p{margin:2px 0 0;color:var(--muted);font-size:.7rem}.session-list{padding:5px 20px}.session-row{display:grid;grid-template-columns:52px 2px minmax(145px,1fr) minmax(135px,.8fr) minmax(135px,.8fr) auto;align-items:center;gap:13px;padding:15px 0;border-bottom:1px solid #edf1f3}.session-row:last-child{border:0}.session-row time strong,.session-row time small{display:block}.session-row time strong{color:var(--navy);font-size:.85rem}.session-row time small{color:var(--muted);font-size:.65rem}.session-line{width:2px;height:39px;border-radius:5px;background:var(--teal)}.session-person{display:flex;align-items:center;gap:8px}.session-person>span{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--blue-light);color:var(--blue);font-size:.65rem;font-weight:800}.session-person strong,.session-person small,.session-resource strong,.session-resource small{display:block}.session-person strong,.session-resource strong{color:var(--navy);font-size:.76rem}.session-person small,.session-resource small{color:var(--muted);font-size:.62rem}.session-resource{display:flex;align-items:center;gap:7px}.session-resource>svg{width:17px;color:#8b9ba7}.status-select,.planning-filters select{min-height:35px;border:1px solid var(--border);border-radius:7px;padding:5px 8px;background:#fff;font-size:.7rem}.alert-panel .panel-head>svg{color:var(--orange)}.low-hours{display:flex;width:100%;align-items:center;gap:9px;border:0;border-bottom:1px solid #edf1f3;border-radius:0;padding:14px 20px;background:#fff;text-align:left;cursor:pointer}.low-hours>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--orange-light);color:var(--orange);font-size:.68rem;font-weight:800}.low-hours strong,.low-hours small{display:block}.low-hours strong{color:var(--navy);font-size:.78rem}.low-hours small{color:var(--muted);font-size:.65rem}.low-hours em{margin-left:auto;color:var(--orange);font-size:.85rem;font-style:normal;font-weight:800}.alert-panel>.button{width:calc(100% - 40px);margin:18px 20px}.planning-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px;border-bottom:1px solid var(--border)}.date-nav{display:flex;align-items:center;gap:6px}.date-nav button{min-height:34px;border:1px solid var(--border);border-radius:7px;padding:5px 9px;background:#fff;color:var(--navy);cursor:pointer}.date-nav button svg{width:17px}.date-nav strong{margin-left:8px;color:var(--navy);font-size:.84rem;text-transform:capitalize}.planning-filters{display:flex;gap:7px}.timeline-list{padding:8px 24px}.timeline-list .session-row{min-height:80px}.empty-state{padding:70px 20px;text-align:center}.empty-state>svg{width:48px;height:48px;color:#b7c5cd}.empty-state h3{margin:14px 0 6px}.empty-state p{color:var(--muted)}.search-input{display:flex;min-width:270px;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;padding:0 10px;background:#fff}.search-input svg{width:17px;color:var(--muted)}.search-input input{min-height:42px;border:0;outline:0}.data-panel{overflow:visible}.table-scroll{overflow-x:auto}.data-panel table{width:100%;border-collapse:collapse;background:#fff}.data-panel th{padding:13px 17px;background:#f8fafb;color:var(--muted);font-size:.67rem;text-align:left;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.data-panel td{padding:15px 17px;border-top:1px solid var(--border);color:#4f626f;font-size:.78rem;white-space:nowrap}.data-panel td strong,.data-panel td small{display:block}.data-panel td strong{color:var(--navy)}.data-panel td small{color:var(--muted)}.permit{display:inline-grid;min-width:28px;height:28px;place-items:center;border-radius:7px;background:var(--blue-light);color:var(--blue-dark);font-size:.7rem;font-weight:800}.progress-cell{display:flex;align-items:center;gap:7px}.progress-cell>span{width:75px;height:6px;overflow:hidden;border-radius:5px;background:#e5ebee}.progress-cell i{display:block;height:100%;border-radius:inherit;background:var(--teal)}.status-badge{display:inline-flex;align-items:center;border-radius:20px;padding:5px 8px;background:var(--blue-light);color:var(--blue-dark);font-size:.64rem;font-weight:800}.status-a-confirmer{background:var(--orange-light);color:#8b4f12}.status-effectuee,.status-acceptee,.status-disponible,.status-actif{background:var(--green-light);color:var(--green)}.status-annulee,.status-refusee,.status-indisponible{background:var(--red-light);color:var(--red)}.status-absente,.status-en-pause{background:var(--purple-light);color:var(--purple)}.status-en-seance{background:var(--orange-light);color:var(--orange)}.entity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.entity-card{border:1px solid var(--border);border-radius:14px;padding:22px;background:#fff}.entity-head{display:flex;align-items:center;justify-content:space-between}.entity-head>span:not(.permit){display:grid;width:44px;height:44px;place-items:center;border-radius:12px;background:var(--blue-light);color:var(--blue);font-weight:800}.entity-card h2{margin:18px 0 3px;font-size:1rem}.entity-card>p{color:var(--muted);font-size:.76rem}.entity-card dl{margin:20px -22px -22px}.entity-card dl div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding:11px 22px}.entity-card dt{color:var(--muted);font-size:.68rem}.entity-card dd{margin:0;color:var(--navy);font-size:.72rem;font-weight:700}.vehicle-visual{display:grid;height:105px;place-items:center;margin:-22px -22px 18px;border-radius:14px 14px 0 0;background:linear-gradient(145deg,#edf6f7,#dbecef)}.vehicle-visual svg{width:55px;height:55px;color:var(--blue)}.row-actions{display:flex;gap:6px}.flip{transform:rotate(180deg)}.modal-backdrop{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#071d31b3}.modal{overflow-y:auto;width:min(100%,620px);max-height:calc(100vh - 40px);border-radius:15px;padding:25px;background:#fff;box-shadow:0 30px 80px #00000047}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.modal-head h2{margin:0;font-size:1.25rem}.icon-button{display:grid;width:35px;height:35px;place-items:center;border:1px solid var(--border);border-radius:8px;background:#fff;cursor:pointer}.modal-form{display:grid;gap:16px}.modal-form label{display:grid;gap:6px;color:#354b5c;font-size:.8rem;font-weight:700}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:5px}.conflict-message{background:var(--red-light);color:var(--red)}.conflict-message strong{display:block}.student-summary{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);padding-bottom:18px}.student-summary>span{display:grid;width:49px;height:49px;place-items:center;border-radius:12px;background:var(--blue-light);color:var(--blue);font-weight:800}.student-summary h3,.student-summary p{margin:0}.student-summary p{color:var(--muted);font-size:.78rem}.student-summary .status-badge{margin-left:auto}.hours-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0 25px}.hours-summary div{border-radius:9px;padding:14px;background:#f4f7f8}.hours-summary strong,.hours-summary small{display:block}.hours-summary strong{color:var(--navy)}.hours-summary small{color:var(--muted);font-size:.66rem}.student-detail>h3{font-size:.95rem}.history-list{display:grid;gap:8px}.history-list>div{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:9px;padding:11px}.history-list svg{width:18px;color:var(--blue)}.history-list strong,.history-list small{display:block}.history-list strong{color:var(--navy);font-size:.75rem}.history-list small{color:var(--muted);font-size:.66rem}.history-list .status-badge{margin-left:auto}.booking-page{min-height:calc(100vh - 107px);padding:60px 0;background:radial-gradient(circle at 20% 10%,rgba(20,148,129,.11),transparent 25%),#f1f6f7}.booking-shell{display:grid;width:min(calc(100% - 40px),980px);grid-template-columns:.8fr 1fr;align-items:center;gap:65px;margin:auto}.booking-intro>.back-link{margin-bottom:50px}.school-logo{display:grid;width:55px;height:55px;place-items:center;margin-bottom:15px;border-radius:15px;background:var(--navy);color:#fff;font:800 1.5rem Manrope}.booking-intro h1{font-size:2.55rem}.booking-intro>p:not(.eyebrow){color:var(--muted)}.booking-intro>div{display:flex;align-items:center;gap:10px;margin-top:23px}.booking-intro>div>svg{width:38px;height:38px;border-radius:9px;padding:9px;background:var(--teal-light);color:var(--teal)}.booking-intro span strong,.booking-intro span small{display:block}.booking-intro span strong{color:var(--navy)}.booking-intro span small{color:var(--muted)}.booking-card{display:grid;gap:16px;border:1px solid var(--border);border-radius:20px;padding:34px;background:#fff;box-shadow:var(--shadow)}.booking-card h2{margin:0}.booking-card>p{margin:-10px 0 5px;color:var(--muted);font-size:.8rem}.booking-card label{display:grid;gap:6px;color:#354b5c;font-size:.82rem;font-weight:700}.booking-card fieldset{border:0;padding:0;margin:0}.booking-card legend{margin-bottom:8px;color:#354b5c;font-size:.82rem;font-weight:700}.slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.slot-grid button{border:1px solid var(--border);border-radius:7px;padding:8px;background:#fff;color:var(--navy);font-size:.8rem;cursor:pointer}.slot-grid button.selected{border-color:var(--blue);background:var(--blue-light);color:var(--blue-dark);font-weight:800}.local-note{color:var(--muted);text-align:center}.booking-card.success-state{width:min(calc(100% - 40px),570px);margin:5vh auto;padding:55px;text-align:center}.success-state>svg{width:65px;height:65px;margin:auto;color:var(--green)}.success-state .button{margin:10px auto 0}.toast{position:fixed;z-index:90;top:120px;right:25px;display:flex;align-items:center;gap:8px;border-radius:9px;padding:12px 15px;background:var(--navy);color:#fff;box-shadow:var(--shadow);font-size:.8rem}.toast svg{width:17px;color:#65d2bd}.not-found{display:flex;min-height:600px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.not-found>span{color:#d5e1e6;font:800 7rem/1 Manrope}.not-found p{color:var(--muted)}@media(max-width:1100px){.hero-layout,.demo-promo{gap:40px}.problem-grid{grid-template-columns:1fr 1fr}.formula{flex-wrap:wrap}.marketing-nav{gap:14px}.marketing-nav>a{font-size:.78rem}.metric-grid{grid-template-columns:1fr 1fr}.session-row{grid-template-columns:45px 2px 1fr 1fr auto}.session-resource:nth-of-type(2){display:none}.entity-grid{grid-template-columns:1fr 1fr}}@media(max-width:850px){.mobile-menu-button{display:grid;place-items:center}.marketing-nav{position:absolute;top:65px;right:20px;left:20px;display:none;align-items:stretch;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:12px;padding:10px;background:#fff;box-shadow:var(--shadow)}.marketing-nav.open{display:flex}.marketing-nav>a{padding:11px;font-size:.9rem}.header-inner{height:65px}.hero-layout,.demo-promo,.faq-layout,.contact-layout,.booking-shell{grid-template-columns:1fr}.landing-hero{padding:65px 0 80px}.hero-preview{max-width:580px}.trust-strip .container{flex-wrap:wrap;padding-block:18px}.trust-strip span{width:100%;text-align:center}.landing-section{padding:78px 0}.process-grid{grid-template-columns:1fr 1fr}.pricing-grid{grid-template-columns:1fr;max-width:620px;margin:auto}.pricing-notes{flex-wrap:wrap}.faq-layout,.contact-layout{gap:40px}.footer-grid{grid-template-columns:1fr 1fr}.footer-status{grid-column:1/-1;width:max-content}.demo-app{padding:0 0 66px}.demo-sidebar{top:auto;right:0;bottom:0;width:100%;height:66px;flex-direction:row;padding:6px 10px}.demo-sidebar>.brand,.school-switcher,.demo-sidebar-bottom{display:none}.demo-sidebar nav{display:grid;width:100%;grid-template-columns:repeat(6,1fr);gap:2px}.demo-sidebar nav button{justify-content:center;flex-direction:column;gap:1px;padding:4px;text-align:center}.demo-sidebar nav button svg{width:17px}.demo-sidebar nav button span{font-size:.57rem}.demo-sidebar nav em{position:absolute;transform:translate(13px,-10px)}.dashboard-columns{grid-template-columns:1fr}.planning-toolbar{align-items:stretch;flex-direction:column}.planning-filters{flex-wrap:wrap}.booking-page{padding:35px 0 70px}.booking-shell{gap:35px}.booking-intro>.back-link{margin-bottom:25px}}@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.landing-hero{padding-top:50px}.hero-copy h1{font-size:2.55rem}.hero-actions{align-items:stretch;flex-direction:column}.hero-trust{align-items:flex-start;flex-direction:column;gap:7px}.hero-preview{padding:16px}.preview-session{grid-template-columns:46px 1fr}.preview-session em{display:none}.trust-strip strong{font-size:.72rem}.trust-strip i{display:none}.problem-grid,.process-grid{grid-template-columns:1fr}.problem-grid article{min-height:145px}.formula{align-items:stretch;flex-direction:column;text-align:center}.formula i,.formula strong{display:none}.formula b{justify-content:center}.pricing-notes{align-items:flex-start;flex-direction:column;gap:8px}.contact-form{padding:24px 18px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-status{grid-column:auto}.demo-notice{padding-inline:8px;font-size:.64rem}.demo-topbar{min-height:64px;padding:8px 14px}.demo-topbar .button{min-height:39px;padding:7px 10px;font-size:.73rem}.demo-content{width:calc(100% - 28px);padding-top:26px}.demo-heading{align-items:stretch;flex-direction:column}.demo-heading h1{font-size:1.7rem}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-grid article{gap:8px;padding:13px}.metric-grid article>span{width:34px;height:34px}.metric-grid strong{font-size:1.25rem}.session-row{grid-template-columns:43px 2px 1fr auto}.session-resource{display:none!important}.session-list{padding-inline:13px}.status-select{width:92px}.panel-head{padding-inline:16px}.panel-head .text-button{font-size:.7rem}.entity-grid{grid-template-columns:1fr}.planning-filters{display:grid;grid-template-columns:1fr}.planning-filters select{width:100%}.date-nav{flex-wrap:wrap}.date-nav strong{width:100%;margin:8px 0 0}.search-input{min-width:0}.modal{padding:20px 16px}.modal-actions{flex-direction:column-reverse}.modal-actions .button{width:100%}.hours-summary{gap:4px}.hours-summary div{padding:10px 7px}.booking-shell{width:calc(100% - 28px)}.booking-intro h1{font-size:2.15rem}.booking-card{padding:24px 18px}.slot-grid{grid-template-columns:1fr 1fr}.booking-card.success-state{padding:38px 22px}.demo-sidebar nav button span{display:none}.demo-sidebar nav button svg{width:20px}.demo-sidebar nav em{transform:translate(11px,-11px)}}.button.primary{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--blue),var(--teal));box-shadow:0 10px 24px #176b8747}.button.primary:after{position:absolute;top:-50%;left:-70%;width:45%;height:200%;transform:rotate(22deg);background:#fff3;content:"";transition:left .55s ease}.button.primary:hover:after{left:125%}.landing-hero{background:radial-gradient(circle at 88% 15%,rgba(20,148,129,.18),transparent 25%),radial-gradient(circle at 8% 80%,rgba(23,107,135,.1),transparent 25%),linear-gradient(135deg,#fbfefe,#e9f6f6)}.hero-copy{animation:rise-in .7s ease both}.hero-copy h1{font-size:clamp(3rem,5.8vw,5rem);line-height:1}.preview-wrap{position:relative;animation:rise-in .8s .15s ease both,gentle-float 5s 1s ease-in-out infinite}.hero-preview{background:#fffffff2;box-shadow:0 35px 80px #102a4330}.floating-badge{position:absolute;z-index:3;display:flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.8);border-radius:99px;padding:9px 13px;background:#fff;color:var(--navy);box-shadow:0 12px 30px #102a4324;font-size:.71rem;font-weight:800;white-space:nowrap}.floating-badge svg{width:16px;color:var(--teal)}.badge-top{top:-22px;right:-24px}.badge-bottom{bottom:-20px;left:-28px}.pulse-cta{animation:soft-pulse 2.4s ease-in-out infinite}.problem-grid article,.process-grid article,.price-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease}.problem-grid article:hover{transform:translateY(-8px);border-color:#a9d6d0;box-shadow:0 18px 40px #102a431a}.process-grid article:hover{transform:translateY(-6px);background:#ffffff13}.price-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.price-card.featured{transform:scale(1.025)}.price-card.featured:hover{transform:scale(1.025) translateY(-8px)}.energy-cta{position:relative;overflow:hidden;padding:55px 0;background:linear-gradient(120deg,var(--blue-dark),var(--teal));color:#fff}.energy-cta:before,.energy-cta:after{position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;content:""}.energy-cta:before{top:-130px;right:8%;width:290px;height:290px}.energy-cta:after{bottom:-190px;left:6%;width:330px;height:330px}.energy-cta .container{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:40px}.energy-cta .eyebrow{color:#a8f0e4}.energy-cta h2{margin:4px 0 8px;color:#fff;font-size:clamp(1.8rem,3vw,2.65rem)}.energy-cta p{margin:0;color:#d9efec}.energy-button{flex:0 0 auto;background:#fff;color:var(--blue-dark);box-shadow:0 15px 35px #071d3133}.energy-button:hover{transform:translateY(-3px) scale(1.02)}.contact-form{border-color:#bddbd8;background:linear-gradient(160deg,#fff,#f3fbfa);box-shadow:0 25px 65px #102a4321}@keyframes rise-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes gentle-float{0%,to{transform:translateY(0) rotate(.2deg)}50%{transform:translateY(-9px) rotate(-.3deg)}}@keyframes soft-pulse{0%,to{box-shadow:0 9px 20px #176b8740}50%{box-shadow:0 12px 32px #1494816b}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:850px){.price-card.featured{transform:none}.price-card.featured:hover{transform:translateY(-8px)}.energy-cta .container{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.hero-copy h1{font-size:2.75rem}.floating-badge{display:none}.energy-button{width:100%}}
