  :root{--noir:#1A1A1A;--blanc:#F5F5F5;--gris-clair:rgb(241,241,240);--gris-texte:#1A1A1A;--orange:#FF8C42;--orange-fonce:#E56F1F;--orange-pale:#fff3eb;--blanc-pur:#ffffff;--radius-sm:6px;--radius-md:16px;--radius-lg:28px;--font-serif:'Playfair Display',Georgia,serif;--font-sans:'Poppins',system-ui,sans-serif;--shadow-sm:0 4px 16px rgba(0,0,0,0.06);--shadow-md:0 10px 30px rgba(0,0,0,0.08);--shadow-lg:0 30px 60px rgba(0,0,0,0.12);--container:min(90%,1200px);--nav-h:72px;--t:0.3s ease;}
  *,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:18px;}
  body{font-family:var(--font-sans);background:var(--blanc);color:var(--noir);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
  h1,h2,h3{font-family:var(--font-serif);line-height:1.2;}
  img{max-width:100%;height:auto;display:block;}
  a{color:inherit;text-decoration:none;}
  button{font-family:var(--font-sans);cursor:pointer;}
  a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:3px;}
  .container{width:var(--container);margin-inline:auto;}
  .skip{position:absolute;left:-999px;top:8px;background:var(--blanc-pur);color:var(--noir);padding:10px 16px;border-radius:var(--radius-sm);z-index:2000;box-shadow:var(--shadow-md);}
  .skip:focus{left:8px;}

  /* EN-TÊTE */
  header{position:sticky;top:0;z-index:1000;height:var(--nav-h);background:rgba(245,245,245,0.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,0.06);}
  .header-inner{width:var(--container);margin-inline:auto;height:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-inline:clamp(1rem,3vw,2rem);flex-wrap:nowrap;}
  .site-logo{height:clamp(48px,8vw,70px);width:auto;flex-shrink:0;display:block;mix-blend-mode:multiply;}
  .nav-desktop{display:flex;align-items:center;gap:clamp(0.75rem,2vw,2rem);list-style:none;}
  .nav-desktop a{font-size:clamp(12px,1.3vw,14px);font-weight:400;color:var(--gris-texte);padding:4px 0;border-bottom:1.5px solid transparent;transition:color var(--t),border-color var(--t);white-space:nowrap;}
  .nav-desktop a:hover{color:var(--noir);border-bottom-color:var(--orange);}
  .nav-desktop a.nav-cta,.nav-mobile a.nav-cta{background:var(--noir);color:var(--blanc-pur);padding:9px 20px;border-radius:100px;font-size:clamp(12px,1.3vw,13px);font-weight:500;border-bottom:none;transition:background var(--t),transform .15s;}
  .nav-desktop a.nav-cta:hover,.nav-mobile a.nav-cta:hover{background:var(--orange);color:var(--blanc-pur);transform:translateY(-1px);}
  .nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;background:none;border:none;flex-shrink:0;padding:4px;margin-left:auto;}
  .nav-burger span{display:block;width:100%;height:2px;background:var(--noir);border-radius:2px;transition:var(--t);}
  .nav-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .nav-burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
  .nav-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .nav-mobile{display:none;flex-direction:column;position:fixed;top:var(--nav-h);left:0;right:0;background:rgba(245,245,245,0.99);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,0.06);z-index:999;padding:0.5rem 0;}
  .nav-mobile.open{display:flex;}
  .nav-mobile a{font-size:18px;font-weight:400;color:var(--noir);padding:14px clamp(1.25rem,5vw,2rem);border-bottom:1px solid rgba(0,0,0,0.05);transition:color var(--t),background var(--t);}
  .nav-mobile a:last-child{border-bottom:none;}
  .nav-mobile a:hover{color:var(--orange);background:var(--orange-pale);}
  .nav-mobile a.nav-cta{margin:0.75rem clamp(1.25rem,5vw,2rem) 0.5rem;text-align:center;display:block;padding:12px 20px;border-bottom:none;}

  /* STRUCTURE */
  section{padding:clamp(64px,10vw,120px) clamp(1.25rem,4vw,2rem);scroll-margin-top:var(--nav-h);}
  .section-label{font-family:var(--font-sans);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--orange);font-weight:600;margin-bottom:1.25rem;}
  .section-h2{font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:400;line-height:1.2;margin-bottom:1.25rem;color:var(--noir);}
  .section-h2 .accent{color:var(--orange);font-style:italic;}
  .section-intro{font-size:clamp(16px,1.8vw,19px);font-weight:400;color:var(--gris-texte);max-width:640px;margin-bottom:2rem;line-height:1.8;}
  .fond-pur{background:var(--blanc-pur);}
  .fond-gris{background:var(--gris-clair);}
  .fond-orange{background:var(--orange-pale);border-top:1px solid rgba(255,140,66,0.15);border-bottom:1px solid rgba(255,140,66,0.15);}

  /* BOUTONS */
  .btn-primary,.btn-orange{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--orange);color:var(--blanc-pur);padding:clamp(12px,1.8vw,15px) clamp(20px,2.5vw,28px);border-radius:100px;font-family:var(--font-sans);font-size:clamp(13px,1.3vw,14px);font-weight:500;border:none;transition:transform .15s,box-shadow var(--t),opacity var(--t);box-shadow:0 8px 24px rgba(0,0,0,0.14);text-align:center;}
  .btn-orange{box-shadow:0 8px 24px rgba(255,140,66,0.25);}
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(255,140,66,0.28);}
  .btn-orange:hover{opacity:.88;transform:translateY(-2px);}
  .btn-secondary{display:inline-flex;align-items:center;justify-content:center;background:var(--blanc-pur);color:var(--noir);padding:clamp(12px,1.8vw,15px) clamp(20px,2.5vw,28px);border-radius:100px;font-family:var(--font-sans);font-size:clamp(13px,1.3vw,14px);font-weight:400;border:1px solid rgba(0,0,0,0.12);transition:border-color var(--t),transform .15s;text-align:center;}
  .btn-secondary:hover{border-color:var(--orange);transform:translateY(-1px);}
  .btn-plein{width:100%;}
  .ctas{display:flex;gap:1rem;flex-wrap:wrap;}

  /* HERO */
  #hero{padding:clamp(40px,8vw,80px) 0;background:var(--blanc);}
  .hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:clamp(32px,5vw,60px);align-items:center;width:var(--container);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,2rem);}
  .hero-visual{display:flex;justify-content:center;align-items:center;}
  .hero-image{width:100%;max-width:520px;height:auto;object-fit:contain;border-radius:clamp(20px,4vw,40px);box-shadow:0 30px 60px rgba(0,0,0,0.15);margin-inline:auto;}
  .hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--blanc-pur);border:1px solid rgba(0,0,0,0.08);border-radius:100px;padding:8px 16px;font-size:clamp(11px,1.2vw,13px);font-weight:500;color:var(--gris-texte);margin-bottom:1.75rem;width:fit-content;box-shadow:0 4px 16px rgba(0,0,0,0.04);}
  .hero-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--orange);flex-shrink:0;}
  .hero-h1{font-size:clamp(2rem,4.5vw,3.8rem);font-weight:400;line-height:1.12;margin-bottom:1.5rem;color:var(--noir);}
  .hero-h1 .accent{color:var(--orange);font-style:italic;}
  .hero-sub{font-size:clamp(15px,1.6vw,17px);font-weight:400;color:var(--gris-texte);max-width:520px;margin-bottom:2.5rem;line-height:1.85;}

  /* LES TROIS PORTES */
  .portes{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,20px);width:var(--container);margin:clamp(2.5rem,5vw,4rem) auto 0;padding-inline:clamp(1.25rem,4vw,2rem);}
  .porte{background:var(--blanc-pur);border-radius:var(--radius-md);padding:clamp(1.25rem,2.5vw,1.75rem);border-left:3px solid var(--orange);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform var(--t),box-shadow var(--t);}
  .porte:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
  .porte .petit{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;font-weight:600;color:var(--orange);margin-bottom:.5rem;}
  .porte h3{font-size:clamp(16px,1.6vw,19px);font-weight:500;margin-bottom:.5rem;}
  .porte p{font-size:clamp(13px,1.2vw,14px);font-weight:400;color:var(--gris-texte);line-height:1.65;}
  .porte .aller{margin-top:auto;padding-top:1rem;font-size:13px;font-weight:500;color:var(--orange);}

  /* CARTES */
  .grille3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,20px);margin-top:2.5rem;}
  .grille2{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(12px,2vw,20px);}
  .carte{background:var(--gris-clair);border-radius:var(--radius-md);padding:clamp(1.25rem,2.5vw,1.75rem);border-left:3px solid var(--orange);transition:transform var(--t),box-shadow var(--t);}
  .fond-gris .carte{background:var(--blanc-pur);}
  .carte:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
  .carte h3{font-size:clamp(14px,1.4vw,16px);font-weight:500;margin-bottom:.5rem;color:var(--noir);}
  .carte p{font-size:clamp(13px,1.2vw,14px);font-weight:400;color:var(--gris-texte);line-height:1.65;}
  .carte .petit{display:block;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;font-weight:600;color:var(--orange);margin-bottom:.5rem;}
  .etape-carte{background:var(--blanc-pur);border-radius:var(--radius-md);padding:clamp(1.25rem,2.5vw,1.75rem);position:relative;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--t),box-shadow var(--t);}
  .fond-pur .etape-carte{background:var(--gris-clair);box-shadow:none;}
  .etape-carte:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
  .etape-num{font-family:var(--font-sans);font-size:3.5rem;font-weight:700;color:rgba(255,140,66,0.18);line-height:1;position:absolute;top:-8px;right:12px;}
  .etape-carte h3{font-size:clamp(15px,1.5vw,17px);font-weight:500;margin-bottom:.5rem;position:relative;}
  .etape-carte p{font-size:clamp(12.5px,1.2vw,14px);font-weight:400;color:var(--gris-texte);line-height:1.65;position:relative;}
  .intro-forte{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.1rem,2vw,1.4rem);color:rgba(2,2,2,0.7);max-width:62ch;margin-bottom:2rem;line-height:1.6;}

  /* ENTREPRISES */
  .deux-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,5rem);align-items:start;}
  .deux-col p{font-size:clamp(14px,1.4vw,16px);font-weight:400;color:var(--gris-texte);line-height:1.85;margin-bottom:1rem;}
  .deux-col strong{font-weight:500;color:var(--noir);}
  .liste-regard{list-style:none;display:flex;flex-direction:column;gap:.9rem;}
  .liste-regard li{display:flex;gap:12px;align-items:flex-start;font-size:clamp(13.5px,1.3vw,15px);font-weight:400;color:var(--gris-texte);line-height:1.6;}
  .liste-regard li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange);flex-shrink:0;margin-top:.6em;}
  .liste-regard strong{font-weight:500;color:var(--noir);}
  .formules{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,20px);margin-top:clamp(2.5rem,5vw,4rem);align-items:stretch;}
  .formule{background:var(--gris-clair);border-radius:var(--radius-lg);padding:clamp(1.5rem,3vw,2.25rem);display:flex;flex-direction:column;border:1.5px solid transparent;}
  .formule.vedette{background:var(--blanc-pur);border-color:var(--orange);box-shadow:var(--shadow-md);}
  .formule h3{font-size:1.15rem;font-weight:500;}
  .prix{font-family:var(--font-sans);font-size:clamp(2.2rem,4vw,3rem);font-weight:700;color:var(--noir);line-height:1;margin:.6rem 0 .3rem;}
  .sous{font-size:13px;color:var(--gris-texte);font-weight:400;margin-bottom:1.1rem;}
  .coches{list-style:none;display:flex;flex-direction:column;gap:.55rem;margin-bottom:1.5rem;}
  .coches li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;font-weight:400;color:var(--gris-texte);line-height:1.5;}
  .coches li::before{content:"✔";color:var(--orange);font-weight:600;font-size:.95em;flex-shrink:0;}
  .formule .btn-primary,.formule .btn-secondary{margin-top:auto;width:100%;}
  .petit-texte{font-size:13px;font-weight:400;color:var(--gris-texte);margin-top:1.5rem;max-width:80ch;line-height:1.7;}
  .citation{background:var(--orange-pale);border-left:3px solid var(--orange);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:1.5rem 1.75rem;margin-top:2.5rem;font-family:var(--font-serif);font-style:italic;font-size:clamp(1rem,1.8vw,1.2rem);line-height:1.7;color:var(--noir);}
  .citation cite{display:block;font:500 13px var(--font-sans);font-style:normal;color:var(--gris-texte);margin-top:.75rem;}

  /* PROJET SIGNATURE */
  .signature{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,4rem);align-items:start;margin-top:clamp(3rem,6vw,4.5rem);}
  .offre-tag{display:inline-block;background:var(--orange);color:var(--blanc-pur);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:5px 14px;border-radius:100px;margin-bottom:1.25rem;}
  .signature p{font-size:clamp(14px,1.4vw,16px);font-weight:400;color:var(--gris-texte);line-height:1.8;margin-bottom:1rem;}
  .offre-prix-box{background:var(--blanc-pur);border-radius:var(--radius-lg);padding:2rem 2.25rem;border:1.5px solid var(--orange);box-shadow:var(--shadow-md);}
  .offre-prix-label{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gris-texte);margin-bottom:.5rem;}
  .offre-prix-amount{font-family:var(--font-sans);font-size:clamp(2.8rem,5vw,4rem);font-weight:700;color:var(--noir);line-height:1;}
  .offre-prix-mention{font-size:13px;color:var(--gris-texte);font-weight:400;margin-top:.3rem;margin-bottom:1.5rem;}
  .garantie{max-width:760px;margin:clamp(3rem,6vw,4.5rem) auto 0;text-align:center;}
  .garantie p{font-size:clamp(14px,1.4vw,16px);font-weight:400;color:var(--gris-texte);line-height:1.8;}

  /* WEB DESIGN */
  .tarifs{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,2vw,18px);margin-top:2.5rem;}
  .tarif{background:var(--gris-clair);border-radius:var(--radius-md);padding:1.5rem 1.35rem;}
  .tarif h3{font-size:1rem;font-weight:500;}
  .tarif .prix{font-size:clamp(1.7rem,2.6vw,2.1rem);}
  .tarif .coches li{font-size:12.5px;}
  .tarif .coches{margin-bottom:0;}
  .saas-bloc{display:grid;grid-template-columns:1.4fr .9fr;gap:clamp(12px,2vw,20px);margin-top:2.5rem;align-items:stretch;}
  .saas-bloc>div{border-radius:var(--radius-lg);padding:clamp(1.5rem,3vw,2.25rem);}
  .saas-bloc .principal{background:var(--gris-clair);}
  .saas-bloc .exemple{background:var(--orange-pale);border:1.5px solid rgba(255,140,66,0.35);}
  .saas-bloc .petit{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--orange);margin-bottom:.5rem;}
  .saas-bloc h3{font-size:1.2rem;font-weight:500;margin-bottom:.6rem;}
  .saas-bloc p{font-size:14px;font-weight:400;color:var(--gris-texte);line-height:1.75;}
  .saas-bloc p+p{margin-top:.8rem;}
  .refs{display:flex;flex-wrap:wrap;gap:12px;margin-top:1rem;}
  .refs a{border:1px solid rgba(0,0,0,0.12);background:var(--blanc-pur);border-radius:100px;padding:9px 20px;font-size:14px;font-weight:400;transition:border-color var(--t),transform .15s;}
  .refs a:hover{border-color:var(--orange);transform:translateY(-1px);}

  /* À PROPOS */
  .apropos-inner{display:grid;grid-template-columns:clamp(240px,28vw,340px) 1fr;gap:clamp(2.5rem,6vw,5rem);align-items:start;}
  .apropos-photo img{border-radius:var(--radius-lg);filter:grayscale(100%);width:100%;box-shadow:var(--shadow-lg);}
  .apropos-text p{font-size:clamp(13.5px,1.4vw,15.5px);font-weight:400;color:var(--gris-texte);line-height:1.85;margin-bottom:1.1rem;}
  .devise{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.05rem,1.8vw,1.3rem);color:var(--noir);margin-top:1.5rem;}

  /* AVIS */
  .temoignages-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2.5rem;}
  .temoignages-note{display:flex;align-items:center;gap:10px;background:var(--orange-pale);border-radius:100px;padding:8px 18px 8px 8px;}
  .temoignages-note img{width:32px;height:32px;border-radius:50%;}
  .etoiles{color:var(--orange);font-size:14px;letter-spacing:1px;}
  .temoignages-note-text{font-size:13px;font-weight:500;color:var(--noir);}
  .temoignages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,22px);}
  .temoignage-card{background:var(--gris-clair);border-radius:var(--radius-md);padding:clamp(1.5rem,2.5vw,2rem);display:flex;flex-direction:column;transition:transform var(--t),box-shadow var(--t);}
  .temoignage-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
  .temoignage-stars{color:var(--orange);font-size:15px;letter-spacing:2px;margin-bottom:1rem;}
  .temoignage-text{font-size:clamp(13.5px,1.3vw,15px);font-weight:400;color:var(--gris-texte);line-height:1.75;flex-grow:1;margin-bottom:1.25rem;}
  .temoignage-auteur{display:flex;align-items:center;gap:10px;}
  .temoignage-avatar{width:38px;height:38px;border-radius:50%;background:var(--orange);color:var(--blanc-pur);display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-weight:600;font-size:15px;flex-shrink:0;}
  .temoignage-nom{font-size:13.5px;font-weight:500;color:var(--noir);}
  .temoignage-source{font-size:11.5px;font-weight:400;color:var(--gris-texte);}
  .temoignages-cta{text-align:center;margin-top:2.5rem;}
  .temoignages-cta a{font-size:13px;font-weight:500;color:var(--orange);border-bottom:1.5px solid var(--orange);padding-bottom:2px;}

  /* CONTACT */
  .contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,5rem);align-items:center;}
  .contact-inner p{font-size:clamp(13.5px,1.4vw,15.5px);font-weight:400;color:var(--gris-texte);line-height:1.8;margin-bottom:2rem;}
  .contact-etapes{display:flex;flex-direction:column;gap:1rem;}
  .contact-etape{display:flex;gap:1rem;align-items:flex-start;}
  .contact-etape-num{width:28px;height:28px;border-radius:50%;background:var(--orange);color:var(--blanc-pur);font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
  .contact-etape-text{font-size:14px;font-weight:400;color:var(--gris-texte);padding-top:4px;}
  .contact-carte{background:var(--blanc-pur);border:1px solid rgba(0,0,0,0.07);border-radius:var(--radius-lg);padding:clamp(1.75rem,3vw,2.5rem);box-shadow:var(--shadow-md);text-align:center;}
  .contact-carte h3{font-size:1.4rem;font-weight:500;margin-bottom:.75rem;}
  .contact-carte p{margin-bottom:1.5rem;}
  .contact-carte .btn-primary{width:100%;}
  .contact-carte .horaires{font-size:12px;color:var(--gris-texte);margin:1rem 0 0;}

  /* PIED DE PAGE */
  footer{background:var(--blanc-pur);border-top:1px solid rgba(0,0,0,0.06);padding:clamp(40px,6vw,64px) clamp(1.25rem,4vw,2rem) clamp(24px,3vw,32px);}
  .footer-inner{width:var(--container);margin-inline:auto;}
  .footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:clamp(1.5rem,4vw,3rem);margin-bottom:clamp(2rem,4vw,3rem);padding-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid rgba(0,0,0,0.06);}
  .footer-brand .name{font-family:var(--font-serif);font-size:1.05rem;margin-bottom:.3rem;color:var(--noir);}
  .footer-brand .tagline{font-family:var(--font-serif);font-size:12px;color:var(--gris-texte);font-style:italic;margin-bottom:1rem;}
  .footer-brand .desc{font-size:12.5px;font-weight:400;color:var(--gris-texte);line-height:1.7;}
  .footer-col h4{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-texte);font-weight:600;margin-bottom:1rem;}
  .footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.5rem;}
  .footer-col ul li a{font-size:13px;font-weight:400;color:var(--gris-texte);transition:color var(--t);}
  .footer-col ul li a:hover{color:var(--orange);}
  .footer-bottom{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1rem;font-size:12px;font-weight:400;color:var(--gris-texte);text-align:center;}

  @keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
  .fade-up{opacity:0;animation:fadeUp .65s cubic-bezier(.22,1,.36,1) forwards;}
  .fade-up-1{animation-delay:.08s;}.fade-up-2{animation-delay:.2s;}.fade-up-3{animation-delay:.35s;}.fade-up-4{animation-delay:.5s;}

  @media(max-width:1024px){
    .grille3,.portes{grid-template-columns:1fr 1fr;}
    .formules{grid-template-columns:1fr;}
    .tarifs{grid-template-columns:1fr 1fr;}
    .deux-col,.signature,.saas-bloc,.apropos-inner,.contact-inner{grid-template-columns:1fr;gap:2rem;}
    .footer-top{grid-template-columns:1fr 1fr;}
    .footer-top .footer-brand{grid-column:1/-1;}
  }
  @media(max-width:768px){
    .nav-desktop{display:none;}
    .nav-burger{display:flex;}
    .hero-grid{grid-template-columns:1fr;text-align:center;}
    .hero-sub{margin-inline:auto;}
    .hero-badge{margin-inline:auto;}
    .ctas{justify-content:center;flex-direction:column;}
    .ctas .btn-primary,.ctas .btn-secondary{width:100%;}
    .hero-visual{order:1;margin-top:2rem;}
    .hero-image{max-width:100%;border-radius:clamp(16px,4vw,28px);}
    .grille3,.grille2,.portes,.tarifs,.temoignages-grid{grid-template-columns:1fr;}
    .footer-top{grid-template-columns:1fr;}
    .apropos-photo{max-width:280px;margin-inline:auto;}
  }
  @media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important;}.fade-up{opacity:1;}}

  /* DEUX NOTES CÔTE À CÔTE (une colonne sur téléphone) */
  .deux-notes{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,3vw,2.5rem);margin-top:1.5rem;}
  .deux-notes .petit-texte{margin-top:0;max-width:none;}
  @media(max-width:768px){.deux-notes{grid-template-columns:1fr;gap:.75rem;}}

  /* FORMULAIRE DE CONTACT */
  .form-contact{text-align:left;}
  .form-contact .champ{margin-bottom:1rem;}
  .form-contact label{display:block;font-size:13px;font-weight:500;margin-bottom:.35rem;color:var(--noir);}
  .form-contact input[type=text],.form-contact input[type=email],.form-contact textarea{width:100%;padding:12px 14px;border:1px solid rgba(0,0,0,0.25);border-radius:var(--radius-sm);font:inherit;font-size:15px;background:var(--blanc-pur);color:var(--noir);}
  .form-contact textarea{min-height:140px;resize:vertical;}
  .form-contact input:focus-visible,.form-contact textarea:focus-visible{outline:3px solid var(--orange);outline-offset:2px;}
  .form-contact .consent{display:flex;gap:10px;align-items:flex-start;}
  .form-contact .consent input{width:auto;margin-top:.3rem;flex-shrink:0;}
  .form-contact .consent label{font-size:12.5px;font-weight:400;line-height:1.5;margin:0;}
  .form-contact .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
  .form-erreur{background:var(--orange-pale);border-left:3px solid var(--orange);padding:10px 14px;font-size:13px;margin-bottom:1rem;text-align:left;}
