/** Shopify CDN: Minification failed

Line 109:0 Unexpected "50%"
Line 109:14 Unexpected "}"
Line 110:32 Unexpected "}"
Line 110:65 Unexpected "}"

**/

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{--blue:#6da3da;--blue-light:#8bbce8;--dark:#16171c;--cream:#f0f4f8;--font:Georgia,serif;--font-category:'Giveny',Georgia,serif;}
html{scroll-behavior:smooth;}
body{font-family:var(--font);background:var(--dark);color:var(--cream);overflow-x:hidden;}
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:40px 4rem 0;height:160px;background:rgba(22,23,28,0.95);backdrop-filter:blur(12px);transition:background 0.5s;gap:2rem;}
nav.scrolled{background:rgba(22,23,28,0.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(109,163,218,0.15);}
.nav-brand-logo{display:flex;align-items:center;text-decoration:none;}
.nav-links{display:flex;gap:2.5rem;list-style:none;align-items:center;}
.nav-links a{font-family:var(--font);font-size:0.95rem;font-weight:300;letter-spacing:0.2em;text-transform:uppercase;color:#6da3da;text-decoration:none;transition:color 0.3s;}
.nav-links a:hover{color:#8bbce8;}
#scroll-horse{position:absolute;top:0;left:0;z-index:500;width:170px;pointer-events:none;opacity:1;display:flex;align-items:flex-start;height:40px;will-change:transform;transition:transform 0.2s linear;}
#header-top-strip{position:absolute;top:0;left:0;right:0;height:40px;overflow:hidden;z-index:400;pointer-events:none;background:#0d1015;}
#header-top-strip video{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
#header-top-strip-fallback{width:100%;height:100%;background:linear-gradient(90deg, #0d1015, #1a2029, #0d1015);}
#scroll-horse img{height:100%;width:auto;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.4));transition:transform 0.3s ease;}
.hero{position:relative;height:100vh;min-height:700px;overflow:hidden;}
.hero-bg{position:absolute;inset:0;overflow:hidden;}
#heroBgStack{position:absolute;inset:0;display:flex;flex-direction:row;width:100%;height:100%;animation:heroBgFade 8s cubic-bezier(0.25,0.46,0.45,0.94) forwards;}
.stack-vid{width:100%;height:100%;display:block;object-fit:cover;object-position:center;}
.stack-vid-col{flex:1;height:100%;overflow:hidden;position:relative;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(22,23,28,0.15) 0%,rgba(22,23,28,0.4) 60%,rgba(22,23,28,0.92) 100%);}
.hero-nav-mask{position:absolute;top:0;left:0;right:0;height:160px;background:#16171c;z-index:10;pointer-events:none;}
.hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;padding:0 2rem 8rem;}

.hero-title{font-family:var(--font-category);font-size:clamp(3.5rem,9vw,8rem);font-weight:300;color:var(--cream);line-height:0.95;letter-spacing:0.02em;}
.title-line{display:inline-block;}
.hero-letter{display:inline-block;opacity:0;animation:letterGallop 1s cubic-bezier(0.22,1,0.36,1) forwards;}
/* Allow the product media area to take up more layout space */
@media screen and (min-width: 750px) {
  .pdp-grid {
    grid-template-columns: 1.2fr 1fr !important; /* Makes the image side wider than the text side */
    gap: 30px !important;
  }
}

/* Force the main image to scale up and fill its box completely */
#pdp-main-img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: cover !important; /* Changed from contain to cover so it fills the entire width/height */
}













#img-lightbox{display:none;position:fixed;inset:0;z-index:8000;background:rgba(10,20,15,0.95);align-items:center;justify-content:center;cursor:zoom-out;}
#img-lightbox.open{display:flex;animation:lbFadeIn 0.35s ease forwards;}
#img-lightbox img{max-width:92vw;max-height:90vh;object-fit:contain;box-shadow:0 40px 120px rgba(0,0,0,0.8);border:1px solid rgba(109,163,218,0.2);}
#lightbox-close{position:absolute;top:1.5rem;right:2rem;font-family:var(--font);font-size:0.6rem;letter-spacing:0.4em;text-transform:uppercase;color:rgba(109,163,218,0.7);cursor:pointer;}



























.btn-outline:hover{background:var(--blue);color:var(--dark);}
footer{background:#16171c;border-top:1px solid rgba(109,163,218,0.15);padding:3rem 4rem 2rem;display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;align-items:start;}
footer h4{font-family:var(--font);font-size:1rem;font-weight:300;color:#6da3da;margin-bottom:1rem;}
footer ul{list-style:none;}
footer ul li{font-size:0.72rem;color:#6da3da;margin-bottom:0.5rem;cursor:pointer;transition:color 0.3s;opacity:0.8;}
footer ul li:hover{color:#8bbce8;opacity:1;}
.footer-bottom{background:#5a8fc4;border-top:none;text-align:center;padding:0.6rem;font-size:0.5rem;letter-spacing:0.15em;color:#16171c;text-transform:uppercase;}
.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.8s ease,transform 0.8s ease;}
.reveal.visible{opacity:1;transform:none;}
@keyframes heroBgFade{0%{opacity:0;transform:scale(1.15)}10%{opacity:1}100%{opacity:1;transform:scale(1.0)}}
@keyframes slowZoomOut{0%{transform:scale(1.0)}100%{transform:scale(0.92)}}
@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{to{opacity:1}}
50%{opacity:1}}
100%{transform:translateX(-50%)}}100%{transform:translateX(-50%)}}
}@keyframes lbFadeIn{from{opacity:0}to{opacity:1}}
@keyframes letterGallop{
  0%{opacity:0;transform:translateX(-380px) translateY(0px) rotate(-8deg) scaleY(0.8);}
  15%{opacity:1;transform:translateX(-260px) translateY(-22px) rotate(-4deg) scaleY(1.1);}
  30%{transform:translateX(-160px) translateY(8px) rotate(2deg) scaleY(0.92);}
  45%{transform:translateX(-85px) translateY(-18px) rotate(-3deg) scaleY(1.08);}
  60%{transform:translateX(-30px) translateY(6px) rotate(1deg) scaleY(0.95);}
  78%{transform:translateX(10px) translateY(-8px) rotate(-1deg) scaleY(1.03);}
  100%{opacity:1;transform:translateX(0) translateY(0) rotate(0deg) scaleY(1);}
}

.sts-marquee{background:#6da3da;overflow:hidden;padding:6px 0;white-space:nowrap;}
.sts-marquee-inner{display:inline-block;animation:sts-scroll 20s linear infinite;}
.sts-marquee-inner span{color:#16171c;font-size:13px;letter-spacing:0.2em;padding:0 2rem;font-family:Georgia,serif;}
.sts-marquee-inner img{margin:0 1rem;}
@keyframes sts-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

  @keyframes logoRock {
    0%   { transform: rotate(0deg); }
    25%  { transform: rotate(-8deg); }
    75%  { transform: rotate(8deg); }
    100% { transform: rotate(0deg); }
  }

  /* ── SHOP PAGE ── */
  .shop-page { background: #16171c; padding: 4rem; }
  .shop-category { margin-bottom: 4rem; }
  .shop-category-header {
    border-bottom: 1px solid rgba(109,163,218,0.3);
    padding-bottom: 1rem;
    margin-bottom: 2rem;
    display: flex;
    align-items: baseline;
    gap: 1.5rem;
  }
  .shop-category-title {
    font-family: var(--font-category);
    font-size: clamp(1.6rem, 3vw, 2.4rem);
    font-weight: 300;
    color: var(--cream);
    letter-spacing: 0.05em;
  }
  .shop-category-subtitle {
    font-size: 0.7rem;
    letter-spacing: 0.35em;
    text-transform: uppercase;
    color: var(--blue);
  }
  .shop-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.5rem;
  }
  .shop-card {
    background: rgba(109,163,218,0.05);
    border: 1px solid rgba(109,163,218,0.12);
    cursor: pointer;
    transition: background 0.3s, transform 0.3s;
    overflow: hidden;
    position: relative;
  }
  .shop-card:hover { background: rgba(109,163,218,0.1); transform: translateY(-4px); }
  .shop-card:hover .shop-card-img { transform: scale(1.05); }
  .shop-card-img-wrap {
    overflow: hidden;
    position: relative;
    aspect-ratio: 3/4;
    background: rgba(109,163,218,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .shop-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
    transition: transform 0.5s ease;
  }
  .shop-card-placeholder {
    font-size: 3rem;
    opacity: 0.15;
  }
  .shop-card-badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: var(--blue);
    color: var(--dark);
    font-size: 0.55rem;
    font-weight: 300;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    padding: 0.3rem 0.7rem;
  }
  .shop-card-badge.limited { background: #c8a84b; color: #16171c; }
  .shop-card-badge.clearance { background: #e05555; color: #fff; }
  .shop-card-body { padding: 1.2rem 1.4rem 1.4rem; }
  .shop-card-category {
    font-family: var(--font-category);
    font-size: 0.58rem;
    letter-spacing: 0.35em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 0.4rem;
  }
  .shop-card-name {
    font-family: var(--font);
    font-size: 1.1rem;
    font-weight: 300;
    color: var(--cream);
    margin-bottom: 0.3rem;
    line-height: 1.3;
  }
  .shop-card-variant {
    font-size: 0.75rem;
    color: rgba(240,244,248,0.5);
    margin-bottom: 0.8rem;
  }
  .shop-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .shop-card-price {
    font-family: var(--font);
    font-size: 1.1rem;
    font-weight: 300;
    color: var(--blue-light);
  }
  .shop-card-btn {
    font-size: 0.58rem;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: var(--dark);
    background: var(--blue);
    border: none;
    padding: 0.5rem 1rem;
    cursor: pointer;
    font-family: var(--font);
    transition: background 0.3s;
  }
  .shop-card-btn:hover { background: var(--blue-light); }
  .shop-divider {
    height: 1px;
    background: linear-gradient(to right, transparent, rgba(109,163,218,0.3), transparent);
    margin: 3rem 0;
  }

  /* ── PRODUCT MODAL ── */
  #product-modal { display:none; position:fixed; inset:0; z-index:7000; background:#16171c; overflow-y:auto; }
  #product-modal.open { display:block; animation:modalFadeIn 0.4s ease forwards; }
  @keyframes modalFadeIn { from{opacity:0;transform:scale(0.97)} to{opacity:1;transform:scale(1)} }
  .modal-inner { max-width:1100px; margin:0 auto; padding:6rem 4rem; display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:start; min-height:100vh; }
  .modal-close { position:absolute; top:1.8rem; right:2.5rem; font-family:var(--font); font-size:0.75rem; letter-spacing:0.4em; text-transform:uppercase; color:rgba(109,163,218,0.8); cursor:pointer; z-index:7001; background:rgba(22,23,28,0.8); border:1px solid rgba(109,163,218,0.3); padding:0.6rem 1.2rem; }
  .modal-close:hover { color:var(--blue); }
  .modal-img-wrap { aspect-ratio:3/4; background:rgba(109,163,218,0.08); display:flex; align-items:center; justify-content:center; border:1px solid rgba(109,163,218,0.15); position:relative; overflow:hidden; }
  .modal-img-placeholder { font-size:5rem; opacity:0.15; }
  .modal-category { font-family:var(--font-category); font-size:1rem; letter-spacing:0.35em; text-transform:uppercase; color:var(--blue); margin-bottom:0.8rem; }
  .modal-title { font-family:var(--font); font-size:clamp(1.8rem,3vw,2.6rem); font-weight:300; color:var(--cream); line-height:1.2; margin-bottom:1rem; }
  .modal-variant { font-size:1rem; color:rgba(240,244,248,0.6); margin-bottom:1.5rem; }
  .modal-price { font-family:var(--font); font-size:1.8rem; font-weight:300; color:var(--blue-light); margin-bottom:2rem; }
  .modal-actions { display:flex; gap:1rem; }
  .modal-add-cart { flex:1; font-family:var(--font); font-size:0.65rem; font-weight:300; letter-spacing:0.35em; text-transform:uppercase; color:var(--dark); background:var(--blue); border:none; padding:1rem 2rem; cursor:pointer; }
  .modal-add-cart:hover { background:var(--blue-light); }

  .modal-img-wrap { position:relative; overflow:hidden; cursor:zoom-in; }
  .modal-mag-glass {
    display:none; position:absolute; width:160px; height:160px; border-radius:50%;
    border:2px solid rgba(109,163,218,0.7); box-shadow:0 0 0 2px rgba(109,163,218,0.2),0 8px 32px rgba(0,0,0,0.5);
    pointer-events:none; z-index:100; background-repeat:no-repeat; transform:translate(-50%,-50%);
  }

  /* ── REVIEWS ── */
  .reviews-section { background: #16171c; padding: 4rem 4rem 5rem; border-top: 1px solid rgba(109,163,218,0.15); }
  .reviews-header { text-align: center; margin-bottom: 3rem; }
  .reviews-header .overline { font-size: 0.62rem; letter-spacing: 0.45em; text-transform: uppercase; color: var(--blue); margin-bottom: 1rem; }
  .reviews-header h2 { font-family: var(--font); font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 300; color: var(--cream); margin-bottom: 1rem; }
  .reviews-stars-overall { display: flex; align-items: center; justify-content: center; gap: 0.6rem; }
  .reviews-stars-overall .stars { color: var(--blue); font-size: 1.2rem; letter-spacing: 0.15em; }
  .reviews-stars-overall .rating-text { font-size: 0.8rem; color: rgba(240,244,248,0.55); }
  .reviews-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.5rem; max-width: 1200px; margin: 0 auto; }
  .review-card { background: rgba(109,163,218,0.05); border: 1px solid rgba(109,163,218,0.12); padding: 2rem; transition: background 0.3s, transform 0.3s; }
  .review-card:hover { background: rgba(109,163,218,0.09); transform: translateY(-3px); }
  .review-stars { color: var(--blue); font-size: 0.9rem; letter-spacing: 0.1em; margin-bottom: 1rem; }
  .review-text { font-size: 0.85rem; color: rgba(240,244,248,0.7); line-height: 1.8; margin-bottom: 1.5rem; min-height: 80px; }
  .review-footer { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid rgba(109,163,218,0.1); padding-top: 1rem; }
  .review-author { font-family: var(--font); font-size: 0.85rem; color: var(--cream); }
  .review-verified { font-size: 0.6rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--blue); display: flex; align-items: center; gap: 0.3rem; }

  /* ── INSTAGRAM ── */
  .instagram-section { background: #1a1c22; padding: 4rem 4rem 5rem; border-top: 1px solid rgba(109,163,218,0.15); text-align: center; }
  .instagram-header { margin-bottom: 2.5rem; }
  .instagram-header .overline { font-size: 0.62rem; letter-spacing: 0.45em; text-transform: uppercase; color: var(--blue); margin-bottom: 1rem; }
  .instagram-header h2 { font-family: var(--font); font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 300; color: var(--cream); margin-bottom: 0.8rem; }
  .instagram-handle { font-size: 0.9rem; color: var(--blue-light); text-decoration: none; letter-spacing: 0.05em; }
  .instagram-handle:hover { color: var(--blue); }
  .instagram-embed-wrap { max-width: 1100px; margin: 2rem auto 0; }

/* ── PRODUCT PAGE ── */
.pdp-wrap{padding:11rem 4rem 5rem;background:var(--dark);}
.pdp-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1200px;margin:0 auto;align-items:start;}
.pdp-media img{width:100%;display:block;border:1px solid rgba(109,163,218,0.15);}
.pdp-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:0.6rem;margin-top:0.8rem;}
.pdp-thumb{width:100%;aspect-ratio:1/1;object-fit:cover;border:1px solid rgba(109,163,218,0.15);cursor:pointer;opacity:0.55;transition:opacity 0.3s,border-color 0.3s;display:block;}
.pdp-thumb:hover,.pdp-thumb.active{opacity:1;border-color:var(--blue);}
.pdp-category{font-family:var(--font-category);font-size:1rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--blue);margin-bottom:0.8rem;}
.pdp-title{font-family:var(--font);font-size:clamp(2rem,3.5vw,3.2rem);font-weight:300;color:var(--cream);line-height:1.2;margin-bottom:1rem;}
.pdp-price{font-family:var(--font);font-size:1.8rem;font-weight:300;color:var(--blue-light);margin-bottom:1.5rem;}
.pdp-compare{text-decoration:line-through;opacity:0.5;margin-right:0.6rem;}
.pdp-desc{font-size:1rem;color:rgba(240,244,248,0.85);line-height:1.8;margin-bottom:2rem;max-width:460px;}
.pdp-option-label{font-size:0.6rem;letter-spacing:0.3em;text-transform:uppercase;color:rgba(240,244,248,0.4);margin-bottom:0.7rem;}
.pdp-swatches{display:flex;gap:0.5rem;margin-bottom:1.5rem;flex-wrap:wrap;}
.pdp-swatch{font-family:var(--font);font-size:0.7rem;color:rgba(240,244,248,0.6);background:transparent;border:1px solid rgba(109,163,218,0.25);padding:0.45rem 0.9rem;cursor:pointer;transition:all 0.3s;}
.pdp-swatch.active,.pdp-swatch:hover{background:var(--blue);color:var(--dark);border-color:var(--blue);}
.pdp-qty{display:flex;align-items:center;gap:0.6rem;margin-bottom:1.5rem;}
.pdp-qty input{width:60px;background:transparent;border:1px solid rgba(109,163,218,0.25);color:var(--cream);padding:0.6rem;font-family:var(--font);text-align:center;}
.pdp-actions{display:flex;gap:1rem;}
.pdp-add-cart{flex:1;font-family:var(--font);font-size:0.65rem;font-weight:300;letter-spacing:0.35em;text-transform:uppercase;color:var(--dark);background:var(--blue);border:none;padding:1rem 2rem;cursor:pointer;transition:background 0.3s;}
.pdp-add-cart:hover{background:var(--blue-light);}
.pdp-add-cart:disabled{opacity:0.5;cursor:not-allowed;}

/* ── CART PAGE ── */
.cart-wrap{padding:11rem 4rem 5rem;background:var(--dark);max-width:900px;margin:0 auto;}
.cart-wrap h1{font-family:var(--font);font-size:clamp(2rem,4vw,3rem);font-weight:300;color:var(--cream);margin-bottom:2rem;}
.cart-table{width:100%;border-collapse:collapse;}
.cart-table th{font-size:0.6rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--blue);text-align:left;padding-bottom:1rem;border-bottom:1px solid rgba(109,163,218,0.2);}
.cart-table td{padding:1.2rem 0;border-bottom:1px solid rgba(109,163,218,0.12);vertical-align:middle;}
.cart-item-img{width:80px;height:80px;object-fit:cover;border:1px solid rgba(109,163,218,0.15);margin-right:1rem;}
.cart-item-title{font-family:var(--font);color:var(--cream);font-size:1rem;text-decoration:none;}
.cart-item-variant{font-size:0.8rem;color:rgba(240,244,248,0.55);}
.cart-qty-input{width:60px;background:transparent;border:1px solid rgba(109,163,218,0.25);color:var(--cream);padding:0.5rem;font-family:var(--font);text-align:center;}
.cart-remove{color:rgba(240,244,248,0.5);font-size:0.7rem;text-decoration:underline;cursor:pointer;background:none;border:none;font-family:var(--font);}
.cart-summary{display:flex;justify-content:flex-end;margin-top:2rem;flex-direction:column;align-items:flex-end;gap:1rem;}
.cart-subtotal{font-family:var(--font);font-size:1.4rem;color:var(--cream);}
.cart-checkout-btn{font-family:var(--font);font-size:0.65rem;font-weight:300;letter-spacing:0.35em;text-transform:uppercase;color:var(--dark);background:var(--blue);border:none;padding:1rem 2.5rem;cursor:pointer;}
.cart-checkout-btn:hover{background:var(--blue-light);}
.cart-empty{text-align:center;padding:4rem 0;color:rgba(240,244,248,0.6);font-size:1rem;}
.cart-empty a{color:var(--blue);}

/* ── COLLECTION PAGE (fallback) ── */
.collection-wrap{padding:11rem 4rem 5rem;background:var(--dark);}
.collection-wrap .shop-category-title{text-align:center;margin-bottom:2rem;display:block;}

/* ---------- MODAL BACKDROP ---------- */
.modal-backdrop{
  position:fixed;inset:0;z-index:250;
  background:rgba(22,23,28,0.7);
  opacity:0;pointer-events:none;
  transition:opacity 0.35s ease;
}
.modal-backdrop.open{opacity:1;pointer-events:auto;}

/* ---------- CART DRAWER ---------- */
.cart-drawer{
  position:fixed;top:0;right:0;bottom:0;
  width:min(420px, 92vw);
  background:var(--dark);
  border-left:1px solid rgba(109,163,218,0.25);
  z-index:300;
  display:flex;flex-direction:column;
  transform:translateX(100%);
  transition:transform 0.4s cubic-bezier(.16,1,.3,1);
  font-family:var(--font);
}
.cart-drawer.open{transform:translateX(0);}
.cart-drawer-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:1.6rem 1.6rem 1.2rem;
  border-bottom:1px solid rgba(109,163,218,0.18);
}
.cart-drawer-header h3{font-weight:300;font-size:1.2rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--cream);}
.cart-drawer-body{flex:1;overflow-y:auto;padding:1.3rem 1.6rem;}
.cart-drawer-items{list-style:none;display:flex;flex-direction:column;gap:1.4rem;}
.cart-drawer-item{display:flex;gap:1rem;position:relative;padding-bottom:1.4rem;border-bottom:1px solid rgba(109,163,218,0.1);}
.cart-drawer-item-img{width:72px;height:72px;object-fit:cover;border:1px solid rgba(109,163,218,0.15);flex-shrink:0;}
.cart-drawer-item-info{flex:1;}
.cart-drawer-item-title{font-weight:300;font-size:0.95rem;color:var(--cream);display:block;margin-bottom:0.2rem;}
.cart-drawer-item-variant{font-size:0.75rem;opacity:0.55;margin-bottom:0.4rem;color:var(--cream);}
.cart-drawer-item-price{font-size:0.8rem;opacity:0.75;margin-bottom:0.6rem;color:var(--blue-light);}
.cart-drawer-qty{display:inline-flex;align-items:center;gap:0.8rem;border:1px solid rgba(109,163,218,0.3);padding:0.3rem 0.7rem;}
.cart-drawer-qty-btn{background:none;border:none;color:var(--cream);font-size:0.9rem;padding:0;width:16px;cursor:pointer;}
.cart-drawer-qty-value{font-size:0.85rem;min-width:1.2em;text-align:center;color:var(--cream);}
.cart-drawer-remove{position:absolute;top:0;right:0;background:none;border:none;color:rgba(240,244,248,0.5);font-size:1.1rem;line-height:1;cursor:pointer;}
.cart-drawer-remove:hover{color:var(--blue);}
.cart-drawer-empty{opacity:0.6;font-size:0.9rem;padding:2rem 0;text-align:center;color:var(--cream);}
.cart-drawer-footer{padding:1.4rem 1.6rem 1.6rem;border-top:1px solid rgba(109,163,218,0.18);}
.cart-drawer-subtotal{font-weight:300;font-size:1.1rem;color:var(--cream);margin-bottom:1rem;}
.cart-drawer-btn{display:block;width:100%;text-align:center;margin-bottom:0.7rem;padding:0.9rem;font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;text-decoration:none;transition:background 0.3s,color 0.3s;}
.cart-drawer-btn:last-child{margin-bottom:0;}
.cart-drawer-btn-primary{background:var(--blue);color:var(--dark);}
.cart-drawer-btn-primary:hover{background:var(--blue-light);}
.cart-drawer-btn-outline{background:transparent;color:var(--cream);border:1px solid rgba(109,163,218,0.4);}
.cart-drawer-btn-outline:hover{border-color:var(--blue);color:var(--blue);}

