@import url('https://fonts.googleapis.com/css2?family=Anton&family=Archivo:wght@400;600;900&display=swap');

:root{
  --ink:#0A0A0A;
  --white:#FFFFFF;
  --blue:#0044FF;
  --grey:#8A8A8A;
  --paper-dim:#F4F4F2;
  --border:#E5E5E5;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:'Archivo',sans-serif;color:var(--ink);background:var(--white);}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{font-family:'Anton',sans-serif;font-weight:400;margin:0;text-transform:uppercase;letter-spacing:-0.01em;}
.container{max-width:1240px;margin:0 auto;padding:0 32px;}

/* NAV */
.nav{
  position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  padding:22px 32px;background:var(--white);border-bottom:2px solid transparent;
  transition:border-color .2s ease;
}
.nav.solid{border-bottom-color:var(--ink);}
.nav-logo{font-family:'Anton',sans-serif;font-size:26px;letter-spacing:0.01em;text-transform:uppercase;}
.nav-logo span{color:var(--blue);}
.nav-links{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:0.04em;}
.nav-links a:not(.cart-link):hover{color:var(--blue);}
.cart-link{position:relative;display:flex;align-items:center;gap:6px;}
.cart-badge{
  display:none;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:50%;
  background:var(--blue);color:var(--white);font-size:10.5px;font-weight:900;padding:0 4px;
}

/* MARQUEE */
.marquee{overflow:hidden;background:var(--ink);color:var(--white);padding:12px 0;white-space:nowrap;}
.marquee-track{display:inline-flex;gap:40px;animation:scrollLeft 18s linear infinite;font-family:'Anton',sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:0.03em;}
.marquee-track span{display:inline-flex;align-items:center;gap:40px;}
.marquee-track em{color:var(--blue);font-style:normal;}
@keyframes scrollLeft{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* HERO — poster plein cadre, texte superposé à la photo */
.hero-poster{position:relative;height:92vh;min-height:620px;overflow:hidden;}
.hero-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-poster::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,10,0.88) 0%,rgba(10,10,10,0.15) 55%,rgba(10,10,10,0.55) 100%);}
.hero-poster-content{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:0 32px 48px;}
.hero-poster-inner{max-width:1240px;margin:0 auto;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;}
.hero-kicker{font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:0.1em;color:var(--blue);margin-bottom:16px;}
.hero-title{font-size:clamp(56px,10vw,150px);line-height:0.82;text-transform:uppercase;color:var(--white);}
.hero-poster-side{text-align:right;flex-shrink:0;padding-bottom:10px;}
.hero-poster-side p{color:#D8D8D8;font-size:14px;max-width:220px;margin:0 0 16px;font-family:'Archivo',sans-serif;line-height:1.55;}

/* CATALOG STRIP — défilement horizontal (drag) */
.strip-wrap{padding:0 0 26px;}
.strip-head{display:flex;justify-content:space-between;align-items:flex-end;padding:0 32px 26px;max-width:1240px;margin:0 auto;}
.strip-head h2{font-size:clamp(30px,4vw,46px);}
.strip-hint{font-family:'Archivo',sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--grey);}
.catalog-strip{
  display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x proximity;padding:0 32px 10px;cursor:grab;
  scrollbar-width:none;
}
.catalog-strip.dragging{cursor:grabbing;}
.catalog-strip::-webkit-scrollbar{display:none;}
.strip-card{position:relative;flex:0 0 300px;scroll-snap-align:start;}
.strip-num{position:absolute;left:10px;top:10px;z-index:2;background:var(--ink);color:var(--white);font-family:'Anton',sans-serif;font-size:13px;padding:4px 10px;}

/* BUTTONS */
.btn{
  display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--white);
  padding:16px 32px;border-radius:2px;font-size:13.5px;font-weight:900;text-transform:uppercase;
  letter-spacing:0.04em;border:none;cursor:pointer;transition:transform .15s ease, background .15s ease;
}
.btn:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--blue);}
.btn-blue{background:var(--blue);}
.btn-blue:hover{box-shadow:4px 4px 0 var(--ink);}
.btn-outline{
  display:inline-flex;align-items:center;gap:10px;background:transparent;color:var(--ink);
  border:2px solid var(--ink);padding:14px 30px;border-radius:2px;font-size:13.5px;font-weight:900;
  text-transform:uppercase;letter-spacing:0.04em;cursor:pointer;
}
.btn-outline:hover{background:var(--ink);color:var(--white);}

/* USP BAND — ligne compacte avec séparateurs */
.usp-band{display:flex;justify-content:center;padding:26px 32px;border-bottom:2px solid var(--ink);}
.usp-item{display:flex;align-items:center;gap:10px;padding:0 34px;border-left:1px solid var(--border);font-family:'Archivo',sans-serif;}
.usp-item:first-child{border-left:none;}
.usp-item .usp-icon{font-size:15px;color:var(--blue);}
.usp-item h3{font-size:12.5px;letter-spacing:0.02em;font-family:'Archivo',sans-serif;font-weight:900;text-transform:uppercase;}
.usp-item p{display:none;}

