*{box-sizing:border-box}
:root{
  --blue:#073ca7;
  --blue2:#0b55d4;
  --navy:#061c4b;
  --cyan:#16a7ff;
  --text:#172033;
  --muted:#647084;
  --soft:#f4f7fc;
  --border:#dfe6f1;
  --white:#fff;
}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.6}
img{max-width:100%;display:block}
.container{width:min(1140px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid #e7edf6;box-shadow:0 4px 18px rgba(6,28,75,.06)}
.nav{min-height:88px;display:flex;align-items:center;gap:28px}
.logo-link{display:flex;align-items:center;margin-right:auto}
.site-logo{width:195px;height:auto}
.desktop-nav{display:flex;gap:25px}
.desktop-nav a{color:var(--navy);text-decoration:none;font-weight:800;font-size:.93rem}
.desktop-nav a:hover{color:var(--blue)}
.phone-header{background:var(--blue);color:white;text-decoration:none;padding:12px 17px;border-radius:10px;font-weight:900;white-space:nowrap}
.hero{padding:64px 0 76px;background:linear-gradient(135deg,#fff 0%,#f4f8ff 55%,#eaf2ff 100%);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center}
.badge,.eyebrow{display:inline-block;color:var(--blue);font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900}
.badge{background:#e7efff;border:1px solid #ccdcff;border-radius:999px;padding:7px 12px}
h1{font-size:clamp(2.7rem,5vw,4.7rem);line-height:1.02;color:var(--navy);margin:18px 0 22px;letter-spacing:-.03em}
h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.12;color:var(--navy);margin:8px 0 20px;letter-spacing:-.02em}
h3{color:var(--navy)}
.hero-text{font-size:1.16rem;color:#4f5d72;max-width:690px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;border-radius:10px;text-decoration:none;font-weight:900;border:2px solid transparent;cursor:pointer;font-size:1rem}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 10px 24px rgba(7,60,167,.20)}
.btn-primary:hover{background:#062f83}
.btn-outline{background:#fff;color:var(--blue);border-color:var(--blue)}
.btn-white{background:#fff;color:var(--blue)}
.btn-outline-blue{background:#fff;color:var(--blue);border-color:var(--blue)}
.btn-small{min-height:42px;padding:0 14px;font-size:.9rem}
.hero-points{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;color:var(--navy);font-weight:800;font-size:.92rem}
.hero-media{position:relative}
.hero-media:before{content:"";position:absolute;inset:-18px -18px 18px 18px;border-radius:28px;background:linear-gradient(135deg,var(--blue),var(--cyan));z-index:0}
.hero-media img{position:relative;z-index:1;width:100%;aspect-ratio:1.45/1;object-fit:cover;border-radius:24px;box-shadow:0 24px 55px rgba(7,37,89,.22)}
.floating-card{position:absolute;z-index:2;right:-18px;bottom:26px;background:#fff;border-radius:16px;padding:16px 21px;box-shadow:0 12px 30px rgba(4,29,83,.18);display:grid}
.floating-card strong{color:var(--blue);font-size:1.08rem}.floating-card span{color:var(--muted);font-size:.9rem}
.trust-strip{background:var(--navy);color:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-grid>div{padding:21px 24px;border-right:1px solid rgba(255,255,255,.14);display:grid}
.trust-grid>div:last-child{border-right:0}
.trust-grid strong{font-size:1.05rem}.trust-grid span{color:#c9d6ee;font-size:.86rem}
.section{padding:82px 0}
.section-heading{max-width:760px;margin-bottom:38px}
.section-heading p{color:var(--muted);font-size:1.05rem}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-card{border:1px solid var(--border);border-radius:18px;padding:26px;background:#fff;box-shadow:0 10px 30px rgba(8,41,99,.06);transition:.2s}
.service-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(8,41,99,.10)}
.icon{width:48px;height:48px;border-radius:12px;background:#e9f1ff;display:grid;place-items:center;font-size:1.45rem}
.service-card h3{margin:16px 0 8px}.service-card p{color:var(--muted);margin:0}
.section-blue{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}
.section-blue h2{color:#fff}.light{color:#8fc1ff}
.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}
.photo-stack{position:relative;padding:0 35px 35px 0}
.photo-main{width:100%;height:470px;object-fit:cover;border-radius:22px;box-shadow:0 24px 50px rgba(0,0,0,.24)}
.photo-small{position:absolute;width:44%;height:190px;object-fit:cover;right:0;bottom:0;border:7px solid #fff;border-radius:18px;box-shadow:0 14px 30px rgba(0,0,0,.22)}
.check-list{list-style:none;padding:0;margin:22px 0 28px;display:grid;gap:11px}
.check-list li{position:relative;padding-left:30px;color:#e9f1ff}
.check-list li:before{content:"✓";position:absolute;left:0;top:0;width:21px;height:21px;border-radius:50%;background:#fff;color:var(--blue);font-weight:900;display:grid;place-items:center;font-size:.78rem}
.section-soft{background:var(--soft)}
.form-wrap{max-width:980px}
.quote-form{background:#fff;border:1px solid var(--border);border-radius:20px;padding:31px;box-shadow:0 14px 40px rgba(10,45,108,.08)}
fieldset{border:0;padding:0;margin:0 0 32px}
legend{font-weight:900;color:var(--navy);font-size:1.2rem;width:100%;padding-bottom:10px;margin-bottom:17px;border-bottom:1px solid var(--border)}
label{display:grid;gap:7px;font-weight:800;font-size:.92rem;color:#2c3951}
input,select,textarea{width:100%;font:inherit;color:var(--text);background:#fff;border:1px solid #cbd6e6;border-radius:9px;padding:12px 13px;outline:none}
input:focus,select:focus,textarea:focus{border-color:#3d79dc;box-shadow:0 0 0 3px rgba(61,121,220,.13)}
textarea{resize:vertical}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:18px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px}
.checkbox-grid{display:flex;flex-wrap:wrap;gap:12px 19px;margin:18px 0 25px}
.checkbox-grid label,.consent{display:flex;align-items:center;gap:8px;font-weight:700}
.checkbox-grid input,.consent input{width:auto}
.conditional{border:1px solid #d9e4f4;border-radius:14px;padding:22px;background:#fbfdff}
.hidden{display:none}
.hint,.form-note{color:var(--muted);font-size:.9rem}
.inventory-table{border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:14px}
.inventory-head,.inventory-row{display:grid;grid-template-columns:1.4fr .35fr 1.5fr 46px;gap:10px;align-items:center;padding:10px}
.inventory-head{background:#eaf1fc;color:var(--navy);font-weight:900;font-size:.87rem}
.inventory-row{border-top:1px solid var(--border)}
.inventory-row input{padding:9px}
.remove-item{border:0;background:#edf2f8;border-radius:8px;height:40px;cursor:pointer;font-weight:900}
.mt-18{margin-top:18px}
.consent{margin:18px 0}
.submit-btn{width:100%;min-height:56px}
.contact-section{padding-top:60px;padding-bottom:60px}
.contact-card{display:grid;grid-template-columns:190px 1fr auto;gap:30px;align-items:center;border:1px solid var(--border);border-radius:20px;padding:28px;background:#fff;box-shadow:0 12px 34px rgba(8,41,99,.08)}
.contact-logo{width:180px}
.contact-card h2{font-size:2rem;margin-bottom:8px}.contact-card p{margin:0;color:var(--muted)}
.contact-actions{display:grid;gap:9px;text-align:center}
.mail-link{color:var(--blue);font-weight:800;text-decoration:none;font-size:.88rem}
footer{background:#071735;color:#cbd7ee;padding:24px 0}
.footer-inner{display:flex;justify-content:space-between;gap:20px;font-size:.9rem}
.honeypot{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}
.mobile-call{display:none}

@media(max-width:900px){
  .desktop-nav{display:none}.hero-grid,.split{grid-template-columns:1fr}.hero-copy{order:1}.hero-media{order:2}
  .service-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}
  .trust-grid>div:nth-child(2){border-right:0}.contact-card{grid-template-columns:1fr;text-align:center}.contact-logo{margin:auto}
}
@media(max-width:650px){
  .container{width:min(100% - 26px,1140px)}.site-header .nav{min-height:72px}.site-logo{width:145px}.phone-header{display:none}
  .hero{padding:44px 0 56px}.hero-media:before{inset:-10px -10px 10px 10px}.floating-card{right:8px;bottom:12px}
  .hero-actions .btn{width:100%}.service-grid,.grid-2,.grid-3,.trust-grid{grid-template-columns:1fr}
  .trust-grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
  .section{padding:58px 0}.quote-form{padding:20px}.inventory-head{display:none}.inventory-row{grid-template-columns:1fr}.remove-item{width:100%}
  .photo-main{height:350px}.photo-small{height:135px}.footer-inner{flex-direction:column}.mobile-call{display:flex;position:fixed;z-index:60;right:16px;bottom:16px;background:var(--blue);color:#fff;text-decoration:none;font-weight:900;padding:13px 17px;border-radius:999px;box-shadow:0 10px 28px rgba(6,28,75,.28)}
}

/* Visuels définitifs TransLegerPro */
.hero-media img,
.photo-main,
.photo-small {
    object-fit: cover;
    object-position: center;
}

/* Affichage complet des photos : aucun recadrage, tous les pixels restent visibles */
.hero-media img {
    width: 100%;
    height: auto !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center !important;
}

.photo-main {
    width: 100%;
    height: auto !important;
    object-fit: contain !important;
    object-position: center !important;
}

.photo-small {
    width: 44%;
    height: auto !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* Sur mobile, conserver aussi l'image entière */
@media (max-width: 650px) {
    .hero-media img,
    .photo-main,
    .photo-small {
        height: auto !important;
        object-fit: contain !important;
    }
}
