but*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3efe7;color:#111;font-family:Arial,Helvetica,sans-serif}a{color:inherit}button,a{cursor:pointer}.top{text-align:center;background:#0d0d0d;color:#fff;padding:11px 10px;font-size:10px;letter-spacing:3px}.site-header{height:86px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:rgba(243,239,231,.96);backdrop-filter:blur(12px);z-index:10;border-bottom:1px solid #d8d1c6}.brand img{width:118px;height:58px;object-fit:contain}.nav{display:flex;gap:32px}.nav a{text-decoration:none;font-size:10px;letter-spacing:2px}.actions{display:flex;gap:8px}.actions button,.ghost{border:0;background:none;font-size:10px;letter-spacing:1px;padding:10px}.hero{min-height:calc(100vh - 120px);display:grid;grid-template-columns:1.05fr .95fr}.hero-copy{padding:13vh 8%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:10px;letter-spacing:3px}.hero h1,.display{font:500 clamp(58px,8vw,118px)/.84 Georgia,'Times New Roman',serif;letter-spacing:-4px;margin:28px 0}.hero p{max-width:510px;color:#5f5a53;line-height:1.8}.cta{display:inline-block;width:max-content;background:#111;color:#fff;padding:16px 24px;margin-top:22px;text-decoration:none;font-size:10px;letter-spacing:2px}.hero-art{background:#ded7cd;min-height:650px;display:grid;place-items:center;overflow:hidden}.hero-art img{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}.split-banner{display:grid;grid-template-columns:1fr 1fr;background:#111;color:#eee}.split-banner .copy{padding:90px 10%}.split-banner img{width:100%;height:100%;max-height:620px;object-fit:cover;filter:invert(1);mix-blend-mode:screen}.split-banner h2,.page-title{font:500 clamp(50px,7vw,92px)/.9 Georgia;margin:20px 0}.split-banner p{color:#aaa;line-height:1.8}.page-head{padding:90px 5% 55px;border-bottom:1px solid #d5cec3}.page-head p{max-width:620px;color:#666;line-height:1.7}.shop{padding:55px 5% 110px}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#e8e1d6;overflow:hidden}.pic{aspect-ratio:4/5;display:grid;place-items:center;position:relative;background:linear-gradient(145deg,var(--c),#e9e1d6)}.pic:after{content:attr(data-color);position:absolute;bottom:18px;left:18px;font-size:9px;letter-spacing:2px;color:rgba(255,255,255,.75);mix-blend-mode:difference}.pic img{width:56%;max-height:55%;object-fit:contain;mix-blend-mode:multiply}.info{padding:18px}.info-row{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.info h3,.info b{font-size:12px;margin:0}.info p{font-size:9px;color:#666;letter-spacing:1px}.info button{width:100%;border:1px solid #999;background:transparent;padding:12px;margin-top:6px;letter-spacing:1px}.story-page{display:grid;grid-template-columns:1fr 1fr;min-height:70vh;background:#111;color:#eee}.story-page .art{padding:6%;display:grid;place-items:center}.story-page img{width:100%;max-height:700px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}.story-page .copy{padding:10%;display:flex;flex-direction:column;justify-content:center}.story-page p{color:#aaa;line-height:2;max-width:560px}.house-page{text-align:center;padding:110px 5%;min-height:70vh;background:#d7c8ae}.house-page img{width:min(520px,85%);mix-blend-mode:multiply}.house-page h1{font:500 clamp(52px,8vw,100px)/.9 Georgia;margin:30px 0}.house-page p{max-width:600px;margin:0 auto;line-height:1.8}.site-footer{background:#0b0b0b;color:#eee;padding:55px 5%;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:2px}.site-footer img{width:105px;filter:invert(1)}aside{position:fixed;right:-440px;top:0;width:min(440px,96vw);height:100vh;background:#f5f1e9;z-index:30;padding:30px;transition:.3s;box-shadow:-20px 0 60px #0004}aside.open{right:0}.x{float:right;font-size:30px;border:0;background:none}.line{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid #ccc}.dark{display:inline-block;background:#111!important;color:#fff!important;padding:16px 24px!important;margin-top:20px;border:0;text-decoration:none;font-size:9px;letter-spacing:2px}.modal{display:none;position:fixed;inset:0;background:#000b;z-index:40;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.box{width:min(460px,100%);background:#f5f1e9;padding:35px}.box>img{display:block;width:180px;margin:auto}.tabs{display:grid;grid-template-columns:1fr 1fr;margin:25px 0 10px}.tabs button{padding:12px;border:0;border-bottom:1px solid #aaa;background:none}input,textarea{width:100%;padding:15px;margin:7px 0;border:1px solid #bbb;background:#fffaf3}textarea{height:100px}.box .dark{width:100%}.empty-note{padding:60px 0;color:#777}.mobile-menu{display:none}@media(max-width:800px){.site-header{height:76px;padding:0 4%}.brand img{width:88px}.nav{display:none}.actions button{font-size:9px;padding:8px 4px}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:80px 6%}.hero h1,.display{letter-spacing:-2px}.hero-art{min-height:480px}.split-banner{grid-template-columns:1fr}.split-banner .copy{padding:70px 6%}.products{grid-template-columns:repeat(2,1fr);gap:8px}.shop{padding:35px 3% 80px}.page-head{padding:70px 5% 35px}.story-page{grid-template-columns:1fr}.story-page .copy{padding:70px 7%}.site-footer{flex-direction:column;gap:25px;text-align:center}.pic img{width:64%}}@media(max-width:430px){.products{grid-template-columns:1fr 1fr}.info{padding:12px}.info-row{display:block}.info b{display:block;margin-top:5px}.pic:after{bottom:10px;left:10px}.hero-art{min-height:420px}}
.shop-tools{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:10px;margin-bottom:14px}.shop-tools input,.shop-tools select,.size-label select{margin:0;background:#fff;border:1px solid #c9c0b4;padding:13px}.results{font-size:9px;letter-spacing:2px;margin:12px 0 22px;color:#6d675f}.pic{background:#111;aspect-ratio:1/1.15}.pic img{width:100%;height:100%;max-height:none;object-fit:cover;mix-blend-mode:normal}.pic:after{display:none}.card{background:#fff;border:1px solid #ddd5ca}.colorway{margin:0 0 8px!important}.size-label{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.5px;margin-top:14px}.size-label select{width:90px;padding:8px}.cart-line{display:grid;grid-template-columns:74px 1fr auto;gap:12px;align-items:start;padding:15px 0;border-bottom:1px solid #ccc}.cart-line img{width:74px;height:86px;object-fit:cover;background:#111}.cart-line small{display:block;color:#666;margin:6px 0}.cart-line strong{font-size:11px}.qty{display:flex;align-items:center;gap:7px}.qty button{border:1px solid #bbb;background:#fff;min-width:27px;height:27px}.qty .remove{border:0;background:none;font-size:8px;text-decoration:underline}.bag-total{display:flex;justify-content:space-between;align-items:center;margin-top:22px;border-top:1px solid #111;padding-top:16px}.checkout-note{font-size:11px;color:#666}@media(max-width:800px){.shop-tools{grid-template-columns:1fr 1fr}.shop-tools input{grid-column:1/-1}}@media(max-width:430px){.shop-tools{grid-template-columns:1fr}.shop-tools input{grid-column:auto}.products{grid-template-columns:1fr 1fr}.pic{aspect-ratio:4/5}.size-label{display:block}.size-label select{width:100%;margin-top:6px}}
/* Retail storefront enhancements */
.shop-tools{position:sticky;top:74px;z-index:5;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);padding:16px;border:1px solid #ddd;box-shadow:0 8px 25px rgba(0,0,0,.06)}
.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.card{transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,.12)}.pic{aspect-ratio:1/1;overflow:hidden;background:#f4f4f4}.pic img{width:100%;height:100%;object-fit:cover}.info-row{gap:12px}.info button{width:100%}#bag{width:min(480px,100vw)}.cart-line img{width:86px;height:86px;object-fit:cover;border-radius:6px}.qty button{min-width:34px}.modal .box{max-height:90vh;overflow:auto}
@media(max-width:1050px){.products{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.products{grid-template-columns:repeat(2,1fr)}.shop-tools{top:58px;grid-template-columns:1fr 1fr}.shop-tools input{grid-column:1/-1}}@media(max-width:480px){.products{grid-template-columns:1fr 1fr;gap:8px}.info{padding:12px}.info h3{font-size:14px}.pic{aspect-ratio:4/5}.page-head{padding-left:18px;padding-right:18px}}
/* GRIM production retail layer */
body{background:#f7f5f1}.hamb{display:none;border:0;background:none;font-size:22px}.mobile-nav{display:none}.retail-hero{display:grid;grid-template-columns:.85fr 1.15fr;min-height:650px;background:#111;color:#fff}.retail-hero>div{padding:9% 10%;display:flex;flex-direction:column;justify-content:center}.retail-hero h1{font:500 clamp(60px,7.5vw,118px)/.82 Georgia,serif;letter-spacing:-4px;margin:25px 0}.retail-hero p{max-width:470px;color:#bbb;line-height:1.7}.retail-hero img{width:100%;height:100%;max-height:760px;object-fit:cover}.benefits{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-bottom:1px solid #ddd}.benefits div{padding:25px;border-right:1px solid #ddd}.benefits b,.benefits span{display:block}.benefits b{font-size:10px;letter-spacing:1.5px}.benefits span{font-size:11px;color:#777;margin-top:7px}.category-strip{display:flex;gap:8px;overflow:auto;padding:22px 5%;background:#eee9e1}.category-strip button{white-space:nowrap;border:1px solid #c9c1b6;background:#fff;padding:12px 18px;font-size:9px;letter-spacing:1.5px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section-heading h2,.newsletter h2,.help h2{font:500 clamp(38px,5vw,68px)/.95 Georgia,serif;margin:10px 0}.section-heading p{max-width:420px;color:#777;line-height:1.6}.results{display:flex;justify-content:space-between}.results button{border:0;background:none;text-decoration:underline;font-size:9px;letter-spacing:1px}.card .info button{background:#111;color:#fff;border-color:#111;font-weight:bold}.newsletter{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:#171717;color:#fff;padding:80px 7%;align-items:center}.newsletter p{color:#aaa}.newsletter form{max-width:520px;width:100%;justify-self:end}.newsletter input{background:#252525;border-color:#444;color:#fff}.newsletter small{display:block;margin-top:10px}.help{padding:90px 5%;background:#ebe6de}.help-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.help-grid button{background:#fff;border:1px solid #d7d0c6;text-align:left;padding:28px;min-height:130px}.help-grid b,.help-grid span{display:block}.help-grid b{font-size:11px;letter-spacing:1.5px}.help-grid span{color:#777;font-size:12px;line-height:1.5;margin-top:10px}.faq{max-width:900px;margin:45px auto 0}.faq details{background:#fff;border-bottom:1px solid #ddd;padding:20px}.faq summary{font-weight:bold;font-size:12px;cursor:pointer}.faq p{color:#666;line-height:1.7}.site-footer{align-items:flex-start;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:50px}.site-footer>div{display:flex;flex-direction:column;gap:12px}.site-footer a{text-decoration:none;color:#bbb;letter-spacing:1px}.site-footer b{font-size:10px}.site-footer p{color:#aaa;line-height:1.7}.muted{color:#777;font-size:11px;line-height:1.5}.full{width:100%}.continue{width:100%;border:0;background:none;text-decoration:underline;padding:14px}.checkout-steps{display:flex;gap:10px;margin:15px 0 20px}.checkout-steps b{flex:1;border-top:2px solid #ccc;padding-top:8px;font-size:8px;letter-spacing:1px}.checkout-steps .active{border-color:#111}.check{display:flex;gap:10px;font-size:10px;line-height:1.4;margin:10px 0}.check input{width:auto;margin:0}.care-fab{position:fixed;right:20px;bottom:20px;z-index:20;background:#111;color:#fff;border:1px solid #555;border-radius:40px;padding:13px 18px;box-shadow:0 8px 30px #0004;font-size:9px;letter-spacing:1.2px}.care-fab span{display:inline-grid;place-items:center;width:20px;height:20px;border:1px solid #fff;border-radius:50%;margin-right:7px}.top span{opacity:.4;margin:0 8px}
@media(max-width:800px){.hamb{display:block}.site-header{display:grid;grid-template-columns:35px 1fr auto}.brand{justify-self:center}.actions button:first-child{display:none}.mobile-nav.open{display:flex;position:fixed;top:105px;left:0;right:0;z-index:25;background:#f7f5f1;flex-direction:column;padding:25px;gap:22px;border-bottom:1px solid #ccc}.mobile-nav a{text-decoration:none;font-size:11px;letter-spacing:2px}.retail-hero{grid-template-columns:1fr;min-height:0}.retail-hero>div{padding:70px 7%}.retail-hero img{height:440px}.benefits{grid-template-columns:1fr 1fr}.section-heading{display:block}.help-grid{grid-template-columns:1fr 1fr}.newsletter{grid-template-columns:1fr;padding:60px 7%;gap:20px}.newsletter form{justify-self:start}.site-footer{grid-template-columns:1fr 1fr}.care-fab{right:12px;bottom:12px}.top{font-size:8px;letter-spacing:1.5px}}
@media(max-width:480px){.actions #acct{display:none}.retail-hero h1{font-size:58px}.benefits{grid-template-columns:1fr 1fr}.benefits div{padding:18px}.help-grid{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr 1fr;gap:35px}.products{grid-template-columns:1fr 1fr}.care-fab{padding:11px 13px}.section-heading h2{font-size:42px}}
#marketBtn{white-space:nowrap}.box label{display:block;margin:12px 0;font-size:12px;font-weight:700;letter-spacing:.08em}.box label select{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #bbb;background:#fff;font:inherit}

.home-links{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#111;padding:1px}.home-links a{min-height:210px;background:linear-gradient(145deg,#160d20,#182b5c 55%,#8f164d);color:#fff;text-decoration:none;padding:32px;display:flex;flex-direction:column;justify-content:flex-end;gap:9px}.home-links span{opacity:.55;font-size:11px}.home-links b{letter-spacing:2px}.home-links small{opacity:.75}.info button,.dark{background:linear-gradient(90deg,#17111f,#52125f,#a31650,#174b9c)!important;color:#fff!important;border:0!important}.card{border-radius:18px}.pic{border-radius:18px 18px 0 0}.products{align-items:start}@media(max-width:800px){.home-links{grid-template-columns:1fr 1fr}}@media(max-width:480px){.home-links{grid-template-columns:1fr}.products{grid-template-columns:1fr}}

/* V3 retail-store UX */
.shop{max-width:1440px;margin:auto;padding:24px 4vw 72px}.shop-tools{position:sticky;top:74px;z-index:20;background:rgba(250,248,244,.96);backdrop-filter:blur(12px);padding:14px;border:1px solid #e8e0d6;border-radius:18px;box-shadow:0 8px 30px rgba(0,0,0,.06)}
.category-strip{display:flex;gap:10px;overflow-x:auto;padding:18px 0 10px;scrollbar-width:none}.category-strip button{white-space:nowrap;border:1px solid #ddd2c6;background:#fff;border-radius:999px;padding:11px 17px;font-weight:800;letter-spacing:.08em}.category-strip button:hover{background:#111;color:#fff}
.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:16px}.card{position:relative;overflow:hidden;border:1px solid #e9e1d8;border-radius:20px;background:#fff;box-shadow:0 7px 22px rgba(31,20,12,.07)}.pic{position:relative;aspect-ratio:4/5;overflow:hidden;background:#f3efe9}.pic img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.card:hover .pic img{transform:scale(1.025)}.type-pill{position:absolute;left:12px;bottom:12px;background:rgba(17,17,17,.88);color:#fff;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.06em}.product-type{display:block;margin:4px 0 14px;color:#777;font-weight:700}.pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin:38px 0 0}.pagination button{border:1px solid #111;background:#fff;padding:12px 18px;border-radius:10px;font-weight:800}.pagination button:disabled{opacity:.35}.pagination span{font-weight:800}
@media(max-width:1000px){.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.shop{padding:16px 14px 60px}.shop-tools{top:58px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.shop-tools input{grid-column:1/-1}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{border-radius:14px}.info{padding:14px}.info-row{display:block}.info-row h3{font-size:19px}.info-row b{display:block;margin-top:5px}.size-label select{min-height:44px}.card .info>button{min-height:48px;font-size:12px}.page-head{padding-bottom:28px}}


/* V4 mobile header/cart collision fix */
@media(max-width:800px){
  .site-header{display:flex!important;grid-template-columns:none!important;height:76px!important;padding:0 10px!important;gap:6px!important;justify-content:flex-start!important;overflow:visible}
  .site-header .brand{display:block!important;flex:0 0 auto!important;justify-self:auto!important;min-width:0}
  .site-header .brand img{width:76px!important;height:54px!important;object-fit:contain}
  .site-header .nav{display:none!important}
  .site-header .actions{margin-left:auto!important;display:flex!important;align-items:center!important;gap:0!important;min-width:0}
  .site-header .actions #acct{display:none!important}
  .site-header .actions button{font-size:9px!important;padding:9px 5px!important;white-space:nowrap!important;letter-spacing:.7px!important;max-width:none!important}
  .shop-tools{top:76px!important}
}
@media(max-width:390px){
  .site-header .brand img{width:68px!important}
  .site-header .actions button{font-size:8.5px!important;padding:8px 3px!important}
}
.type-pill,.product-type{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* ===== GRIM LUXURY V5.1 ===== */

:root{
  --grim-black:#090909;
  --grim-ink:#151015;
  --grim-ivory:#f4efe6;
  --grim-wine:#6f0d3d;
  --grim-crimson:#b31355;
  --grim-purple:#40104f;
  --grim-blue:#1749a8;
  --grim-gold:#c6a15b;
  --grim-line:rgba(198,161,91,.28);
}

/* richer site atmosphere */
body{
  background:
    radial-gradient(circle at 15% 15%,rgba(111,13,61,.12),transparent 32%),
    radial-gradient(circle at 85% 45%,rgba(23,73,168,.10),transparent 35%),
    var(--grim-black);
}

/* luxury header */
header,
.site-header{
  background:rgba(9,9,9,.92);
  border-bottom:1px solid var(--grim-line);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

/* premium links */
a{
  transition:opacity .25s ease,color .25s ease;
}

a:hover{
  color:var(--grim-gold);
}

/* premium buttons */
button,
.btn,
.cta{
  letter-spacing:.12em;
  transition:
    transform .2s ease,
    box-shadow .25s ease,
    filter .25s ease;
}

button:hover,
.btn:hover,
.cta:hover{
  transform:translateY(-1px);
}

/* GRIM signature gradient */
.checkout button[type="submit"],
#payCard,
#payTransfer,
.cta{
  background:
    linear-gradient(
      105deg,
      #180d22 0%,
      var(--grim-purple) 24%,
      var(--grim-crimson) 57%,
      var(--grim-blue) 100%
    );
  color:white;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 12px 35px rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.10);
}

/* elegant modal treatment */
.modal .box,
.checkout-box{
  background:
    linear-gradient(
      145deg,
      rgba(248,243,234,.99),
      rgba(238,230,217,.99)
    );
  border-top:3px solid var(--grim-gold);
  box-shadow:
    0 28px 80px rgba(0,0,0,.55);
}

/* cart luxury */
#bag{
  background:
    linear-gradient(
      180deg,
      #f6f1e8 0%,
      #eee5d8 100%
    );
}

#bag h2{
  letter-spacing:.08em;
}

.bag-total{
  border-top:1px solid rgba(70,45,35,.22);
}

/* product imagery feels more editorial */
.product-card img,
.product img{
  transition:transform .45s ease,filter .45s ease;
}

.product-card:hover img,
.product:hover img{
  transform:scale(1.025);
  filter:contrast(1.03);
}

/* subtle gold separators */
.site-footer,
.benefits,
.home-links{
  border-color:var(--grim-line);
}
/* ===== GRIM MOBILE POSITION FIX ===== */

html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}

/* Fully hide cart when closed */
aside#bag{
  right:0 !important;
  width:min(480px,100vw) !important;
  max-width:100vw;
  transform:translateX(105%);
  transition:transform .3s ease !important;
}

aside#bag.open{
  right:0 !important;
  transform:translateX(0);
}

/* Mobile navigation should scroll with the page */
@media(max-width:800px){

  .mobile-nav.open{
    position:absolute !important;
    top:105px !important;
    left:0 !important;
    right:auto !important;
    width:100% !important;
    max-width:100vw !important;
    box-sizing:border-box;
  }

}
/* ===== GRIM MOBILE OVERFLOW FIX ===== */

html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}

/* Cart completely off-screen when closed */
#bag{
  right:0 !important;
  width:min(480px,100vw) !important;
  max-width:100vw !important;
  transform:translateX(105%);
  transition:transform .3s ease !important;
}

#bag.open{
  right:0 !important;
  transform:translateX(0);
}

/* Stop mobile menu hanging while page scrolls */
@media(max-width:800px){
  .mobile-nav.open{
    position:absolute !important;
    top:105px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:100vw !important;
  }
}
/* ===== GRIM SHOP + CHECKOUT LUXURY COLOR ===== */

/* SHOP PAGE */

.shop{
  background:
    radial-gradient(circle at 8% 12%,rgba(111,13,61,.20),transparent 26%),
    radial-gradient(circle at 92% 42%,rgba(23,73,168,.18),transparent 30%),
    #090909;
}

.card{
  overflow:hidden;
  border:1px solid rgba(198,161,91,.42) !important;
  border-radius:18px;
  background:#f5f0e8 !important;
  box-shadow:
    0 12px 32px rgba(0,0,0,.32),
    0 0 0 1px rgba(255,255,255,.03);
}

.card .info{
  background:
    linear-gradient(
      145deg,
      #faf6ef 0%,
      #f1e7dc 62%,
      #ede2eb 100%
    );
}

.card h3{
  color:#160d18;
}

.colorway{
  color:#79143f !important;
  letter-spacing:.08em;
}

.card .info button{
  background:
    linear-gradient(
      105deg,
      #1b0d25 0%,
      #481052 28%,
      #b31355 64%,
      #1749a8 100%
    ) !important;
  border:1px solid rgba(198,161,91,.55) !important;
  color:#fff !important;
  box-shadow:0 10px 25px rgba(64,16,79,.25);
}

.size-label select{
  background:
    linear-gradient(135deg,#fff,#f1e8f2) !important;
  border:1px solid rgba(111,13,61,.30) !important;
}


/* CHECKOUT */

#checkout{
  background:rgba(3,3,5,.78);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

#checkout .checkout-box{
  position:relative;
  background:
    radial-gradient(circle at 0% 0%,rgba(179,19,85,.10),transparent 32%),
    radial-gradient(circle at 100% 30%,rgba(23,73,168,.10),transparent 35%),
    linear-gradient(145deg,#f8f2e9,#eee5db) !important;

  border-top:4px solid #c6a15b !important;
  box-shadow:
    0 30px 90px rgba(0,0,0,.65),
    inset 0 1px rgba(255,255,255,.8);
}

#checkout .eyebrow{
  color:#6f0d3d;
  font-weight:700;
}

#checkout h2{
  color:#160d18;
}

#checkout h3{
  color:#6f0d3d;
  letter-spacing:.04em;
}

#grimCheckoutForm input,
#grimCheckoutForm select,
#grimCheckoutForm textarea{
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(64,16,79,.23) !important;
  color:#171117;
}

