/* ===================================================================
   SAGA Patrimoine — styles partagés des pages "En savoir plus"
=================================================================== */
:root{
  --green-darkest:#0c2318;--green-deep:#033321;--gold:#b5a064;--gold-soft:#c9b888;
  --lavender:#d1b0ff;--cream:#faf8f4;--white:#fff;--ink:#1c1f2e;--gray:#6b7280;
  --border:#e8e5df;--footer-bg:#0a0d12;
  --shadow-soft:0 18px 50px -20px rgba(12,35,24,.35);
  --shadow-strong:0 28px 70px -24px rgba(12,35,24,.5);
  --ease-out:cubic-bezier(0.16,1,0.3,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:"Plus Jakarta Sans",system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.65;color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;overflow-x:hidden}
@media(min-width:768px){body{font-size:18px}}
h1,h2,h3{font-family:"Sora",system-ui,sans-serif;line-height:1.14;letter-spacing:-.025em}
h1{font-size:34px;font-weight:500}
h2{font-size:26px;font-weight:400}
h3{font-size:19px;font-weight:600;letter-spacing:-.01em}
@media(min-width:768px){h1{font-size:52px}h2{font-size:36px}}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{width:100%;max-width:1100px;margin:0 auto;padding:0 22px}
.narrow{max-width:760px}

/* ---- NAV ---- */
.nav{position:fixed;top:0;left:0;width:100%;z-index:9000;display:flex;align-items:center;justify-content:space-between;padding:14px 22px;background:rgba(12,35,24,.72);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.nav-logo{display:flex;align-items:center;gap:10px}
.nav-logo img{height:28px;width:auto}
.nav-logo span{font-family:"Sora";font-weight:400;color:#fff;font-size:17px;white-space:nowrap}
.nav-logo span b{font-weight:700}
@media(max-width:480px){.nav-logo span{font-size:14px}}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:"Plus Jakarta Sans";font-weight:600;font-size:16px;border-radius:12px;overflow:hidden;cursor:pointer;border:none;transition:transform .15s var(--ease-out),box-shadow .3s ease}
.btn-gold{background:var(--gold);color:var(--green-darkest);padding:12px 22px;box-shadow:0 10px 30px -12px rgba(181,160,100,.7)}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 20px 44px -14px rgba(181,160,100,.85)}
.btn-lg{padding:17px 38px;font-size:18px}
.nav .btn-gold{font-size:14.5px;padding:10px 18px}
.btn-shimmer::after{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg)}
.btn-shimmer:hover::after{animation:shimmer .6s ease}
@keyframes shimmer{from{left:-120%}to{left:160%}}