/* ---------- PAGE MODAL (Our Story, etc.) ---------- */
.page-modal{
  position:fixed;top:50%;left:50%;
  transform:translate(-50%, -48%);
  width:min(680px, 90vw);
  max-height:80vh;
  background:var(--dark);
  border:1px solid rgba(109,163,218,0.25);
  z-index:300;
  opacity:0;pointer-events:none;
  transition:opacity 0.35s ease, transform 0.35s ease;
  display:flex;flex-direction:column;
  font-family:var(--font);
}
.page-modal.open{opacity:1;pointer-events:auto;transform:translate(-50%, -50%);}
.page-modal-header{display:flex;justify-content:flex-end;padding:1rem 1rem 0;}
.page-modal-body{padding:0 2.5rem 2.5rem;overflow-y:auto;color:var(--cream);}
.page-modal-body .story-page{padding-top:0 !important;background:transparent !important;}
.page-modal-loading{opacity:0.5;font-size:0.85rem;padding:2rem 0;text-align:center;}

.modal-close{
  background:none;border:1px solid rgba(109,163,218,0.35);
  color:var(--cream);
  width:34px;height:34px;
  font-size:1.2rem;line-height:1;
  cursor:pointer;
}
.modal-close:hover{border-color:var(--blue);color:var(--blue);}

