@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/assets/co3bmX5slCNuHLi8bLeY9MK7whWMhyjoq3FNsS8-d3ee103f47.woff2') format('woff2');
}
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 300 500;
  font-display: swap;
  src: url('/assets/92zatBhPNqw77obX5RYk-a61a8dd244.woff2') format('woff2');
}
:root {
  --navy: #1B2A4A;
  --navy-deep: #0D1B33;
  --gold: #C9A84C;
  --gold-light: #E8C96A;
  --white: #F8F6F0;
  --gray: #8899BB;
  --font-display: 'Cormorant Garamond', Georgia, serif;
  --font-body: 'Jost', sans-serif;
}
.cl * { box-sizing:border-box; margin:0; padding:0; }
.cl {
  font-family: var(--font-body);
  font-weight: 300;
  background: var(--navy-deep);
  color: var(--white);
  overflow-x: hidden;
}

/* HEADER LOGO */
.cl-header {
  background: var(--navy-deep);
  border-bottom: 1px solid rgba(201,168,76,0.2);
  padding: 1.5rem 4rem;
  display: flex; align-items: center; justify-content: space-between;
}
.cl-header-logo { display:flex; align-items:center; gap:1.5rem; text-decoration:none; }
.cl-header-logo svg { width:64px; height:64px; border-radius:8px; }
.cl-header-logo-text { font-family:var(--font-display); }
.cl-header-logo-text .name { font-size:1.6rem; font-weight:700; color:var(--white); letter-spacing:1px; }
.cl-header-logo-text .sub { font-size:0.75rem; color:var(--gold); letter-spacing:5px; font-weight:300; }
.cl-header-nav { display:flex; gap:2rem; align-items:center; }
.cl-header-nav a {
  color:var(--gray); text-decoration:none; font-size:0.75rem;
  letter-spacing:2px; text-transform:uppercase; transition:color 0.3s;
}
.cl-header-nav a:hover { color:var(--gold); }
.cl-header-cta {
  background:transparent; border:1px solid var(--gold);
  color:var(--gold); padding:0.5rem 1.5rem;
  font-family:var(--font-body); font-size:0.72rem; letter-spacing:2px;
  text-transform:uppercase; text-decoration:none; transition:all 0.3s;
}
.cl-header-cta:hover { background:var(--gold); color:var(--navy-deep); }

