/* Alias tokens --sr-* pour les composants partagés (direction C) */
:root{
  --sr-bg:#E4E1D8; --sr-surface:#F2F0E9; --sr-surface2:#D6D2C6;
  --sr-ink:#1A1A1A; --sr-muted:#6B6B63; --sr-line:#1A1A1A;
  --sr-accent:#FF5A1F; --sr-accent2:#2B2F36; --sr-on-accent:#FFFFFF;
  --sr-radius:2px; --sr-bw:2px; --sr-shadow:none;
  --sr-fdisp:"Archivo",sans-serif;
}

:root{
    --concrete:#E4E1D8; --concrete2:#D6D2C6; --panel:#F2F0E9; --ink:#1A1A1A;
    --orange:#FF5A1F; --orange-dk:#E0440D;
    --steel:#2B2F36; --mut:#6B6B63; --line:#C9C4B6;
    --f-disp:"Archivo", system-ui, sans-serif;
    --f-mono:"Space Mono", monospace;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;background:var(--concrete);color:var(--ink);font-family:var(--f-disp);font-size:16px;line-height:1.55;font-weight:600;-webkit-font-smoothing:antialiased;}
  h1,h2,h3{font-family:var(--f-disp);margin:0;line-height:.92;text-transform:uppercase;font-weight:900;letter-spacing:-0.02em;}
  p{margin:0;} a{color:inherit;text-decoration:none;} img{display:block;max-width:100%;}
  .wrap{max-width:1280px;margin:0 auto;padding:0 28px;}
  .mono{font-family:var(--f-mono);}

  .btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-mono);font-weight:700;font-size:13px;letter-spacing:.02em;text-transform:uppercase;border:2px solid var(--ink);cursor:pointer;padding:15px 24px;border-radius:2px;transition:background .15s ease, color .15s ease;}
  .btn--orange{background:var(--orange);color:#fff;border-color:var(--orange);}
  .btn--orange:hover{background:var(--orange-dk);border-color:var(--orange-dk);}
  .btn--ink{background:var(--ink);color:var(--concrete);}
  .btn--ink:hover{background:var(--steel);}
  .btn--out{background:transparent;color:var(--ink);}
  .btn--out:hover{background:var(--ink);color:var(--concrete);}
  .btn--sm{padding:10px 15px;font-size:12px;}

  .lbl{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--orange-dk);}
  .chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--f-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;padding:6px 11px;border:1.5px solid var(--ink);border-radius:2px;background:transparent;}
  .chip--orange{background:var(--orange);color:#fff;border-color:var(--orange);}
  .chip--steel{background:var(--steel);color:#fff;border-color:var(--steel);}

  /* bar */
  .bar{position:sticky;top:0;z-index:60;background:var(--concrete);border-bottom:2px solid var(--ink);position:relative;}
  .bar__in{display:flex;align-items:center;justify-content:space-between;height:70px;}
  .logo{font-family:var(--f-disp);font-weight:900;font-size:24px;letter-spacing:-.02em;display:flex;align-items:center;gap:9px;text-transform:uppercase;}
  .logo .sq{width:26px;height:26px;background:var(--orange);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-family:var(--f-mono);font-size:13px;border-radius:2px;}
  .nav{display:flex;gap:26px;}
  .nav a{font-family:var(--f-mono);font-size:13px;text-transform:uppercase;letter-spacing:.03em;color:var(--mut);}
  .nav a:hover{color:var(--ink);}
  .barcta{display:flex;align-items:center;gap:14px;}
  .cartpill{font-family:var(--f-mono);font-size:13px;border:2px solid var(--ink);padding:8px 12px;border-radius:2px;}

  /* hero */
  .hero{border-bottom:2px solid var(--ink);position:relative;background:
    repeating-linear-gradient(45deg, transparent, transparent 22px, rgba(0,0,0,.018) 22px, rgba(0,0,0,.018) 24px), var(--concrete);}
  .hero__in{display:grid;grid-template-columns:1.1fr .9fr;gap:0;align-items:stretch;}
  .hero__txt{padding:72px 48px 72px 0;border-right:2px solid var(--ink);}
  .hero__meta{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:24px;}
  .hero h1{font-size:clamp(54px,8vw,118px);}
  .hero h1 .o{color:var(--orange);}
  .hero p.lead{font-size:18px;color:var(--mut);font-weight:600;max-width:480px;margin:24px 0 32px;}
  .hero__cta{display:flex;gap:12px;flex-wrap:wrap;}
  .hero__art{position:relative;overflow:hidden;background:var(--concrete2);min-height:420px;}
  .hero__art img{width:100%;height:100%;object-fit:cover;min-height:420px;position:absolute;top:0;left:0;}
  .stamp{position:absolute;top:20px;right:20px;background:var(--orange);color:#fff;font-family:var(--f-mono);font-weight:700;font-size:13px;text-transform:uppercase;padding:10px 14px;border-radius:2px;transform:rotate(3deg);}
  .tapebar{position:absolute;bottom:0;left:0;right:0;background:var(--ink);color:var(--concrete);font-family:var(--f-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;padding:10px 16px;display:flex;justify-content:space-between;}

  .marq{background:var(--ink);color:var(--concrete);overflow:hidden;border-bottom:2px solid var(--ink);}
  .marq__in{display:flex;white-space:nowrap;animation:ticker-scroll 24s linear infinite;padding:11px 0;font-family:var(--f-mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;}
  .marq__in span{display:inline-block;flex-shrink:0;}
  .marq__in b{color:var(--orange);}
  @keyframes ticker-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

  .section{padding:80px 0;}
  .shead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px;flex-wrap:wrap;}
  .shead h2{font-size:clamp(34px,4.4vw,60px);}
  .shead h2 em{font-style:normal;color:var(--orange);}

  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:2px solid var(--ink);}
  .card{border-right:2px solid var(--ink);display:flex;flex-direction:column;background:var(--panel);transition:background .2s ease;}
  .card:last-child{border-right:0;}
  .card:hover{background:#fff;}
  .card__img{position:relative;aspect-ratio:4/3;overflow:hidden;border-bottom:2px solid var(--ink);}
  .card__img img{width:100%;height:100%;object-fit:cover;}
  .card__img .flag{position:absolute;top:10px;left:10px;}
  .card__num{position:absolute;bottom:10px;right:12px;font-family:var(--f-mono);font-size:12px;color:#fff;background:var(--ink);padding:4px 8px;border-radius:2px;}
  .card__b{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1;}
  .card__b h3{font-size:23px;}
  .card__b p{color:var(--mut);font-size:13.5px;font-weight:600;flex:1;}
  .card__row{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:14px;border-top:1.5px dashed var(--line);}
  .price{font-family:var(--f-disp);font-weight:900;font-size:25px;}
  .price small{font-family:var(--f-mono);font-size:12px;color:var(--mut);font-weight:400;}

  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:2px solid var(--ink);}
  .step{padding:30px 26px;border-right:2px solid var(--ink);background:var(--panel);}
  .step:last-child{border-right:0;}
  .step .n{font-family:var(--f-mono);font-size:13px;color:var(--orange-dk);}
  .step h3{font-size:23px;margin:10px 0 8px;}
  .step p{color:var(--mut);font-size:14px;font-weight:600;}

  .locs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
  .loc{border:2px solid var(--ink);padding:24px;background:var(--panel);}
  .loc h3{font-size:20px;}
  .loc .open{display:inline-flex;align-items:center;gap:7px;font-family:var(--f-mono);font-size:12px;text-transform:uppercase;color:var(--orange-dk);margin-top:10px;}
  .loc .open .d{width:8px;height:8px;background:var(--orange);border-radius:50%;}
  .loc p{color:var(--mut);font-size:13.5px;font-weight:600;margin-top:12px;font-family:var(--f-mono);line-height:1.7;}

  .cta-strip{background:var(--ink);color:var(--concrete);padding:52px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;border:2px solid var(--ink);}
  .cta-strip h2{font-size:clamp(32px,4.2vw,56px);color:var(--concrete);}
  .cta-strip h2 em{font-style:normal;color:var(--orange);}

  footer{border-top:2px solid var(--ink);padding:54px 0 30px;margin-top:18px;}
  .foot{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;}
  footer h4{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--orange-dk);margin:0 0 16px;}
  footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px;}
  footer li a{color:var(--mut);font-size:14px;}
  footer li a:hover{color:var(--ink);}
  .foot__bottom{display:flex;justify-content:space-between;margin-top:42px;padding-top:22px;border-top:2px solid var(--line);color:var(--mut);font-family:var(--f-mono);font-size:12px;flex-wrap:wrap;gap:10px;}


/* ═══════════════════════════════════════════
     MOBILE NAV — Direction C : Brut Urbain
     Dropdown terminal sous la barre, grille mono
     ═══════════════════════════════════════════ */

  /* Burger */
  .sr-menu-toggle{
    display:none;
    flex-direction:column;justify-content:center;align-items:center;gap:5px;
    width:42px;height:42px;
    cursor:pointer;
    background:transparent;
    border:2px solid var(--ink);
    border-radius:2px;
    transition:background .15s, border-color .15s;
  }
  .sr-menu-toggle:active{background:var(--ink);}
  .sr-menu-toggle:active span{background:var(--concrete);}
  .sr-menu-toggle.open{background:var(--orange);border-color:var(--orange);}
  .sr-menu-toggle.open span{background:#fff;}
  /* Barres */
  .sr-menu-toggle span{
    display:block;width:18px;height:2px;
    background:var(--ink);
    transition:transform .25s cubic-bezier(.23,1,.32,1), opacity .15s ease,
               background .15s ease;
    transform-origin:center;
  }
  .sr-menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .sr-menu-toggle.open span:nth-child(2){opacity:0;}
  .sr-menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  /* La .bar doit être relative pour le dropdown absolu */

  /* Dropdown */
  .sr-nav-drop{
    position:absolute;top:100%;left:0;right:0;z-index:70;
    background:var(--concrete);
    border-top:3px solid var(--orange);
    border-bottom:2px solid var(--ink);
    padding:0 0;
    max-height:0;overflow:hidden;
    transition:max-height .35s cubic-bezier(.23,1,.32,1),
               padding .35s ease,
               opacity .25s ease;
    opacity:0;
    pointer-events:none;
  }
  .sr-nav-drop.open{
    max-height:500px;
    padding:24px 0;
    opacity:1;
    pointer-events:auto;
  }
  .sr-nav-drop__inner{
    max-width:1200px;margin:0 auto;padding:0 24px;
    display:grid;grid-template-columns:1fr 1fr;gap:2px;
  }
  /* Liens — apparition décalée */
  .sr-nav-drop a{
    font-family:var(--f-mono);font-size:13px;text-transform:uppercase;
    letter-spacing:.05em;color:var(--mut);
    padding:14px 16px;
    border:1.5px solid transparent;border-radius:2px;
    display:flex;align-items:center;gap:10px;
    transition:all .1s;
    opacity:0;transform:translateY(8px);
    transition:color .1s,background .1s,border-color .1s,
               opacity .3s ease, transform .3s cubic-bezier(.23,1,.32,1);
  }
  .sr-nav-drop.open a{opacity:1;transform:translateY(0);}
  .sr-nav-drop.open a:nth-child(1){transition-delay:.04s;}
  .sr-nav-drop.open a:nth-child(2){transition-delay:.08s;}
  .sr-nav-drop.open a:nth-child(3){transition-delay:.12s;}
  .sr-nav-drop.open a:nth-child(4){transition-delay:.16s;}
  .sr-nav-drop.open a:nth-child(5){transition-delay:.20s;}
  .sr-nav-drop a::before{content:"//";color:var(--orange);font-size:11px;}
  .sr-nav-drop a:hover,.sr-nav-drop a[aria-current]{
    color:var(--ink);background:var(--surface);border-color:var(--ink);
  }
  .sr-nav-drop .sr-nav-cta{
    grid-column:1/-1;
    margin-top:16px;padding-top:16px;
    border-top:1.5px solid var(--ink);
    display:flex;gap:12px;align-items:center;flex-wrap:wrap;
    opacity:0;transform:translateY(8px);
    transition:opacity .3s ease .24s, transform .3s ease .24s;
  }
  .sr-nav-drop.open .sr-nav-cta{opacity:1;transform:translateY(0);}

  @media(max-width:900px){
    .sr-menu-toggle{display:flex;}
    .nav{display:none;}
    .barcta .cartpill,.barcta .btn:not(.sr-menu-toggle){display:none;}
    .barcta{gap:10px;}
  }


/* Lien Mon compte dans le header */
.sr-account-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--sr-bar-text, var(--ink, #F5F3EC));
  text-decoration: none;
  opacity: .75;
  transition: opacity .15s;
  padding: 4px;
  border-radius: 50%;
}
.sr-account-link:hover { opacity: 1; }
.sr-account-link svg { display: block; }