@media (max-width: 600px){
  .page-modal{width:94vw;max-height:85vh;}
  .page-modal-body{padding:0 1.3rem 1.5rem;}
}

/* ---------- PAGE MODAL: TEXT-ONLY INFO BOX ---------- */
.page-modal-body{padding:2.5rem 2.5rem 3rem;}
.page-modal-overline{
  text-align:center;
  font-size:0.65rem;
  letter-spacing:0.35em;
  text-transform:uppercase;
  color:var(--blue);
  margin-bottom:1.2rem;
}
.page-modal-title{
  text-align:center;
  font-weight:300;
  font-size:clamp(1.6rem, 3.5vw, 2.4rem);
  letter-spacing:0.03em;
  color:var(--cream);
  margin-bottom:1.8rem;
}
.page-modal-text{
  max-width:520px;
  margin:0 auto;
  font-weight:300;
  font-size:1rem;
  line-height:1.9;
  color:rgba(240,244,248,0.85);
  text-align:left;
}
.page-modal-text p{margin-bottom:1.2rem;}
.page-modal-text p:last-child{margin-bottom:0;}

/* ================================================================
   MOBILE RESPONSIVE FIXES
   ================================================================ */

/* ---------- MOBILE NAV TOGGLE (hamburger) ---------- */
.nav-toggle{
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  width:32px;height:32px;
  background:none;
  border:none;
  cursor:pointer;
  padding:0;
}
.nav-toggle span{
  display:block;
  width:100%;
  height:1px;
  background:var(--blue);
  transition:transform 0.3s ease, opacity 0.3s ease;
}
.nav-toggle.open span:nth-child(1){transform:translateY(6px) rotate(45deg);}
.nav-toggle.open span:nth-child(2){opacity:0;}
.nav-toggle.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}

