/* ══════════════════════════════════════════════════════
   AZIMUT ADVISORY — CSS PARTAGÉ TOUTES PAGES
══════════════════════════════════════════════════════ */
:root{
  --navy:#08131f;--navy2:#0c1a2e;--navy3:#112238;
  --gold:#c8922a;--gold2:#e8c060;
  --silver:#c8d8e8;--fog:#6a8aaa;
  --faf:#faf8f4;--white:#ffffff;
  --line:rgba(200,146,42,.18);--line2:rgba(200,146,42,.07);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Outfit',sans-serif;background:var(--white);color:var(--navy);overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(8,19,31,.97);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);padding:0 5%;display:flex;align-items:center;justify-content:space-between;height:68px}
.nav-brand{display:flex;align-items:center;gap:12px;cursor:pointer}
.nav-brand-svg{height:36px;width:auto}
.nav-brand-logo{height:48px;width:auto;object-fit:contain;filter:brightness(1.05) drop-shadow(0 0 8px rgba(200,146,42,0.2))}
.nav-wordmark{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:700;color:var(--white);letter-spacing:1px;line-height:1.1}
.nav-wordmark span{display:block;font-family:'DM Mono',monospace;font-size:8px;font-weight:300;letter-spacing:3px;color:var(--gold);text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:28px;list-style:none}
.nav-links a{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--fog);transition:color .2s;padding:4px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.nav-links a:hover{color:var(--gold)}
.nav-links a.active{color:var(--gold);border-bottom-color:var(--gold)}
.nav-cta{background:var(--gold)!important;color:var(--navy)!important;padding:9px 20px!important;font-weight:600!important;border-bottom:none!important;transition:background .2s!important}
.nav-cta:hover{background:var(--gold2)!important}
.nav-cta.active{border-bottom:none!important}
.nav-burger{display:none;cursor:pointer;flex-direction:column;gap:5px;background:none;border:none;padding:4px}
.nav-burger span{width:24px;height:2px;background:var(--fog);display:block;transition:all .3s}

/* ── FLOATING CONTACT BUTTON ── */
.float-contact{
  position:fixed;right:0;top:50%;transform:translateY(-50%);
  z-index:150;
  display:flex;flex-direction:column;
  gap:0;
}
.float-btn{
  width:52px;height:52px;
  background:var(--gold);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  border:none;
  transition:background .2s,width .25s;
  position:relative;
  overflow:hidden;
}
.float-btn:first-child{border-bottom:1px solid rgba(200,146,42,.3)}
.float-btn:hover{background:var(--gold2);width:60px}
.float-btn svg{flex-shrink:0;transition:transform .2s}
.float-btn:hover svg{transform:scale(1.15)}
.float-tooltip{
  position:absolute;right:60px;
  background:var(--navy);color:var(--silver);
  font-family:'DM Mono',monospace;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;
  padding:6px 12px;white-space:nowrap;
  opacity:0;pointer-events:none;
  transition:opacity .2s;
  border:1px solid var(--line);
}
.float-tooltip::after{content:'';position:absolute;right:-5px;top:50%;transform:translateY(-50%);border:5px solid transparent;border-left-color:var(--navy)}
.float-btn:hover .float-tooltip{opacity:1}
/* Bande verticale label */
.float-label{
  background:var(--navy);
  color:var(--gold);
  font-family:'DM Mono',monospace;font-size:8px;letter-spacing:3px;text-transform:uppercase;
  writing-mode:vertical-rl;text-orientation:mixed;
  padding:14px 6px;
  border-left:1px solid var(--line);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  cursor:default;
  transform:rotate(180deg);
}

/* ── PAGE HEADER (toutes pages sauf home) ── */
.page-header{
  background:var(--navy);
  padding:120px 5% 60px;
  position:relative;overflow:hidden;
}
.page-header::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 80% 50%,rgba(200,146,42,.05) 0%,transparent 60%);pointer-events:none}
.page-header-stars{position:absolute;inset:0;background-image:radial-gradient(1px 1px at 20% 15%,rgba(200,192,160,.5) 0%,transparent 100%),radial-gradient(1px 1px at 75% 10%,rgba(200,192,160,.4) 0%,transparent 100%),radial-gradient(1px 1px at 50% 25%,rgba(200,192,160,.3) 0%,transparent 100%),radial-gradient(1px 1px at 85% 40%,rgba(200,192,160,.35) 0%,transparent 100%);pointer-events:none}
.page-header-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto}
.page-breadcrumb{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--fog);margin-bottom:16px;display:flex;align-items:center;gap:8px}
.page-breadcrumb a{color:var(--gold);transition:color .2s}
.page-breadcrumb a:hover{color:var(--gold2)}
.page-breadcrumb span{color:var(--fog)}
.page-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,5vw,62px);font-weight:600;line-height:1.06;color:var(--white);margin-bottom:16px}
.page-h1 em{color:var(--gold2);font-style:italic}
.page-lead{font-size:clamp(14px,1.6vw,17px);font-weight:300;color:var(--fog);line-height:1.85;max-width:640px}
.page-divider{width:60px;height:1px;background:var(--gold);margin:28px 0}

