:root{--primary: #E8663C;--primary-hover: #CE5127;--on-primary: #FFFFFF;--secondary: #1B3A4B;--secondary-hover: #254E64;--bg: #F4F1EA;--surface: #FFFFFF;--text: #1B3A4B;--text-secondary: #42606F;--text-strong: #0F2733;--text-muted: #7A8A93;--text-faint: #C4BDB0;--fill: #EAE5DA;--border: #D9D2C4;--white: #FFFFFF;--callout-bg: #FCEBE2;--callout-text: #A33F16;--callout-border: #F0C0A8;--status-ok: #6FA98A;--ink: var(--text);--blue: var(--primary);--cyan: var(--callout-border);--navy: var(--text-strong);--ice: var(--callout-bg);--sand: var(--fill);--line: var(--border);--muted: var(--text-muted);--serif: 'Fraunces',serif;--sans: 'Inter',sans-serif;--max: 1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--sans)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);line-height:1.05;letter-spacing:-.04em}.site-header{height:76px;display:flex;align-items:center;background:var(--surface);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(27,58,75,.10)}.nav-wrap{width:min(var(--max),calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{font-family:var(--serif);font-size:24px;font-weight:700;letter-spacing:-.05em;display:flex;align-items:center;gap:8px}.brand i{font-family:var(--sans);color:var(--blue);font-style:normal}.brand-mark{width:31px;height:31px;display:grid;place-items:center;background:var(--primary);border-radius:50%;color:var(--on-primary);font:700 25px/1 var(--serif)}.main-nav{display:flex;align-items:center;gap:28px;font-weight:600;font-size:14px}.main-nav a:not(.nav-cta):hover{color:var(--blue)}.nav-cta{background:var(--primary);color:var(--on-primary);padding:10px 15px;border-radius:4px}.nav-toggle{display:none;background:none;border:0;color:var(--ink)}.hero{min-height:650px;position:relative;background:var(--navy);color:#fff;overflow:hidden}.hero-media{position:absolute;top:0;width:54%;height:100%;opacity:.72}.hero-media img{height:100%;width:100%;object-fit:cover}.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,39,51,.1),rgba(15,39,51,.75))}.mountain{left:0;clip-path:polygon(0 0,88% 0,100% 100%,0 100%)}.sea{right:0;clip-path:polygon(20% 0,100% 0,100% 100%,6% 100%)}.sea:after{background:linear-gradient(270deg,rgba(15,39,51,.2),rgba(15,39,51,.78))}.hero-content{position:relative;z-index:2;width:min(var(--max),calc(100% - 40px));margin:auto;padding:120px 0 95px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--blue);margin-bottom:18px}.eyebrow.light{color:var(--cyan)}.hero h1{font-size:clamp(47px,7.2vw,86px);max-width:820px;margin-bottom:26px}.hero h1 em{color:var(--cyan);font-style:italic}.hero-lead{max-width:520px;font-size:18px;line-height:1.55;color:#E4DED4;margin-bottom:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;cursor:pointer;font:700 13px var(--sans);padding:14px 18px;border-radius:4px;transition:.25s}.button svg{width:16px}.button-light{background:var(--surface);color:var(--ink)}.button-light:hover{background:var(--cyan);transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:var(--primary-hover);transform:translateY(-2px)}.hero-conditions{position:absolute;z-index:2;bottom:28px;right:max(20px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:auto auto;gap:5px 12px;font-size:12px;color:#D6CFC5}.hero-conditions span{font-weight:600;display:flex;align-items:center;gap:6px}.hero-conditions svg{width:15px;color:var(--cyan)}.hero-conditions b{font-weight:400}.signal-bar{min-height:76px;background:var(--fill);display:flex;align-items:center;justify-content:space-between;padding:15px max(20px,calc((100% - var(--max))/2));font-size:13px}.signal-bar div{display:flex;gap:12px;align-items:center}.signal-bar i{color:var(--blue);width:20px}.signal-bar span{color:var(--text-secondary)}.signal-bar>a{font-weight:700;color:var(--blue);white-space:nowrap}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:120px 0 55px}.intro h2,.conditions h2,.tools-heading h2,.methodology h2,.brief h2{font-size:clamp(36px,4.5vw,58px);margin-bottom:0}.intro-text{font-size:20px;line-height:1.65;align-self:end;color:var(--text-secondary)}.terrain-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-bottom:120px}.terrain-card{height:540px;overflow:hidden;position:relative;color:#fff}.terrain-card>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.terrain-card:hover>img{transform:scale(1.04)}.terrain-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,39,51,.88),rgba(15,39,51,.03) 65%)}.card-overlay{position:absolute;z-index:1;left:35px;right:35px;bottom:30px}.card-overlay h2{font-size:42px;margin-bottom:15px}.card-overlay>p:not(.eyebrow){max-width:410px;font-size:15px;line-height:1.55;color:#E4DED4}.text-link{font-weight:700;font-size:13px;color:var(--cyan);display:inline-flex;align-items:center;gap:8px}.text-link svg{width:16px}.conditions{background:var(--sand);padding:110px 0}.conditions-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:50px}.conditions-head>p{font-size:18px;color:var(--text-secondary);align-self:end}.dashboard{background:var(--navy);color:#fff;padding:27px 35px 35px;box-shadow:12px 13px 0 var(--cyan)}.dashboard-top{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:18px}.dashboard-top small{margin-left:auto;color:#B9B1A5;text-transform:none;letter-spacing:0}.status-dot{width:9px;height:9px;border-radius:50%;background:var(--status-ok)}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-top:28px}.dashboard-grid article{padding-right:20px;border-right:1px solid rgba(255,255,255,.15)}.dashboard-grid article:last-child{border:0}.dashboard-grid svg{color:var(--cyan);width:25px}.dashboard-grid h3{font-size:17px;margin:13px 0 7px}.dashboard-grid p{font-size:13px;line-height:1.55;color:#C4BDB0}.dashboard-grid a{font-size:12px;font-weight:700;color:var(--cyan);text-decoration:underline}.tools-section{display:grid;grid-template-columns:.8fr 1.7fr;gap:80px;padding:120px 0}.tools-heading>p:last-child{font-size:17px;color:var(--text-secondary);max-width:330px}.tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tool-card{border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;transition:.25s}.tool-card:hover{box-shadow:0 14px 35px rgba(27,58,75,.10);transform:translateY(-3px)}.tool-icon{width:42px;height:42px;display:grid;place-items:center;background:var(--ice);color:var(--blue);margin-bottom:20px}.tool-icon svg{width:21px}.tool-type{font-size:10px;font-weight:700;letter-spacing:.15em;color:var(--blue);margin-bottom:7px}.tool-card h3{font:700 25px/1.1 var(--serif);margin-bottom:8px}.tool-card>div>p:last-child{font-size:13px;line-height:1.5;color:var(--muted);min-height:60px}.compact-form{margin-top:14px}.compact-form label{font-size:12px;display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line);color:var(--muted)}.compact-form input,.compact-form select{border:0;width:64px;text-align:right;color:var(--ink);font:700 12px var(--sans);background:transparent;outline-color:var(--blue)}.compact-form select{width:auto}.compact-form .button{width:100%;margin-top:15px;padding:12px}.calc-result{margin-top:17px;border-top:1px solid var(--line);padding-top:14px;font-size:13px}.calc-result strong{display:block;font:700 23px var(--serif);color:var(--blue)}.calc-result small{color:var(--muted);line-height:1.35;display:block}.methodology{display:grid;grid-template-columns:110px 1fr 1fr;gap:40px;padding:60px 0 120px;border-top:1px solid var(--line)}.method-number{font:700 70px/1 var(--serif);color:var(--text-faint)}.method-list p{font-size:14px;padding:0 0 16px 45px;border-bottom:1px solid var(--line);position:relative;margin-bottom:17px}.method-list b{color:var(--blue);position:absolute;left:0}.brief{background:var(--navy);color:var(--white);padding:82px 0}.brief-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px}.brief p:not(.eyebrow){max-width:440px;color:#E4DED4}.newsletter-form{align-self:end}.newsletter-form label{display:block;font-size:12px;font-weight:700;margin-bottom:8px}.newsletter-form>div{display:flex}.newsletter-form input{flex:1;min-width:0;border:0;padding:14px;font:14px var(--sans)}.newsletter-form button{border:0;background:var(--primary);color:var(--on-primary);font:700 13px var(--sans);padding:0 16px;cursor:pointer}.newsletter-form small{display:block;color:#D6CFC5;font-size:11px;margin-top:8px}.site-footer{background:var(--ink);color:#D6CFC5;padding:62px max(20px,calc((100% - var(--max))/2)) 22px}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1.1fr;gap:34px}.brand-footer{color:#fff;margin-bottom:17px}.footer-grid p{font-size:13px;max-width:240px;color:#B9B1A5}.footer-grid strong{display:block;color:#fff;font-size:13px;margin-bottom:12px}.footer-grid a:not(.brand){display:block;font-size:13px;margin:7px 0;color:#C4BDB0}.footer-grid a:hover{color:var(--primary)}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:44px;padding-top:19px;display:flex;justify-content:space-between;font-size:11px;color:#9A9184}.reveal-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal-on-scroll.revealed{opacity:1;transform:none}.not-found{min-height:60vh;display:grid;place-content:center;text-align:center;padding:50px 20px}.not-found h1{font-size:55px}.not-found p:not(.eyebrow){color:var(--muted);margin-bottom:25px}@media(max-width:800px){.main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--surface);padding:20px;box-shadow:0 10px 15px rgba(0,0,0,.08);flex-direction:column;align-items:stretch;gap:14px}.main-nav.open{display:flex}.nav-toggle{display:block}.hero{min-height:650px}.hero-media{width:100%;opacity:.5;clip-path:none!important}.sea{display:none}.hero-content{padding-top:100px}.hero-conditions{left:20px;right:auto}.signal-bar{align-items:flex-start;gap:16px}.signal-bar span{display:none}.signal-bar>a{font-size:11px}.intro,.conditions-head,.brief-inner{grid-template-columns:1fr;gap:28px}.intro{padding-top:80px}.terrain-grid,.tools-grid{grid-template-columns:1fr}.terrain-grid{padding-bottom:80px}.terrain-card{height:440px}.conditions{padding:80px 0}.dashboard-grid{grid-template-columns:1fr;gap:20px}.dashboard-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:18px}.dashboard-grid article:last-child{border-bottom:0}.tools-section{grid-template-columns:1fr;gap:35px;padding:80px 0}.methodology{grid-template-columns:70px 1fr;gap:20px;padding-bottom:80px}.method-number{font-size:48px}.method-list{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:6px}}@media(max-width:460px){.hero h1{font-size:46px}.hero-lead{font-size:16px}.signal-bar{padding-inline:20px}.card-overlay{left:23px;right:23px}.card-overlay h2{font-size:36px}.dashboard{padding:22px}.dashboard-top small{display:none}.newsletter-form>div{display:block}.newsletter-form input,.newsletter-form button{width:100%;height:47px}.footer-grid{gap:25px}.not-found h1{font-size:42px}}
/* ── Sous-menu Outils (nav principale) ─────────────────────────────── [nav-outils] */
.nav-drop{position:relative;display:flex;align-items:center}
.nav-drop-toggle{display:inline-flex;align-items:center;gap:5px;background:none;border:0;padding:0;cursor:pointer;color:inherit;font:inherit;font-weight:600;font-size:14px}
.nav-drop-toggle svg{width:15px;transition:transform .2s}
.nav-drop-toggle:hover{color:var(--primary)}
.nav-drop[data-open="true"] .nav-drop-toggle{color:var(--primary)}
.nav-drop[data-open="true"] .nav-drop-toggle svg{transform:rotate(180deg)}
.nav-drop-menu{display:none;position:absolute;top:calc(100% + 18px);left:-18px;min-width:296px;background:var(--surface);border:1px solid var(--border);box-shadow:0 18px 40px rgba(27,58,75,.13);padding:8px;z-index:30}
.nav-drop[data-open="true"] .nav-drop-menu{display:block}
.nav-drop-menu a{display:block;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.35;color:var(--text)}
.nav-drop-menu a small{display:block;font-weight:400;font-size:11.5px;color:var(--text-muted);margin-top:2px}
.nav-drop-menu a:hover{background:var(--fill);color:var(--primary)}
.nav-drop-menu a:hover small{color:var(--text-secondary)}
.nav-drop-menu .nav-drop-all{border-top:1px solid var(--border);margin-top:6px;padding-top:12px;color:var(--primary)}
@media(max-width:800px){
  .nav-drop{display:block}
  .nav-drop-toggle{width:100%;justify-content:space-between;padding:2px 0}
  .nav-drop-menu{position:static;min-width:0;left:auto;border:0;border-left:2px solid var(--border);box-shadow:none;padding:4px 0 4px 12px;margin-top:8px;background:transparent}
  .nav-drop-menu a{padding:8px 0}
  .nav-drop-menu a:hover{background:transparent}
}

/* ── Sous-menu large à deux colonnes (Ressources) ──────────────── [nav-ressources] */
.nav-drop-menu.is-wide{min-width:520px;left:-140px;padding:14px;display:none;grid-template-columns:1fr 1fr;gap:0 18px}
.nav-drop[data-open="true"] .nav-drop-menu.is-wide{display:grid}
.nav-drop-menu.is-wide .nd-col{min-width:0}
.nav-drop-menu.is-wide .nd-titre{display:block;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary);padding:4px 12px 8px;border-bottom:1px solid var(--border);margin-bottom:4px}
.nav-drop-menu.is-wide a{padding:8px 12px;font-size:12.5px}
.nav-drop-menu.is-wide .nav-drop-all{grid-column:1/-1;margin-top:8px}
@media(max-width:800px){
  .nav-drop-menu.is-wide{min-width:0;left:auto;grid-template-columns:1fr;padding:4px 0 4px 12px}
  .nav-drop[data-open="true"] .nav-drop-menu.is-wide{display:block}
  .nav-drop-menu.is-wide .nd-titre{padding-left:0}
  .nav-drop-menu.is-wide a{padding:8px 0}
}

/* Le menu s'ouvre 18 px sous son bouton : ce pont invisible évite que le pointeur
   quitte .nav-drop en traversant l'espace mort, ce qui fermait le menu aussitôt. */
@media(min-width:801px){
  .nav-drop-menu::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
  .nav-drop-menu.is-wide::before{left:140px;right:auto;width:180px}
}