@media (max-width: 860px){
  /* ---- NAV ---- */
  nav{
    grid-template-columns:auto 1fr auto;
    padding:24px 1.25rem 0;
    height:100px;
    gap:1rem;
  }
  .nav-brand-logo img{height:38px !important;}
  nav > div{gap:0.2rem !important;}
  nav > div > span{font-size:1rem !important;letter-spacing:0.12em !important;}
  .nav-toggle{display:flex;}
  .nav-links{
    display:none;
    position:fixed;
    top:100px;
    left:0;right:0;
    background:rgba(22,23,28,0.98);
    backdrop-filter:blur(12px);
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:1rem 1.5rem 1.5rem;
    border-bottom:1px solid rgba(109,163,218,0.15);
    z-index:99;
  }
  .nav-links.open{display:flex;}
  .nav-links li{width:100%;padding:0.9rem 0;border-bottom:1px solid rgba(109,163,218,0.08);}
  .nav-links a{font-size:0.85rem;}
  .hero-nav-mask{height:100px;}

  /* ---- SCROLL HORSE ---- */
  #scroll-horse{width:80px;height:24px;}
  #header-top-strip{height:24px;}

  /* ---- HERO ---- */
  .hero{min-height:560px;}
  .hero-content{padding:0 1.25rem 3.5rem;}
  .hero-title{font-size:clamp(2.4rem,11vw,3.8rem);}

  /* ---- MARQUEE ---- */
  .sts-marquee-inner span{font-size:11px;padding:0 1.2rem;}

  /* ---- SHOP PAGE ---- */
  .shop-page{padding:2.5rem 1.25rem;}
  .shop-category{margin-bottom:2.5rem;}
  .shop-category-header{flex-direction:column;align-items:flex-start;gap:0.3rem;}
  .shop-grid{grid-template-columns:repeat(auto-fill, minmax(150px, 1fr));gap:1rem;}
  .shop-card-body{padding:0.9rem 1rem 1.1rem;}
  .shop-card-name{font-size:0.95rem;}

  /* ---- PRODUCT MODAL (quick view) ---- */
  .modal-inner{grid-template-columns:1fr;padding:5rem 1.25rem 3rem;gap:2rem;}
  .modal-close{top:1rem;right:1rem;padding:0.5rem 0.9rem;font-size:0.6rem;}

  /* ---- REVIEWS / INSTAGRAM ---- */
  .reviews-section,.instagram-section{padding:2.5rem 1.25rem 3rem;}
  .reviews-grid{grid-template-columns:1fr;}

  /* ---- PRODUCT PAGE ---- */
  .pdp-wrap{padding:7.5rem 1.25rem 3rem;}
  .pdp-grid{grid-template-columns:1fr;gap:1.75rem;}
  .pdp-thumbs{grid-template-columns:repeat(4,1fr);}
  .pdp-actions{flex-direction:column;}

  /* ---- CART PAGE ---- */
  .cart-wrap{padding:7.5rem 1.25rem 3rem;}
  .cart-table{display:block;overflow-x:auto;white-space:nowrap;}
  .cart-item-img{width:56px;height:56px;}
  .cart-summary{align-items:stretch;}
  .cart-checkout-btn{width:100%;}

  /* ---- COLLECTION PAGE ---- */
  .collection-wrap{padding:7.5rem 1.25rem 3rem;}

  /* ---- FOOTER ---- */
  footer{
    grid-template-columns:1fr;
    padding:2.5rem 1.25rem 1.5rem;
    gap:1.75rem;
    text-align:left;
  }
  .footer-bottom{
    width:calc(100% + 2.5rem) !important;
    margin:1.5rem -1.25rem -1.5rem !important;
  }

  /* ---- CART DRAWER / PAGE MODAL ---- */
  .cart-drawer{width:100vw;}
  .cart-drawer-header,.cart-drawer-body,.cart-drawer-footer{padding-left:1.25rem;padding-right:1.25rem;}
  .page-modal-body{padding:0 1.5rem 2rem;}
}

