/* Refonte : identité de chantier, photographie entière et décisions lisibles. */
:root{--paper:#f4f3ee;--line:#d9dddF;--muted:#526074;--dark:#101f39}body{background:var(--paper)}.demo-bar{height:28px;font-size:11px}.demo-bar button{font-size:11px}.site-header{height:96px;background:#fff;color:var(--navy);gap:25px;border-bottom:1px solid var(--line)}.brand img{width:155px;border-radius:0}.site-header nav{gap:23px;font-size:14px}.site-header nav a:hover{color:#aa2324}.header-call{font-size:15px;font-weight:700;text-decoration:none;white-space:nowrap}.btn{border-radius:2px;gap:15px}.hero{background:var(--paper);color:var(--navy);grid-template-columns:1.05fr 1fr;gap:6%;min-height:0;padding:55px 5.5% 48px;align-items:center;border-bottom:1px solid var(--line)}.hero-copy{padding:0}.hero .eyebrow{color:var(--muted);margin-bottom:14px}.hero h1{font-size:clamp(48px,5.1vw,78px);line-height:1.02;margin:5px 0 20px}.hero h1 em{color:var(--navy)}.hero-description{color:var(--muted);font-size:17px;line-height:1.55;max-width:430px;margin-bottom:24px}.hero-actions{gap:20px}.light-link{color:var(--navy);border-color:#9ca7ba}.hero-reassurance{color:var(--muted);margin-top:22px;font-size:12px;gap:17px}.hero-reassurance svg{color:var(--navy)}.hero-map-link{margin-top:20px;font-size:14px;font-weight:600;text-underline-offset:4px}.hero-visual{margin:0;background:#fff;border:1px solid var(--line);overflow:hidden;min-height:0}.hero-visual>img{position:static;width:100%;height:auto;object-fit:contain}.hero-visual:after{display:none}.hero-visual figcaption{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;background:var(--navy);color:white;font-size:10px;letter-spacing:.1em;border-top:3px solid var(--yellow)}.hero-visual figcaption span:first-child{font-weight:800;color:var(--yellow)}.fact-strip{padding:20px 5.5%;gap:20px}.fact-strip>div{border-left:2px solid var(--red);padding-left:16px}.fact-strip strong{font-size:24px}.fact-strip span{font-size:12px}.section{padding:58px 5.5%;scroll-margin-top:20px}.section-heading{margin-bottom:28px}.section-heading h2{font-size:clamp(34px,3.4vw,48px)}.section-heading>p{font-size:14px}.container-section{background:var(--paper)}.selector-layout{gap:30px;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr)}.selector-main{background:white;padding:26px;border:1px solid var(--line)}.choice-label{font-size:14px;font-weight:700;margin:0 0 18px}.waste-choice{min-height:100px;padding:15px 12px;border-radius:2px}.waste-choice.selected{padding:14px 11px}.waste-choice .tile-number{display:none}.waste-choice strong{font-size:15px}.waste-choice small{font-size:12px}.waste-choice.selected{background:#edf1f8}.volume-heading{margin-top:25px}.volume-heading span{display:none}.volume-button{font-size:16px;padding:13px 8px}.volume-guidance{border-left:3px solid var(--yellow);padding:9px 12px;font-size:13px;line-height:1.6;background:var(--paper);margin-top:20px}.estimate-card{box-shadow:none;border:1px solid var(--line);border-top:4px solid var(--yellow);padding:25px;position:static}.estimate-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.estimate-top .eyebrow{margin:0}.quick-location{margin-top:18px;grid-template-columns:1.4fr 1fr;gap:12px}.form-field{font-size:13px}.estimate-card h3{margin:20px 0 10px}.price>span:first-child{font-size:54px}.estimate-rule{margin:18px 0}.estimate-card .microcopy{font-size:11px}.delivery-section{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.delivery-map-panel{border:0;background:var(--paper);padding:22px}.delivery-layout{gap:30px;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr)}#delivery-map{background:var(--paper)}.delivery-result{background:var(--paper);border-top:4px solid var(--navy)}.map-legend{font-size:12px}.map-attribution{font-size:10px}.map-commune{transition:fill .15s,filter .15s}.map-commune.selected{stroke-width:4}.crane-section{margin:0;padding:45px 5.5%;gap:40px;align-items:center}.crane-photo{padding:0;background:none}.crane-photo>span{display:none}.crane-copy{padding:15px 0}.crane-copy h2{font-size:44px}.crane-facts{margin:18px 0;padding-top:16px}.crane-copy>p:not(.eyebrow):not(.crane-note){font-size:15px}.projects-section{background:var(--paper)}.project-feature{grid-template-columns:minmax(0,2.1fr) minmax(230px,1fr);border:1px solid var(--line);background:#fff}.project-view{min-width:0}.photo-compare{aspect-ratio:1080/712;position:relative;background:#e6e7e5;overflow:hidden}.photo-compare>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}.photo-compare #project-before{clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare-divider{position:absolute;top:0;bottom:0;left:var(--split);width:2px;background:white;display:flex;align-items:center;justify-content:center;color:var(--navy);font-size:21px;pointer-events:none;z-index:2}.compare-divider:before{content:'';width:40px;height:40px;background:white;border-radius:50%;position:absolute;z-index:-1;box-shadow:0 2px 12px #0003}.compare-label{position:absolute;top:12px;background:#071632d9;color:#fff;padding:7px 11px;font-size:12px;pointer-events:none}.compare-label.before{left:12px}.compare-label.after{right:12px}#compare-slider{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:3;touch-action:pan-y}.photo-compare:focus-within{outline:3px solid var(--navy);outline-offset:3px}.compare-toolbar{padding:13px 16px;display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted)}.compare-toolbar button{background:none;color:var(--navy);font-size:12px;text-decoration:underline}.project-copy{padding:26px;align-self:center}.project-copy h3{font-size:30px;margin-bottom:12px}.project-copy>p:not(.eyebrow){font-size:14px;line-height:1.5}.project-copy .eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:14px}.project-controls{margin:18px 0 12px;gap:16px}.project-thumbnails img{width:56px;height:55px;object-fit:contain}.practical{background:#fff}.steps-grid{gap:30px}.steps-grid h3{font-size:18px}.steps-grid p{font-size:14px}.step-num{font-size:36px}.faq-layout{margin-top:40px;padding-top:35px;gap:35px}.faq-list summary{font-size:15px;padding:17px 0}.faq-list p{font-size:14px}.closing{padding:38px 5.5%;border-top:3px solid var(--yellow)}.closing h2{font-size:40px}footer{padding-top:35px}footer a{text-underline-offset:3px}.btn:focus-visible,input:focus-visible{outline:3px solid #e39819;outline-offset:3px}
@media(min-width:1600px){.hero,.section,.fact-strip,.site-header,.crane-section,.closing,footer{padding-left:calc((100vw - 1424px)/2);padding-right:calc((100vw - 1424px)/2)}}
@media(max-width:1100px){.site-header nav{gap:14px}.header-call{display:none}.site-header{gap:18px}.hero{gap:4%}.hero h1{font-size:54px}.hero-actions{gap:12px}.hero-actions .btn{font-size:14px;padding:14px 18px}.selector-layout{grid-template-columns:1.3fr 1fr;gap:20px}.selector-main{padding:20px}.waste-grid{grid-template-columns:repeat(2,1fr)}.quick-location{grid-template-columns:1fr}.project-copy{padding:20px}}
@media(max-width:800px){.site-header{height:84px;padding:10px 5%}.brand img{width:130px}.site-header nav{display:none}.header-cta{min-height:44px;padding:12px 18px}.hero{grid-template-columns:1fr;gap:28px;padding:32px 5%}.hero h1{font-size:52px}.hero-description{max-width:100%;font-size:16px}.hero-visual{width:100%;max-width:500px;justify-self:center}.hero-visual>img{max-height:280px;object-fit:contain}.hero-reassurance{margin-top:18px}.fact-strip{padding:18px 5%;gap:13px}.fact-strip strong{font-size:19px}.fact-strip small{font-size:16px}.fact-strip span{font-size:11px}.section{padding:38px 5%}.section-heading{align-items:start;gap:12px;flex-direction:column}.section-heading>p br{display:none}.section-heading h2{font-size:36px}.selector-layout,.delivery-layout,.crane-section,.project-feature{grid-template-columns:1fr}.quick-location{grid-template-columns:1.4fr 1fr}.waste-grid{grid-template-columns:repeat(3,1fr)}.delivery-result{padding:22px}.crane-section{padding:32px 5%;gap:24px}.crane-copy h2{font-size:38px}.crane-photo{max-width:500px;justify-self:center}.project-copy{padding:23px}.project-thumbnails{display:none}.project-controls{margin-bottom:0}.steps-grid{grid-template-columns:1fr;gap:22px}.steps-grid article{display:grid;grid-template-columns:40px 1fr;column-gap:15px}.steps-grid h3{margin:4px 0 8px}.steps-grid p{grid-column:2}.step-num{grid-row:1/3}.faq-layout{grid-template-columns:1fr;gap:20px}.faq-layout h3{font-size:24px}.closing h2{font-size:35px}.closing{flex-direction:column;align-items:start}.mobile-action{position:fixed;inset:auto 0 0;z-index:5;display:flex;gap:10px;padding:10px 5% max(10px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}.mobile-action .btn{flex:1;min-height:45px;font-size:14px}.mobile-action .btn-outline{color:var(--navy)}footer{padding-bottom:92px}}
@media(max-width:420px){.hero h1{font-size:45px}.waste-grid{grid-template-columns:repeat(2,1fr)}.fact-strip{grid-template-columns:1fr 1fr}.fact-strip>div:last-child{display:none}.quick-location{grid-template-columns:1fr}.map-tools>.form-field{min-width:0;flex-basis:100%}.map-zoom{width:100%}.map-zoom .btn:last-child{margin-left:auto}.compare-toolbar{font-size:11px;padding:12px}.compare-toolbar button{font-size:11px}.hero-actions{align-items:start;flex-direction:column}.hero-reassurance{gap:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.demo-bar a{color:#e5eaf4;text-decoration:none}.price>span:first-child{font-size:27px}.price>span:last-child{font-size:19px}.tax-price{font:600 38px/1.1 'Barlow Condensed',Arial,sans-serif!important;margin:8px 0 16px;color:var(--navy)!important}.map-config{display:grid;grid-template-columns:1.5fr 1fr .65fr;gap:10px;margin:20px 0}.map-config select,.map-config input{width:100%;padding:10px 6px}.map-skip{display:inline-block;margin-top:12px;font-size:12px;text-underline-offset:3px}#map-estimate .microcopy{font-size:11px}.footer-button{margin-top:9px}@media(max-width:420px){.map-config{grid-template-columns:1fr 1fr}.map-config .form-field:first-child{grid-column:1/-1}.demo-bar{font-size:10px;padding-inline:5%}.demo-bar a{font-size:10px}}

.truck-image{position:relative;width:100%;line-height:0}.truck-image>img:first-child{display:block;width:100%;height:auto;max-height:none;object-fit:contain}.truck-image>img.truck-mark{position:absolute;left:52%;top:64%;width:26%;height:auto;max-height:none;transform:rotate(-.4deg);pointer-events:none}.hero-visual .truck-image>img:first-child{position:static}.regular-section{background:#e9edf3;border-top:1px solid var(--line)}.regular-section>p{max-width:800px;color:var(--muted);line-height:1.6}.regular-section details{max-width:850px;margin-top:18px;font-size:14px;line-height:1.65}.regular-section summary{cursor:pointer;font-weight:700;min-height:44px}.volume-row{display:grid;grid-template-columns:repeat(4,1fr)}.volume-button{min-width:0}.footer-bottom{flex-wrap:wrap;gap:12px}.crane-facts{grid-template-columns:repeat(2,1fr)}

/* Signature nette : proportions naturelles et espace de respiration. */
.service-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0 0 22px;font-size:14px;font-weight:600}
.service-links a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:5px;text-decoration-thickness:1px}
.container-service-note{font-size:14px;line-height:1.6;color:var(--muted);margin:18px 0 12px}
.service-choice{margin:0 0 24px;padding:0;border:0;min-width:0}
.service-choice legend{padding:0;margin-bottom:10px;font-size:14px;font-weight:700}
.service-choice>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.service-choice button{min-height:48px;padding:10px 8px;font-size:14px;line-height:1.35;background:#fff;color:var(--navy);border:1px solid var(--line);border-radius:2px}
.service-choice button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff;font-weight:700}
.price-basis{font-size:14px;color:var(--muted);margin:0 0 16px}
.weight-limit{font-size:14px;font-weight:600;line-height:1.5;border-left:3px solid var(--yellow);padding-left:10px}
.estimate-card .microcopy,#map-estimate .microcopy,.summary-price .microcopy{font-size:13px;line-height:1.6}
.crane-facts span{font-size:14px;line-height:1.5}
.compare-label{font-size:12px;padding:7px 9px}
.site-header{min-height:96px;height:auto;gap:24px;border-bottom:2px solid var(--yellow)}
.brand-lettering{display:flex;align-items:center;justify-content:flex-start;flex:0 1 272px;min-width:0;min-height:48px;line-height:0;padding:6px 0;margin-right:auto;text-decoration:none}
.brand-lettering img.stipulante-original{display:block;width:100%;max-width:272px;height:auto;border-radius:0;object-fit:contain}
.site-header nav{gap:clamp(12px,1.5vw,23px);white-space:nowrap}
.header-call,.header-cta{flex-shrink:0}
.eyebrow>span:empty{background:#e92312}
/* Marquage sur le panneau arrière, sans chevaucher la charnière centrale. */
.truck-image{isolation:isolate}
.truck-image>img.truck-mark{left:66%;top:64.3%;width:19%;transform:rotate(-.4deg);transform-origin:center;mix-blend-mode:multiply;opacity:.94}
@media(max-width:1150px){
  .site-header{gap:20px}
  .header-call{display:none}
  .brand-lettering{flex-basis:238px}
  .site-header nav{font-size:13px;gap:14px}
}
@media(max-width:960px){
  .site-header nav{display:none}
}
@media(max-width:800px){
  .site-header{min-height:80px;height:auto;gap:16px;padding:12px 5%}
  .brand-lettering{flex:0 1 204px;min-height:44px;padding:5px 0}
  .header-cta{min-height:44px;padding:12px 16px;gap:8px}
}
@media(max-width:380px){
  .site-header{gap:12px;padding-inline:16px}
  .brand-lettering{flex-basis:176px}
  .header-cta{padding-inline:12px}
  .fact-strip>div{min-width:0}
  .fact-strip strong{min-width:0}
}

/* Lecture et commandes cohérentes sur téléphone et tablette. */
.selection-hint{font-size:13px;line-height:1.5;color:var(--muted);margin:10px 0 16px}
.service-links a{padding:0 12px;border:1px solid #b8c0cb;border-radius:3px;text-decoration:none;background:#fff}
.service-links a:hover{border-color:var(--navy);background:#e9edf3}
.service-links a:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
#fill-contact-example{margin:0 0 22px}
body:has(dialog[open]) .mobile-action{display:none}
@media(max-width:800px){.dialog-actions{position:sticky;bottom:0;z-index:2;background:#fff}.hero-description{font-size:16px;margin-bottom:18px}.service-links{gap:8px;margin-bottom:18px}.service-links a{font-size:13px;padding-inline:10px}.mobile-action .btn{min-height:48px}}