#grimCheckoutForm input:focus,
#grimCheckoutForm select:focus,
#grimCheckoutForm textarea:focus{
  outline:none;
  border-color:#b31355 !important;
  box-shadow:0 0 0 3px rgba(179,19,85,.10);
}

.checkout-steps b{
  border-color:rgba(198,161,91,.40) !important;
}

.checkout-steps .active{
  border-color:#b31355 !important;
  color:#6f0d3d;
}

#checkout .x{
  background:#171017 !important;
  color:#fff !important;
  border:1px solid #c6a15b !important;
  border-radius:50%;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  font-size:26px;
  line-height:1;
}

/* payment section */
#paymentStep{
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.25),
      rgba(111,13,61,.04)
    );
}

#payCard,
#payTransfer{
  background:
    linear-gradient(
      100deg,
      #190d22,
      #501053,
      #b31355,
      #1749a8
    ) !important;

  border:1px solid rgba(198,161,91,.55) !important;
  color:#fff !important;
}

/* MOBILE */
@media(max-width:600px){
  #checkout .checkout-box{
    width:calc(100% - 24px) !important;
    margin:12px auto;
  }

  .card{
    border-radius:15px;
  }
}
/* ===== GRIM MOBILE CHECKOUT WIDTH FIX ===== */

@media (max-width: 600px){

  /* CART */
  #bag{
    box-sizing:border-box !important;
    width:100vw !important;
    max-width:100vw !important;
    right:0 !important;
    left:auto !important;
    padding-left:24px !important;
    padding-right:24px !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
  }

  #bag.open{
    transform:translateX(0) !important;
  }

  #bag:not(.open){
    transform:translateX(105%) !important;
  }

  #bag img{
    max-width:100%;
  }

  /* CHECKOUT MODAL */
  #checkout{
    box-sizing:border-box !important;
    padding:12px !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
  }

  #checkout .checkout-box{
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100% !important;
    margin:12px auto !important;
    padding-left:22px !important;
    padding-right:22px !important;
    overflow-x:hidden !important;
  }

  #grimCheckoutForm,
  #paymentStep{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  #grimCheckoutForm input,
  #grimCheckoutForm select,
  #grimCheckoutForm textarea{
    box-sizing:border-box !important;
    max-width:100% !important;
  }
}
/* ===== GRIM SHOP + CHECKOUT FINAL LUXURY LAYER ===== */