@media (max-width: 420px){
  .hero-title{font-size:clamp(2.1rem,12vw,3rem);}
  .shop-grid{grid-template-columns:repeat(auto-fill, minmax(135px, 1fr));}
}

/* ---- OUR STORY PAGE (also used inside the popup) ---- */
@media (max-width: 860px){
  .story-image-text{
    grid-template-columns:1fr !important;
    gap:1.5rem !important;
    padding:0 1.25rem !important;
    direction:ltr !important;
  }
  .story-stats{
    gap:2rem !important;
    padding:2rem 1.25rem !important;
  }
}

/* ---------- SIZE GUIDE TABLE ---------- */
.size-guide-intro{
  text-align:center;
  font-size:0.85rem;
  color:rgba(240,244,248,0.65);
  margin-bottom:1.5rem;
  line-height:1.7;
}
.size-guide-table{width:100%;border-collapse:collapse;margin-top:0.5rem;}
.size-guide-table th{
  font-size:0.62rem;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--blue);text-align:left;padding:0.7rem 0.5rem;
  border-bottom:1px solid rgba(109,163,218,0.3);
}
.size-guide-table td{
  padding:0.8rem 0.5rem;font-size:0.85rem;color:var(--cream);
  border-bottom:1px solid rgba(109,163,218,0.1);
}
.size-guide-table tr:hover td{background:rgba(109,163,218,0.04);}