/* CATALOG */
.catalog-head{padding:72px 32px 30px;text-align:center;}
.catalog-head h2{font-size:clamp(32px,4.4vw,50px);}
.catalog-head p{color:var(--grey);margin-top:12px;font-family:'Archivo',sans-serif;}
.product-card{position:relative;}
.product-photo{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--paper-dim);border:2px solid var(--ink);}
.product-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .3s ease;}
.product-photo img.hover-img{opacity:0;}
.product-card:hover .product-photo img.hover-img{opacity:1;}
.product-quickadd{
  position:absolute;right:8px;bottom:8px;width:38px;height:38px;border-radius:2px;background:var(--blue);color:var(--white);
  border:none;font-size:19px;font-weight:900;display:flex;align-items:center;justify-content:center;cursor:pointer;
  opacity:0;transform:translateY(6px);transition:opacity .18s ease, transform .18s ease;
}
.product-card:hover .product-quickadd{opacity:1;transform:translateY(0);}
.product-info{padding:14px 2px 0;display:flex;justify-content:space-between;align-items:baseline;}
.product-info .p-name{font-size:13.5px;font-weight:900;text-transform:uppercase;}
.product-info .p-cat{display:block;font-size:12px;color:var(--grey);margin-top:2px;font-family:'Archivo',sans-serif;font-weight:400;text-transform:none;}
.product-info .p-price{font-size:14.5px;font-weight:900;color:var(--blue);}

/* LOOKBOOK BAND */
.lookbook{position:relative;height:70vh;min-height:460px;overflow:hidden;}
.lookbook img{width:100%;height:100%;object-fit:cover;filter:grayscale(0.15) contrast(1.05);}
.lookbook-caption{
  position:absolute;left:32px;bottom:32px;color:#fff;font-family:'Anton',sans-serif;
  font-size:clamp(28px,4.4vw,56px);text-transform:uppercase;line-height:0.95;max-width:640px;
}
.lookbook-caption em{color:var(--blue);font-style:normal;}

/* FOOTER */
footer{display:flex;justify-content:space-between;padding:34px 32px;font-size:13px;color:var(--grey);border-top:2px solid var(--ink);font-family:'Archivo',sans-serif;}

/* PRODUCT PAGE */
.product-page{padding:48px 32px 90px;}
.product-page-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.gallery-main{aspect-ratio:3/4;overflow:hidden;background:var(--paper-dim);margin-bottom:12px;border:2px solid var(--ink);}
.gallery-main img{width:100%;height:100%;object-fit:cover;}
.gallery-thumbs{display:flex;gap:10px;}
.gallery-thumbs img{width:64px;height:80px;object-fit:cover;cursor:pointer;border:2px solid transparent;}
.gallery-thumbs img.active{border-color:var(--blue);}
.pd-cat{font-size:13px;text-transform:uppercase;letter-spacing:0.04em;color:var(--blue);margin-bottom:10px;display:block;font-weight:900;font-family:'Archivo',sans-serif;}
.pd-name{font-size:clamp(30px,3.6vw,44px);}
.pd-price{font-size:22px;font-weight:900;margin:16px 0 22px;color:var(--blue);font-family:'Archivo',sans-serif;}
.pd-desc{color:var(--grey);line-height:1.7;font-size:15px;margin-bottom:28px;font-family:'Archivo',sans-serif;}
.pd-size-label{font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:10px;}
.size-pills{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap;}
.size-pill{
  border:2px solid var(--ink);background:transparent;border-radius:2px;padding:9px 16px;font-size:13px;
  font-weight:900;cursor:pointer;font-family:'Archivo',sans-serif;
}
.size-pill.active{background:var(--ink);color:var(--white);}
.pd-actions{display:flex;align-items:center;gap:14px;margin-bottom:36px;}
.qty-stepper{display:flex;align-items:center;border:2px solid var(--ink);border-radius:2px;}
.qty-stepper button{width:38px;height:44px;background:none;border:none;font-size:16px;cursor:pointer;font-weight:900;font-family:'Archivo',sans-serif;}
.qty-stepper span{width:28px;text-align:center;font-size:14px;font-weight:900;font-family:'Archivo',sans-serif;}
.pd-note{font-size:12.5px;color:var(--grey);font-family:'Archivo',sans-serif;}
.pd-added{display:none;margin-top:14px;font-size:13px;font-weight:900;color:var(--blue);font-family:'Archivo',sans-serif;}
.pd-added.show{display:block;}