/* SHOP BACKGROUND */
.shop,
.shop-page,
#shop{
  background:
    radial-gradient(circle at 12% 15%,rgba(111,13,61,.22),transparent 32%),
    radial-gradient(circle at 88% 45%,rgba(23,73,168,.18),transparent 34%),
    #090909 !important;
}

/* PRODUCT CARDS */
.card,
.product-card{
  background:linear-gradient(145deg,#fbf7ef,#eee4da) !important;
  border:1px solid rgba(198,161,91,.5) !important;
  box-shadow:0 14px 35px rgba(0,0,0,.35);
}

.card h3,
.product-card h3{
  color:#160d18 !important;
}

.card .colorway,
.product-card .colorway{
  color:#79143f !important;
}

/* SIZE SELECT */
.card select,
.product-card select{
  background:#fffaf4 !important;
  border:1px solid rgba(111,13,61,.30) !important;
}

/* ADD TO CART */
.card button,
.product-card button{
  background:linear-gradient(
    105deg,
    #170b20,
    #4b1052,
    #ae1457,
    #1749a8
  ) !important;

  color:#fff !important;
  border:1px solid rgba(198,161,91,.55) !important;
}


/* CHECKOUT OVERLAY */
#checkout{
  background:rgba(0,0,0,.82) !important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

/* CHECKOUT PANEL */
#checkout .checkout-box{
  background:
    radial-gradient(circle at 0 0,rgba(179,19,85,.10),transparent 30%),
    radial-gradient(circle at 100% 25%,rgba(23,73,168,.10),transparent 32%),
    linear-gradient(145deg,#faf5ec,#eee3d7) !important;

  border-top:4px solid #c6a15b !important;
  box-shadow:0 30px 90px rgba(0,0,0,.65);
}

#checkout .eyebrow{
  color:#79143f !important;
}