/* ---------- PRODUCT IMAGE ZOOM (magnifying glass) ---------- */
.pdp-zoom-wrap{position:relative;overflow:hidden;cursor:zoom-in;}
.pdp-zoom-lens{
  display:none;
  position:absolute;
  width:180px;height:180px;
  border-radius:50%;
  border:2px solid rgba(109,163,218,0.8);
  box-shadow:0 0 0 2px rgba(109,163,218,0.2), 0 8px 32px rgba(0,0,0,0.5);
  pointer-events:none;
  background-repeat:no-repeat;
  z-index:20;
  transform:translate(-50%,-50%);
}
.pdp-zoom-wrap.zooming .pdp-zoom-lens{display:block;}
@media (max-width: 860px){
  .pdp-zoom-lens{display:none !important;}
  .pdp-zoom-wrap{cursor:default;}
}

/* ---------- RECENTLY VIEWED ---------- */
.recently-viewed{margin-top:4rem;padding-top:2.5rem;border-top:1px solid rgba(109,163,218,0.15);max-width:1200px;margin-left:auto;margin-right:auto;}
.recently-viewed-label{font-size:0.62rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--blue);margin-bottom:1.2rem;}
.recently-viewed-track{display:grid;grid-template-columns:repeat(auto-fill, minmax(160px, 1fr));gap:1.2rem;}
.rv-card{display:block;text-decoration:none;}
.rv-card-img{width:100%;aspect-ratio:3/4;object-fit:cover;background:rgba(109,163,218,0.08);border:1px solid rgba(109,163,218,0.12);display:block;margin-bottom:0.6rem;}
.rv-card-title{font-size:0.82rem;color:var(--cream);margin-bottom:0.2rem;line-height:1.3;}
.rv-card-price{font-size:0.75rem;color:var(--blue-light);}

