*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#070707;--panel:#0d0d0d;--text:#f1f1ed;--muted:#969691;--line:#292929}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;overflow-x:hidden}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.noise{position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.04;background-image:repeating-radial-gradient(circle at 0 0,transparent 0,#fff 1px,transparent 2px);background-size:5px 5px;mix-blend-mode:soft-light}.announcement{height:28px;display:grid;place-items:center;background:var(--text);color:#050505;font-size:9px;letter-spacing:.19em;font-weight:700}.site-header{height:76px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 32px;position:sticky;top:0;background:rgba(7,7,7,.92);backdrop-filter:blur(14px);z-index:20}.logo{font-family:"Archivo Black",sans-serif;font-size:23px;letter-spacing:-.04em}.desktop-nav{display:flex;gap:32px;font-size:10px;font-weight:600;letter-spacing:.09em}.header-actions{justify-self:end}.text-link{font-size:10px;font-weight:600;letter-spacing:.09em}.menu-btn{display:none;border:0;background:transparent;color:var(--text);font-size:22px}.desktop-nav a,.text-link,.footer-links a{transition:opacity .2s}.desktop-nav a:hover,.text-link:hover,.footer-links a:hover{opacity:.55}.hero{min-height:calc(100vh - 104px);display:grid;grid-template-columns:1.05fr .95fr}.hero-copy{padding:70px 32px 50px;display:flex;flex-direction:column;justify-content:space-between}.eyebrow{font-size:9px;letter-spacing:.19em;color:var(--muted);font-weight:700}.hero h1{font-family:"Archivo Black",sans-serif;font-size:clamp(64px,9.3vw,150px);line-height:.76;letter-spacing:-.07em}.hero-meta{display:flex;align-items:end;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.09em}.release-small{color:#777;margin-top:7px}.underline-link{border-bottom:1px solid var(--text);padding-bottom:5px}.hero-visual{position:relative;overflow:hidden;background:linear-gradient(135deg,#101010 0%,#080808 60%,#141414 100%);border-left:1px solid var(--line)}.orb{position:absolute;border-radius:999px;border:1px solid #2b2b2b}.orb-one{width:430px;height:430px;top:-140px;right:-120px;background:radial-gradient(circle at 40% 45%,#252525,#090909 72%)}.orb-two{width:250px;height:250px;bottom:-75px;left:20px;background:radial-gradient(circle at 60% 45%,#1d1d1d,#080808 72%)}.fabric-panel{position:absolute;inset:11% 12%;background:linear-gradient(128deg,transparent 0 38%,rgba(255,255,255,.035) 39%,transparent 40%),repeating-linear-gradient(90deg,rgba(255,255,255,.014) 0 1px,transparent 1px 5px),#0d0d0d;transform:rotate(-4deg);border:1px solid #222;box-shadow:0 40px 70px rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center}.fabric-panel>span{position:absolute;top:18px;left:18px;font-size:10px;letter-spacing:.2em}.fabric-panel small{position:absolute;bottom:18px;left:18px;font-size:9px;letter-spacing:.18em;color:#777}.fabric-logo{font-family:"Archivo Black",sans-serif;font-size:clamp(70px,11vw,170px);letter-spacing:-.1em;color:#131313;text-shadow:1px 1px 0 #222,-1px -1px 0 #080808}.vertical-copy{position:absolute;right:14px;top:50%;transform:translateY(-50%) rotate(90deg);font-size:8px;letter-spacing:.22em;color:#666}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap;padding:14px 0}.ticker-track{display:inline-flex;gap:60px;min-width:max-content;animation:ticker 18s linear infinite;font-family:"Archivo Black",sans-serif;font-size:12px;letter-spacing:.08em}@keyframes ticker{to{transform:translateX(-50%)}}.drop-section{padding:110px 32px}.section-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:28px}.section-heading h2,.access-copy h2{font-family:"Archivo Black",sans-serif;font-size:clamp(48px,7vw,110px);line-height:.85;letter-spacing:-.055em;margin-top:12px}.countdown-wrap{text-align:right}.countdown-wrap span{display:block;font-size:8px;color:var(--muted);letter-spacing:.15em;margin-bottom:8px}#countdown{font-size:14px;letter-spacing:.15em}.drop-layout{display:grid;grid-template-columns:1.15fr .85fr;border-bottom:1px solid var(--line)}.product-image{min-height:720px;position:relative;overflow:hidden;border:1px solid #202020;background:#0b0b0b}.image-one{background:radial-gradient(circle at 75% 20%,#292929 0,#0c0c0c 35%,#050505 72%)}.blur-silhouette{position:absolute;background:#111;border:1px solid #1d1d1d;filter:blur(8px);opacity:.96}.silhouette-one{width:55%;height:78%;left:22%;top:11%;clip-path:polygon(26% 0,74% 0,87% 12%,100% 29%,89% 100%,11% 100%,0 29%,13% 12%)}.product-stamp,.teaser-label{position:absolute;z-index:2;font-size:8px;letter-spacing:.18em}.product-stamp{top:18px;left:18px;color:#888}.teaser-label{bottom:18px;left:18px}.product-panel{padding:56px 48px;display:flex;flex-direction:column;justify-content:center}.product-panel h3{font-family:"Archivo Black",sans-serif;font-size:clamp(46px,5vw,82px);line-height:.85;letter-spacing:-.055em;margin:22px 0 14px}.product-sub{font-size:9px;letter-spacing:.13em;color:#858580}.product-price{font-family:"Archivo Black",sans-serif;font-size:46px;letter-spacing:-.05em;margin:34px 0}.product-price span{font-family:Inter,sans-serif;font-size:10px;letter-spacing:.16em;color:#888}.selector-block{border-top:1px solid var(--line);padding:21px 0}.selector-label{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.14em;color:#888;margin-bottom:15px}.sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.size-btn{height:48px;background:transparent;border:1px solid #343434;color:var(--text);font-size:11px}.size-btn.active,.size-btn:hover{background:var(--text);color:#080808}.qty-control{display:flex;align-items:center;width:145px;border:1px solid #343434}.qty-control button{width:48px;height:45px;border:0;background:transparent;color:var(--text);font-size:18px}.qty-control span{flex:1;text-align:center;font-size:11px}.shopify-btn{margin-top:18px;width:100%;padding:18px;border:0;background:var(--text);color:#080808;font-weight:700;font-size:10px;letter-spacing:.13em}.shopify-btn:hover{opacity:.82}.checkout-note{font-size:8px;line-height:1.5;color:#696965;margin-top:10px}.checkout-note.error{color:#d7a2a2}.product-points{display:flex;gap:18px;flex-wrap:wrap;margin-top:38px;padding-top:20px;border-top:1px solid var(--line);font-size:8px;letter-spacing:.13em;color:#777}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.detail-card{min-height:300px;border:1px solid #202020;padding:22px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:repeating-linear-gradient(113deg,#0b0b0b 0 4px,#101010 4px 6px)}.detail-card>span,.detail-card p{font-size:8px;letter-spacing:.15em;color:#858580}.detail-mark{font-family:"Archivo Black";font-size:130px;color:#101010;text-shadow:1px 0 #222;align-self:center}.detail-card-two{background:radial-gradient(circle at 35% 65%,#1e1e1e 0,#0b0b0b 40%,#060606 74%)}.coordinates{font-family:"Archivo Black";font-size:clamp(30px,4vw,60px);line-height:.9;letter-spacing:-.04em;color:#171717;text-shadow:1px 0 #222}.manifesto{min-height:680px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:60px 32px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.manifesto-label{font-size:9px;letter-spacing:.18em;color:var(--muted)}.manifesto>p{font-family:"Archivo Black",sans-serif;font-size:clamp(30px,4vw,65px);line-height:1.02;letter-spacing:-.04em;max-width:1150px}.manifesto-word{font-family:"Archivo Black",sans-serif;font-size:clamp(110px,25vw,410px);letter-spacing:-.1em;line-height:.6;color:#0d0d0d;text-shadow:1px 0 #181818;white-space:nowrap;transform:translateX(-1.5%)}.access-section{padding:110px 32px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}.muted{color:var(--muted);margin-top:20px;font-size:10px;letter-spacing:.07em}.access-form{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid #444;padding-bottom:10px;position:relative}.access-form input{background:transparent;color:var(--text);border:0;outline:0;padding:14px 0;font-size:14px;letter-spacing:.08em}.access-form button{background:transparent;border:0;color:var(--text);font-size:10px;font-weight:700;letter-spacing:.1em}.form-message{position:absolute;top:calc(100% + 12px);left:0;font-size:8px;letter-spacing:.08em;color:#999}footer{border-top:1px solid var(--line);padding:55px 32px 28px}.footer-brand{font-family:"Archivo Black",sans-serif;font-size:clamp(70px,14vw,220px);letter-spacing:-.08em;line-height:.8}.footer-links{display:flex;gap:24px;padding:55px 0;font-size:10px;font-weight:600;letter-spacing:.1em}.footer-bottom{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid var(--line);font-size:8px;letter-spacing:.12em;color:#777}.mobile-menu{position:fixed;inset:0;z-index:80;background:#070707;display:flex;flex-direction:column;padding:90px 28px 28px;transform:translateY(-100%);transition:.3s ease}.mobile-menu.open{transform:translateY(0)}.mobile-menu button{position:absolute;right:28px;top:28px;border:0;background:transparent;color:var(--text);font-size:28px}.mobile-menu a{font-family:"Archivo Black";font-size:clamp(45px,12vw,90px);letter-spacing:-.06em;line-height:1.2}@media(max-width:900px){.site-header{grid-template-columns:1fr auto;padding:0 18px;height:66px}.desktop-nav,.text-link{display:none}.menu-btn{display:block}.hero{min-height:0;grid-template-columns:1fr}.hero-copy{min-height:62vh;padding:44px 18px 28px}.hero h1{font-size:clamp(60px,18vw,110px)}.hero-visual{min-height:58vh;border-left:0;border-top:1px solid var(--line)}.drop-section{padding:76px 18px}.section-heading{align-items:start;gap:30px;flex-direction:column}.countdown-wrap{text-align:left}.drop-layout{grid-template-columns:1fr}.product-image{min-height:600px}.product-panel{padding:45px 22px}.detail-grid{grid-template-columns:1fr}.manifesto{min-height:560px;padding:40px 18px}.access-section{padding:76px 18px 90px;grid-template-columns:1fr;gap:52px}footer{padding:48px 18px 26px}.footer-links{flex-wrap:wrap}.footer-bottom{flex-direction:column;gap:8px}}@media(max-width:560px){.announcement{font-size:7px}.hero-copy{min-height:55vh}.hero-meta{font-size:9px}.fabric-panel{inset:10% 8%}.product-image{min-height:520px}.access-form{grid-template-columns:1fr}.access-form button{text-align:left;padding:12px 0}.sizes{gap:5px}.size-btn{height:44px}}


