/* LUNARX UI corrections: loaded last with a unique cache key */
:root{--lx-ink:#172a21;--lx-green:#183e31;--lx-border:#d8dfd5;--lx-cream:#f3f3ed}
.page-accueil .lx-cta{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,.84fr)!important;align-items:center!important;gap:clamp(35px,5vw,95px)!important;max-width:1280px;margin:clamp(65px,9vw,130px) auto!important;padding:clamp(34px,5.5vw,90px)!important;background:#e9eee7!important;border-radius:3px;overflow:hidden;position:relative}
.page-accueil .lx-cta>div{min-width:0;z-index:1}.page-accueil .lx-cta .section-kicker{display:block;font-size:11px;color:#456655;letter-spacing:.19em;margin-bottom:25px}.page-accueil .lx-cta h2{font-size:clamp(35px,4.1vw,66px);line-height:1.06;letter-spacing:-.065em;margin:0 0 27px;max-width:650px;color:var(--lx-ink)}.page-accueil .lx-cta p{font-size:clamp(15px,1.3vw,19px);line-height:1.8;color:#516255;max-width:620px;margin:0 0 35px}.page-accueil .lx-cta .hero-actions{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:22px}.page-accueil .lx-cta .primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:54px;text-align:center;background:#1c3c2f;color:white;padding:16px 24px;text-decoration:none;white-space:normal}.page-accueil .lx-cta .under-link{display:inline-flex;align-items:center;min-height:54px;color:#1c3c2f;text-decoration:none;border-bottom:1px solid #1c3c2f;font-weight:650}.page-accueil .lx-cta>img{width:100%;height:clamp(290px,34vw,480px);object-fit:cover;object-position:center;clip-path:none;border-radius:160px 160px 2px 2px;box-shadow:24px 24px 0 #c8d6ca}
.lx-simple-cta{display:flex!important;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;max-width:1280px;margin:45px auto!important;padding:26px 35px!important;background:#eaf0e8;border-left:3px solid #305944}.lx-simple-cta a{display:inline-flex;padding:13px 18px;color:#194230;background:white;border:1px solid #c6d4c8;text-decoration:none;font-weight:700}.lx-simple-cta a:first-child{background:#1c3c2f;color:white}.lx-simple-cta a:hover,.lx-cta a:hover{opacity:.87}
.estimate-form .option-detail,.estimate-form input.option-detail{display:block!important;box-sizing:border-box;width:100%!important;min-height:43px;margin-top:12px!important;border:1px solid #bfcfc1!important;border-radius:3px;padding:11px 13px!important;background:#fff;color:#1b2e24;font:inherit;font-size:13px!important;line-height:1.45}.estimate-form .option-hint{display:block!important;margin-top:5px;color:#697b6b;line-height:1.5;font-size:12px;letter-spacing:normal}.estimate-form .option-detail:focus-visible{outline:2px solid #316c4b;outline-offset:2px}.estimate-form label:has(.option-detail){display:block;min-width:0}.estimate-form label:has(.option-detail) .option-hint{clear:both}
.page-accueil .expertise-item h3,.card h3,.page-services .card h3{overflow-wrap:normal;word-break:normal}.page-accueil .expertise-item h3{max-width:100%;line-height:1.15}.page-accueil .expertise-grid{min-width:0}.page-accueil .expertise-item{min-width:0}
@media(max-width:880px){.page-accueil .lx-cta{grid-template-columns:1fr!important;padding:40px 28px!important;gap:33px!important}.page-accueil .lx-cta>img{height:320px;max-width:580px;box-shadow:15px 15px 0 #c8d6ca}}
@media(max-width:560px){.page-accueil .lx-cta{margin:50px auto!important;padding:28px 20px!important}.page-accueil .lx-cta h2{font-size:35px}.page-accueil .lx-cta .hero-actions{align-items:stretch;flex-direction:column}.page-accueil .lx-cta .under-link{align-self:flex-start}.page-accueil .lx-cta>img{height:235px;border-radius:105px 105px 0 0}.lx-simple-cta{padding:22px!important}.lx-simple-cta a{width:100%;justify-content:center;text-align:center}}
/* Quote calculator: explicit styling for every field and state */
.page-devis .quote-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:clamp(25px,4vw,60px)}
.page-devis .estimate-form{display:grid;gap:25px;min-width:0}.page-devis .estimate-form fieldset{border:1px solid #d8e2d9;background:#f8faf7;border-radius:6px;padding:clamp(20px,2.5vw,36px);margin:0;min-width:0}.page-devis .estimate-form legend{font-size:13px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;color:#244632;padding:0 12px}.page-devis .estimate-form .radio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.page-devis .radio-grid>label{display:flex;align-items:flex-start;gap:12px;padding:16px;background:white;border:1px solid #d4e1d6;cursor:pointer;border-radius:5px}.page-devis .radio-grid label:has(input:checked){border:2px solid #32694a;background:#edf5ee}.page-devis .radio-grid input{margin:5px 0 0;accent-color:#286846;flex-shrink:0}.page-devis .radio-grid span{display:grid;gap:4px;font-weight:750;min-width:0}.page-devis .radio-grid small{display:block;color:#738276;font-size:12px;line-height:1.5;font-weight:400}.page-devis .estimate-form .option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:19px}.page-devis .option-grid>label{display:flex;gap:12px;align-items:flex-start;margin:0;padding:18px;background:white;border:1px solid #d7e2d8;border-radius:5px;min-width:0;cursor:pointer}.page-devis .option-grid>label:has(input:checked){border-color:#50886b;background:#f1f7f1}.page-devis .option-grid>label>input[type=checkbox]{flex:0 0 auto;margin-top:5px;accent-color:#286846;width:18px;height:18px}.page-devis .option-grid>label>span{display:block;min-width:0;flex:1;font-size:14px;font-weight:700;line-height:1.5;overflow-wrap:break-word}.page-devis .option-grid .option-hint{font-weight:400;margin-top:5px}.page-devis .option-grid .option-detail{display:block;width:100%;min-width:0;margin-top:13px;box-shadow:none}.page-devis .maintenance-check{display:flex;align-items:flex-start;gap:12px;padding:17px 20px;border:1px solid #d7e3d8;background:white;border-radius:5px;margin:12px 0}.page-devis .maintenance-check:has(input:checked){border-color:#50886b;background:#f1f7f1}.page-devis .maintenance-check>span{display:grid;gap:4px}.page-devis .maintenance-check>span small{display:block;color:#708072;line-height:1.5}.page-devis .maintenance-check>input{margin:4px 0 0;accent-color:#286846;width:18px;height:18px;flex-shrink:0}.page-devis .estimate-form .field-stack{display:grid;gap:9px;color:#274533;font-weight:700}.page-devis .estimate-form input[type=number],.page-devis .estimate-form select,.page-devis .estimate-form textarea{display:block;width:100%;min-height:45px;padding:13px 14px;border:1px solid #bfd0c2;background:#fff;border-radius:4px;color:#1a3023;font:inherit}.page-devis .estimate-form textarea{min-height:115px;resize:vertical}.page-devis .estimate-form .field-note{line-height:1.65;color:#708071;font-size:13px}.page-devis .estimate-form .submit-estimate{display:inline-flex;justify-content:center;align-items:center;min-height:55px;padding:14px 25px;background:#214632;color:white;text-align:center;border:0;border-radius:3px;font-weight:700}.page-devis .estimate-result{position:sticky;top:100px;border-radius:5px;background:#203d30;color:#f3f8f0;padding:clamp(25px,3vw,43px);min-width:0;max-height:calc(100vh - 120px);overflow:auto}.page-devis .estimate-result .section-kicker{color:#b5d2bf}.page-devis .estimate-amount{font-size:clamp(28px,3vw,43px);line-height:1.15;font-weight:750;letter-spacing:-.055em;margin:12px 0 22px}.page-devis .estimate-result>p{font-size:13px;color:#e1eee1;line-height:1.6}.page-devis .estimate-lines{margin:22px 0;border-top:1px solid #5a7964}.page-devis .estimate-lines>div,.page-devis .estimate-recurring{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:12px 0;border-bottom:1px solid #5a7964;font-size:13px}.page-devis .estimate-lines strong,.page-devis .estimate-recurring strong{white-space:nowrap}.page-devis .estimate-total-year{padding:24px 0}.page-devis .estimate-total-year strong{font-size:20px;line-height:1.45}.page-devis .estimate-result .primary-link{display:inline-flex;padding:14px 20px;background:#e8f3e8;color:#153c26;text-decoration:none;font-weight:750;text-align:center}.page-devis .estimate-result .under-link{color:#e5f5e8}.page-devis .estimate-tools button{color:white;border-color:#73977b}.page-devis .quote-sources{border-top:1px solid #d5e0d6;margin-top:60px}.page-devis .quote-sources summary{padding:12px 0;color:#284b35}.page-devis .quote-help{padding:18px;background:#eef4ef;border-left:3px solid #65876c;font-size:13px}
@media(max-width:950px){.page-devis .quote-layout{grid-template-columns:1fr}.page-devis .estimate-result{position:static;max-height:none;overflow:visible}}
@media(max-width:590px){.page-devis .estimate-form .option-grid,.page-devis .estimate-form .radio-grid{grid-template-columns:1fr}.page-devis .estimate-form fieldset{padding:20px 15px}.page-devis .estimate-result{padding:24px 18px}}

/* Public booking UI */
.lx-flow{box-sizing:border-box;width:min(calc(100% - 36px),840px);background:#fff;border:1px solid #dce5dc;border-radius:6px;box-shadow:0 15px 55px #182e2110}.lx-flow h1{font-size:clamp(32px,4vw,49px);margin:20px 0 8px;color:#193e2d;letter-spacing:-.055em}.lx-flow>p{color:#62746a;line-height:1.75;margin:10px 0 30px}.lx-flow>a:first-child{color:#28513a;text-decoration:none;font-weight:750}.lx-flow form label{font-size:14px;color:#214631;line-height:1.5;min-width:0}.lx-flow form input,.lx-flow form textarea,.lx-flow form select{min-width:0;max-width:100%;border-color:#c3d1c5!important;border-radius:4px!important;color:#173523!important}.lx-flow form input:focus-visible,.lx-flow form select:focus-visible,.lx-flow form textarea:focus-visible{outline:2px solid #3d8062;outline-offset:2px}.lx-flow form button{background:#1d4833!important;border-radius:4px;min-height:55px;font-weight:750}.lx-flow form button:disabled{background:#9baa9b!important;cursor:not-allowed}.lx-flow .box{border:1px solid #e2eae0;border-radius:5px}.lx-flow .lx-booking-help{font-size:12px;color:#758675;font-weight:400;line-height:1.6}.lx-flow select optgroup{font-weight:700;color:#31513c}.lx-flow select option{color:#183d2c;font-weight:400}
@media(max-width:660px){.lx-flow{padding:23px!important;margin:80px auto 35px!important}}
.lx-flow #lx-booking-empty{display:block;color:#8b512c;min-height:16px;font-size:12px;font-weight:600}
