/* CAMIONZEN : scènes adaptatives. La hauteur reste un minimum, jamais une coupure. */
:root{--g1:10px;--g2:20px;--g3:28px;--g4:36px;--h2:clamp(32px,min(4.2vw,6.7svh),62px);--pad-y:clamp(24px,5svh,64px)}
html{scroll-behavior:smooth;scroll-padding-top:var(--head)}
body{background:#f7faf9}
.top{background:#ffffffed;backdrop-filter:blur(16px)}
.top-in{max-width:1440px}.nav{gap:20px}.nav a{font-size:14px}
.btn{border-radius:100px;box-shadow:none;background:#125f70;color:#fff;font:600 15px/1.2 var(--body);letter-spacing:0;text-transform:none;padding:15px 23px;min-height:48px;transition:transform .2s,background .2s,box-shadow .2s}
.btn:hover{background:#12303d;box-shadow:0 8px 24px #12303d24;transform:translateY(-3px)}
.btn-sm{min-height:40px;padding:12px 20px}
.wrap{width:min(1240px,calc(100% - 100px))}
.immersive main>section{min-height:calc(100svh - var(--head));position:relative;scroll-margin-top:0}
.sec{padding:var(--pad-y) 0;overflow:clip}
.sec-alt{background:#eaf3f3}
.hero{background:radial-gradient(ellipse at 80% 35%,#d0e9df,transparent 60%),#f6f8ed;min-height:calc(100svh - var(--head));overflow:clip;justify-content:center}
.hero-grid{flex:0;grid-template-columns:1fr 1fr;gap:36px;padding:24px 0 42px}
.hero h1{font-size:clamp(46px,min(6vw,10svh),90px);line-height:1.02;text-transform:none;letter-spacing:-.03em;margin-top:24px}
.hero h1 em{color:#187a7d}
.hero .lead{font-size:clamp(16px,2svh,19px);max-width:510px;margin-top:24px;line-height:1.6}
.hero .marker .borne,.hero .marker .lane{display:none}.hero .marker-t{font-size:11px;letter-spacing:.14em;color:#286c6c}
.hero-price{margin-top:22px;color:var(--text-2);font-size:14px}.hero-price strong{font-size:20px;color:var(--navy)}.hero-price span{display:block;font-size:13px;margin-top:4px}
.facts{display:flex;gap:16px;margin-top:24px;padding-top:20px}.facts li{font-size:12px;border:0;margin:0;padding:0;gap:7px}.facts .ico{width:19px;height:19px}
.hero .road{display:none}
.journey-art{height:min(610px,70svh);position:relative;isolation:isolate;min-width:0}
.art-orbit{position:absolute;width:88%;aspect-ratio:1;left:8%;top:5%;border-radius:50%;background:#add8cf;box-shadow:0 0 0 26px #c3e1d84f,0 0 0 54px #d7e9df50}
.art-kicker{position:absolute;top:0;left:12%;font:600 10px var(--mono);letter-spacing:.15em;color:#356567}
.journey-route{position:absolute;inset:4% 0 auto;width:100%;height:80%;overflow:visible;fill:#125f70}.route-base{fill:none;stroke:#ffffff8a;stroke-width:24}.route-live{fill:none;stroke:#2a7675;stroke-width:3;stroke-dasharray:9 10;animation:routeFlow 18s linear infinite}
.hero-truck{position:absolute;width:82%;left:-5%;top:35%;filter:drop-shadow(0 20px 9px #173e4620);animation:truckArrival 1s ease-out both}
.art-label{position:absolute;z-index:2;background:#fff;padding:12px 17px;border-radius:12px;font-size:13px;box-shadow:0 10px 30px #153f4010;display:flex;align-items:center;gap:10px}.art-depart{left:0;top:26%}.art-arrive{right:0;top:9%}.art-arrive span{color:#127c76;font-size:22px}.status-dot{width:8px;height:8px;background:#2a9483;border-radius:50%;box-shadow:0 0 0 5px #e2f1eb}
.art-ticket{position:absolute;left:9%;bottom:2%;background:#153b43;color:#fff;padding:18px 24px;border-radius:15px;transform:rotate(-5deg);z-index:3;box-shadow:0 12px 32px #173c4220}.art-ticket>span{font:500 8px var(--mono);letter-spacing:.08em}.art-ticket strong{display:block;font:600 38px var(--display);line-height:1.3}.art-ticket small{font-size:12px;color:#b9d7d7}
.art-app{position:absolute;right:0;bottom:1%;width:28%;transform:rotate(9deg);z-index:2}.art-app img{border:6px solid #163841;border-radius:23px;box-shadow:0 18px 35px #12303d30}.art-app span{display:block;text-align:center;font-size:10px;line-height:1.3;margin-top:10px;color:#315b5b}
.marker .borne{border:0;background:transparent;box-shadow:none;width:auto;height:auto;padding:0;border-radius:0}.borne::before,.borne small,.marker .lane{display:none}.marker .borne b{font:500 12px var(--mono);color:#468084;margin:0}.marker-t{font-size:11px;letter-spacing:.14em}
.intro h2,.side h2{line-height:1.03;letter-spacing:-.02em}.intro p,.side>p{font-size:clamp(15px,1.9svh,18px);line-height:1.6}.side h2{margin-top:20px}
#fonctionnement{background:#fff}.route{gap:20px}.route::before,.stop::after{display:none}.stop{background:#f0f6f5;border:1px solid #dbe9e6;border-radius:18px;padding:64px 23px 28px;min-height:220px;transition:transform .3s,box-shadow .3s}.stop::before{left:22px;top:20px}.stop:hover{transform:translateY(-6px);box-shadow:0 20px 30px #12303d0a}.stop h3{font-size:27px}.stop p{font-size:15px;line-height:1.6}
.split{gap:48px}.doc{border:0;border-radius:18px;overflow:hidden;box-shadow:0 16px 48px #173c4210}.doc-head{background:#153b43;color:#fff}.doc-head span{color:#b9d7d7}.manifest li{padding:clamp(10px,1.8svh,22px) 22px}.manifest .what{font-size:14px}.scene-charge{max-height:25svh;margin-top:20px!important}
.tarifs{display:block}.tarifs .side{display:grid;grid-template-columns:1.2fr 1fr;gap:12px 45px;margin-bottom:24px}.tarifs .marker{grid-column:1/-1}.tarifs h2{grid-column:1;grid-row:2/5;font-size:var(--h2);margin:0}.tarifs .side>p{grid-column:2;font-size:15px}.tarifs .checks{grid-column:2;margin:0;padding:0;border:0;font-size:13px}.tarifs .more{margin:0}
.gabarits{gap:20px}.fiche{border:1px solid #c4d9d7;border-radius:17px;overflow:hidden;box-shadow:0 8px 24px #12303d08}.fiche:nth-child(2){border:2px solid #217f80}.fiche-head{padding:12px 18px;font-size:10px}.blueprint{padding:8px;background-color:#f4f9f8}.blueprint svg{max-height:clamp(65px,13svh,135px)}.fiche-body{padding:18px 22px}.fiche h3{font-size:28px;text-transform:none;align-self:start}.price{font-size:clamp(32px,5svh,48px)}.specs{margin:12px 0}.specs div{padding:6px 0}.specs dd{font-size:14px}.fiche .link{font-size:14px}
.appli{grid-template-columns:.9fr 1.1fr;gap:40px}.demo{width:100%}.convoy{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:80%;margin:auto;align-items:center}.phone:nth-child(2n){transform:translateY(24px)}.phone:nth-child(n+3){display:none}.phone img{max-height:57svh;object-fit:contain}.convoy-labels,.asphalt{display:none}.phone{box-shadow:0 22px 50px #0004}.appli .side{display:block}.appli .checks{grid-template-columns:1fr;gap:8px}.download>p{font-size:24px}.download-right{gap:18px}.qr img{width:72px;height:72px}.stores{grid-auto-flow:row}.store{padding:10px 16px}.store b{font-size:19px}
#chauffeurs{background:#d7e8dc}.clipboard{transform:rotate(4deg);box-shadow:18px 24px 0 #0c514d14;border-radius:14px}.perks{gap:12px}.small-note{font-size:14px}
.qa summary{padding:15px 0}.qa summary strong{font-size:23px}.qa .ans{font-size:15px}.qa details[open]{background:#fff;padding-inline:14px;border-radius:12px}.qa .num{background:#e0eded;border:0}
#contact{background:#153b43;color:#fff}#contact .side>p,#contact .contact-list small{color:#bbd4d7}#contact h2 em{color:#8ccec2}#contact .cmr{color:var(--navy);transform:rotate(-3deg);box-shadow:12px 14px 0 #ffffff0a}#contact .marker-t{color:#bde0db}#contact .contact-list a{border-color:#ffffff25}.contact-list b{overflow-wrap:anywhere}
.immersive main>.coverage{min-height:0;padding:42px 0;background:#d7e8dc}.coverage .wrap{display:flex;justify-content:space-between;gap:32px;align-items:center}.coverage h2{font-size:32px;margin:12px 0}.coverage p{max-width:690px;font-size:15px}.eyebrow{font:600 11px var(--mono);letter-spacing:.12em;text-transform:uppercase}.coverage .btn{flex-shrink:0}
.section-rail{position:fixed;right:14px;top:50%;transform:translateY(-50%);z-index:30;display:grid;gap:14px;padding:15px 9px;background:#ffffffd9;border:1px solid #d4e6e0;border-radius:30px}.section-rail a{width:8px;height:8px;border-radius:50%;background:#b3c8c6;transition:transform .2s,background .2s}.section-rail a[aria-current]{background:#125f70;transform:scale(1.5)}.reading-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:#2a9483;z-index:100}
.deck-tabs{display:none}
@keyframes routeFlow{to{stroke-dashoffset:-190}}
@keyframes truckArrival{from{opacity:0;transform:translate(-45px,8px)}to{opacity:1;transform:translate(0)}}
@keyframes sceneReveal{from{opacity:.25;transform:translateY(22px)}to{opacity:1;transform:none}}
.scene-enter>.wrap{animation:sceneReveal .65s cubic-bezier(.2,.7,.2,1) both}
@media(min-width:1000px) and (max-height:850px){.hero-grid{padding-block:20px;gap:26px}.hero h1{font-size:64px}.hero .lead{font-size:16px;margin-top:18px}.facts{margin-top:18px;padding-top:12px}.hero-price{margin-top:16px}.journey-art{height:66svh}.actions{margin-top:20px}.sec{--pad-y:24px}.intro{margin-block:20px 28px}.stop{min-height:190px;padding-bottom:18px}.blueprint svg{max-height:72px}.fiche-body{padding:12px 18px}.specs div{padding:4px 0}.tarifs .side{margin-bottom:18px}.price{font-size:34px}.scene-charge{max-height:20svh}}
@media(max-width:999px){.wrap{width:calc(100% - 56px)}.section-rail{display:none}.hero-grid{gap:22px}.hero h1{font-size:clamp(46px,6.7vw,70px)}.facts{flex-direction:column;gap:10px}.post-box{display:none}.split{gap:28px}.appli{grid-template-columns:1fr 1fr}.tarifs .side{gap:12px 24px}.coverage .wrap{flex-direction:column;align-items:start}.convoy{width:100%}.art-label{padding:10px;font-size:11px}}
@media(max-width:699px){
:root{--head:61px;--h2:clamp(29px,4.4svh,38px);--g1:8px;--g2:14px;--g3:18px;--g4:22px;--pad-y:26px}
.wrap{width:calc(100% - 40px)}.hero-grid{grid-template-columns:1fr;gap:14px;padding:24px 0}.hero-text{padding:0}.hero h1{font-size:clamp(40px,6.4svh,58px);margin-top:16px}.hero .lead{font-size:15px;line-height:1.5;margin-top:14px}.hero .actions{gap:12px 18px;margin-top:18px}.btn{padding:12px 20px;min-height:44px;font-size:14px}.hero-price{margin-top:14px;font-size:12px}.hero-price strong{font-size:16px}.hero-price span{font-size:11px}.facts{display:none}.journey-art{height:clamp(170px,27svh,270px);width:100%;max-width:370px;justify-self:center}.art-orbit{width:57%;left:22%;top:5%;box-shadow:0 0 0 14px #c3e1d84f}.hero-truck{width:64%;left:10%;top:25%}.journey-route{height:100%;width:90%;left:8%}.art-kicker{display:none}.art-depart{top:0;left:0;font-size:10px}.art-arrive{top:4%;right:0;font-size:10px}.art-ticket{left:6%;bottom:0;padding:10px 14px;border-radius:9px}.art-ticket>span{font-size:6px}.art-ticket strong{font-size:25px}.art-ticket small{font-size:9px}.art-app{width:20%;right:4%;bottom:0}.art-app img{border-width:3px;border-radius:12px}.art-app span{display:none}
.intro{display:block;margin:18px 0}.intro p{margin-top:14px}.intro p,.side>p{font-size:15px;line-height:1.5}.split,.split-lead,.split-keep{grid-template-columns:1fr;gap:24px}.side h2{margin-top:14px}.scene-charge{display:block;max-height:17svh;width:auto;margin-top:12px!important;align-self:center}.doc-head{padding:12px 16px}.doc-foot{padding:10px 16px;font-size:10px}.manifest{display:block}.manifest li{display:grid;grid-template-columns:24px 1fr 24px;grid-template-areas:"no txt ico";padding:20px 16px;border:0;min-height:150px}.manifest .what{font-size:15px;line-height:1.6}.manifest strong{font-size:26px}
.route,.gabarits,.convoy{display:grid;grid-template-columns:1fr;grid-auto-flow:row;overflow:visible;margin:0;padding:0;gap:16px}.stop{padding:60px 22px 22px;min-height:210px}.stop h3{font-size:28px}.stop p{font-size:16px;line-height:1.6}.stop::after{display:none}.note{margin-top:18px}.note p{display:block;font-size:13px}
.tarifs .side{display:block;margin-bottom:18px}.tarifs h2{font-size:var(--h2);margin-top:14px}.tarifs .side>p:not(.more){display:block;margin-top:12px;font-size:14px}.tarifs .checks{display:none}.tarifs .more{display:block;margin-top:12px}.fiche{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto auto 1fr}.fiche-head{padding:10px 14px}.blueprint{padding:6px}.blueprint svg{max-height:95px}.fiche-body{display:contents}.fiche h3{padding:12px 12px 0;font-size:24px;align-self:end}.price{font-size:32px;padding:0 12px 10px}.specs{margin:0;padding:4px 16px 0}.specs div{padding:6px 0}.specs dd{font-size:13px}.fiche .link{margin:10px 16px 16px}.fiche:nth-child(2){border-width:1px}
.appli{grid-template-columns:1fr;gap:18px}.appli .side{display:block}.appli .side>p{display:block;margin-top:12px}.appli .checks{display:none}.appli .download{margin-top:16px;padding-top:12px}.download>p{display:none}.download-right{margin-top:0}.stores{grid-auto-flow:column;gap:10px}.store{padding:8px 10px;gap:7px}.store b{font-size:16px}.store small{font-size:8px}.store .ico{width:22px}.demo{width:100%;order:0}.convoy{width:100%;justify-items:center}.phone{width:auto;max-width:170px;transform:none!important;padding:5px;border-radius:18px}.phone img{height:clamp(200px,33svh,300px);width:auto;max-height:none;border-radius:13px}.phone:nth-child(n+3){display:block}
.deck-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;justify-content:flex-start}.deck-tabs button{font:600 12px var(--body);color:var(--navy);background:#fff;border:1px solid #b6d2ce;padding:9px 12px;border-radius:30px;cursor:pointer}.deck-tabs button[aria-selected="true"]{background:#125f70;color:#fff;border-color:#125f70}.sec-night .deck-tabs{justify-content:center}.deck-ready>[hidden]{display:none!important}.deck-ready .cols{display:none}.doc .deck-tabs{padding:14px 14px 0;margin:0}.small-note{display:block;font-size:13px;line-height:1.5}.perks{font-size:15px;gap:10px}.clipboard{display:none}.qa summary{padding:12px 0}.qa summary strong{font-size:19px;line-height:1.2}.qa .num{width:25px;height:25px}.qa .ans{font-size:14px}.contact-list small{display:block}.contact-list b{font-size:15px}.contact-list a{padding:10px 0}.cmr-grid{display:none}.cmr{transform:none!important}.cmr-head{padding:12px}.cmr-foot{padding:12px}.coverage h2{font-size:30px}.coverage .wrap{gap:20px}
}
@media(max-height:600px) and (min-width:700px){.immersive main>section{min-height:calc(100svh - var(--head))}.hero-grid{padding-block:24px}.hero h1{font-size:48px}.journey-art{height:360px}.hero .facts{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.btn:hover,.stop:hover{transform:none}}
@media(max-width:699px) and (max-height:720px){
:root{--pad-y:16px;--h2:29px}.hero-grid{padding-block:16px;gap:10px}.journey-art{height:150px}.hero h1{font-size:40px;margin-top:12px}.hero .lead{font-size:14px;margin-top:12px}.hero-price{margin-top:12px}.tarifs .side{margin-bottom:12px}.tarifs .side>p:not(.more){font-size:13px;line-height:1.4}.tarifs .more{margin-top:8px}.deck-tabs{margin-bottom:10px}.specs div{padding:5px 0}.fiche .link{margin-bottom:12px}
}