@media (max-width: 860px){
  .recently-viewed{margin-top:2.5rem;padding-top:1.75rem;}
  .recently-viewed-track{grid-template-columns:repeat(auto-fill, minmax(130px, 1fr));gap:0.8rem;}
}

/* ---------- INSTAGRAM GRID ---------- */
.instagram-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:0.4rem;
  max-width:1100px;
  margin:0 auto;
}
.instagram-grid-item{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;}
.instagram-grid-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease;}
.instagram-grid-item:hover img{transform:scale(1.08);}
.instagram-grid-placeholder{width:100%;height:100%;background:rgba(109,163,218,0.08);}
.instagram-grid-overlay{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(22,23,28,0.35);
  opacity:0;transition:opacity 0.3s ease;
}
.instagram-grid-item:hover .instagram-grid-overlay{opacity:1;}

/* ---------- CART DRAWER SKELETON LOADING STATE ---------- */
.cart-skeleton{display:flex;flex-direction:column;gap:1.4rem;}
.cart-skeleton-row{display:flex;gap:1rem;}
.cart-skeleton-img{width:72px;height:72px;flex-shrink:0;background:rgba(109,163,218,0.08);}
.cart-skeleton-lines{flex:1;display:flex;flex-direction:column;gap:0.6rem;padding-top:0.3rem;}
.cart-skeleton-line{height:10px;background:rgba(109,163,218,0.08);}
.shimmer{
  position:relative;
  overflow:hidden;
}
.shimmer::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg, transparent, rgba(109,163,218,0.15), transparent);
  animation:shimmerSweep 1.4s ease-in-out infinite;
}
@keyframes shimmerSweep{
  0%{transform:translateX(-100%);}
  100%{transform:translateX(100%);}
}
@media (prefers-reduced-motion: reduce){
  .shimmer::after{animation:none;}
}