/* HERO */
.cl-hero {
  min-height: 92vh;
  display: flex; align-items: center;
  padding: 5rem 4rem;
  background: linear-gradient(135deg, var(--navy-deep) 0%, var(--navy) 60%, #0F2340 100%);
  position: relative; overflow: hidden;
}
.cl-hero-ocean {
  position:absolute; bottom:0; left:0; right:0; height:35%;
  background: linear-gradient(to top, #0A1628, transparent);
  pointer-events:none;
}
.cl-hero-line {
  position:absolute; bottom:34%; left:0; right:0;
  height:1px; background: linear-gradient(90deg, transparent, rgba(201,168,76,0.5), transparent);
  pointer-events:none;
}
.cl-hero-logo {
  position:absolute; right:4rem; top:50%; transform:translateY(-50%);
  opacity:0.06;
}
.cl-hero-logo svg { width:500px; height:500px; }
.cl-eyebrow {
  font-size:0.7rem; letter-spacing:5px; text-transform:uppercase;
  color:var(--gold); margin-bottom:1.5rem;
  display:flex; align-items:center; gap:1rem;
}
.cl-eyebrow::before { content:''; display:block; width:40px; height:1px; background:var(--gold); }
.cl-hero-title {
  font-family:var(--font-display);
  font-size: clamp(3rem, 7vw, 6rem);
  font-weight:300; line-height:1.05; margin-bottom:1.5rem;
}
.cl-hero-title em { color:var(--gold); font-style:normal; }
.cl-hero-sub {
  font-size:1rem; color:var(--gray);
  line-height:1.8; max-width:520px; margin-bottom:3rem;
}
.cl-actions { display:flex; gap:1.5rem; flex-wrap:wrap; }
.cl-btn {
  padding:0.9rem 2.5rem; font-family:var(--font-body);
  font-size:0.8rem; letter-spacing:2px; text-transform:uppercase;
  cursor:pointer; transition:all 0.3s; text-decoration:none;
  display:inline-block; font-weight:500;
}
.cl-btn-gold { background:var(--gold); color:var(--navy-deep); border:none; }
.cl-btn-gold:hover { background:var(--gold-light); transform:translateY(-2px); }
.cl-btn-ghost { background:transparent; color:var(--white); border:1px solid rgba(255,255,255,0.2); }
.cl-btn-ghost:hover { border-color:var(--gold); color:var(--gold); }

/* SECTION */
.cl-section { padding:6rem 4rem; }
.cl-bg-navy { background:var(--navy); }
.cl-bg-deep { background:var(--navy-deep); }
.cl-section-header { text-align:center; margin-bottom:4rem; }
.cl-label { font-size:0.7rem; letter-spacing:5px; text-transform:uppercase; color:var(--gold); margin-bottom:1rem; }
.cl-title { font-family:var(--font-display); font-size:clamp(2rem,4vw,3.5rem); font-weight:300; line-height:1.1; }
.cl-divider { width:60px; height:1px; background:var(--gold); margin:1.5rem 0; }
.cl-divider.c { margin:1.5rem auto; }

/* PILIERS */
.cl-pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
.cl-pillar {
  padding:3rem 2.5rem; background:var(--navy-deep);
  border-bottom:2px solid transparent; transition:all 0.4s;
}
.cl-pillar:hover { background:#142035; border-bottom-color:var(--gold); }
.cl-pillar-icon { font-size:2rem; margin-bottom:1.5rem; display:block; }
.cl-pillar-title { font-family:var(--font-display); font-size:1.6rem; font-weight:600; margin-bottom:1rem; }
.cl-pillar-text { font-size:0.9rem; color:var(--gray); line-height:1.8; }

/* VIDÉO */
.cl-video-wrap { max-width:900px; margin:0 auto; }
.cl-video-tag {
  display:inline-block; background:var(--gold); color:var(--navy-deep);
  padding:0.3rem 1rem; font-size:0.7rem; letter-spacing:3px;
  text-transform:uppercase; font-weight:500; margin-bottom:1rem;
}
.cl-video-title { font-family:var(--font-display); font-size:1.8rem; font-weight:600; margin-bottom:1.5rem; }
.cl-video-embed { width:100%; aspect-ratio:16/9; border:1px solid rgba(201,168,76,0.2); }

/* NEWSLETTER */
.cl-newsletter { text-align:center; }
.cl-nl-title { font-family:var(--font-display); font-size:clamp(2rem,4vw,3rem); font-weight:300; margin-bottom:1rem; }
.cl-nl-sub { color:var(--gray); margin-bottom:2.5rem; line-height:1.8; }
.cl-nl-form { display:flex; max-width:500px; margin:0 auto; }
.cl-nl-form input {
  flex:1; padding:1rem 1.5rem;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(201,168,76,0.3); border-right:none;
  color:var(--white); font-family:var(--font-body); font-size:0.9rem; outline:none;
}
.cl-nl-form input::placeholder { color:var(--gray); }
.cl-nl-form button {
  background:var(--gold); color:var(--navy-deep); border:none;
  padding:1rem 2rem; font-family:var(--font-body);
  font-size:0.75rem; font-weight:500; letter-spacing:2px;
  text-transform:uppercase; cursor:pointer; white-space:nowrap;
}
.cl-nl-form button:hover { background:var(--gold-light); }

/* BONS PLANS */
.cl-plans { display:grid; grid-template-columns:repeat(2,1fr); gap:2px; margin-top:3rem; }
.cl-plan {
  padding:2.5rem; background:var(--navy-deep);
  border-left:2px solid transparent; transition:all 0.3s;
}
.cl-plan:hover { border-left-color:var(--gold); background:#142035; }
.cl-plan-name { font-family:var(--font-display); font-size:1.5rem; font-weight:600; margin-bottom:0.5rem; }
.cl-plan-desc { color:var(--gray); font-size:0.9rem; line-height:1.7; margin-bottom:1.5rem; }
.cl-plan-link { color:var(--gold); text-decoration:none; font-size:0.75rem; letter-spacing:2px; text-transform:uppercase; }
.cl-plan-link:hover { color:var(--gold-light); }
.cl-plan-note {
  max-width:700px; margin:2.5rem auto 0; text-align:center;
  font-size:0.8rem; color:var(--gray); line-height:1.7;
  padding:1.5rem; border:1px solid rgba(201,168,76,0.1);
}

/* FAQ */
.cl-faq { max-width:900px; margin:0 auto; display:grid; gap:1px; }
.cl-faq-item { background:var(--navy); padding:2rem; text-align:left; }
.cl-faq-item h3 { font-family:var(--font-display); font-size:1.45rem; font-weight:600; margin-bottom:0.75rem; }
.cl-faq-item p { color:var(--gray); font-size:0.92rem; line-height:1.8; }

/* CONTACT */
.cl-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:5rem; }
.cl-contact-info h2 { font-family:var(--font-display); font-size:clamp(2rem,4vw,3.5rem); font-weight:300; margin-bottom:2rem; }
.cl-cblock { margin-bottom:2rem; }
.cl-cblock h3 { font-size:0.7rem; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:0.6rem; }
.cl-cblock p { color:var(--gray); line-height:1.8; font-size:0.9rem; }
.cl-cblock a { color:var(--gold); text-decoration:none; }
.cl-form { display:flex; flex-direction:column; gap:1rem; }
.cl-fg { display:flex; flex-direction:column; gap:0.4rem; }
.cl-fg label { font-size:0.7rem; letter-spacing:3px; text-transform:uppercase; color:var(--gray); }
.cl-fg input, .cl-fg textarea, .cl-fg select {
  background:rgba(255,255,255,0.04); border:1px solid rgba(201,168,76,0.2);
  color:var(--white); padding:0.9rem 1.2rem;
  font-family:var(--font-body); font-size:0.9rem; outline:none; transition:border-color 0.3s;
}
.cl-fg input:focus, .cl-fg textarea:focus { border-color:var(--gold); }
.cl-fg select option { background:var(--navy); }
.cl-fg textarea { resize:vertical; min-height:130px; }

/* FOOTER */
.cl-footer {
  padding:2.5rem 4rem;
  background:var(--navy-deep);
  border-top:1px solid rgba(201,168,76,0.15);
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1.5rem;
}
.cl-footer-logo { display:flex; align-items:center; gap:1rem; text-decoration:none; }
.cl-footer-logo svg { width:40px; height:40px; border-radius:6px; }
.cl-footer-logo-text .name { font-family:var(--font-display); font-size:1rem; color:var(--white); }
.cl-footer-logo-text .sub { font-size:0.65rem; color:var(--gold); letter-spacing:4px; }
.cl-footer-links { display:flex; gap:2rem; flex-wrap:wrap; }
.cl-footer-links a { color:var(--gray); text-decoration:none; font-size:0.75rem; letter-spacing:1px; transition:color 0.3s; }
.cl-footer-links a:hover { color:var(--gold); }
.cl-footer-copy { font-size:0.75rem; color:var(--gray); }

/* RESPONSIVE */
@media(max-width:900px){
  .cl-header { padding:1rem 1.5rem; }
  .cl-header-nav { display:none; }
  .cl-section { padding:4rem 1.5rem; }
  .cl-hero { padding:4rem 1.5rem; min-height:auto; }
  .cl-hero-logo { display:none; }
  .cl-pillars, .cl-plans, .cl-contact-grid { grid-template-columns:1fr; }
  .cl-faq-item { padding:1.5rem; }
  .cl-footer { flex-direction:column; text-align:center; padding:2rem 1.5rem; }
  .cl-nl-form { flex-direction:column; gap:0.75rem; }
  .cl-nl-form input { border-right:1px solid rgba(201,168,76,0.3); }
  .cl-header-logo-text .name { font-size:1.25rem; }
}
.cl-status { min-height:1.4rem; margin-top:0.75rem; color:var(--gold-light); font-size:0.85rem; line-height:1.5; }

/* LITE VIDEO */
.cl-video-lite {
  width:100%;
  aspect-ratio:16/9;
  border:1px solid rgba(201,168,76,0.2);
  background:#0A1628;
  position:relative;
  display:block;
  overflow:hidden;
  padding:0;
  cursor:pointer;
}
.cl-video-lite img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  opacity:0.72;
}
.cl-video-lite::after {
  content:'▶';
  position:absolute;
  inset:50% auto auto 50%;
  transform:translate(-50%,-50%);
  width:72px;
  height:72px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--gold);
  color:var(--navy-deep);
  font-size:1.6rem;
  padding-left:4px;
  box-shadow:0 12px 30px rgba(0,0,0,0.35);
}
.cl-video-lite:hover::after { background:var(--gold-light); }
.cl-hp { position:absolute; left:-9999px; opacity:0; }
.cl-status.error { color:#ffb8a8; }
.cl-status.success { color:var(--gold-light); }
.cl-form button[disabled],
.cl-nl-form button[disabled] { opacity:0.65; cursor:wait; }
