
:root{
  --green:#0b3f32; --green2:#082f26; --gold:#c79a48; --gold2:#e0c27e;
  --cream:#f7f2e8; --ink:#202b26; --muted:#68736d; --line:rgba(11,63,50,.13);
  --shadow:0 22px 70px rgba(8,47,38,.10);
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Manrope,sans-serif;color:var(--ink);background:#fff;line-height:1.65}
img{max-width:100%;display:block} a{text-decoration:none;color:inherit}
.container{width:min(1180px,92%);margin:auto}.narrow{width:min(900px,92%);margin:auto}
.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{display:flex;justify-content:space-between;align-items:center;min-height:86px;gap:28px}
.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;object-fit:contain;border-radius:50%}
.brand strong{font-family:"Playfair Display",serif;color:var(--green);font-size:1.25rem;display:block}
.brand span{font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:#78837d}
.links{display:flex;align-items:center;gap:26px;font-size:.9rem}.links a{position:relative;padding:8px 0}.links a:hover,.links a[aria-current="page"]{color:var(--gold)}
.links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold);border-radius:2px}
.menu-btn{display:none;border:0;background:none;font-size:1.7rem;color:var(--green)}
.hero{padding:95px 0 75px;background:radial-gradient(circle at 80% 20%,rgba(224,194,126,.22),transparent 28%),linear-gradient(135deg,#fff,#fbf8f1)}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}
.kicker{display:inline-block;color:var(--gold);font-weight:700;letter-spacing:.17em;text-transform:uppercase;font-size:.75rem;margin-bottom:16px}
.kicker.gold{color:var(--gold2)}
h1,h2,h3{font-family:"Playfair Display",serif;color:var(--green);line-height:1.08;margin-top:0}
h1{font-size:clamp(3rem,6vw,5.6rem);margin-bottom:24px} h1 em{font-style:italic;color:var(--gold)}
h2{font-size:clamp(2.2rem,4vw,3.8rem)} h3{font-size:1.6rem}
.lead{font-size:1.08rem;color:#53615b;max-width:760px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0}
.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 24px;border-radius:999px;background:var(--green);color:#fff;font-weight:700;border:1px solid var(--green);cursor:pointer}
.btn-light{background:#fff;color:var(--green);border-color:rgba(11,63,50,.25)}.btn{transition:transform .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(8,47,38,.16)}
.proof{display:flex;flex-wrap:wrap;gap:18px;font-size:.9rem;color:#63706a}.hero-visual{position:relative}
.logo-stage{background:#fff;border:1px solid rgba(199,154,72,.22);border-radius:30px;padding:38px;box-shadow:var(--shadow);position:relative}
.logo-stage img{max-width:430px;margin:auto}.spark{position:absolute;color:var(--gold);font-size:2rem}.spark.a{right:12%;top:12%}.spark.b{left:12%;bottom:14%}
.luxury-card{position:absolute;right:-25px;bottom:-30px;background:var(--green);color:#fff;padding:18px 22px;border-radius:18px;box-shadow:var(--shadow)}
.luxury-card small{display:block;color:var(--gold2);text-transform:uppercase;letter-spacing:.16em}.luxury-card strong{display:block;margin-top:4px}
.section{padding:90px 0}.soft{background:var(--cream)}.dark{background:var(--green);color:#fff}.dark h2{color:#fff}
.sap-strip{padding:38px 0;background:linear-gradient(120deg,var(--green2),var(--green));color:#fff;border-block:1px solid rgba(240,200,115,.35)}.sap-content{display:grid;grid-template-columns:.85fr 1.15fr;gap:55px;align-items:center}.sap-content h2{color:#fff;font-size:clamp(1.7rem,3vw,2.6rem);margin-bottom:0}.sap-content p{margin:0;color:#dbeae5}
.heading{margin-bottom:44px}.heading.center{text-align:center;max-width:780px;margin:0 auto 46px}.center{margin-inline:auto}
.cards{display:grid;gap:22px}.cards.four{grid-template-columns:repeat(4,1fr)}
.cards article{padding:28px;border-radius:22px;border:1px solid rgba(199,154,72,.22);background:#fff;box-shadow:0 12px 35px rgba(8,47,38,.05)}
.num{color:var(--gold);font-weight:700;letter-spacing:.15em}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.text-link{font-weight:700}.page-hero{padding:88px 0 55px;background:linear-gradient(180deg,#fbf8f1,#fff);text-align:center}
.page-hero h1{font-size:clamp(2.8rem,5vw,4.8rem)}
.service-list{display:grid;gap:0}.service-row{display:grid;grid-template-columns:110px 1fr;gap:30px;padding:42px 0;border-bottom:1px solid var(--line)}
.service-row>span{font-size:1.1rem;color:var(--gold);font-weight:700}.service-row h2{font-size:2.4rem;margin-bottom:10px}
.steps p{padding:14px 0;border-bottom:1px solid rgba(11,63,50,.1)}
.about-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}
.about-logo{background:var(--cream);border-radius:32px;padding:45px}.about-logo img{max-width:420px;margin:auto}
.values article{text-align:center}.document-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start}
.quote-form,.invoice{background:#fff;border:1px solid rgba(199,154,72,.22);border-radius:24px;padding:28px;box-shadow:var(--shadow)}
.form-title span{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font-size:.75rem}.form-title h2{font-size:2.2rem}
label{display:block;font-weight:700;color:var(--green);font-size:.9rem;margin-bottom:16px}
input,select,textarea{width:100%;margin-top:8px;border:1px solid #d9e0dc;border-radius:12px;padding:13px 14px;font:inherit;background:#fff}
input:focus,select:focus,textarea:focus,.btn:focus-visible,a:focus-visible,.menu-btn:focus-visible{outline:3px solid rgba(199,154,72,.38);outline-offset:3px;border-color:var(--gold)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.invoice{position:sticky;top:110px}
.invoice-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid var(--gold);padding-bottom:20px}
.invoice-brand{display:flex;gap:12px;align-items:center}.invoice-brand img{width:64px}.invoice-brand span,.invoice-meta span{display:block;font-size:.82rem;color:#66716c}
.invoice-meta{text-align:right}.invoice-meta>b{font-size:1.5rem;color:var(--green)}
.invoice-parties{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:24px 0}.invoice-parties small{color:var(--gold);text-transform:uppercase;letter-spacing:.14em}
.invoice table{width:100%;border-collapse:collapse;margin:10px 0 24px}.invoice th,.invoice td{padding:12px;border-bottom:1px solid #e4e8e5;text-align:left;font-size:.9rem}
.invoice th{background:var(--cream);color:var(--green)}.totals{margin-left:auto;max-width:330px}.totals p{display:flex;justify-content:space-between;gap:20px}
.totals .grand{border-top:2px solid var(--gold);padding-top:12px;font-size:1.1rem}.invoice-note{font-size:.78rem;color:#69746f;background:#f8f6f0;padding:13px;border-radius:10px}.print-actions{margin-top:18px}
.legal{max-width:900px}.legal h2{font-size:1.65rem;margin-top:34px}.legal-warning{margin-top:40px;padding:22px;border-left:4px solid var(--gold);background:var(--cream)}
.legal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:45px}.legal-summary>div{padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--cream)}.legal-summary small{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.12em}.legal-summary strong{display:block;margin-top:7px;color:var(--green)}
.footer{background:var(--green2);color:#fff;padding:48px 0 20px}.footer-grid{display:flex;justify-content:space-between;gap:30px}
.footer-brand{display:flex;align-items:center;gap:15px}.footer-brand img{width:70px}.footer-brand strong{font-family:"Playfair Display",serif;font-size:1.35rem;display:block}
.footer-brand span{display:block;color:#cdd8d3;font-size:.85rem}.footer-info{display:grid;gap:9px;min-width:310px}.footer-info p{display:grid;grid-template-columns:120px 1fr;gap:14px;margin:0;color:#d6dfdb;font-size:.88rem}.footer-info span{color:var(--gold2);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.footer-info a,.footer-info strong{color:#fff;font-weight:600}.footer-info a:hover{color:var(--gold2)}.legal-line{border-top:1px solid rgba(255,255,255,.13);margin-top:28px;padding-top:18px;font-size:.8rem;color:#aebdb6}

@media(max-width:900px){
  .hero-grid,.split,.about-layout,.document-grid,.sap-content{grid-template-columns:1fr}
  .cards.four{grid-template-columns:repeat(2,1fr)}
  .links{display:none;position:absolute;top:86px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;border-bottom:1px solid var(--line)}
  .links.open{display:flex}.menu-btn{display:block}.invoice{position:static}.luxury-card{position:static;margin-top:12px}
}
@media(max-width:600px){
  .hero{padding-top:55px}.cards.four{grid-template-columns:1fr}.row{grid-template-columns:1fr}.service-row{grid-template-columns:1fr;gap:5px}
  .footer-grid{flex-direction:column}.footer-info{min-width:0}.footer-info p{grid-template-columns:1fr;gap:1px}.brand span{display:none}.invoice{padding:18px}.invoice-parties,.legal-summary{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{
  .header,.footer,.page-hero,.quote-form,.print-actions{display:none!important}
  .section{padding:0}.document-grid{display:block}.invoice{box-shadow:none;border:none;position:static}
  body{background:#fff}
}

/* Palette premium inspirée du logo : vert émeraude profond & or */
:root{--green:#003f31;--green2:#002c22;--green3:#075b47;--gold:#c78a2d;--gold2:#f0c873;--cream:#fbf3df;--ink:#18312a;--line:rgba(0,63,49,.16)}
body{background:linear-gradient(90deg,#fff 0%,#fffdf7 50%,#fff 100%)}
.header{background:rgba(0,44,34,.97);border-bottom-color:rgba(240,200,115,.35);box-shadow:0 7px 28px rgba(0,44,34,.18)}
.brand strong{color:#fff}.brand span{color:var(--gold2)}
.links{color:#fff}.links a:hover,.links a[aria-current="page"]{color:var(--gold2)}
.menu-btn{color:var(--gold2)}
.hero{background:radial-gradient(circle at 83% 18%,rgba(240,200,115,.38),transparent 28%),radial-gradient(circle at 8% 85%,rgba(0,91,71,.12),transparent 30%),linear-gradient(135deg,#fffdf8,#f5ead0)}
.logo-stage{background:linear-gradient(145deg,var(--green2),var(--green3));border:2px solid rgba(240,200,115,.68);box-shadow:0 26px 75px rgba(0,44,34,.25)}
.soft{background:linear-gradient(135deg,var(--cream),#f2dfb8)}
.dark{background:radial-gradient(circle at 85% 15%,rgba(199,138,45,.22),transparent 28%),linear-gradient(135deg,var(--green2),var(--green));border-block:1px solid rgba(240,200,115,.25)}
.cards article{border-color:rgba(199,138,45,.38);border-top:4px solid var(--gold);background:linear-gradient(160deg,#fff,#fff9ec);box-shadow:0 14px 38px rgba(0,44,34,.09)}
.page-hero{background:radial-gradient(circle at 12% 10%,rgba(240,200,115,.26),transparent 25%),linear-gradient(135deg,var(--green2),var(--green3));color:#eaf5f1;border-bottom:5px solid var(--gold)}
.page-hero h1{color:#fff}.page-hero .lead{color:#d8ebe5;margin-inline:auto}.page-hero .kicker{color:var(--gold2)}
.about-logo{background:linear-gradient(145deg,var(--green2),var(--green3));border:2px solid var(--gold);box-shadow:var(--shadow)}
.quote-form,.invoice{background:linear-gradient(165deg,#fff,#fff9ec);border-color:rgba(199,138,45,.42);border-top:5px solid var(--gold)}
.legal-warning{border-left-width:5px;background:linear-gradient(135deg,var(--cream),#f2dfb8);color:var(--green2)}
@media(max-width:900px){.links{background:var(--green2);border-bottom:2px solid var(--gold)}}
