/* Carvajal Expertises — Devis V1.5.3. Section-only premium finish; no header overrides. */
#devis.quote-premium {
  --quote-ink:#192c2b; --quote-pine:#285640; --quote-olive:#47745a; --quote-line:rgba(89,96,80,.19);
  position:relative; isolation:isolate; overflow:hidden; scroll-margin-top:0;
  background:#e9e1d6 url('/assets/quote/carvajal-interior-1536.webp') center center/cover no-repeat;
  padding:clamp(72px,7vw,112px) 0 clamp(77px,7.6vw,114px);
}
@media(min-width:1600px){#devis.quote-premium{background-image:url('/assets/quote/carvajal-interior-2560.webp')}}
#devis.quote-premium:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,rgba(246,242,235,.44) 0%,rgba(255,252,247,.38) 34%,rgba(255,253,249,.06) 67%,rgba(255,255,255,.02) 100%)}
#devis .quote-layout{display:grid;grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);align-items:center;gap:clamp(25px,3.5vw,65px);max-width:1240px}
#devis .quote-aside{padding:0 0 0 clamp(0px,1vw,12px);min-width:0}
#devis .quote-aside .eyebrow{display:block;color:#32644a;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
#devis .quote-aside h2{color:#11282a;font-size:clamp(45px,4.7vw,72px);line-height:1.025;letter-spacing:-.048em;font-weight:400;max-width:none;margin:20px 0 18px;text-wrap:balance}
#devis .quote-aside h2:after{content:"";display:block;background:#caa26e;border-radius:6px;width:54px;height:4px;margin-top:22px}
#devis .quote-aside .quote-intro{max-width:480px;font:400 clamp(15px,1.35vw,18px)/1.64 Georgia,'Times New Roman',serif;color:#56616a;margin:0 0 17px;text-wrap:pretty}
#devis .quote-points{list-style:none;margin:20px 0 0;padding:0;max-width:490px;display:grid;grid-template-columns:1fr;gap:0}
#devis .quote-points > div{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:14px;padding:8px 0;min-height:51px;border-top:1px solid rgba(68,79,70,.17);background:none;box-shadow:none}
#devis .quote-points > div:last-child{border-bottom:1px solid rgba(68,79,70,.17)}
#devis .quote-points > div>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(216,231,217,.8);border:1px solid #c8d6c5;color:#223e31;font:700 14px/1 system-ui,sans-serif}
#devis .quote-points > div p{margin:0;max-width:none;color:#273e47;font:500 clamp(13px,1.04vw,15px)/1.4 system-ui,-apple-system,sans-serif}
#devis .quote-proof{margin:17px 0 0;padding:18px 19px;max-width:505px;display:grid;grid-template-columns:60px minmax(0,1fr);gap:17px;align-items:center;background:rgba(225,234,222,.66);border:1px solid rgba(123,151,124,.24);border-radius:16px;box-shadow:0 9px 30px rgba(33,48,33,.035);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#devis .quote-proof-icon{width:58px;height:58px;display:grid;place-items:center;flex:none;border-radius:50%;border:1px solid #bfcfbc;background:#e0ebdd80;color:#2c533f}
#devis .quote-proof-icon svg{width:30px;height:30px}
#devis .quote-proof strong{display:block;font-size:14px;line-height:1.35;color:#213a31;margin:0 0 5px}
#devis .quote-proof small{display:block;font-size:12px;line-height:1.5;color:#67716b}
#devis .quote-proof-copy>span{font-size:12px;line-height:1.5;display:block;color:#63706c;margin-top:9px}
#devis .quote-proof-copy a{color:#244a38!important;text-decoration:underline;text-underline-offset:3px;font-weight:750}
#devis .form-panel{position:relative;min-width:0;max-width:none;margin:0;padding:clamp(28px,3.1vw,45px) clamp(23px,3.1vw,45px) clamp(25px,3vw,40px);overflow:visible;isolation:isolate;background:rgba(255,254,251,.955);border:1px solid rgba(207,170,118,.70);border-radius:31px;box-shadow:0 30px 65px rgba(41,43,32,.15),0 4px 15px rgba(68,46,28,.05),inset 0 0 0 1px rgba(255,255,255,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
#devis .form-panel:before{content:none}
#devis .form-top{display:flex;justify-content:space-between;align-items:center;margin:0 0 17px;padding:0;border:0}
#devis .step-label{font-size:11px;color:#1c3030;letter-spacing:.13em;font-weight:800}
#devis .progress{height:9px;background:#e6e6e4;margin:0 0 clamp(28px,3vw,36px);border-radius:90px;overflow:hidden}
#devis .progress span{background:linear-gradient(90deg,#47785b,#5b8a6c);border-radius:90px}
#devis .form-panel h3{font:400 clamp(26px,2.3vw,36px)/1.14 Georgia,'Times New Roman',serif;letter-spacing:-.036em;color:#182e31;margin:0 0 13px;text-wrap:balance}
#devis .form-help{font-size:13px;line-height:1.6;max-width:none;margin:0;color:#697680}
#devis .fieldgrid{margin-top:clamp(24px,2.7vw,36px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
#devis .field{min-width:0}
#devis .field.full{grid-column:1 / -1}
#devis .field label,#devis .field legend{color:#3f4b58;font-size:13px;line-height:1.4;font-weight:700;margin-bottom:9px}
#devis .quote-input-shell{position:relative;display:block;min-width:0}
#devis .quote-field-icon{position:absolute;top:50%;left:17px;transform:translateY(-50%);width:21px;height:21px;z-index:1;pointer-events:none;color:#667184}
#devis .field input:not([type=radio]),#devis .field select,#devis .field textarea{background:rgba(255,255,255,.62);border:1px solid #d4d7d7;min-height:59px;border-radius:13px;padding:14px 16px;color:#203b34;font-size:15px;line-height:1.35;transition:background .16s,border-color .16s,box-shadow .16s}
#devis .field input:not([type=radio]):focus,#devis .field select:focus,#devis .field textarea:focus{outline:0;background:#fff;border-color:#507f64;box-shadow:0 0 0 3px rgba(64,113,80,.13)}
#devis .field .quote-input-shell input{padding-left:50px}
#devis .field input::placeholder,#devis .field textarea::placeholder{color:#8f99a5;opacity:1}
#devis .field input[aria-invalid=true],#devis .field select[aria-invalid=true],#devis .field textarea[aria-invalid=true]{border-color:#b44838;box-shadow:0 0 0 2px rgba(180,72,56,.08)}
#devis .field textarea{min-height:116px;resize:vertical}
#devis .choice{background:rgba(255,255,255,.58);border-radius:12px;min-height:48px;transition:background .16s,border-color .16s}
#devis .choice:hover{background:#f1f5ef;border-color:#acc4ae}
#devis .choice:focus-within{outline:2px solid #447b58;outline-offset:2px}
#devis .field-note,#devis .field-error{font-size:12px}
#devis .form-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:26px}
#devis .form-actions .btn{min-height:58px;border-radius:13px;padding:13px 23px;font-size:14px;font-weight:750;letter-spacing:.008em;display:inline-flex;gap:18px;align-items:center;justify-content:center;transition:transform .16s,box-shadow .16s,background .16s}
#devis .form-actions .btn-primary{background:linear-gradient(148deg,#47795c,#2b5943);box-shadow:0 9px 21px rgba(41,82,59,.18);border:1px solid #4c8063;color:#fff}
#devis .form-actions .btn-primary:hover{background:linear-gradient(148deg,#3f7052,#214d39);transform:translateY(-1px);box-shadow:0 14px 24px rgba(41,82,59,.20)}
#devis .form-actions .btn:focus-visible,#devis .quote-proof a:focus-visible{outline:3px solid #416d4f;outline-offset:4px}
#devis .form-actions .btn:disabled{opacity:.68;cursor:wait;transform:none}
#devis .form-meta{font-size:11px;line-height:1.6;color:#66737e;margin:17px 0 0;max-width:100%;text-wrap:pretty}
#devis .form-meta a{color:#5d6470;text-underline-offset:3px}
#devis .form-alert:empty{display:none}
#devis .form-success{min-height:350px;display:flex;flex-direction:column;justify-content:center;align-items:start;gap:12px}
#devis .form-success[hidden]{display:none}
#devis .form-success h3,#devis .form-success p{margin:0}
@media(max-width:1080px){#devis .quote-layout{gap:28px;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}#devis .quote-aside h2{font-size:clamp(39px,4.5vw,59px)}#devis .form-panel{padding:31px 26px}#devis .quote-intro{font-size:15px}}
@media(max-width:860px){#devis.quote-premium{padding:72px 0 86px;background-position:52% center}#devis.quote-premium:before{background:linear-gradient(180deg,rgba(251,249,244,.75),rgba(250,246,239,.54) 54%,rgba(255,253,249,.24))}#devis .quote-layout{grid-template-columns:1fr;gap:30px;max-width:650px}#devis .quote-aside h2{font-size:clamp(43px,7vw,65px)}#devis .quote-aside .quote-intro{max-width:580px}#devis .quote-points{max-width:none}#devis .quote-proof{max-width:none}#devis .form-panel{padding:32px 31px}}
@media(max-width:560px){#devis.quote-premium{background-image:url('/assets/quote/carvajal-interior-768.webp');background-position:48% top;padding:48px 0 66px}#devis.quote-premium:before{background:linear-gradient(180deg,rgba(255,252,247,.86) 0%,rgba(255,252,247,.78) 43%,rgba(255,252,247,.56) 100%)}#devis .quote-layout{width:calc(100% - 32px);gap:25px}#devis .quote-aside{padding:0 6px}#devis .quote-aside .eyebrow{font-size:10px;letter-spacing:.145em}#devis .quote-aside h2{font-size:clamp(41px,10.7vw,56px);margin:13px 0 15px}#devis .quote-aside h2:after{margin-top:16px}#devis .quote-aside .quote-intro{font-size:14px;line-height:1.62;margin-bottom:12px}#devis .quote-points{margin-top:16px}#devis .quote-points > div{min-height:44px;grid-template-columns:36px 1fr;gap:11px;padding:6px 0}#devis .quote-points > div>span{width:33px;height:33px;font-size:12px}#devis .quote-points > div p{font-size:13px}#devis .quote-proof{padding:14px;grid-template-columns:42px 1fr;gap:11px;margin-top:14px;border-radius:14px}#devis .quote-proof-icon{width:42px;height:42px}#devis .quote-proof-icon svg{width:22px;height:22px}#devis .quote-proof strong{font-size:13px}#devis .quote-proof small,#devis .quote-proof-copy>span{font-size:11px}#devis .form-panel{padding:26px 19px 27px;border-radius:22px}#devis .form-panel h3{font-size:clamp(27px,7vw,33px)}#devis .fieldgrid{grid-template-columns:1fr;gap:16px;margin-top:22px}#devis .field.full{grid-column:auto}#devis .field input:not([type=radio]),#devis .field select,#devis .field textarea{min-height:54px;font-size:16px}#devis .form-actions{margin-top:21px}#devis .form-actions .btn{width:100%;min-height:54px}#devis .form-meta{margin-top:15px;font-size:11px}#devis .progress{margin-bottom:24px}#devis .quote-field-icon{left:16px}}
@media(max-width:360px){#devis .quote-layout{width:calc(100% - 24px)}#devis .form-panel{padding:23px 15px 24px}#devis .quote-aside h2{font-size:38px}#devis .quote-proof{grid-template-columns:35px 1fr}#devis .quote-proof-icon{width:35px;height:35px}}
@media(prefers-reduced-motion:reduce){#devis *,#devis *:before,#devis *:after{transition:none!important;animation:none!important}}
/* Keep the quote section and step heading visible beneath the persistent header. */
#devis.quote-premium{scroll-margin-top:106px}
#devis .quote-layout{align-items:start}
#devis .quote-aside{padding-top:16px}
#devis #form-step-title{scroll-margin-top:112px}
@media(max-width:860px){#devis.quote-premium{scroll-margin-top:86px}#devis .quote-aside{padding-top:0}#devis #form-step-title{scroll-margin-top:91px}}


/* Carvajal Expertises — V1.5.4 polish: section bridges and service image framing. */
#devis.quote-premium{margin-top:-26px;padding-top:calc(clamp(72px,7vw,112px) + 26px);padding-bottom:clamp(86px,8vw,128px);box-shadow:inset 0 48px 72px -54px rgba(18,44,33,.58),inset 0 -68px 88px -58px rgba(250,247,242,.88)}
#devis.quote-premium::before{background:linear-gradient(180deg,rgba(22,52,40,.34) 0%,rgba(247,242,234,.14) 16%,rgba(255,252,247,0) 31%),linear-gradient(180deg,rgba(255,252,247,0) 0%,rgba(249,247,242,.08) 58%,rgba(249,247,242,.72) 100%),linear-gradient(90deg,rgba(246,242,235,.50) 0%,rgba(255,252,247,.40) 34%,rgba(255,253,249,.09) 67%,rgba(255,255,255,.02) 100%)}
#devis.quote-premium::after{content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(70px,8vw,126px);pointer-events:none;z-index:0;background:linear-gradient(180deg,rgba(249,247,242,0) 0%,rgba(249,247,242,.62) 58%,#f8f8f4 100%)}
#devis .quote-layout,#devis .quote-aside,#devis .form-panel{position:relative;z-index:1}
#devis + .cabinet-v13{position:relative;margin-top:-22px;padding-top:calc(clamp(86px,9vw,132px) + 20px)}
#devis + .cabinet-v13::before{content:"";position:absolute;left:0;right:0;top:0;height:clamp(54px,6vw,88px);pointer-events:none;background:linear-gradient(180deg,#f8f8f4 0%,rgba(248,248,244,.58) 52%,rgba(248,248,244,0) 100%)}
.services-section-premium .premium-service-card:nth-child(1) .service-visual img{object-position:center 53%}
.services-section-premium .premium-service-card:nth-child(2) .service-visual img{object-position:center 52%}
.services-section-premium .premium-service-card:nth-child(3) .service-visual img{object-position:center 56%}
@media(max-width:860px){#devis.quote-premium{margin-top:-18px;padding-top:calc(72px + 18px);padding-bottom:92px}#devis + .cabinet-v13{margin-top:-16px;padding-top:calc(clamp(78px,10vw,118px) + 14px)}}
@media(max-width:560px){#devis.quote-premium{margin-top:-10px;padding-top:58px;padding-bottom:74px;box-shadow:inset 0 34px 54px -42px rgba(19,45,34,.46),inset 0 -54px 70px -52px rgba(250,247,242,.84)}#devis.quote-premium::before{background:linear-gradient(180deg,rgba(23,51,40,.25) 0%,rgba(255,252,247,.18) 17%,rgba(255,252,247,.04) 35%),linear-gradient(180deg,rgba(255,252,247,.88) 0%,rgba(255,252,247,.76) 43%,rgba(255,252,247,.56) 100%)}#devis.quote-premium::after{height:76px}#devis + .cabinet-v13{margin-top:-8px;padding-top:calc(clamp(72px,11vw,108px) + 10px)}}

/* V1.5.4 — responsive photographic composition and visual continuity */
#devis.quote-premium{margin-top:0;padding-top:clamp(82px,8vw,126px);background-position:50% 54%;background-size:cover;background-color:#e9e2d8;box-shadow:none}
#devis.quote-premium::before{background:linear-gradient(180deg,#1b382c 0%,rgba(32,62,47,.88) 1.2%,rgba(42,73,55,.52) 3.8%,rgba(233,227,217,.18) 12%,transparent 22%),linear-gradient(90deg,rgba(252,249,242,.65) 0%,rgba(254,251,246,.52) 38%,rgba(254,251,246,.10) 74%,rgba(255,255,255,.025) 100%)}
#devis.quote-premium::after{height:clamp(92px,11vw,154px);background:linear-gradient(180deg,transparent 0%,rgba(248,248,244,.53) 58%,#f8f8f4 100%)}
#devis .quote-aside h2{color:#19382c;letter-spacing:-.043em}
#devis .quote-aside .eyebrow{color:#335d44}
#devis .quote-aside .quote-intro{color:#41584a;font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-size:clamp(15px,1.27vw,17px);line-height:1.7;font-weight:450}
#devis .quote-points > div p{color:#274938}
#devis .quote-proof{background:rgba(232,238,225,.81);border-color:rgba(89,129,99,.32);box-shadow:0 12px 32px rgba(28,57,40,.07)}
#devis .quote-proof strong{color:#1c4330}
#devis .quote-proof small,#devis .quote-proof-copy>span{color:#4b6254}
#devis .form-panel h3{color:#1b3d2e}
#devis .form-help,#devis .form-meta{color:#4c6255}
#devis .field label,#devis .field legend{color:#2b4538}
#devis + .cabinet-v13{margin-top:0;padding-top:clamp(86px,9vw,132px)}
#devis + .cabinet-v13::before{height:clamp(54px,6vw,90px);background:linear-gradient(180deg,#f8f8f4,rgba(248,248,244,0))}
@media(min-width:1600px){#devis.quote-premium{background-position:center 52%}}
@media(max-width:860px){#devis.quote-premium{margin-top:0;padding-top:85px;background-position:58% 50%}#devis.quote-premium::before{background:linear-gradient(180deg,#1b382c 0%,rgba(28,56,43,.44) 2.5%,rgba(255,252,246,.73) 13%,rgba(255,252,246,.68) 100%)}#devis + .cabinet-v13{margin-top:0;padding-top:clamp(78px,10vw,118px)}}
@media(max-width:560px){#devis.quote-premium{margin-top:0;padding-top:64px;background-position:62% 46%;padding-bottom:88px}#devis.quote-premium::before{background:linear-gradient(180deg,#1b382c 0%,rgba(29,57,42,.45) 2%,rgba(255,252,247,.89) 12%,rgba(255,252,247,.75) 55%,rgba(255,252,247,.69) 100%)}#devis.quote-premium::after{height:92px}#devis + .cabinet-v13{margin-top:0;padding-top:clamp(72px,11vw,108px)}}