/* ---------- RAYVIN v4 product imagery ---------- */
.hero-photo{
  min-height:100%;
  position:relative;
  background:#080808;
}
.hero-photo>img{
  width:100%;
  height:100%;
  min-height:calc(100vh - 104px);
  display:block;
  object-fit:cover;
  object-position:center;
  filter:saturate(.82) contrast(1.04) brightness(.82);
}
.hero-photo-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(7,7,7,.12),transparent 45%),
    linear-gradient(0deg,rgba(7,7,7,.70),transparent 42%);
  pointer-events:none;
}
.hero-photo-label{
  position:absolute;
  left:22px;
  right:22px;
  bottom:22px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.17em;
  color:#ededeb;
  z-index:2;
}

.product-gallery{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.product-main-image{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#101010;
  border:1px solid #202020;
}
.product-main-image>img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:opacity .18s ease, transform .45s ease;
}
.product-main-image:hover>img{
  transform:scale(1.015);
}
.product-image-counter{
  position:absolute;
  right:18px;
  bottom:18px;
  z-index:2;
  padding:7px 9px;
  background:rgba(7,7,7,.72);
  border:1px solid rgba(255,255,255,.13);
  font-size:8px;
  font-weight:700;
  letter-spacing:.15em;
  backdrop-filter:blur(8px);
}
.product-thumbnails{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:8px;
}
.product-thumb{
  aspect-ratio:1/1;
  overflow:hidden;
  border:1px solid #262626;
  background:#0d0d0d;
  padding:0;
  position:relative;
}
.product-thumb::after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid transparent;
  transition:border-color .18s ease;
}
.product-thumb.active::after,
.product-thumb:hover::after{
  border-color:#f1f1ed;
}
.product-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  opacity:.68;
  transition:opacity .18s ease;
}
.product-thumb.active img,
.product-thumb:hover img{
  opacity:1;
}

