/*
Theme Name: MyLoc Collection
Theme URI: https://myloccollection.com
Author: MyLoc Travel
Description: Thème signature ultra-luxe pour MyLoc Collection — L'art du séjour d'exception. Palette bleu nuit & champagne.
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: myloc-collection
*/


  :root{
    --navy-900:#070f1f;
    --navy-800:#0a162b;
    --navy-700:#0e1f3c;
    --navy-600:#13294d;
    --champagne:#d8bd8a;
    --champagne-light:#ecd9ad;
    --champagne-deep:#bd9f68;
    --cream:#f6f1e7;
    --cream-dim:#cfc7b6;
    --line:rgba(216,189,138,.22);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    background:var(--navy-900);
    color:var(--cream);
    font-family:'Jost',sans-serif;
    font-weight:300;
    line-height:1.7;
    letter-spacing:.3px;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{font-family:'Cormorant Garamond',serif;font-weight:400;letter-spacing:.5px;line-height:1.15}
  a{color:inherit;text-decoration:none}
  .eyebrow{
    font-family:'Jost',sans-serif;font-weight:400;
    text-transform:uppercase;letter-spacing:5px;font-size:.7rem;
    color:var(--champagne);margin-bottom:1.2rem;display:inline-block;
  }
  .wrap{max-width:1200px;margin:0 auto;padding:0 32px}
  .gold{color:var(--champagne)}
  .divider{width:70px;height:1px;background:linear-gradient(90deg,transparent,var(--champagne),transparent);margin:1.4rem auto}
  .divider.left{margin:1.4rem 0}

  /* ---------- NAV ---------- */
  header{
    position:fixed;top:0;left:0;right:0;z-index:100;
    padding:22px 0;transition:all .4s ease;
    background:rgba(7,15,31,0);
  }
  header.scrolled{background:rgba(7,15,31,.92);padding:14px 0;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between}
  .nav-logo{height:44px}
  .nav-links{display:flex;gap:34px;align-items:center}
  .nav-links a{font-size:.78rem;text-transform:uppercase;letter-spacing:2px;color:var(--cream-dim);transition:color .3s;position:relative}
  .nav-links a:hover{color:var(--champagne)}
  .nav-cta{
    border:1px solid var(--champagne);padding:10px 22px;border-radius:2px;
    color:var(--champagne)!important;letter-spacing:2px;transition:all .35s;
  }
  .nav-cta:hover{background:var(--champagne);color:var(--navy-900)!important}
  .burger{display:none;flex-direction:column;gap:5px;cursor:pointer}
  .burger span{width:26px;height:1.5px;background:var(--champagne)}

  /* ---------- HERO ---------- */
  .hero{
    min-height:100vh;display:flex;align-items:center;justify-content:center;
    text-align:center;position:relative;
    background:
      radial-gradient(ellipse at 50% 20%,rgba(19,41,77,.55),transparent 60%),
      linear-gradient(180deg,var(--navy-800),var(--navy-900));
    overflow:hidden;
  }
  .hero::before{
    content:"";position:absolute;inset:0;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M0 0h60v60H0z' fill='none'/%3E%3Cpath d='M30 0v60M0 30h60' stroke='%23d8bd8a' stroke-opacity='.03' stroke-width='1'/%3E%3C/svg%3E");
    opacity:.6;
  }
  .hero-inner{position:relative;z-index:2;max-width:880px;padding:0 24px;animation:rise 1.4s ease both}
  .hero-logo{width:min(560px,82vw);margin:0 auto 1.6rem}
  .hero h1{font-size:clamp(2.4rem,6vw,4.6rem);font-weight:300;letter-spacing:1px}
  .hero h1 em{font-style:italic;color:var(--champagne)}
  .hero p.sub{font-size:clamp(1rem,1.6vw,1.25rem);color:var(--cream-dim);max-width:620px;margin:1.6rem auto 0;font-weight:200}
  .hero-actions{margin-top:2.6rem;display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
  .btn{
    display:inline-block;padding:15px 38px;font-size:.78rem;text-transform:uppercase;
    letter-spacing:3px;border-radius:2px;transition:all .4s;cursor:pointer;border:1px solid var(--champagne);
  }
  .btn-solid{background:var(--champagne);color:var(--navy-900)}
  .btn-solid:hover{background:var(--champagne-light);transform:translateY(-2px)}
  .btn-ghost{color:var(--champagne);background:transparent}
  .btn-ghost:hover{background:rgba(216,189,138,.1)}
  .scroll-hint{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:2;color:var(--champagne);font-size:.65rem;letter-spacing:3px;text-transform:uppercase;opacity:.7}
  .scroll-hint span{display:block;width:1px;height:46px;background:linear-gradient(var(--champagne),transparent);margin:10px auto 0}

  /* ---------- SECTION BASE ---------- */
  section{padding:110px 0;position:relative}
  .section-head{text-align:center;max-width:720px;margin:0 auto 64px}
  .section-head h2{font-size:clamp(2rem,4vw,3.2rem)}
  .section-head p{color:var(--cream-dim);margin-top:1rem;font-weight:200}
  .alt{background:var(--navy-800)}

  /* ---------- EXPERIENCE ---------- */
  .exp{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
  .exp-text h2{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:1.6rem}
  .exp-text p{color:var(--cream-dim);margin-bottom:1.2rem;font-weight:200}
  .exp-visual{
    aspect-ratio:4/5;border:1px solid var(--line);position:relative;
    background:linear-gradient(135deg,var(--navy-700),var(--navy-900));
    display:flex;align-items:center;justify-content:center;overflow:hidden;
  }
  .exp-visual::after{content:"";position:absolute;inset:14px;border:1px solid var(--line)}
  .exp-visual .ph-label{text-align:center;font-family:'Cormorant Garamond',serif;font-size:1.7rem;color:var(--champagne);opacity:.7;line-height:1.5;z-index:1}
  .exp-visual .ph-label small{font-family:'Jost',sans-serif;font-size:.62rem;letter-spacing:2px;text-transform:uppercase;color:var(--cream-dim);opacity:.7}
  .exp-stats{display:flex;gap:40px;margin-top:2.4rem}
  .exp-stats div span{display:block;font-family:'Cormorant Garamond',serif;font-size:2.6rem;color:var(--champagne)}
  .exp-stats div small{font-size:.72rem;letter-spacing:2px;text-transform:uppercase;color:var(--cream-dim)}

  /* ---------- 6 BLOCKS ---------- */
  .blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
  .block{background:var(--navy-900);padding:48px 38px;transition:background .4s}
  .block:hover{background:var(--navy-700)}
  .block .num{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:var(--champagne);opacity:.7}
  .block h3{font-size:1.7rem;margin:.6rem 0 1rem}
  .block p{color:var(--cream-dim);font-size:.92rem;font-weight:200}

  /* ---------- SERVICE LISTS ---------- */
  .services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:54px}
  .svc{border-top:1px solid var(--line);padding-top:28px}
  .svc h3{font-size:1.9rem;margin-bottom:.4rem}
  .svc .lead{color:var(--cream-dim);font-size:.9rem;font-weight:200;margin-bottom:1.4rem}
  .svc ul{list-style:none;columns:2;column-gap:30px}
  .svc ul li{font-size:.9rem;color:var(--cream);padding:6px 0 6px 18px;position:relative;break-inside:avoid;font-weight:200}
  .svc ul li::before{content:"";position:absolute;left:0;top:14px;width:6px;height:6px;background:var(--champagne);transform:rotate(45deg)}

  /* ---------- PACKS ---------- */
  .packs{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
  .pack{border:1px solid var(--line);padding:38px 30px;transition:all .4s;position:relative;background:var(--navy-900)}
  .pack:hover{transform:translateY(-6px);border-color:var(--champagne)}
  .pack.feature{background:linear-gradient(160deg,var(--navy-700),var(--navy-900));border-color:var(--champagne)}
  .pack .tag{font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:var(--champagne)}
  .pack h3{font-size:1.8rem;margin:.4rem 0 1.2rem}
  .pack ul{list-style:none}
  .pack ul li{font-size:.86rem;color:var(--cream-dim);padding:7px 0 7px 20px;position:relative;font-weight:200;border-bottom:1px solid rgba(216,189,138,.07)}
  .pack ul li::before{content:"✦";position:absolute;left:0;color:var(--champagne);font-size:.7rem;top:9px}
  .pack-badge{position:absolute;top:-12px;right:24px;background:var(--champagne);color:var(--navy-900);font-size:.6rem;letter-spacing:2px;padding:5px 14px;text-transform:uppercase}
  .pack-quote{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
  .pack-quote b{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:1.35rem;color:var(--champagne)}
  .pack-quote a{font-size:.66rem;letter-spacing:2px;text-transform:uppercase;color:var(--champagne);border:1px solid var(--champagne);padding:8px 14px;border-radius:2px;transition:all .35s}
  .pack-quote a:hover{background:var(--champagne);color:var(--navy-900)}

  /* ---------- EVENTS NOTE ---------- */
  .note{
    border:1px solid var(--line);padding:30px 36px;margin-top:40px;
    background:rgba(216,189,138,.04);display:flex;gap:20px;align-items:flex-start;
  }
  .note .mark{font-family:'Cormorant Garamond',serif;font-size:2.6rem;color:var(--champagne);line-height:1}
  .note p{color:var(--cream-dim);font-weight:200;font-size:.92rem}

  /* ---------- CONTACT ---------- */
  .contact{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .contact form{display:grid;gap:18px}
  .contact input,.contact textarea,.contact select{
    background:transparent;border:none;border-bottom:1px solid var(--line);
    padding:14px 2px;color:var(--cream);font-family:'Jost',sans-serif;font-weight:300;font-size:.95rem;
  }
  .contact input:focus,.contact textarea:focus,.contact select:focus{outline:none;border-color:var(--champagne)}
  .contact select option{background:var(--navy-800)}
  .contact ::placeholder{color:var(--cream-dim);opacity:.7}

  /* ---------- FOOTER ---------- */
  footer{background:var(--navy-900);border-top:1px solid var(--line);padding:70px 0 36px}
  .foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:40px}
  .foot-logo{width:240px;margin-bottom:18px}
  .foot p{color:var(--cream-dim);font-size:.86rem;font-weight:200;max-width:300px}
  .foot-col h4{font-size:1.3rem;margin-bottom:14px;color:var(--champagne)}
  .foot-col a{display:block;color:var(--cream-dim);font-size:.86rem;padding:5px 0;font-weight:200;transition:color .3s}
  .foot-col a:hover{color:var(--champagne)}
  .foot-bottom{text-align:center;margin-top:54px;padding-top:26px;border-top:1px solid var(--line);color:var(--cream-dim);font-size:.74rem;letter-spacing:1px}
  .brand-line{color:var(--champagne);font-size:.7rem;letter-spacing:3px;text-transform:uppercase}

  /* ---------- COLLECTION (Airbnb Luxe style) ---------- */
  .estates{display:grid;grid-template-columns:repeat(2,1fr);gap:34px}
  .estate{background:var(--navy-900);border:1px solid var(--line);overflow:hidden;transition:all .45s;cursor:pointer}
  .estate:hover{transform:translateY(-7px);border-color:var(--champagne)}
  .estate-img{aspect-ratio:16/10;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:18px}
  .estate-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,15,31,.1),rgba(7,15,31,.75));z-index:1}
  .e1{background:linear-gradient(135deg,#13294d,#0a162b 70%)}
  .e2{background:linear-gradient(135deg,#1a2f44,#0a162b 70%)}
  .e3{background:linear-gradient(135deg,#10243a,#0a162b 70%)}
  .e4{background:linear-gradient(135deg,#1c2c40,#0a162b 70%)}
  .e5{background:linear-gradient(135deg,#142840,#0a162b 70%)}
  .e6{background:linear-gradient(135deg,#172a45,#0a162b 70%)}
  .estate-badge{position:relative;z-index:2;font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:var(--navy-900);background:var(--champagne);padding:5px 12px}
  .estate-fav{position:absolute;top:16px;right:18px;z-index:2;color:var(--champagne);font-size:1.1rem;opacity:.85}
  .estate-body{padding:24px 26px 28px}
  .estate-loc{font-size:.66rem;letter-spacing:3px;text-transform:uppercase;color:var(--champagne)}
  .estate-body h3{font-size:1.6rem;margin:.35rem 0 .8rem}
  .estate-meta{display:flex;gap:16px;color:var(--cream-dim);font-size:.78rem;font-weight:200;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-bottom:14px}
  .estate-meta span{display:flex;align-items:center;gap:6px}
  .estate-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
  .estate-tags em{font-style:normal;font-size:.66rem;letter-spacing:1px;color:var(--cream-dim);border:1px solid var(--line);padding:4px 10px;border-radius:2px}
  .estate-price{display:flex;justify-content:space-between;align-items:baseline}
  .estate-price b{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:1.5rem;color:var(--champagne)}
  .estate-price b small{font-size:.62rem;font-family:'Jost',sans-serif;color:var(--cream-dim);letter-spacing:1px;font-weight:300}
  .estate-price .view{font-size:.66rem;letter-spacing:2px;text-transform:uppercase;color:var(--champagne)}
  .collection-foot{text-align:center;margin-top:54px}
  /* selection criteria strip */
  .criteria{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:64px}
  .criteria div{background:var(--navy-900);padding:30px 22px;text-align:center}
  .criteria div span{display:block;font-family:'Cormorant Garamond',serif;font-size:2.4rem;color:var(--champagne);line-height:1}
  .criteria div small{font-size:.66rem;letter-spacing:2px;text-transform:uppercase;color:var(--cream-dim);margin-top:8px;display:block}

  /* ---------- ANIM ---------- */
  @keyframes rise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
  .reveal{opacity:0;transform:translateY(40px);transition:all 1s ease}
  .reveal.in{opacity:1;transform:translateY(0)}

  /* ---------- RESPONSIVE ---------- */
  @media(max-width:900px){
    .nav-links{display:none}
    .burger{display:flex}
    .exp,.contact{grid-template-columns:1fr;gap:40px}
    .blocks,.packs,.estates{grid-template-columns:1fr}
    .criteria{grid-template-columns:repeat(2,1fr)}
    .services-grid{grid-template-columns:1fr;gap:40px}
    .svc ul{columns:1}
    section{padding:80px 0}
  }


/* ===== Ajouts sept. 2026 : destinations, dropdown, menu mobile ===== */
.nav-dd{position:relative}
.nav-dd-menu{display:none;position:absolute;top:100%;left:-18px;padding:14px 0;min-width:190px;background:rgba(10,18,38,.97);border:1px solid rgba(216,189,138,.25);backdrop-filter:blur(8px)}
.nav-dd-menu a{display:block;padding:9px 22px;white-space:nowrap}
.nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{display:block}
.dest-links{margin-top:14px;font-family:'Jost',sans-serif;font-size:.74rem;text-transform:uppercase;letter-spacing:2px;color:var(--cream-dim)}
.dest-links a{color:var(--champagne);border-bottom:1px solid rgba(216,189,138,.35);transition:border-color .3s}
.dest-links a:hover{border-color:var(--champagne)}
@media(max-width:900px){
  .nav-links.open{display:flex;flex-direction:column;align-items:flex-start;gap:18px;position:absolute;top:100%;left:0;right:0;padding:28px 6vw 34px;background:rgba(10,18,38,.98);border-bottom:1px solid rgba(216,189,138,.25)}
  .nav-links.open .nav-dd-menu{display:block;position:static;background:none;border:0;padding:8px 0 0 16px;min-width:0}
  .nav-links.open .nav-dd-menu a{padding:6px 0;font-size:.72rem;color:var(--cream-dim)}
  .nav-links.open .nav-cta{margin-top:6px}
  .dest-links{line-height:2}
}


/* ===== Ajouts sept. 2026 (2) : nav alignée, pages internes ===== */
.nav-links .nav-dd{display:flex;align-items:center;height:21px}
.nav-links .nav-dd > a{line-height:21px}
main.mlc-page-main{display:flow-root;--ink:#14110f;--gold:#b08d57;--cream:#f7f3ec;--muted:#6b6256}
body.page footer{margin-top:0}
main.mlc-page-main .mc-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}
main.mlc-page-main .mc-cta .mc-btn{margin:0}


/* ===== Ajouts sept. 2026 (3) : hero avec photo, hauteur réduite ===== */
.hero{min-height:86vh}
.hero::before{background:url('https://assets.guesty.com/image/upload/f_auto,q_auto,w_1920/v1748723737/production/67f939f356bac59fb2d49eea/i7k9m7jjnczluzhndbtk.jpg') center 40%/cover no-repeat;opacity:.5}
.hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(7,15,31,.62) 0%,rgba(7,15,31,.45) 45%,var(--navy-900) 100%)}
.hero .scroll-hint{z-index:2}
@media(max-width:900px){.hero{min-height:78vh}}


/* ===== Ajouts sept. 2026 (4) : étoiles de classement ===== */
.estate-stars{display:flex;align-items:center;gap:8px;margin:6px 0 2px;font-family:'Jost',sans-serif;font-size:.7rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--cream-dim)}
.estate-stars b{color:var(--champagne);font-size:.9rem;letter-spacing:3px;font-weight:400}

/* Ajouts sept. 2026 (5) — liens groupe dans le footer */
.foot-group{display:inline-block;margin-top:8px;font-size:.8rem;opacity:.75}
.foot-group a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25)}
.foot-group a:hover{opacity:1;border-color:currentColor}