/* TOAST */
.toast{
  position:fixed;top:24px;right:24px;background:var(--ink);color:var(--white);padding:16px 22px;border-radius:2px;
  font-size:13.5px;font-weight:900;transform:translateY(-12px);opacity:0;pointer-events:none;transition:all .22s ease;z-index:99;
  font-family:'Archivo',sans-serif;
}
.toast.show{transform:translateY(0);opacity:1;}

/* CHECKOUT / PANIER */
.cart-page{padding:56px 32px 90px;max-width:980px;margin:0 auto;}
.cart-page h1{font-size:clamp(30px,4.4vw,46px);margin-bottom:12px;}

.checkout-steps{display:flex;gap:10px;margin-bottom:40px;font-family:'Archivo',sans-serif;font-size:12.5px;font-weight:900;text-transform:uppercase;letter-spacing:0.03em;color:var(--grey);}
.checkout-steps .step{display:flex;align-items:center;gap:8px;}
.checkout-steps .step .num{width:22px;height:22px;border-radius:50%;border:2px solid var(--grey);display:flex;align-items:center;justify-content:center;font-size:11px;}
.checkout-steps .step.active{color:var(--ink);}
.checkout-steps .step.active .num{border-color:var(--blue);background:var(--blue);color:var(--white);}
.checkout-steps .step.done .num{border-color:var(--ink);background:var(--ink);color:var(--white);}
.checkout-steps .sep{color:var(--border);}

.cart-empty{padding:60px 0;text-align:center;color:var(--grey);font-family:'Archivo',sans-serif;}
.cart-row{display:grid;grid-template-columns:90px 1fr auto auto auto;gap:18px;align-items:center;padding:20px 0;border-bottom:2px solid var(--border);}
.cart-row img{width:90px;height:112px;object-fit:cover;border:2px solid var(--ink);}
.cart-row .cr-name{font-weight:900;font-size:13.5px;text-transform:uppercase;}
.cart-row .cr-size{font-size:12.5px;color:var(--grey);margin-top:4px;font-family:'Archivo',sans-serif;}
.cart-row .cr-price{font-weight:900;font-size:14.5px;color:var(--blue);}
.cart-row .cr-remove{background:none;border:none;color:var(--grey);font-size:13px;cursor:pointer;text-decoration:underline;font-family:'Archivo',sans-serif;}
.cart-summary{margin-top:32px;padding-top:24px;border-top:3px solid var(--ink);display:flex;flex-direction:column;gap:10px;align-items:flex-end;}
.cart-summary .row{display:flex;justify-content:space-between;width:280px;font-size:14px;color:var(--grey);font-family:'Archivo',sans-serif;}
.cart-summary .row.total{color:var(--ink);font-weight:900;font-size:18px;}
.cart-summary .btn{margin-top:12px;width:280px;justify-content:center;}

.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:560px;margin-bottom:8px;}
.form-grid.single{grid-template-columns:1fr;}
.form-field{display:flex;flex-direction:column;gap:7px;font-family:'Archivo',sans-serif;}
.form-field.full{grid-column:1 / -1;}
.form-field label{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:0.03em;}
.form-field input{
  border:2px solid var(--ink);border-radius:2px;padding:13px 14px;font-size:14.5px;font-family:'Archivo',sans-serif;background:var(--white);
}
.form-field input:focus{outline:none;border-color:var(--blue);}
.form-actions{max-width:560px;display:flex;justify-content:space-between;align-items:center;margin-top:26px;}
.form-error{font-size:12.5px;color:#C81E1E;font-family:'Archivo',sans-serif;min-height:16px;margin-top:2px;}

.order-summary-mini{max-width:560px;background:var(--paper-dim);border:2px solid var(--ink);padding:18px 20px;margin-bottom:28px;font-family:'Archivo',sans-serif;}
.order-summary-mini .row{display:flex;justify-content:space-between;font-size:13.5px;padding:5px 0;}
.order-summary-mini .row.total{font-weight:900;border-top:2px solid var(--ink);margin-top:8px;padding-top:10px;font-size:15px;}

.secure-note{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--grey);margin-top:14px;font-family:'Archivo',sans-serif;}

.checkout-success{text-align:center;padding:80px 0;}
.checkout-success h2{font-size:clamp(28px,4.4vw,44px);margin-bottom:16px;}
.checkout-success p{color:var(--grey);font-family:'Archivo',sans-serif;}

@media (max-width:860px){
  .hero-poster-inner{flex-direction:column;align-items:flex-start;gap:20px;}
  .hero-poster-side{text-align:left;}
  .strip-card{flex:0 0 240px;}
  .product-page-grid{grid-template-columns:1fr;}
  .cart-row{grid-template-columns:70px 1fr auto;}
  .form-grid{grid-template-columns:1fr;}
}