#checkout h2{
  color:#181017 !important;
}

#checkout h3{
  color:#79143f !important;
}

/* CHECKOUT FIELDS */
#grimCheckoutForm input,
#grimCheckoutForm select,
#grimCheckoutForm textarea{
  background:rgba(255,255,255,.78) !important;
  border:1px solid rgba(64,16,79,.24) !important;
}

#grimCheckoutForm input:focus,
#grimCheckoutForm select:focus,
#grimCheckoutForm textarea:focus{
  outline:none;
  border-color:#b31355 !important;
  box-shadow:0 0 0 3px rgba(179,19,85,.10);
}

/* CHECKOUT / PAYMENT BUTTONS */
#payCard,
#payTransfer,
#checkout button[type="submit"]{
  background:linear-gradient(
    105deg,
    #170b20,
    #481052,
    #b31355,
    #1749a8
  ) !important;

  color:#fff !important;
  border:1px solid rgba(198,161,91,.55) !important;
}

/* PAYMENT STATUS RECOVERY BUTTON */
.gps-use-reference{
  width:100% !important;
  border-radius:0 !important;
  background:linear-gradient(
    105deg,
    #170b20,
    #481052,
    #b31355,
    #1749a8
  ) !important;
  color:#fff !important;
  border:1px solid rgba(198,161,91,.55) !important;
  padding:16px !important;
}
/* ===== GRIM CART LUXURY POLISH ===== */