/* ---------- PAGE TRANSITIONS ---------- */
#page-content{
  transition:opacity 0.22s ease, transform 0.22s ease;
  opacity:1;
  transform:translateY(0);
}
#page-content.page-transitioning{
  opacity:0;
  transform:translateY(8px);
}
@media (prefers-reduced-motion: reduce){
  #page-content{transition:none;}
}

/* ---------- CART PREVIEW BANNER ---------- */
.cart-preview-banner{
  max-width:1200px;
  margin:0 auto 2.5rem;
  padding:1rem 1.5rem;
  display:flex;
  align-items:center;
  gap:1.2rem;
  background:rgba(109,163,218,0.06);
  border:1px solid rgba(109,163,218,0.2);
}
.cart-preview-label{
  font-size:0.62rem;letter-spacing:0.25em;text-transform:uppercase;
  color:var(--blue);flex-shrink:0;
}
.cart-preview-track{display:flex;gap:0.6rem;flex:1;overflow-x:auto;}
.cart-preview-item{width:48px;height:48px;flex-shrink:0;border:1px solid rgba(109,163,218,0.25);overflow:hidden;position:relative;}
.cart-preview-item img{width:100%;height:100%;object-fit:cover;display:block;}
.cart-preview-item .cart-preview-qty{
  position:absolute;bottom:0;right:0;
  background:var(--blue);color:var(--dark);
  font-size:0.55rem;font-weight:700;
  padding:1px 4px;
  line-height:1.4;
}
.cart-preview-view{
  flex-shrink:0;font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--blue-light);text-decoration:none;white-space:nowrap;
}
.cart-preview-view:hover{color:var(--blue);}

@media (max-width: 860px){
  .cart-preview-banner{margin:0 auto 1.75rem;padding:0.8rem 1rem;flex-wrap:wrap;}
  .cart-preview-label{width:100%;}
}

#shopify-section-178307559476f30cc1{background:#16171c;padding:2rem 0;}
/* Policy pages (Shipping & Returns, Terms, etc.): light text on the dark theme background */
.shopify-policy__container, 
.shopify-policy__container *, 
.template-policy * {
    color: var(--cream) !important;
}
.shopify-policy__container a,
.template-policy a {
    color: var(--blue-light) !important;
}
/* Target ONLY the Terms of Service and legal policy layouts */
.template-policy #MainContent, 
.template-policy main, 
.shopify-policy__container {
    padding-top: 180px !important;
    margin-top: 0px !important;
}

/* Mobile view spacing for policy pages only */
@media screen and (max-width: 767px) {
    .template-policy #MainContent, 
    .template-policy main, 
    .shopify-policy__container {
        padding-top: 130px !important;
    }
}
/* Isolated Text Color Override For Social & TikTok Feed Widgets */
[class*="tiktok"] *, 
[class*="feed"] *, 
[id*="tiktok"] *,
.eapps-tiktok-feed *,
.covet-pics-gallery * {
    color: #1a1a1a !important;
}
/* Un-squish the product image when clicked/zoomed on mobile */
@media screen and (max-width: 767px) {
  img#pdp-main-img,
  [id*="pdp-main-img"],
  .product-popup-modal img,
  .fancybox-content img,
  .lightbox-img {
    width: 100% !important;
    height: auto !important;
    min-height: unset !important;
    max-height: 80vh !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
  }
}
/* Completely disables and hides the broken blue loading overlay screen */
.loading-overlay,
.cart__overlay,
.drawer-backdrop,
.js-drawer-open-bg,
.is-loading::after {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Unfreezes the page background so you can keep scrolling and clicking */
body, 
html, 
.page-container {
  overflow: auto !important;
  pointer-events: auto !important;
}