/* Readable location typography */
.detail-card-two{
  background:
    radial-gradient(circle at 78% 25%,rgba(255,255,255,.045),transparent 31%),
    linear-gradient(145deg,#111,#080808 62%);
}
.coordinates{
  font-family:Inter,Arial,sans-serif;
  display:flex;
  flex-direction:column;
  gap:8px;
  color:#f1f1ed;
  text-shadow:none;
  letter-spacing:0;
  line-height:1.05;
}
.coordinate-label{
  font-size:9px;
  font-weight:700;
  letter-spacing:.20em;
  color:#8b8b86;
  margin-bottom:8px;
}
.coordinates strong{
  font-family:Inter,Arial,sans-serif;
  font-size:clamp(28px,3.1vw,50px);
  font-weight:600;
  letter-spacing:-.035em;
  color:#f1f1ed;
}

@media(max-width:900px){
  .hero-photo>img{
    min-height:58vh;
  }
  .product-main-image{
    aspect-ratio:1/1;
  }
}

@media(max-width:560px){
  .hero-photo-label{
    left:14px;
    right:14px;
    bottom:14px;
    flex-direction:column;
    gap:5px;
  }
  .product-thumbnails{
    gap:5px;
  }
  .product-image-counter{
    right:12px;
    bottom:12px;
  }
  .coordinates strong{
    font-size:30px;
  }
}


/* Early access form — Netlify Forms */
.hidden-field {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.marketing-consent {
  grid-column: 1 / -1;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding-top: 13px;
  color: #777;
  font-size: 8px;
  line-height: 1.55;
  letter-spacing: .06em;
  cursor: pointer;
}

.marketing-consent input {
  width: 13px;
  height: 13px;
  flex: 0 0 13px;
  margin-top: 1px;
  accent-color: #f1f1ed;
}

.access-form button:disabled {
  opacity: .45;
  cursor: wait;
}

.form-message {
  grid-column: 1 / -1;
}


/* ==========================================================
   RAYVIN PRE-RELEASE LOCK + HOVER GALLERY
   Automatically disabled by script.js once releaseAt is reached.
   ========================================================== */

.product-main-image {
  isolation: isolate;
}

/* Dim all hoodie/gallery imagery before release */
.pre-release .product-main-image > img {
  filter: brightness(.34) grayscale(.15) contrast(1.05);
  transform: scale(1.01);
}

.pre-release .product-thumb img {
  filter: brightness(.38) grayscale(.20);
  opacity: .55;
}

.pre-release .product-thumb.active img {
  opacity: .68;
}

.pre-release .hero-photo > img {
  filter: saturate(.45) contrast(1.08) brightness(.42);
}

/* Main COMING SOON lock-up */
.coming-soon-overlay {
  position: absolute;
  inset: 0;
  z-index: 5;
  display: none;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  pointer-events: none;
  background:
    radial-gradient(circle at center, rgba(0,0,0,.08) 0%, rgba(0,0,0,.28) 56%, rgba(0,0,0,.54) 100%);
}

.pre-release .coming-soon-overlay {
  display: flex;
}

.coming-soon-kicker {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .22em;
  color: rgba(255,255,255,.64);
  margin-bottom: 15px;
}

.coming-soon-overlay strong {
  font-family: "Archivo Black", Inter, Arial, sans-serif;
  font-size: clamp(38px, 5vw, 76px);
  line-height: .92;
  letter-spacing: -.045em;
  color: #fff;
  text-shadow: 0 4px 28px rgba(0,0,0,.75);
}

.coming-soon-date {
  margin-top: 15px;
  padding-top: 13px;
  border-top: 1px solid rgba(255,255,255,.30);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .22em;
  color: rgba(255,255,255,.78);
}

/* Product navigation arrows */
.gallery-arrow {
  position: absolute;
  z-index: 8;
  top: 50%;
  width: 52px;
  height: 52px;
  transform: translateY(-50%);
  border: 1px solid rgba(255,255,255,.38);
  background: rgba(5,5,5,.68);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 24px;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity .18s ease,
    visibility .18s ease,
    background .18s ease,
    transform .18s ease;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.gallery-arrow-left {
  left: 18px;
}

.gallery-arrow-right {
  right: 18px;
}

.product-main-image:hover .gallery-arrow,
.product-main-image:focus-within .gallery-arrow {
  opacity: 1;
  visibility: visible;
}

.gallery-arrow:hover {
  background: #f1f1ed;
  color: #070707;
}

.gallery-arrow-left:hover {
  transform: translateY(-50%) translateX(-3px);
}

.gallery-arrow-right:hover {
  transform: translateY(-50%) translateX(3px);
}

/* Locked shopping controls */
.pre-release .size-btn,
.pre-release #qtyMinus,
.pre-release #qtyPlus,
.pre-release #shopifyCheckout {
  cursor: not-allowed;
}

.pre-release .size-btn,
.pre-release #qtyMinus,
.pre-release #qtyPlus {
  opacity: .32;
}

.pre-release .shopify-btn {
  background: #151515;
  border-color: #2b2b2b;
  color: #777;
  opacity: 1;
}

.pre-release .shopify-btn:hover {
  background: #151515;
  color: #777;
}

.release-state {
  font-weight: 700;
  letter-spacing: .10em;
  color: #b9b9b4;
}

/* "Coming soon" badge on gallery thumbnails */
.pre-release .product-thumb::before {
  content: "SOON";
  position: absolute;
  z-index: 4;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .18em;
  color: rgba(255,255,255,.78);
  pointer-events: none;
}

/* Make thumb clicks remain available so people can browse images */
.pre-release .product-thumb {
  cursor: pointer;
}

/* Touch devices have no hover, so arrows remain visible */
@media (hover: none), (max-width: 900px) {
  .gallery-arrow {
    opacity: .88;
    visibility: visible;
    width: 46px;
    height: 46px;
    font-size: 21px;
  }

  .gallery-arrow-left {
    left: 10px;
  }

  .gallery-arrow-right {
    right: 10px;
  }
}

@media (max-width: 560px) {
  .coming-soon-overlay strong {
    font-size: 37px;
  }

  .coming-soon-kicker {
    font-size: 7px;
  }

  .coming-soon-date {
    font-size: 9px;
  }
}
