:root{
  --ink:#13213c;--ink-2:#263754;--paper:#f6f4ee;--white:#fff;--orange:#ff6b35;--yellow:#ffd166;--blue:#5b7cfa;--green:#38b487;--violet:#8c6cff;--red:#ee5d6c;--muted:#6e7888;--line:#dce1e8;--shadow:0 22px 60px rgba(19,33,60,.12);--radius:26px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}.noise{position:fixed;inset:0;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.site-header{height:82px;width:min(1220px,calc(100% - 32px));margin:16px auto 0;padding:0 20px;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.84);backdrop-filter:blur(18px);border:1px solid rgba(19,33,60,.08);border-radius:22px;position:sticky;top:14px;z-index:20;box-shadow:0 10px 35px rgba(19,33,60,.07)}.brand{display:flex;align-items:center;text-decoration:none;color:var(--ink);font-weight:900;font-size:27px;letter-spacing:-1.8px}.brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--ink);color:white;font-size:24px;letter-spacing:-5px;padding-right:4px}.brand-mark span{color:var(--yellow)}.brand-word{margin-left:8px}.top-nav{display:flex;gap:7px}.nav-link,.menu-button{border:0;background:transparent;color:var(--ink-2);font:inherit;font-weight:750;cursor:pointer}.nav-link{padding:11px 15px;border-radius:12px}.nav-link:hover,.nav-link.active{background:#eef1f5;color:var(--ink)}.menu-button{font-size:24px;display:none}.hero{min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;padding-top:74px;padding-bottom:80px}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:900;color:var(--orange);margin-bottom:13px}.hero h1,.page-hero h1,.exercise-heading h1,.challenge-intro h1{font-size:clamp(48px,7vw,88px);line-height:.95;letter-spacing:-.065em;margin:0}.hero h1 span{position:relative;display:inline-block}.hero h1 span:after{content:"";position:absolute;left:2%;right:0;height:14px;bottom:3px;background:var(--yellow);z-index:-1;transform:rotate(-1.4deg);border-radius:20px}.hero p{font-size:20px;color:var(--muted);max-width:640px;margin:28px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{border:0;border-radius:14px;padding:14px 19px;font:inherit;font-weight:850;cursor:pointer;transition:.18s transform,.18s box-shadow,.18s background}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--ink);color:#fff;box-shadow:0 9px 25px rgba(19,33,60,.18)}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.light{background:#fff;color:var(--ink)}.trust-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;font-size:13px;font-weight:750;color:var(--muted)}.hero-demo{position:relative;display:grid;place-items:center;min-height:470px}.hero-demo:before{content:"";position:absolute;width:380px;height:380px;border-radius:45% 55% 62% 38% / 45% 41% 59% 55%;background:var(--yellow);transform:rotate(8deg)}.demo-card{position:relative;width:min(420px,100%);background:white;border-radius:28px;padding:26px;box-shadow:var(--shadow);transform:rotate(-2deg);z-index:2}.demo-top,.demo-stats,.progress-label,.work-footer,.challenge-stats{display:flex;justify-content:space-between;align-items:center}.demo-top{font-weight:850}.pill{font-size:12px;padding:7px 10px;border-radius:999px;background:#edf1ff;color:#425dc5}.demo-progress{height:7px;border-radius:20px;background:#edf0f4;margin:22px 0 36px;overflow:hidden}.demo-progress span{display:block;width:78%;height:100%;background:var(--green)}.demo-equation{text-align:center;font-size:50px;font-weight:900;letter-spacing:-.04em;margin:0 0 28px}.demo-equation b{color:var(--orange)}.demo-answer{border:2px solid #cbd2dc;border-radius:15px;padding:14px 16px;display:flex;justify-content:space-between;color:var(--muted)}.demo-answer strong{color:var(--ink);font-size:19px}.demo-feedback{margin:12px 0;padding:12px;border-radius:12px;background:#eaf8f2;color:#18795c;font-weight:850;text-align:center}.demo-stats{font-size:13px;font-weight:800;color:var(--muted);margin-top:18px}.float-badge{position:absolute;width:66px;height:66px;border-radius:20px;display:grid;place-items:center;font-weight:900;font-size:26px;box-shadow:0 14px 30px rgba(19,33,60,.16);z-index:3}.badge-a{background:var(--violet);color:#fff;top:30px;right:6px;transform:rotate(11deg)}.badge-b{background:var(--blue);color:#fff;bottom:20px;left:20px;transform:rotate(-8deg)}.badge-c{background:var(--orange);color:#fff;top:88px;left:-8px;transform:rotate(-11deg)}.quick-section{padding:40px 0 90px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.section-head h2{font-size:clamp(32px,4vw,50px);line-height:1;letter-spacing:-.045em;margin:0}.text-button{border:0;background:transparent;color:var(--ink);font:inherit;font-weight:850;cursor:pointer;padding:8px 0}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-card{position:relative;min-height:215px;border:1px solid rgba(19,33,60,.08);border-radius:22px;background:white;padding:22px;text-align:left;cursor:pointer;overflow:hidden;transition:.2s transform,.2s box-shadow}.category-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(19,33,60,.10)}.category-icon{font-size:34px}.category-card h3{font-size:23px;line-height:1.05;letter-spacing:-.03em;margin:32px 0 6px}.category-card p{color:var(--muted);font-size:14px;margin:0 36px 0 0}.category-card:after{content:"→";position:absolute;right:20px;bottom:20px;font-size:22px;font-weight:900}.category-card[data-color="blue"]{border-top:5px solid var(--blue)}.category-card[data-color="orange"]{border-top:5px solid var(--orange)}.category-card[data-color="violet"]{border-top:5px solid var(--violet)}.category-card[data-color="green"]{border-top:5px solid var(--green)}.category-card[data-color="yellow"]{border-top:5px solid #e9b527}.category-card[data-color="red"]{border-top:5px solid var(--red)}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-bottom:100px}.feature-card{min-height:315px;border-radius:var(--radius);padding:34px;display:flex;gap:28px;align-items:flex-start}.feature-card.dark{background:var(--ink);color:#fff}.feature-card.paper{background:#fff;border:1px solid var(--line)}.feature-icon{font-size:44px}.mini-label{font-size:11px;font-weight:900;letter-spacing:.14em;opacity:.64}.feature-card h3{font-size:34px;letter-spacing:-.04em;margin:7px 0}.feature-card p{max-width:440px;opacity:.75;margin-bottom:24px}.page-hero.compact{padding:80px 0 38px}.page-hero h1{font-size:clamp(48px,6vw,72px)}.page-hero p{font-size:18px;color:var(--muted);max-width:760px}.practice-layout{display:grid;grid-template-columns:250px 1fr;gap:36px;padding-bottom:100px}.filter-panel{align-self:start;position:sticky;top:120px}.filter-panel h3{margin:0 0 14px}.search-field{height:48px;background:#fff;border:1px solid var(--line);border-radius:13px;display:flex;align-items:center;gap:9px;padding:0 13px}.search-field input{width:100%;border:0;outline:0;font:inherit;background:transparent}.filter-buttons{display:flex;flex-direction:column;gap:7px;margin-top:16px}.filter-button{border:0;background:transparent;text-align:left;border-radius:10px;padding:9px 11px;font:inherit;font-weight:750;color:var(--muted);cursor:pointer}.filter-button.active,.filter-button:hover{background:#fff;color:var(--ink)}.exercise-list{display:grid;gap:26px}.exercise-group h2{font-size:26px;letter-spacing:-.03em;margin:0 0 12px}.exercise-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.exercise-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;text-align:left;cursor:pointer;display:flex;gap:14px;align-items:center;transition:.18s}.exercise-card:hover{border-color:#aeb9ca;transform:translateY(-2px)}.exercise-card .symbol{width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:#f0f3f7;display:grid;place-items:center;font-size:21px;font-weight:900}.exercise-card strong{display:block}.exercise-card small{color:var(--muted)}.exercise-page{padding:56px 0 100px}.back-button{border:0;background:transparent;font:inherit;font-weight:850;cursor:pointer;color:var(--muted);margin-bottom:22px}.exercise-shell{display:grid;grid-template-columns:1fr 260px;gap:24px}.exercise-main{min-width:0}.exercise-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.exercise-heading h1{font-size:clamp(42px,5vw,67px)}.exercise-heading p{color:var(--muted);max-width:700px}.mode-switch{display:flex;background:#e6e9ee;padding:4px;border-radius:12px;flex:0 0 auto}.mode-switch button{border:0;padding:9px 12px;border-radius:9px;font:inherit;font-size:13px;font-weight:850;background:transparent;cursor:pointer}.mode-switch button.active{background:#fff;box-shadow:0 2px 8px rgba(19,33,60,.09)}.exercise-settings{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 16px}.setting-field{background:#fff;border:1px solid var(--line);padding:10px 12px;border-radius:12px;display:flex;gap:10px;align-items:center;font-size:13px;font-weight:750}.setting-field select{border:0;background:transparent;font:inherit;font-weight:850;outline:0}.work-card{background:#fff;border-radius:25px;padding:26px;box-shadow:0 20px 50px rgba(19,33,60,.08);border:1px solid rgba(19,33,60,.06)}.progress-label{font-size:13px;color:var(--muted);font-weight:750}.progress-track{height:8px;background:#edf0f3;border-radius:99px;margin-top:9px;overflow:hidden}.progress-track span{display:block;width:0;height:100%;background:var(--green);transition:.25s}.equation{text-align:center;font-size:clamp(48px,8vw,82px);font-weight:900;letter-spacing:-.045em;padding:58px 10px 42px;min-height:170px}.answer-form{max-width:540px;margin:auto}.answer-form label{display:block;font-size:13px;font-weight:800;color:var(--muted);margin-bottom:7px}.answer-row{display:flex;gap:10px}.answer-row input{min-width:0;flex:1;border:2px solid #cdd5df;border-radius:14px;padding:14px 16px;font:inherit;font-size:20px;font-weight:800;outline:0;background:#fff}.answer-row input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(91,124,250,.12)}.feedback{height:46px;padding-top:10px;font-weight:850}.feedback.good{color:#198060}.feedback.bad{color:#c14654}.work-footer{border-top:1px solid #edf0f3;margin-top:18px;padding-top:18px;font-size:13px;font-weight:800;color:var(--muted)}.tip-card{align-self:start;background:var(--yellow);border-radius:22px;padding:22px;position:sticky;top:120px}.tip-icon{font-size:30px}.tip-card h3{font-size:23px;margin:9px 0}.tip-card p{font-size:14px}.challenge-page{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;min-height:700px;padding-top:50px;padding-bottom:80px}.challenge-intro h1{font-size:clamp(50px,6vw,76px)}.challenge-intro p{font-size:19px;color:var(--muted);max-width:560px}.challenge-card{background:var(--ink);color:#fff;border-radius:32px;padding:34px;box-shadow:var(--shadow)}.challenge-stats{font-size:17px;font-weight:900}.challenge-equation{text-align:center;font-size:clamp(52px,7vw,84px);font-weight:900;padding:76px 0 50px}.challenge-card .answer-row input{background:#fff}.challenge-message{text-align:center;margin-top:18px;opacity:.75;font-weight:800}.worksheet-builder{display:grid;grid-template-columns:300px 1fr;gap:32px;padding-bottom:100px}.builder-panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;align-self:start}.builder-panel label{display:block;font-size:13px;font-weight:850;margin-bottom:16px}.builder-panel select{display:block;width:100%;margin-top:7px;border:1px solid var(--line);border-radius:11px;padding:11px;background:#fff;font:inherit}.builder-actions{display:flex;gap:8px;flex-wrap:wrap}.sheet-preview{background:#fff;min-height:700px;border:1px solid var(--line);box-shadow:0 15px 45px rgba(19,33,60,.08);padding:45px}.sheet-title{text-align:center;margin-bottom:30px}.sheet-title h2{margin:0;font-size:28px}.sheet-meta{display:flex;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:10px}.sheet-calcs{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 60px;margin-top:30px}.sheet-calc{font-size:20px;border-bottom:1px solid #bfc7d1;padding:5px 0 12px}.site-footer{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:34px 0 50px;border-top:1px solid rgba(19,33,60,.13);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:13px}.site-footer strong{color:var(--ink)}.footer-note{text-align:right}
@media(max-width:900px){.top-nav{display:none;position:absolute;top:72px;right:10px;left:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:var(--shadow);flex-direction:column}.top-nav.open{display:flex}.menu-button{display:block}.hero{grid-template-columns:1fr;gap:20px;padding-top:55px}.hero-copy{text-align:center}.hero p{margin-inline:auto}.hero-actions,.trust-row{justify-content:center}.hero-demo{min-height:430px}.category-grid{grid-template-columns:repeat(2,1fr)}.split-section,.challenge-page{grid-template-columns:1fr}.practice-layout{grid-template-columns:1fr}.filter-panel{position:static}.filter-buttons{flex-direction:row;flex-wrap:wrap}.exercise-shell{grid-template-columns:1fr}.tip-card{position:static}.worksheet-builder{grid-template-columns:1fr}.builder-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.builder-actions{grid-column:1/-1}.site-footer{flex-direction:column}.footer-note{text-align:left}}
@media(max-width:620px){.shell{width:min(100% - 24px,1180px)}.site-header{width:calc(100% - 20px);margin-top:10px;height:68px;padding:0 14px}.brand-word{font-size:22px}.brand-mark{width:38px;height:38px}.hero{padding-top:42px}.hero h1{font-size:54px}.hero p{font-size:17px}.hero-demo{min-height:360px}.hero-demo:before{width:290px;height:290px}.demo-card{padding:20px}.demo-equation{font-size:40px}.float-badge{width:52px;height:52px;border-radius:15px;font-size:21px}.category-grid{grid-template-columns:1fr}.split-section{grid-template-columns:1fr}.feature-card{min-height:0;padding:25px}.section-head{align-items:flex-start;flex-direction:column}.exercise-grid{grid-template-columns:1fr}.exercise-heading{flex-direction:column}.mode-switch{width:100%}.mode-switch button{flex:1}.equation{font-size:53px;padding:42px 5px 30px}.answer-row{flex-direction:column}.answer-row .btn{width:100%}.worksheet-builder{gap:14px}.builder-panel{display:block}.sheet-preview{padding:25px 18px}.sheet-calcs{grid-template-columns:1fr;gap:12px}.sheet-meta{font-size:12px}.challenge-page{min-height:0;padding-top:70px}.challenge-equation{padding:55px 0 35px}.site-footer{width:calc(100% - 24px)}}
@media print{.site-header,.site-footer,.page-hero,.builder-panel{display:none!important}.worksheet-builder{display:block!important;padding:0!important}.sheet-preview{border:0;box-shadow:none;padding:0}.shell{width:100%}.sheet-preview{min-height:0}}


/* Repérage express */
.repere-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;padding-bottom:100px}.repere-setup{align-self:start;position:sticky;top:120px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px}.repere-setup label{display:block;font-size:13px;font-weight:850;margin-bottom:14px}.repere-setup select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:11px;padding:11px;background:#fff;font:inherit}.repere-mini-stats{display:flex;justify-content:space-between;gap:8px;margin-top:18px;font-size:13px;font-weight:850;color:var(--muted)}.privacy-note{font-size:12px;color:var(--muted);margin-top:18px}.repere-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:22px;box-shadow:0 20px 50px rgba(19,33,60,.08)}.repere-topline{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}.repere-card svg{display:block;width:min(100%,650px);height:auto;margin:18px auto;touch-action:manipulation;background:#fbfdff;border:1px solid #dce5f0;border-radius:18px}.grid-line{stroke:#dce5f0;stroke-width:1}.axis-line{stroke:#173e75;stroke-width:3;stroke-linecap:round}.axis-label{fill:#53657d;font-size:12px;font-weight:700}.axis-name{fill:#173e75;font-size:16px;font-weight:900}.target-point{fill:#ff7a59;stroke:#fff;stroke-width:4}.selected-point{fill:#1478e7;stroke:#fff;stroke-width:4}.point-label{fill:#13213c;font-size:16px;font-weight:900}.repere-read{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:620px;margin:0 auto}.repere-read label{font-size:13px;font-weight:800;color:var(--muted)}.repere-read input{width:100%;margin-top:6px;border:2px solid #cdd5df;border-radius:14px;padding:13px 14px;font:inherit;font-size:18px;font-weight:800}.repere-actions{display:flex;justify-content:center;gap:10px;margin-top:14px}.repere-card .feedback{text-align:center;height:auto;min-height:42px;padding-top:12px}.repere-setup .btn{width:100%}@media(max-width:900px){.repere-layout{grid-template-columns:1fr}.repere-setup{position:static;display:grid;grid-template-columns:1fr 1fr;gap:10px}.repere-setup .btn,.repere-mini-stats,.privacy-note{grid-column:1/-1}}@media(max-width:620px){.repere-setup{display:block}.repere-read{grid-template-columns:1fr}.repere-card{padding:14px}.repere-topline{align-items:flex-start}.repere-actions{flex-direction:column}.repere-actions .btn{width:100%}}