/* ── SECTION COMMONS ── */
.section-eyebrow{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.section-eyebrow.center{justify-content:center}
.section-eyebrow::before{content:'';width:18px;height:1px;background:var(--gold);flex-shrink:0}
.section-eyebrow.center::after{content:'';width:18px;height:1px;background:var(--gold);flex-shrink:0}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4.2vw,48px);font-weight:600;line-height:1.1;margin-bottom:16px}
.section-title em{color:var(--gold);font-style:italic}
.section-desc{font-size:14.5px;font-weight:300;color:var(--fog);line-height:1.9}

/* ── BUTTONS ── */
.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--navy);font-family:'DM Mono',monospace;font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:14px 28px;font-weight:600;transition:background .2s,transform .2s;border:none;cursor:pointer}
.btn-primary:hover{background:var(--gold2);transform:translateY(-2px)}
.btn-outline{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(200,146,42,.4);color:var(--silver);font-family:'DM Mono',monospace;font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:14px 28px;transition:border-color .2s,color .2s,transform .2s;background:transparent;cursor:pointer}
.btn-outline:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}

/* ── ASSURANCES BAND ── */
.assurances{background:var(--navy);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);display:flex;flex-wrap:wrap}
.ass-item{flex:1;min-width:180px;padding:20px 22px;display:flex;gap:12px;align-items:flex-start;border-right:1px solid var(--line2);transition:background .3s}
.ass-item:last-child{border-right:none}
.ass-item:hover{background:rgba(200,146,42,.04)}
.ass-icon{font-size:17px;flex-shrink:0;margin-top:1px}
.ass-title{font-size:12.5px;font-weight:500;color:var(--silver);margin-bottom:2px}
.ass-sub{font-size:11px;font-weight:300;color:var(--fog);line-height:1.5}

/* ── FOOTER ── */
footer{background:var(--navy);padding:36px 5% 24px;border-top:1px solid var(--line2)}
.footer-top{display:flex;align-items:center;gap:0;padding-bottom:22px;border-bottom:1px solid var(--line2);margin-bottom:20px;flex-wrap:wrap;gap:16px}
.footer-brand{display:flex;align-items:center;gap:10px}
.footer-brand-svg{height:28px;opacity:.65}
.footer-name{font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:1px}
.footer-name span{color:var(--gold)}
.gold-sep{flex:1;min-width:120px;max-width:360px;display:flex;align-items:center;gap:14px;color:var(--gold);font-family:'DM Mono',monospace;font-size:8.5px;letter-spacing:3px;text-transform:uppercase}
.gold-sep::before,.gold-sep::after{content:'';flex:1;height:1px;background:linear-gradient(to right,transparent,var(--gold),transparent)}
.footer-tag{font-family:'DM Mono',monospace;font-size:8.5px;letter-spacing:2px;color:rgba(106,138,170,.35);text-transform:uppercase}
.footer-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}
.footer-legal{font-size:11px;font-weight:300;color:rgba(106,138,170,.4);line-height:1.8}
.footer-nav{display:flex;gap:18px;flex-shrink:0;flex-wrap:wrap}
.footer-nav a{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:rgba(106,138,170,.35);transition:color .2s}
.footer-nav a:hover,.footer-nav a.active{color:var(--gold)}

/* ── SCROLL TOP ── */
.scroll-top{position:fixed;bottom:24px;right:72px;z-index:150;width:40px;height:40px;background:var(--navy2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:translateY(20px);transition:all .3s;font-size:16px;color:var(--gold)}
.scroll-top.visible{opacity:1;transform:translateY(0)}
.scroll-top:hover{background:var(--gold);color:var(--navy)}

/* ── REVEAL ── */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes bounce{0%,100%{transform:rotate(45deg) translateY(0)}50%{transform:rotate(45deg) translateY(6px)}}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .nav-links{display:none}
  .nav-links.open{display:flex;flex-direction:column;gap:0;position:fixed;top:68px;left:0;right:0;background:rgba(8,19,31,.99);padding:16px 6%;border-top:1px solid var(--line);z-index:199}
  .nav-links.open a{padding:12px 0;border-bottom:1px solid var(--line2)}
  .nav-burger{display:flex}
  .float-label{display:none}
  .float-contact{top:auto;bottom:80px;transform:none;flex-direction:row;right:12px}
  .float-btn{width:46px;height:46px;border-radius:50%;box-shadow:0 4px 16px rgba(0,0,0,.4)}
  .float-btn:first-child{border-bottom:none;margin-right:8px}
  .float-btn:hover{width:46px}
  .scroll-top{right:12px;bottom:24px}
  .ass-item{border-right:none;border-bottom:1px solid var(--line2)}
  .footer-bottom{flex-direction:column}
}

.footer-brand-logo{height:32px;width:auto;object-fit:contain;opacity:0.75;filter:brightness(0.9)}
