.cn-page{--cn-soft:#6b6678;--cn-line:#e2dcec;--cn-tint:#f3f0fa;--cn-star:#fbbc04;--cn-star-off:#e4e0ea;--cn-red:#e5484d;--cn-red-bg:#e5484d1a;--cn-green:#10b981;--cn-green-ink:#047857;--cn-green-bg:#10b9811f;--cn-sms-bg:#e9f2ff;--cn-shadow:0 1px 2px #1a16250a, 0 18px 40px -26px #1a162538;--cn-shadow-lg:0 2px 4px #1a16250a, 0 30px 60px -30px #1a162552;--cn-ease:cubic-bezier(.16, 1, .3, 1);background:radial-gradient(ellipse 55% 30% at 50% 0%, #6b4ed414, transparent 70%), var(--color-background);min-height:100vh;color:var(--color-foreground);position:relative}.cn-wrap{max-width:72rem;margin:0 auto;padding:7.5rem 1rem 5rem}@media (min-width:1024px){.cn-wrap{padding-top:8.5rem}}.cn-soft{color:var(--cn-soft)}.cn-accent{color:var(--color-primary)}.cn-reveal{animation:cn-rise .5s var(--cn-ease)}@keyframes cn-rise{0%{opacity:0;transform:translateY(10px)}}.cn-spin{animation:.9s linear infinite cn-spin}@keyframes cn-spin{to{transform:translateY(-50%)rotate(360deg)}}@media (prefers-reduced-motion:reduce){.cn-reveal,.cn-big,.cn-spin{animation:none!important}}.cn-calc{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center;gap:2.5rem;display:grid}.cn-head{justify-items:center;gap:.9rem;display:grid}.cn-eyebrow{color:var(--color-primary);background:#6b4ed41a;border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .8rem;font-size:.8rem;font-weight:700;display:inline-flex}.cn-h1{max-width:16ch;font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2rem,1.2rem + 3vw,3.25rem);font-weight:800;line-height:1.05}.cn-sub{max-width:34rem;color:var(--cn-soft);font-size:1.05rem;line-height:1.45}.cn-section-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.35rem;font-weight:800}.cn-steps{gap:1.5rem;width:100%;max-width:34rem;display:grid}.cn-step{justify-items:center;gap:.6rem;display:grid}.cn-step-label{align-items:center;gap:.55rem;font-size:1rem;font-weight:700;display:inline-flex}.cn-step-n{background:var(--color-primary);color:#fff;border-radius:999px;place-items:center;width:1.6rem;height:1.6rem;font-size:.85rem;font-weight:800;display:inline-grid}.cn-step-n.is-done{background:var(--cn-green)}.cn-step-links{flex-wrap:wrap;justify-content:center;gap:.4rem 1.1rem;display:flex}.cn-link{color:var(--cn-soft);text-decoration:underline;-webkit-text-decoration-color:var(--cn-line);text-decoration-color:var(--cn-line);text-underline-offset:3px;align-items:center;gap:.35rem;font-size:.82rem;font-weight:600;display:inline-flex}.cn-link:hover{color:var(--color-primary)}.cn-stars{vertical-align:-.12em;flex-shrink:0;line-height:0;display:inline-flex;position:relative}.cn-stars-base,.cn-stars-on{gap:1px;display:flex}.cn-stars svg{flex-shrink:0;display:block}.cn-stars-base{color:var(--cn-star-off)}.cn-stars-fill{display:flex;position:absolute;inset:0 auto 0 0;overflow:hidden}.cn-stars-gold .cn-stars-on{color:var(--cn-star)}.cn-stars-red .cn-stars-on{color:var(--cn-red)}.cn-icon-btn{width:1.9rem;height:1.9rem;color:var(--cn-soft);transition:background var(--duration-hover) ease;border-radius:999px;flex-shrink:0;place-items:center;display:inline-grid}.cn-icon-btn:hover{color:var(--color-foreground);background:#1a16250f}.cn-btn{background:var(--color-primary);color:#fff;height:2.9rem;transition:transform var(--duration-hover) ease, background var(--duration-hover) ease, opacity var(--duration-hover) ease;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:0 1.3rem;font-size:.95rem;font-weight:700;display:inline-flex}.cn-btn:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.cn-btn:disabled{opacity:.55;cursor:progress}.cn-icon-btn:focus-visible,.cn-btn:focus-visible,.cn-link:focus-visible,.cn-target:focus-visible,.cn-choice button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.cn-search{width:100%;position:relative}.cn-search-icon{color:var(--cn-soft);pointer-events:none;position:absolute;top:50%;left:1.4rem;transform:translateY(-50%)}.cn-search-input{width:100%;height:4rem;color:var(--color-foreground);box-shadow:var(--cn-shadow-lg);transition:border-color var(--duration-hover) ease, box-shadow var(--duration-hover) ease;background:#fff;border:2px solid #6b4ed459;border-radius:999px;padding:0 1.2rem 0 3.6rem;font-size:1.1rem}.cn-search-input:disabled{opacity:.7}.cn-search-input:focus,.cn-stepper:focus-within,.cn-gate-input:focus{border-color:#6b4ed48c;outline:none;box-shadow:0 0 0 4px #6b4ed424}.cn-suggestions{z-index:20;border:1px solid var(--cn-line);box-shadow:var(--cn-shadow-lg);text-align:left;background:#fff;border-radius:14px;position:absolute;top:calc(100% + .4rem);left:0;right:0;overflow:hidden}.cn-suggestion{text-align:left;align-items:flex-start;gap:.65rem;width:100%;padding:.7rem .9rem;font-size:.9rem;display:flex}.cn-suggestion:hover,.cn-suggestion[aria-selected=true]{background:var(--cn-tint)}.cn-suggestion>svg{color:var(--color-primary);flex-shrink:0;margin-top:.15rem}.cn-suggestion strong,.cn-suggestion .cn-soft{display:block}.cn-suggestion .cn-soft{font-size:.8rem}.cn-search-note{color:var(--cn-soft);margin-top:.6rem;font-size:.88rem}.cn-chip{border:1px solid var(--cn-line);max-width:100%;box-shadow:var(--cn-shadow);text-align:left;background:#fff;border-radius:999px;align-items:center;gap:.7rem;padding:.5rem .5rem .5rem 1.1rem;display:inline-flex}.cn-chip-text{min-width:0;line-height:1.25;display:grid}.cn-chip-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.cn-chip-text .cn-soft{font-size:.8rem}.cn-manual{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.cn-stepper{border:1px solid var(--cn-line);height:3.25rem;box-shadow:var(--cn-shadow);background:#fff;border-radius:999px;align-items:center;gap:.2rem;padding:0 .5rem 0 1rem;display:inline-flex}.cn-stepper-label{color:var(--cn-soft);margin-right:.3rem;font-size:.8rem;font-weight:700}.cn-stepper-input{width:5ch;font-family:var(--font-display);text-align:center;background:0 0;border:0;outline:none;font-size:1.3rem;font-weight:800}.cn-targets{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.cn-target{border:1px solid var(--cn-line);height:2.3rem;color:var(--cn-soft);transition:background var(--duration-hover) ease, color var(--duration-hover) ease, border-color var(--duration-hover) ease;background:#fff;border-radius:999px;align-items:center;gap:.3rem;padding:0 .9rem;font-size:.9rem;font-weight:700;display:inline-flex}.cn-target svg{color:var(--cn-star-off)}.cn-target:hover{color:var(--color-foreground);border-color:#6b4ed466}.cn-target[aria-checked=true]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.cn-target[aria-checked=true] svg{color:var(--cn-star)}@media (max-width:480px){.cn-targets{gap:.3rem}.cn-target{padding:0 .6rem;font-size:.85rem}}.cn-result{justify-items:center;width:100%;max-width:34rem;padding-top:.5rem;display:grid}.cn-kicker{color:var(--cn-soft);font-size:1.1rem;font-weight:700}.cn-big{font-family:var(--font-display);letter-spacing:-.06em;animation:cn-pop .5s var(--cn-ease);font-size:clamp(6rem,3rem + 12vw,10rem);font-weight:800;line-height:.9}.cn-big.is-ok{color:var(--cn-green)}@keyframes cn-pop{0%{opacity:0;transform:scale(.92)}}.cn-big-caption{align-items:center;gap:.45rem;font-size:1.25rem;font-weight:800;display:inline-flex}.cn-caption{color:var(--cn-soft);margin-top:.4rem;font-size:1.05rem}.cn-caption strong{color:var(--color-foreground)}.cn-caption strong.cn-accent{color:var(--color-primary)}.cn-ruler{width:100%;height:3.5rem;margin-top:3rem;position:relative}.cn-ruler-track,.cn-ruler-fill{border-radius:999px;height:.5rem;position:absolute;top:1.5rem}.cn-ruler-track{background:var(--cn-line);left:0;right:0}.cn-ruler-fill{background:linear-gradient(90deg, var(--cn-star), var(--color-primary));transition:left .4s var(--cn-ease), width .4s var(--cn-ease)}.cn-ruler-dot{width:1.1rem;height:1.1rem;box-shadow:var(--cn-shadow);transition:left .4s var(--cn-ease);border:3px solid #fff;border-radius:999px;position:absolute;top:1.75rem;transform:translate(-50%,-50%)}.cn-ruler-dot.is-now{background:var(--cn-star)}.cn-ruler-dot.is-goal{background:var(--color-primary)}.cn-ruler-label{font-family:var(--font-display);white-space:nowrap;justify-items:center;font-size:1.05rem;font-weight:800;line-height:1.1;display:grid;position:absolute;bottom:calc(100% + .35rem);left:50%;transform:translate(-50%)}.cn-ruler-label small{color:var(--cn-soft);font-family:var(--font-sans);order:-1;font-size:.72rem;font-weight:600}.cn-ruler-dot.is-goal .cn-ruler-label{color:var(--color-primary)}.cn-one{justify-items:center;gap:1.1rem;width:100%;max-width:42rem;display:grid}.cn-eq{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:1rem;width:100%;display:flex}.cn-eq-side{box-shadow:var(--cn-shadow);background:#fff;border-radius:22px;flex:13rem;align-content:center;justify-items:center;gap:.35rem;padding:1.25rem 1rem;display:grid}.cn-eq-side.is-bad{border:1px solid #e5484d40}.cn-eq-text{color:var(--cn-soft);font-size:.9rem;font-weight:600}.cn-eq-count{font-family:var(--font-display);font-size:2rem;font-weight:800;line-height:1.1}.cn-eq-side.is-bad .cn-eq-count{color:var(--cn-red)}.cn-eq-stack{grid-template-columns:repeat(2,auto);gap:.35rem;margin-bottom:.3rem;display:grid}.cn-eq-review{background:var(--cn-tint);border-radius:999px;padding:.3rem .5rem;display:inline-flex}.cn-eq-sign{font-family:var(--font-display);color:var(--cn-soft);align-self:center;font-size:1.8rem;font-weight:800}@media (max-width:640px){.cn-eq{flex-direction:column;gap:.5rem}.cn-eq-side{flex:none}.cn-eq-sign{transform:rotate(90deg)}}.cn-plan{width:100%;max-width:56rem;box-shadow:var(--cn-shadow-lg);text-align:left;background:#fff;border-radius:28px;grid-template-columns:minmax(0,1fr);align-items:center;gap:1.75rem;padding:2rem;display:grid}@media (min-width:820px){.cn-plan{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:2.5rem}}.cn-plan-side{gap:1.1rem;display:grid}.cn-plan-head{gap:.4rem;display:grid}.cn-plan-kicker{color:var(--color-primary);letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;font-weight:800}.cn-plan-title{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.2rem);font-weight:800;line-height:1.08}.cn-plan-accent{color:var(--color-primary);font-style:italic}.cn-plan-contents{gap:.55rem;display:grid}.cn-plan-contents li{align-items:center;gap:.7rem;font-weight:600;display:flex}.cn-plan-contents-icon{background:var(--cn-tint);width:2.2rem;height:2.2rem;color:var(--color-primary);border-radius:10px;flex-shrink:0;place-items:center;display:inline-grid}.cn-plan-note{color:#92400e;background:#f59e0b1f;border-radius:14px;padding:.7rem .9rem;font-size:.88rem}.cn-plan-sent{background:var(--cn-green-bg);color:var(--cn-green-ink);border-radius:999px;justify-self:start;align-items:center;gap:.45rem;padding:.6rem 1rem;font-weight:700;display:inline-flex}.cn-sheets{aspect-ratio:1/1.25;width:100%;max-width:17rem;margin:0 auto;position:relative}.cn-sheet{aspect-ratio:1/1.414;border:1px solid var(--cn-line);transform-origin:bottom;background:#f5f3f8;border-radius:8px;flex-direction:column;width:78%;padding:.85rem .8rem;display:flex;position:absolute;top:0;left:50%;overflow:hidden;box-shadow:0 2px 4px #1a16250d,0 22px 40px -22px #1a162559}.cn-sheet-inner:first-child{transform:translate(-62%)rotate(-9deg)}.cn-sheet-inner:nth-child(2){transform:translate(-55%)rotate(-3.5deg)}.cn-sheet-cover{transform:translate(-44%)rotate(3deg)}.cn-sheets-badge{background:var(--color-foreground);color:#fff;box-shadow:var(--cn-shadow);border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex;position:absolute;bottom:0;right:0}.cn-sheet-logo{color:var(--color-primary);font-family:var(--font-display);font-size:.6rem;font-weight:800}.cn-sheet-pill{color:var(--color-primary-dark);background:#6b4ed41f;border-radius:999px;align-self:flex-start;margin-top:.5rem;padding:.12rem .45rem;font-size:.5rem;font-weight:800}.cn-sheet-title{font-family:var(--font-display);letter-spacing:-.02em;margin-top:.45rem;font-size:.98rem;font-weight:800;line-height:1.05}.cn-sheet-title em{color:var(--color-primary);display:block}.cn-sheet-figs{grid-template-columns:1fr 1fr;gap:.3rem;margin-top:.55rem;display:grid}.cn-sheet-figs>span{border:1px solid var(--cn-line);color:var(--cn-soft);background:#fff;border-radius:5px;padding:.35rem;font-size:.48rem;font-weight:600;line-height:1.2;display:grid}.cn-sheet-figs b{color:var(--color-foreground);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:800;overflow:hidden}.cn-sheet-scene{height:34%;image-rendering:pixelated;background:url(/images/calculateur/plan-quartier.jpg) 50% 30%/cover;margin:auto -.8rem -.85rem;-webkit-mask-image:linear-gradient(#0000,#000 30%);mask-image:linear-gradient(#0000,#000 30%)}.cn-sheet-head{background:var(--cn-line);border-radius:999px;width:45%;height:.35rem}.cn-sheet-bars{align-items:flex-end;gap:4%;height:40%;margin-top:.8rem;display:flex}.cn-sheet-bars i{background:linear-gradient(180deg, var(--color-primary), #6b4ed473);border-radius:3px 3px 1px 1px;flex:1}.cn-sheet-bubbles{gap:.35rem;margin-top:.8rem;display:grid}.cn-sheet-bubbles i{background:var(--cn-sms-bg);border-radius:8px 8px 8px 2px;height:1.3rem}.cn-sheet-bubbles i:nth-child(2){width:80%}.cn-sheet-lines{gap:.3rem;margin-top:auto;display:grid}.cn-sheet-lines i{background:var(--cn-line);border-radius:999px;height:.28rem}.cn-sheet-lines i:nth-child(2){width:85%}.cn-sheet-lines i:nth-child(3){width:60%}.cn-gate{gap:.6rem;display:grid}.cn-choice{background:var(--cn-tint);border-radius:999px;justify-self:start;padding:.25rem;display:inline-flex}.cn-choice button{height:2.1rem;color:var(--cn-soft);transition:background var(--duration-hover) ease, color var(--duration-hover) ease;border-radius:999px;padding:0 1rem;font-size:.86rem;font-weight:700}.cn-choice button[aria-pressed=true]{color:var(--color-foreground);box-shadow:var(--cn-shadow);background:#fff}.cn-gate-field{display:block;position:relative}.cn-gate-icon{color:var(--cn-soft);pointer-events:none;position:absolute;top:50%;left:.95rem;transform:translateY(-50%)}.cn-gate-input{border:1px solid var(--cn-line);background:#fff;border-radius:999px;width:100%;height:2.9rem;padding:0 1rem 0 2.6rem;font-size:.95rem}.cn-gate .cn-btn{height:3rem}.cn-gate-consent{color:var(--cn-soft);font-size:.78rem;line-height:1.4}.cn-gate-error{color:var(--cn-red);font-size:.85rem;font-weight:600}.cn-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}@media (max-width:640px){.cn-plan{padding:1.25rem}}