/* ---- HERO ---- */
.page-hero{position:relative;overflow:hidden;color:#fff;padding:130px 0 78px;background:radial-gradient(95% 80% at 70% 30%,rgba(31,122,77,.40) 0%,rgba(20,58,40,.22) 40%,rgba(12,35,24,0) 66%),radial-gradient(60% 55% at 78% 24%,rgba(181,160,100,.15) 0%,rgba(181,160,100,0) 58%),var(--green-darkest)}
@media(min-width:768px){.page-hero{padding:160px 0 96px}}
.breadcrumb{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--gold-soft);margin-bottom:22px}
.breadcrumb:hover{color:#fff}
.page-hero h1{max-width:780px;margin-bottom:20px}
.page-hero .lead{max-width:600px;font-size:18px;color:rgba(255,255,255,.82);margin-bottom:30px}
.page-hero .btn{opacity:0;transform:scale(.95);animation:pop .6s var(--ease-out) forwards .15s}
@keyframes pop{to{opacity:1;transform:scale(1)}}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.hero-badge{font-size:13.5px;font-weight:500;color:#fff;padding:7px 14px;border-radius:30px;border:1px solid rgba(181,160,100,.5);background:rgba(181,160,100,.07)}

/* ---- SECTIONS ---- */
.section{padding:80px 0}
@media(min-width:768px){.section{padding:112px 0}}
.bg-cream{background:var(--cream)}
.bg-darkest{background:var(--green-darkest);color:#fff}
.bg-deep{background:var(--green-deep);color:#fff}
.sec-head{margin-bottom:48px}
.sec-head.center{text-align:center}
.sec-head .eyebrow{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.sec-head h2{margin-bottom:14px}
.sec-head p{max-width:620px;color:var(--gray)}
.bg-darkest .sec-head p,.bg-deep .sec-head p{color:rgba(255,255,255,.75)}
.sec-head.center p{margin-left:auto;margin-right:auto}
.lead-p{font-size:19px;color:#33363f;max-width:760px;margin-bottom:14px}
.bg-darkest .lead-p{color:rgba(255,255,255,.85)}

/* feature grid */
.grid{display:grid;grid-template-columns:1fr;gap:26px}
@media(min-width:680px){.grid.cols-2{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.grid.cols-3{grid-template-columns:repeat(3,1fr)}}
.card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px;border-left:4px solid var(--gold);transition:transform .3s var(--ease-out),box-shadow .3s ease}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-strong)}
.card .ic{width:42px;height:42px;color:var(--gold);margin-bottom:16px;stroke-width:1.7}
.card h3{margin-bottom:8px}
.card p{font-size:15.5px;color:var(--gray)}
.bg-darkest .card,.bg-deep .card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1);border-left-color:var(--gold)}
.bg-darkest .card p,.bg-deep .card p{color:rgba(255,255,255,.72)}

/* checklist */
.checklist{list-style:none;display:grid;gap:16px;max-width:760px}
.checklist li{display:flex;gap:14px;align-items:flex-start;font-size:16.5px}
.checklist svg{flex-shrink:0;width:24px;height:24px;color:var(--gold);margin-top:2px}
.bg-darkest .checklist li{color:rgba(255,255,255,.88)}

/* steps */
.steps{counter-reset:s;display:grid;gap:28px;max-width:780px}
.step{display:flex;gap:20px;align-items:flex-start}
.step-n{flex-shrink:0;width:46px;height:46px;border-radius:50%;border:2px solid var(--gold);color:var(--gold);font-family:"Sora";font-weight:700;display:flex;align-items:center;justify-content:center;font-size:17px}
.step h3{margin-bottom:5px}
.step p{color:var(--gray);font-size:15.5px}
.bg-deep .step p,.bg-darkest .step p{color:rgba(255,255,255,.75)}

/* note / risk */
.note{background:rgba(181,160,100,.08);border:1px solid rgba(181,160,100,.3);border-radius:12px;padding:18px 22px;font-size:14.5px;color:#5d5536;max-width:820px;margin-top:30px}
.bg-darkest .note,.bg-deep .note{color:rgba(255,255,255,.7);background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}

/* CTA band */
.cta-band{background:var(--green-deep);color:#fff;border-radius:24px;padding:48px 36px;text-align:center;position:relative;overflow:hidden}
.cta-band h2{margin-bottom:12px}
.cta-band p{color:rgba(255,255,255,.8);max-width:520px;margin:0 auto 26px}

/* ---- FOOTER CTA ---- */
.footer-cta{background:var(--green-darkest);color:#fff;text-align:center;padding:96px 0}
.footer-cta h2{max-width:720px;margin:0 auto 16px}
.footer-cta p{color:rgba(255,255,255,.8);max-width:520px;margin:0 auto 32px;font-size:18px}

/* ---- FOOTER ---- */
.footer{background:var(--footer-bg);color:#9ca3af;padding:46px 0 36px;font-size:13.5px}
.footer .wrap{display:flex;flex-direction:column;gap:20px}
.footer-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
.footer img{height:32px}
.footer-links{display:flex;flex-wrap:wrap;gap:18px;align-items:center}
.footer-links a:hover{color:#fff}
.footer-legal{line-height:1.6;border-top:1px solid rgba(255,255,255,.08);padding-top:18px;max-width:900px}
.footer-copy{opacity:.7}

/* reveal */
[data-rev]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}
[data-rev].in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto}
  [data-rev]{opacity:1!important;transform:none!important}
  .page-hero .btn{opacity:1!important;transform:none!important}
}
