/*
Theme Name: ULTRA SCHOOL
Version: 0.5.0
Requires at least: 6.5
Requires PHP: 8.1
Description: Thème commercial ULTRA SCHOOL avec accueil personnalisé, navigation mobile et paramètres éditables.
License: GPL-2.0-or-later
Text Domain: ultra-school
*/
:root{--navy:#102e42;--teal:#08786e;--mint:#bce7d6;--paper:#f8f8f2;--muted:#52636c;--line:#dae1df;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--navy);background:var(--paper);font-size:16px}*{box-sizing:border-box}body{margin:0;line-height:1.65}a{color:inherit;text-underline-offset:5px}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b56a0c;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,4.5vw,4.7rem);max-width:670px;margin-bottom:28px;font-weight:750}h2{font-size:clamp(2rem,3.2vw,3.2rem);font-weight:700}h3{font-size:1.3rem;letter-spacing:-.025em}p{color:var(--muted)}.wrap{max-width:1240px;margin:0 auto;padding-left:32px;padding-right:32px}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{max-width:1304px;padding:24px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;flex-direction:column;font-size:25px;line-height:.95;font-weight:850;letter-spacing:2px;text-decoration:none}.brand b{color:var(--teal)}.custom-logo{max-height:70px;width:auto;max-width:210px}nav{display:flex;align-items:center;gap:32px}nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0}nav a{text-decoration:none;font-size:.86rem;font-weight:600}nav a:hover{text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;gap:15px;padding:16px 24px;background:var(--teal);color:#fff;border:1px solid var(--teal);border-radius:5px;text-decoration:none;font-weight:650;font-size:.9rem;line-height:1.4}.button:hover{background:#075d55;color:#fff}.button.small{padding:12px 16px;font-size:.8rem}.button.outline{background:transparent;color:var(--teal)}.button.outline:hover{background:#e7f2eb}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;border-radius:4px;padding:10px}.hero{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:48px;padding-top:88px;padding-bottom:90px}.eyebrow{font-size:.65rem;letter-spacing:.14em;font-weight:750;color:var(--teal);margin-bottom:24px;display:flex;align-items:center;gap:10px}.eyebrow i,.visual-heading i{width:7px;height:7px;background:var(--teal);border-radius:50%;display:inline-block;flex-shrink:0}.lead{font-size:1.05rem;line-height:1.8;max-width:510px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}.text-link{text-decoration:none;font-size:.85rem;font-weight:700}.footnote{font-size:.72rem;margin-top:22px}.hero-visual{background:#dcebe5;border-radius:10px;padding:22px;transform:rotate(-1deg);border:1px solid #cbdcd2}.visual-heading{display:flex;align-items:center;gap:8px;font-size:.55rem;letter-spacing:.12em;font-weight:700;margin-bottom:16px}.visual-heading span{margin-left:auto}.hero-visual img{border:1px solid #ccdad6;border-radius:5px;box-shadow:0 12px 26px #102e4214}.visual-caption{display:flex;align-items:center;justify-content:space-between;padding:23px 5px 3px;font-size:1.1rem;line-height:1.4}.visual-caption>span:last-child{border:1px solid #98b9ad;border-radius:50%;padding:8px 16px;font-size:1.5rem}.platform-strip{border-block:1px solid var(--line);background:#eff2ec}.strip-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:23px;padding-bottom:23px;flex-wrap:wrap}.strip-inner>span{font-size:.6rem;letter-spacing:.12em;color:var(--muted)}.strip-inner strong{font-size:.85rem;font-weight:600}.section{padding-top:90px;padding-bottom:90px}.section-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:end;margin-bottom:44px}.section-intro h2{margin-bottom:0}.section-intro>p{max-width:400px;font-size:.95rem;margin:0 0 4px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.feature{padding:30px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.feature-number{font-size:.7rem;color:var(--teal);display:block;margin-bottom:35px}.feature p{font-size:.87rem;margin-bottom:0}.product-section{background:#eaf0ed;padding:80px 0}.app-frame{margin:0;background:#fff;border:1px solid #cbd8d2;border-radius:9px;overflow:hidden;box-shadow:0 20px 55px #102e4210}.window-bar{display:flex;align-items:center;gap:6px;padding:16px;background:#f8faf9;border-bottom:1px solid var(--line)}.window-bar>span{width:7px;height:7px;border-radius:50%;background:#cad6d1}.window-bar strong{font-size:.65rem;margin-left:12px;letter-spacing:.05em;font-weight:500}.app-frame img{width:100%}figcaption{font-size:.7rem;color:var(--muted);padding:15px 20px;border-top:1px solid var(--line)}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.price-card{padding:40px;border:1px solid var(--line);border-radius:8px;background:#fff}.price-card h3{font-size:1.8rem}.price{font-size:2.65rem;font-weight:750;letter-spacing:-.05em;color:var(--navy);line-height:1.2;margin:25px 0 4px}.price-card>p:not(.price):not(.eyebrow){font-size:.8rem}.price-card ul{list-style:none;padding:20px 0;margin:20px 0;border-top:1px solid var(--line)}.price-card li{padding:7px 0;font-size:.9rem}.price-card li:before{content:'✓';color:var(--teal);margin-right:12px}.price-card.dark{background:var(--navy);color:white;border-color:var(--navy)}.dark p,.dark .price{color:#e4ecec}.dark .eyebrow,.dark li:before{color:#a9e4cc}.dark ul{border-color:#365264}.availability{font-size:.75rem;margin-top:22px;max-width:850px}.faq-section{display:grid;grid-template-columns:1fr 1.5fr;gap:75px;padding-top:20px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none;font-size:.95rem;font-weight:600}summary::-webkit-details-marker{display:none}summary span{color:var(--teal);font-size:1.3rem;line-height:1}details[open] summary span{transform:rotate(45deg)}details p{font-size:.88rem;margin:15px 30px 0 0}.closing{background:#d8eadf;border-radius:10px;padding-top:60px;padding-bottom:60px;margin-bottom:80px}.closing h2{max-width:800px}.site-footer{background:var(--navy);color:white;padding:65px max(32px,calc((100vw - 1176px)/2)) 25px}.site-footer .brand b{color:var(--mint)}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:60px}.footer-grid p{color:#b6c7cf;font-size:.83rem;max-width:270px;margin-top:20px}.footer-grid h2{font-size:.95rem;letter-spacing:0}.footer-grid a{font-size:.83rem}.footer-grid .brand{font-size:25px}.footer-grid ul{list-style:none;padding:0}.footer-grid li{margin:8px 0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #365264;padding-top:25px;margin-top:40px;font-size:.65rem;color:#b6c7cf}.skip{position:absolute;left:-9999px}.skip:focus{left:15px;top:15px;background:white;color:var(--navy);padding:12px;z-index:100}.editorial{max-width:850px}.editorial img{border-radius:5px}.editorial h1{font-size:3rem}.wp-block-button__link,input[type=submit]{background:var(--teal);color:white;border:0;border-radius:5px;padding:14px 22px}input,textarea,select{max-width:100%;padding:12px;border:1px solid #a6b8b2;border-radius:4px}textarea{width:100%}.alignwide{max-width:1176px}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}.site-header .sub-menu{position:absolute;background:var(--paper);border:1px solid var(--line);padding:16px;display:none}.menu-item-has-children:focus-within>.sub-menu,.menu-item-has-children:hover>.sub-menu{display:block}
@media(max-width:1000px){nav{gap:20px}nav ul{gap:15px}.hero{gap:25px}.feature{padding:24px}.header-inner{padding:20px 24px}.section-intro{gap:35px}.hero h1{font-size:3.1rem}}
@media(max-width:780px){.wrap{padding-left:22px;padding-right:22px}.header-inner{flex-wrap:wrap}.menu-toggle{display:block}#site-nav{display:none;flex-basis:100%;align-items:stretch}#site-nav.is-open{display:flex;flex-direction:column}nav ul{flex-direction:column;gap:0}nav li a{display:block;padding:10px 0}.hero{grid-template-columns:1fr;padding-top:48px;padding-bottom:50px}.hero h1{font-size:3.2rem}.hero-visual{transform:none;margin-top:20px}.section{padding-top:60px;padding-bottom:60px}.section-intro{grid-template-columns:1fr;gap:20px}.feature-grid{grid-template-columns:1fr 1fr}.pricing-grid{grid-template-columns:1fr}.faq-section{grid-template-columns:1fr;gap:15px}.closing{margin:0 16px 50px;padding:40px 24px}.footer-grid{grid-template-columns:1fr;gap:28px}.site-footer{padding:45px 24px 22px}.footer-bottom{flex-wrap:wrap}.site-header .sub-menu{position:static}.product-section{padding:55px 0}}
@media(max-width:440px){.feature-grid{grid-template-columns:1fr}.hero h1{font-size:2.8rem}.price-card{padding:28px}.actions{gap:18px}.strip-inner{gap:16px}.strip-inner>span{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ULTRA SCHOOL 0.5 — expérience par profil */
@font-face{font-family:Manrope;src:url('assets/fonts/Manrope.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
:root{font-family:Manrope,Segoe UI,Arial,sans-serif;--paper:#f8faf9;--navy:#092e35;--teal:#08796c;--mint:#d1eea3}
html{scroll-behavior:smooth;scroll-padding-top:100px}h1,h2,h3{font-family:Manrope,Segoe UI,sans-serif;font-weight:800}h1{font-size:clamp(2.8rem,4.6vw,4.9rem);line-height:1.08;letter-spacing:-.065em}.site-header{position:sticky;top:0;z-index:50;background:#f8faf9f5;backdrop-filter:blur(16px)}.header-inner{padding-top:18px;padding-bottom:18px}.brand{letter-spacing:-.03em;font-size:25px}.button{border-radius:9px;padding:17px 23px;transition:transform .2s,background .2s,box-shadow .2s;box-shadow:0 5px 15px #08796c15}.button:hover{transform:translateY(-2px);box-shadow:0 9px 22px #08796c24}.hero-v2{grid-template-columns:1fr 1.07fr;gap:55px;padding-top:65px;padding-bottom:70px}.hero-copy{position:relative}.hero-profiles{display:flex;flex-wrap:wrap;gap:7px;margin-top:28px}.hero-profiles span{border:1px solid #d1dfda;border-radius:99px;padding:5px 11px;font-size:.63rem;font-weight:650;background:#fff}.hero .footnote{font-size:.67rem}.hero .eyebrow{font-size:.6rem}.people-visual{position:relative;transform:none;padding:0;margin:0;background:#e5eee8;border:0;border-radius:140px 20px 20px 20px;overflow:visible}.people-visual img{border:0;border-radius:140px 20px 20px 20px;height:520px;width:100%;object-fit:cover;object-position:50% 45%;box-shadow:none}.people-visual figcaption{font-size:.55rem;text-align:right;border:0;background:var(--paper);padding:9px 0;color:#596e6b}.people-badge{position:absolute;bottom:45px;left:-25px;background:#fff;padding:17px 23px;border-radius:13px;font-size:.8rem;line-height:1.6;box-shadow:0 15px 50px #082e3520;border:1px solid #e1e9e5}.live-dot{display:inline-block;width:8px;height:8px;background:#129875;border-radius:50%;margin-right:7px;box-shadow:0 0 0 4px #12987512}.people-badge .live-dot{position:absolute;right:14px;top:17px}.people-badge strong{font-weight:800}.platform-strip{background:#e9f0e9}.feature-grid{gap:16px;border:0}.feature{border:1px solid #dce7df;border-radius:16px;background:#fff;padding:30px;transition:box-shadow .25s,transform .25s}.feature:hover{transform:translateY(-5px);box-shadow:0 15px 30px #092e350b}.feature-number{background:#eff6ec;width:40px;height:40px;display:grid;place-items:center;border-radius:11px;margin-bottom:25px;font-weight:750}.feature h3{font-size:1.12rem}.feature p{font-size:.84rem;line-height:1.8}.section-intro .eyebrow{margin-bottom:18px}.section-intro>p{line-height:1.9}.price-card{border-radius:20px}.price-card.dark{background:linear-gradient(135deg,#073a3e,#092c35)}.closing{border-radius:22px;background:#d8edba}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.feature:nth-child(3n+2){transition-delay:.06s}.feature:nth-child(3n){transition-delay:.12s}
.role-section{padding-top:80px}.role-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:7px;background:#e9efeb;border-radius:15px;margin-bottom:26px}.role-tabs button{display:flex;justify-content:space-between;gap:12px;border:0;background:transparent;color:#45605b;padding:16px 20px;border-radius:10px;font-weight:750;cursor:pointer;font-size:.88rem;transition:background .25s,color .25s,box-shadow .25s}.role-tabs button[aria-selected=true]{background:#fff;color:var(--navy);box-shadow:0 3px 8px #17372d0b}.role-tabs button[aria-selected=true] span{color:var(--teal)}.role-stage{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:30px;background:linear-gradient(125deg,#f0f5ef,#e7f1e8);border:1px solid #dbe6dc;border-radius:24px;padding:55px 55px 40px;overflow:hidden}.role-story h3{font-size:2.5rem;max-width:420px;line-height:1.16}.role-story>p:not(.eyebrow):not(.demo-disclaimer){font-size:.92rem;line-height:1.9;max-width:410px}.demo-steps{list-style:none;padding:0;margin:28px 0}.demo-steps li{display:flex;gap:13px;align-items:center;color:#64776f;font-size:.82rem;padding:10px 0}.step-number{width:28px;height:28px;border:1px solid #b7cdc0;border-radius:50%;display:grid;place-items:center;font-size:.7rem;flex-shrink:0}.demo-steps .current{color:var(--navy);font-weight:750}.current .step-number{background:var(--teal);color:white;border-color:var(--teal)}.done .step-number{background:#d1e6c5;border-color:#d1e6c5;color:var(--teal)}.demo-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.demo-restart{border:0;border-bottom:1px solid #b2c7be;background:none;color:#455f55;padding:5px 0;font-size:.75rem;cursor:pointer}.demo-disclaimer{font-size:.64rem;line-height:1.8;max-width:400px;margin:22px 0 0;color:#64766e}.device-scene{position:relative;display:flex;justify-content:center;align-items:center;min-height:540px}.demo-phone{position:relative;background:#153638;border-radius:38px;width:295px;padding:10px;border:1px solid #587270;box-shadow:0 22px 45px #092e3533;z-index:2;transition:width .45s,border-radius .45s}.device-camera{position:absolute;top:16px;left:50%;transform:translateX(-50%);width:70px;height:11px;background:#153638;border-radius:8px;z-index:3}.device-screen{background:#f4f8f7;border-radius:29px;overflow:hidden;min-height:500px;display:flex;flex-direction:column}.demo-app-header{display:flex;gap:9px;align-items:center;padding:32px 17px 14px;background:#fff;border-bottom:1px solid #e0e9e6;font-size:.58rem;font-weight:800;letter-spacing:.02em;color:var(--navy)}.demo-app-header small{display:block;font-size:.43rem;color:#71847e;letter-spacing:.1em;padding-top:3px}.demo-app-mark{font-size:23px;font-weight:800;line-height:1}.demo-app-mark>span{color:var(--teal)}.demo-avatar{margin-left:auto;background:#e6efdf;border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-size:.6rem}#demo-screen{padding:23px 17px 10px;min-height:345px;flex:1}.demo-screen-kicker{font-size:.43rem;letter-spacing:.12em;color:var(--teal);font-weight:800;margin-bottom:7px}#demo-screen h4{font-size:1.18rem;letter-spacing:-.045em;line-height:1.25;margin:0 0 7px;font-weight:800}.demo-screen-subtitle{font-size:.55rem;margin-bottom:18px;color:#5c736b}.demo-card{background:white;border:1px solid #dce9e3;border-radius:11px;padding:13px;margin-bottom:10px;box-shadow:0 3px 5px #103d2903}.demo-card>span{display:block;font-size:.49rem;color:var(--teal);font-weight:800;margin-bottom:7px}.demo-card strong{display:block;font-size:.77rem;line-height:1.4}.demo-card p{font-size:.54rem;line-height:1.7;margin:6px 0 0}.demo-stats{display:flex;gap:7px;margin:0 0 14px}.demo-stats>div{background:#e4efdf;border-radius:9px;padding:11px;flex:1}.demo-stats span{display:block;font-size:.48rem;color:#53715e}.demo-stats strong{display:block;font-size:1rem;letter-spacing:-.03em;margin-top:3px}.demo-screen-note{font-size:.5rem;color:#60766b;margin-top:15px;padding-left:9px;border-left:2px solid #a9ce85;line-height:1.7}.demo-bottom-nav{background:#fff;display:flex;justify-content:space-around;border-top:1px solid #e2eae6;padding:11px 10px 15px}.demo-bottom-nav span{font-size:18px;color:#2a6252;line-height:1;display:grid;text-align:center;gap:5px}.demo-bottom-nav small{font-size:.43rem}.demo-floating{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);z-index:3;background:#fff;white-space:nowrap;padding:12px 18px;border-radius:10px;border:1px solid #d5e5d8;box-shadow:0 8px 24px #153b2510;font-size:.6rem}.device-ground{position:absolute;width:310px;height:310px;background:#c9dfa9;opacity:.6;border-radius:50%;filter:blur(1px);left:50%;top:50%;transform:translate(-50%,-50%)}.is-desktop{width:440px;border-radius:12px;padding:7px;margin-bottom:70px}.is-desktop .device-screen{border-radius:6px;min-height:310px}.is-desktop .device-camera{display:none}.is-desktop .demo-app-header{padding:15px}.is-desktop #demo-screen{min-height:230px;padding:20px}.is-desktop .demo-bottom-nav{display:none}.is-desktop:after{content:'';position:absolute;bottom:-45px;left:50%;transform:translateX(-50%);width:85px;height:45px;background:#193c3e;clip-path:polygon(25% 0,75% 0,90% 90%,100% 100%,0 100%,10% 90%)}.demo-pupils{border-collapse:collapse;font-size:.62rem;width:100%;background:#fff;border-radius:8px}.demo-pupils td{padding:12px 8px;border-bottom:1px solid #e7eee9}.demo-grade{border:1px solid #d8e6dd;background:#fff;border-radius:12px;padding:17px}.demo-grade label{font-size:.65rem;font-weight:700;display:block}.demo-grade input{width:100%;padding:0;accent-color:var(--teal);margin-top:25px}.demo-score{display:block;font-size:2rem;font-weight:800;color:var(--teal);margin-top:12px}.demo-grade p{font-size:.55rem;margin:7px 0 0}
.contact-section{border-top:1px solid var(--line)}.ultra-contact{background:#fff;border:1px solid #dbe6df;border-radius:20px;padding:36px;display:grid;grid-template-columns:1fr 1fr;gap:22px;box-shadow:0 15px 45px #0a352707;max-width:900px}.ultra-contact p{margin:0}.ultra-contact label{font-size:.78rem;line-height:1.7;font-weight:650;display:grid;gap:9px}.ultra-contact input:not([type=checkbox]):not([type=hidden]),.ultra-contact select,.ultra-contact textarea{display:block;width:100%;padding:14px 16px;border:1px solid #cfddd5;border-radius:8px;background:#f8fbf8;color:var(--navy);font-size:.85rem;transition:border-color .2s,box-shadow .2s}.ultra-contact input:focus,.ultra-contact textarea:focus,.ultra-contact select:focus{border-color:var(--teal);outline:0;box-shadow:0 0 0 4px #08796c10}.ultra-contact textarea{min-height:140px;resize:vertical}.ultra-contact .full{grid-column:1/-1}.ultra-contact .consent label{display:flex;align-items:flex-start;font-size:.69rem;font-weight:450;line-height:1.8}.ultra-contact input[type=checkbox]{margin-top:5px;accent-color:var(--teal);width:17px;height:17px;flex-shrink:0}.ultra-contact button[type=submit]{justify-self:start;border:0;cursor:pointer;background:var(--teal);color:white;padding:17px 24px;border-radius:9px;font-weight:700}.contact-note{font-size:.67rem;align-self:center}.form-feedback{background:#e5f1de;padding:16px;border-radius:10px;color:#173f2e;font-size:.85rem;margin-bottom:24px}.form-feedback.error{background:#fff0e9;color:#8a3823}.form-feedback a{display:inline-block;margin-top:7px}.contact-shell{display:grid;grid-template-columns:1fr 300px;gap:28px}.contact-aside{background:#eaf2e3;border-radius:17px;padding:28px}.contact-aside h3{font-size:1.2rem}.contact-aside p,.contact-aside li{font-size:.8rem;line-height:1.9}.contact-aside ul{padding-left:20px}.admin-bar .site-header{top:32px}
@media(min-width:781px){.people-badge{animation:gentle-float 5s ease-in-out infinite}.people-visual{animation:hero-arrive .85s ease-out both}.hero-copy{animation:hero-arrive .7s ease-out both}}
@keyframes gentle-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes hero-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.role-stage{padding:35px 30px}.role-story h3{font-size:2.1rem}.is-desktop{width:360px}.hero-v2{gap:30px}.people-visual img{height:470px}.contact-shell{grid-template-columns:1fr 250px}}
@media(max-width:780px){html{scroll-padding-top:90px}.hero-v2{grid-template-columns:1fr;gap:25px;padding-top:40px}.people-visual img{height:380px;border-radius:65px 16px 16px 16px;object-position:center}.people-visual{border-radius:65px 16px 16px 16px;margin-top:8px}.people-badge{left:12px;bottom:43px;padding:12px 20px;font-size:.7rem}.role-tabs{grid-template-columns:1fr 1fr}.role-tabs button{font-size:.78rem;padding:13px}.role-stage{grid-template-columns:1fr;gap:15px;padding:29px 22px 40px}.role-story h3{font-size:2.15rem}.device-scene{min-height:560px}.device-scene:has(.is-desktop){min-height:380px}.is-desktop{width:min(440px,100%)}.contact-shell{grid-template-columns:1fr}.contact-aside{display:none}.ultra-contact{padding:24px;gap:17px}.admin-bar .site-header{top:46px}.role-section{padding-top:55px}}
@media(max-width:440px){.ultra-contact{grid-template-columns:1fr;padding:21px}.ultra-contact .full{grid-column:auto}.demo-floating{white-space:normal;width:260px;text-align:center}.device-scene{margin-left:-10px;margin-right:-10px}.hero-profiles{gap:5px}.hero-profiles span{font-size:.58rem}.people-visual img{height:320px}.hero h1{font-size:2.8rem}.role-stage{padding:25px 17px 35px}.demo-phone{width:275px}.is-desktop{width:100%}.demo-controls .button{font-size:.78rem;padding:14px 17px}.price{font-size:2.3rem}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.people-badge,.people-visual,.hero-copy{animation:none}.button,.demo-phone,.feature{transition:none}html{scroll-behavior:auto}}


/* Finitions typographiques et boutons */
.button,.ultra-contact button[type=submit]{font-family:Manrope,Segoe UI,sans-serif;font-weight:800;letter-spacing:-.025em;min-height:54px;border-radius:13px;background:linear-gradient(135deg,#08796c,#045649);border:1px solid #056052;box-shadow:inset 0 1px 0 #ffffff25,0 7px 16px #073a3220}.button.small{min-height:44px;border-radius:10px}.button:hover,.ultra-contact button[type=submit]:hover{background:linear-gradient(135deg,#096e60,#033d35);box-shadow:inset 0 1px 0 #ffffff20,0 12px 25px #073a3228}.price-card.dark .button,.closing .button{background:#d5f29a;color:#16382e;border-color:#c4e184;box-shadow:0 5px 15px #102e4210}.price-card.dark .button:hover,.closing .button:hover{background:#e1f8b7;color:#16382e}.button.outline{background:white;color:#075d51;border-color:#a9c8ba;box-shadow:none}.text-link{letter-spacing:-.025em;font-size:.88rem}.text-link:hover{text-decoration:underline}h2{letter-spacing:-.06em;line-height:1.14}.role-tabs button[aria-selected=true]{box-shadow:0 4px 14px #153b2510;border:1px solid #dbe6df}.role-tabs button{border:1px solid transparent}.ultra-contact button[type=submit]{cursor:pointer}.hero .lead{font-size:1.02rem;line-height:1.9}.site-footer{background:#082e33}.site-footer h2{letter-spacing:-.02em}.site-footer .brand{font-weight:800}.app-frame{border-radius:18px}.contact-aside{border:1px solid #d9e7d0}section[id]{scroll-margin-top:110px}