#bag{
  background:
    radial-gradient(circle at 0 0,rgba(179,19,85,.08),transparent 30%),
    radial-gradient(circle at 100% 35%,rgba(23,73,168,.07),transparent 35%),
    linear-gradient(145deg,#faf5ec,#eee4d8) !important;

  border-top:4px solid #c6a15b;
}

/* CART TITLE */
#bag h2{
  color:#171017 !important;
  letter-spacing:.07em;
}

/* CART CLOSE BUTTON */
#bag .x{
  background:#181018 !important;
  color:#fff !important;
  border:1px solid #c6a15b !important;
  border-radius:50% !important;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  font-size:25px;
}

/* PRODUCT NAMES */
#bag #items h3{
  color:#171017;
}

/* PRODUCT DETAILS */
#bag #items p,
#bag #items span{
  color:#6c6168;
}

/* REMOVE */
#bag .remove{
  color:#79143f !important;
  text-decoration:none !important;
  font-weight:600;
  letter-spacing:.08em;
}

/* QUANTITY BUTTONS */
#bag #items button:not(.remove){
  background:#fffaf3 !important;
  color:#79143f !important;
  border:1px solid rgba(111,13,61,.30) !important;
}

/* DIVIDERS */
#bag #items > div{
  border-color:rgba(198,161,91,.30) !important;
}

#bag .bag-total{
  border-top:1px solid rgba(198,161,91,.55) !important;
  padding-top:28px;
}

/* SUBTOTAL */
#bag .bag-total span{
  color:#171017 !important;
}

#bag .bag-total h3{
  color:#79143f !important;
}

/* MAIN CHECKOUT BUTTON */
#bag button[onclick="openCheckout()"]{
  width:100% !important;
  max-width:420px;
  min-height:62px;

  background:
    linear-gradient(
      105deg,
      #170b20,
      #481052,
      #b31355,
      #1749a8
    ) !important;

  color:#fff !important;
  border:1px solid rgba(198,161,91,.60) !important;
  letter-spacing:.22em !important;
  box-shadow:0 12px 28px rgba(64,16,79,.20);
}

/* MOBILE CART */
@media(max-width:600px){

  #bag{
    padding:38px 24px !important;
  }

  #bag button[onclick="openCheckout()"]{
    width:100% !important;
    max-width:none;
  }
}
@media (max-width: 800px){
  input,
  select,
  textarea{
    font-size:16px !important;
  }
}
