/* 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);}
  .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);}
  .hero__art img{width:100%;height:100%;object-fit:cover;min-height:380px;}
  .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;gap:34px;white-space:nowrap;animation: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-flex;gap:34px;}
  .marq__in b{color:var(--orange);}
  @keyframes scroll{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;}

  @media(max-width:900px){.hero__in,.grid,.steps{grid-template-columns:1fr;}.hero__txt{border-right:0;padding:56px 0;}.card,.step{border-right:0;border-bottom:2px solid var(--ink);}.card:last-child,.step:last-child{border-bottom:0;}.locs{grid-template-columns:1fr;}.foot{grid-template-columns:1fr 1fr;}.nav{display:none;}}

/* footer logo */
.foot .logo{color:#1A1A1A;font-size:26px;}
