/*
Theme Name: Guadalupe Provisions Editable
Theme URI: https://guadalupeprovisions.co/
Author: Guadalupe Provisions Co.
Description: Editable Gutenberg version of the Guadalupe Provisions homepage.
Version: 2.16.08
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: guadalupe-provisions-editable
*/

:root{
  --black:#0b0a07;
  --cream:#f4ecd9;
  --paper:#fff8e9;
  --brown:#b9712f;
  --orange:#ff8d2b;
  --green:#607b3c;
  --line:#201a12;
  --muted:#6f604d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--black);font-family:Georgia, Cambria, serif}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.topbar{background:var(--black);color:var(--paper);text-align:center;text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:12px;padding:10px 16px}
.header{position:sticky;top:0;z-index:40;background:rgba(244,236,217,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(32,26,18,.22)}
.nav{max-width:none;width:100%;margin:0;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 28px 14px 8px}
.logo{width:110px;height:auto}
.menu{display:flex;align-items:center;gap:24px;font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;letter-spacing:.11em;font-weight:900;font-size:13px}
.menu a{padding:9px 0;border-bottom:2px solid transparent}.menu a:hover{border-color:var(--brown)}
.cart{background:var(--black);color:var(--paper);border-radius:999px;padding:12px 18px!important;border:0!important}
.hero{position:relative;min-height:calc(92vh - 88px);overflow:hidden;border-bottom:3px solid var(--black);display:grid;place-items:center;padding:78px 22px 88px;background:radial-gradient(circle at 50% 38%,rgba(255,141,43,.12),transparent 34%),linear-gradient(180deg,#fff9ed 0%,#f4ecd9 100%)}
.hero:before{content:"";position:absolute;inset:-6% -4%;background:url('assets/hero-map.png') center 36%/min(1120px,105vw) auto no-repeat;opacity:.20;filter:grayscale(1) contrast(1.15)}
.hero:after{content:none}
.hero-inner{position:relative;z-index:1;text-align:center;max-width:1120px;margin:auto}.hero-kicker{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;letter-spacing:.18em;font-weight:900;font-size:clamp(13px,1.4vw,18px);margin-bottom:20px}.hero h1{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;line-height:.86;letter-spacing:.015em;margin:0 auto 26px;max-width:930px;text-wrap:balance}.hero-title .live-line{display:block;font-size:clamp(46px,9vw,126px);color:var(--black)}.hero-title .work-line{display:block;margin-top:22px;font-size:clamp(34px,6.4vw,88px);letter-spacing:.08em;color:var(--brown)}.hero-sub{font-size:clamp(18px,2.2vw,26px);line-height:1.45;max-width:760px;margin:0 auto;color:#3d3328}.hero-buttons{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;letter-spacing:.1em;font-weight:900;border:2px solid var(--black);border-radius:999px;padding:15px 22px;background:var(--paper);box-shadow:5px 5px 0 var(--black)}.btn.primary{background:var(--black);color:var(--paper);box-shadow:5px 5px 0 var(--orange)}
.around-fire{background:var(--black);color:var(--paper);padding:58px 24px;border-bottom:3px solid var(--black)}.around-fire .wrap{max-width:1180px;margin:0 auto}.around-fire h2{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(34px,5vw,68px);line-height:.9;text-align:center;margin:8px 0 10px}.around-fire .eyebrow{text-align:center;color:var(--orange)}.around-intro{text-align:center;color:#dbcbb2;font-size:18px;line-height:1.45;margin:0 auto 28px;max-width:650px}.fire-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.fire-card{border:2px solid rgba(255,248,233,.78);border-radius:18px;padding:24px 16px;text-align:center;background:#15110c;min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.fire-card svg{height:44px;margin:0 auto 14px;fill:none;stroke:var(--orange);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.fire-card svg.icon-wolf-head{stroke-width:5.8}.fire-card b{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;letter-spacing:.1em;font-size:15px;display:block}.fire-card small{display:block;color:#dbcbb2;margin-top:8px;line-height:1.35;font-size:14px;max-width:230px}
section{padding:82px 24px}.wrap{max-width:1180px;margin:0 auto}.eyebrow{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;letter-spacing:.17em;color:var(--brown);font-weight:900;font-size:13px}.section-title{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;font-size:clamp(42px,6.8vw,92px);line-height:.9;margin:10px 0 18px}.lead{font-size:20px;line-height:1.6;color:#4b4034;max-width:780px}.trail{background:#fff7e8}.trail-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:34px;align-items:center}.trail-card{border:3px solid var(--black);border-radius:28px;background:var(--paper);padding:30px;box-shadow:10px 10px 0 var(--orange)}.trail-card p{font-size:18px;line-height:1.55;color:#4b4034}.map-panel{border:3px solid var(--black);border-radius:28px;background:#050505;padding:18px;overflow:hidden}.map-panel img{border-radius:18px;background:#050505}
.gear{background:#111;color:var(--paper)}.gear .lead{color:#dbcbb2}.gear-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:36px}.product{background:var(--paper);color:var(--black);border-radius:24px;overflow:hidden;border:2px solid var(--paper)}.patch{height:245px;display:grid;place-items:center;padding:20px;background:#f8ebd3}.patch-shape{width:100%;height:100%;border:4px solid var(--black);border-radius:46% / 38%;display:grid;place-items:center;text-align:center;font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;font-size:27px;line-height:.95;background:#fff2d5;position:relative;overflow:hidden}.patch-shape:before,.patch-shape:after{content:"";position:absolute;border-radius:50%;background:var(--orange)}.bird .patch-shape:before{width:16px;height:16px;left:30%;top:34%;box-shadow:95px -16px 0 var(--green),150px 40px 0 var(--black)}.fish .patch-shape{background:#dceff0}.fish .patch-shape:before{width:150px;height:28px;border-radius:50%;background:var(--green);left:50%;top:46%;transform:translate(-50%,-50%) rotate(-8deg)}.stars .patch-shape:before{width:18px;height:18px;left:32%;top:28%;box-shadow:65px 28px 0 var(--orange),118px -6px 0 var(--black)}.nothing .patch-shape{background:linear-gradient(#17384a 0 52%,#e7c69b 53%)}.nothing .patch-shape:before{width:14px;height:14px;left:31%;top:27%;box-shadow:48px -8px 0 var(--orange),104px 17px 0 #58a7bf,140px -20px 0 var(--orange)}.product-body{padding:18px}.product h3{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;font-size:24px;line-height:1;margin:0 0 8px}.product p{color:#5f5345;line-height:1.45;margin:0 0 14px}.buy{display:flex;align-items:center;justify-content:space-between;gap:12px}.price{font-weight:900;color:var(--brown)}.small-btn{background:var(--black);color:var(--paper);border-radius:999px;padding:10px 13px;font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;font-size:12px;letter-spacing:.07em}
.story{background:var(--cream)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.story-box{border:3px solid var(--black);border-radius:28px;background:var(--paper);padding:36px}.story-box.dark{background:var(--black);color:var(--paper)}.story-box h2,.story-box h3{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;line-height:.95;margin:0 0 18px}.story-box h2{font-size:clamp(36px,5.5vw,70px)}.story-box h3{font-size:40px;color:var(--orange)}.story-box p{font-size:18px;line-height:1.65;color:#4b4034}.story-box.dark p{color:#ddcfb8}.stickers{background:#e6d5b9}.sticker-stage{min-height:390px;border:3px solid var(--black);border-radius:28px;background:radial-gradient(circle,#fff9ed,#e6d5b9);position:relative;overflow:hidden;box-shadow:10px 10px 0 var(--green);margin-top:30px}.sticker{position:absolute;background:#fff8e9;border:3px solid var(--black);box-shadow:7px 7px 0 rgba(0,0,0,.22);display:grid;place-items:center;text-align:center;font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;line-height:.95}.st1{width:190px;height:190px;border-radius:50%;left:8%;top:18%;transform:rotate(-12deg)}.st2{width:260px;height:150px;border-radius:28px;left:36%;top:10%;transform:rotate(7deg);color:var(--brown)}.st3{width:230px;height:128px;border-radius:999px;right:9%;top:42%;transform:rotate(-9deg);color:var(--orange)}.st4{width:150px;height:150px;border-radius:50%;left:24%;bottom:10%;transform:rotate(14deg);color:var(--green);font-size:46px}
.gear-subhead{margin-top:28px;margin-bottom:18px;max-width:780px}.gear-subhead h3,.small-goods-copy h3{font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;letter-spacing:.06em;line-height:.95;margin:0 0 10px}.gear-subhead h3{font-size:34px;color:var(--orange)}.gear-subhead p,.small-goods-copy p{font-size:18px;line-height:1.55;color:#dbcbb2;margin:0}.small-goods-panel{margin-top:34px;display:grid;grid-template-columns:.75fr 1.25fr;gap:24px;align-items:center;border:2px solid rgba(255,248,233,.65);border-radius:28px;background:#17130e;padding:26px}.small-goods-copy h3{font-size:30px;color:var(--paper)}.gear .sticker-stage{margin-top:0;min-height:300px;box-shadow:8px 8px 0 var(--orange)}
.catch{background:var(--black);color:var(--paper);text-align:center}.catch p{color:#d9ccb5;margin:0 auto}.contact-links{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:28px}.contact-links a{border:2px solid var(--paper);border-radius:999px;padding:14px 18px;font-family:'Cooper Black','Bookman Old Style',Georgia,serif;text-transform:uppercase;letter-spacing:.08em}.footer{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;background:#050505;color:var(--paper);padding:30px 28px}.footer img{width:80px}.footer span{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#d6c6ad}
.story-trail{margin-top:34px}.story-trail .trail-card{box-shadow:10px 10px 0 var(--orange)}
@media(max-width:900px){.nav{padding:13px 18px}.menu{gap:14px;font-size:12px}.logo{width:78px}.hero{min-height:720px}.fire-grid,.gear-grid,.trail-layout,.story-grid,.small-goods-panel{grid-template-columns:1fr}.gear-grid{max-width:520px;margin-left:auto;margin-right:auto}.trail-card{box-shadow:7px 7px 0 var(--orange)}.map-panel{padding:10px}.fire-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.topbar{font-size:10px}.nav{align-items:flex-start}.menu{justify-content:flex-end;flex-wrap:wrap;gap:8px 12px}.cart{padding:8px 12px!important}.hero{padding-top:58px}.hero-title .live-line{font-size:46px}.hero-title .work-line{font-size:33px;margin-top:14px}.hero-kicker{font-size:12px}.hero-sub{font-size:17px}.btn{width:100%;box-shadow:4px 4px 0 var(--black)}.btn.primary{box-shadow:4px 4px 0 var(--orange)}.fire-grid{grid-template-columns:1fr}.section-title{font-size:42px}.patch{height:220px}.sticker-stage{min-height:460px}.st1{left:6%;top:8%;width:150px;height:150px}.st2{left:auto;right:5%;width:210px}.st3{right:5%;top:48%;width:210px}.st4{left:12%;bottom:8%}}

/* Sticker section shrinking text */
.sticker-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:.92;
  text-transform:uppercase;
  margin:0;
}
.sticker-copy span{display:block;}
.sticker-copy span:nth-child(1){font-size:2.15rem;}
.sticker-copy span:nth-child(2){font-size:1.95rem;}
.sticker-copy span:nth-child(3){font-size:1.75rem;}
.sticker-copy span:nth-child(4){font-size:1.55rem;}
.sticker-copy span:nth-child(5){font-size:1.35rem;}
.sticker-copy span:nth-child(6){font-size:1.15rem;}
.sticker-tagline{
  margin-top:24px;
  font-size:.9rem;
  line-height:1.4;
  color:var(--muted);
  max-width:260px;
}


/* Real hat photos in product cards */
.product-photo{
  height:245px;
  background:var(--cream);
  overflow:hidden;
  border-radius:18px 18px 0 0;
}
.product-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.product .patch{
  display:none !important;
}


/* Final fix: keep all hat product cards in the same row */
.gear-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:stretch !important;
}
.product{
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
}
.product-photo{
  height:245px !important;
  width:100% !important;
  background:var(--cream) !important;
  overflow:hidden !important;
  border-radius:18px 18px 0 0 !important;
  flex:0 0 auto !important;
}
.product-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
.product-body{
  padding:18px !important;
}
@media(max-width:900px){
  .gear-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:560px){
  .gear-grid{grid-template-columns:1fr !important;}
}


/* Sticker photo display */
.sticker-photo{
  width:100%;
  max-width:520px;
  display:block;
  margin:0 auto;
  border-radius:18px;
}




/* Final header fix: sharp SVG, smaller logo, true left alignment */
.nav{
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
  padding:14px 28px 14px 8px !important;
}
.logo{
  width:110px !important;
  height:auto !important;
}
.menu{
  margin-left:auto !important;
}
@media(max-width:760px){
  .nav{padding:12px 16px 12px 8px !important;}
  .logo{width:98px !important;}
}






/* Final hero rebuild: huge wolf mark, smaller slogan */
.hero{
  min-height:calc(92vh - 88px) !important;
  padding:72px 22px 82px !important;
  overflow:hidden !important;
}
.hero-inner{
  width:min(100%,1320px) !important;
  margin:0 auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.hero-logo-wrap{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin-bottom:0 !important;
  transform:none !important;
}
.hero-logo{
  width:min(58vw,820px) !important;
  min-width:620px !important;
  height:auto !important;
  display:block !important;
}
.hero-title{
  font-family:'Cooper Black','Bookman Old Style',Georgia,serif !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-size:clamp(24px,1.8vw,34px) !important;
  line-height:1 !important;
  margin-top:6px !important;
  margin-bottom:0 !important;
  color:var(--black) !important;
  text-align:center !important;
}
.hero-title .live-line,
.hero-title .work-line{
  display:inline !important;
  white-space:nowrap !important;
}
.hero-title .work-line{
  color:var(--black) !important;
}
.hero-sub{
  margin-top:18px !important;
  position:relative !important;
  z-index:2 !important;
}
.hero-buttons{
  position:relative !important;
  z-index:2 !important;
}
@media(max-width:760px){
  .hero-logo{
    width:min(96vw,520px) !important;
    min-width:0 !important;
  }
  .hero-logo-wrap{
    transform:translateY(-180px) !important;
    margin-bottom:8px !important;
  }
  .hero-title{
    max-width:92vw !important;
    font-size:clamp(26px,8vw,42px) !important;
  }
  .hero-title .live-line,
  .hero-title .work-line{
    white-space:normal !important;
  }
}


/* Wolf logo final size bump */
.hero-logo{
  width:min(68vw,1020px) !important;
  min-width:760px !important;
}
.hero-logo-wrap{
  margin-bottom:0 !important;
  transform:translateY(28px) !important;
}
@media(max-width:760px){
  .hero-logo{
    width:min(100vw,620px) !important;
    min-width:0 !important;
  }
}


/* Additional 30% wolf increase */
.hero-logo{
  width:min(88vw,1325px) !important;
  min-width:980px !important;
}
.hero-logo-wrap{
  transform:translateY(40px) !important;
}
@media(max-width:760px){
  .hero-logo{
    width:min(110vw,800px) !important;
    min-width:0 !important;
  }
}


/* Move wolf higher under Guadalupe Provisions Co. */
.hero-logo-wrap{
  transform:translateY(-180px) !important;
  margin-bottom:-70px !important;
}




/* FINAL HERO LOCKUP FIX */
.hero{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:34px 22px 54px !important;
}
.hero-inner{
  position:relative !important;
  z-index:2 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:none !important;
  gap:0 !important;
  transform:translateY(-180px) !important;
}
.hero-logo-wrap{
  position:relative !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}
.hero-logo-wrap img,
.hero-logo,
.hero-wolf{
  display:block !important;
  margin:0 auto !important;
}
.hero-title{
  position:relative !important;
  z-index:3 !important;
  display:block !important;
  width:auto !important;
  max-width:96vw !important;
  margin:-205px auto 0 !important;
  padding:0 !important;
  transform:none !important;
  font-family:'Cooper Black','Bookman Old Style',Georgia,serif !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  text-align:center !important;
  color:var(--black) !important;
  font-size:clamp(32px,2.8vw,48px) !important;
  line-height:1 !important;
  letter-spacing:.08em !important;
}
.hero-title span,
.hero-title .live-line,
.hero-title .work-line{
  display:inline !important;
  font-size:inherit !important;
  line-height:inherit !important;
  letter-spacing:inherit !important;
  margin:0 !important;
  color:inherit !important;
  white-space:inherit !important;
}
@media(max-width:760px){
  .hero-inner{transform:translateY(-8px) !important;}
  .hero-title{
    margin-top:-145px !important;
    font-size:clamp(14px,4.2vw,23px) !important;
    letter-spacing:.06em !important;
    white-space:normal !important;
    max-width:92vw !important;
  }
}


.hero-title{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:8px !important;
}

.hero-live{
  display:block !important;
  font-size:2.1em !important;
  line-height:1 !important;
}

.hero-work{
  display:block !important;
  font-size:1.6em !important;
  line-height:1 !important;
}


/* CLEAN HERO LOCKUP: fixed overlap */
.hero-inner{
  transform:translateY(-180px) !important;
}
.hero-title{
  margin:-205px auto 0 !important;
}
@media(max-width:760px){
  .hero-inner{
    transform:translateY(-95px) !important;
  }
  .hero-title{
    margin-top:-145px !important;
  }
}


/* ACTUAL SLOGAN SIZE FIX — overrides .hero-title span */
.hero-title .hero-live{
  display:block !important;
  font-size:2.1em !important;
  line-height:.95 !important;
}

.hero-title .hero-work{
  display:block !important;
  font-size:1.6em !important;
  line-height:.95 !important;
}


/* Gutenberg compatibility */
html,body{margin:0}
body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width:none}
.wp-site-blocks,.entry-content{margin:0;padding:0}
.entry-content > *{margin-block-start:0;margin-block-end:0}
.wp-block-group{margin-block-start:0;margin-block-end:0}
.topbar p,.menu p,.price,.footer p{margin:0}
.logo-block,.hero-logo,.product-image,.sticker-photo-block,.footer-logo{margin:0}
.logo-block img{width:110px;height:auto;display:block}
.hero-logo img{width:100%;height:auto;display:block;margin:0 auto}
.hero-title .hero-live,
.hero-title .hero-work{
  margin:0 !important;
  font-family:'Cooper Black','Bookman Old Style',Georgia,serif !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  color:var(--black) !important;
}
.hero-title .hero-live{font-size:2.1em !important;line-height:.95 !important}
.hero-title .hero-work{font-size:1.6em !important;line-height:.95 !important}
.hero-buttons .wp-block-button__link{
  font-family:'Cooper Black','Bookman Old Style',Georgia,serif;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:900;
  border:2px solid var(--black);
  border-radius:999px;
  padding:15px 22px;
  background:var(--paper);
  color:var(--black);
  box-shadow:5px 5px 0 var(--black);
}
.hero-buttons .primary .wp-block-button__link{
  background:var(--black);
  color:var(--paper);
  box-shadow:5px 5px 0 var(--orange);
}
.menu.wp-block-navigation{gap:24px}
.menu .wp-block-navigation-item__content{
  font-family:'Cooper Black','Bookman Old Style',Georgia,serif;
  text-transform:uppercase;
  letter-spacing:.11em;
  font-weight:900;
  font-size:13px;
}
.menu .cart .wp-block-navigation-item__content{
  background:var(--black);
  color:var(--paper);
  border-radius:999px;
  padding:12px 18px;
}
.product-image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
.product-body h3{margin:0 0 8px}
.product-body p{margin:0 0 14px}
.buy{display:flex;align-items:center;justify-content:space-between;gap:12px}
.small-btn .wp-block-button__link{
  background:var(--black);
  color:var(--paper);
  border-radius:999px;
  padding:10px 13px;
  font-family:'Cooper Black','Bookman Old Style',Georgia,serif;
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:.07em;
}
.sticker-photo-block img{width:100%;max-width:520px;height:auto;display:block;margin:0 auto;border-radius:18px}
.fire-card h3{
  font-family:'Cooper Black','Bookman Old Style',Georgia,serif;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:15px;
  margin:0;
}
.fire-card p{color:#dbcbb2;margin:8px 0 0;line-height:1.35;font-size:14px;max-width:230px}
.contact-links .wp-block-button__link{
  border:2px solid var(--paper);
  border-radius:999px;
  padding:14px 18px;
  font-family:'Cooper Black','Bookman Old Style',Georgia,serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  background:transparent;
  color:var(--paper);
}
.footer-logo img{width:80px;height:auto}
body.admin-bar .header{top:32px}
@media screen and (max-width:782px){body.admin-bar .header{top:46px}}
@media(max-width:760px){
  .nav{padding:12px 14px}
  .logo-block img{width:82px}
  .menu.wp-block-navigation{gap:10px}
  .menu .wp-block-navigation-item__content{font-size:11px}
  .hero-buttons .wp-block-button{width:100%}
  .hero-buttons .wp-block-button__link{width:100%;text-align:center;box-shadow:4px 4px 0 var(--black)}
  .hero-buttons .primary .wp-block-button__link{box-shadow:4px 4px 0 var(--orange)}
}
.editor-styles-wrapper{background:var(--cream);color:var(--black)}
.editor-styles-wrapper .hero{min-height:800px}

/* MOBILE HERO NO-OVERLAP FIX */
@media (max-width:760px){
  .hero{
    min-height:auto !important;
    padding:28px 14px 44px !important;
    overflow:hidden !important;
  }

  .hero-inner{
    width:100% !important;
    max-width:100% !important;
    transform:none !important;
    justify-content:flex-start !important;
  }

  .hero-logo-wrap{
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    transform:none !important;
  }

  .hero-logo{
    width:min(88vw,390px) !important;
    min-width:0 !important;
    max-width:390px !important;
    margin:0 auto !important;
    transform:none !important;
  }

  .hero-logo img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    margin:0 auto !important;
  }

  .hero-title{
    position:relative !important;
    z-index:3 !important;
    width:100% !important;
    max-width:96vw !important;
    margin:clamp(-82px,-19vw,-58px) auto 0 !important;
    padding:0 !important;
    transform:none !important;
    gap:4px !important;
    white-space:normal !important;
    letter-spacing:.035em !important;
  }

  .hero-title .hero-live{
    display:block !important;
    margin:0 !important;
    font-size:clamp(25px,7.7vw,34px) !important;
    line-height:.96 !important;
    letter-spacing:.035em !important;
    white-space:nowrap !important;
  }

  .hero-title .hero-work{
    display:block !important;
    margin:0 !important;
    font-size:clamp(22px,6.7vw,30px) !important;
    line-height:.98 !important;
    letter-spacing:.04em !important;
    white-space:nowrap !important;
  }

  .hero-sub{
    width:100% !important;
    max-width:92vw !important;
    margin:18px auto 0 !important;
    padding:0 8px !important;
    font-size:16px !important;
    line-height:1.35 !important;
  }

  .hero-buttons{
    width:100% !important;
    margin-top:20px !important;
    gap:10px !important;
  }
}
/* END MOBILE HERO NO-OVERLAP FIX */

/* GLOBAL NAVIGATION FOR INNER PAGES */
.inner-topbar{
  background:#0b0a07;
  color:#fff8e9;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-family:"Caprasimo","Cooper Black",Georgia,serif;
  font-size:12px;
  padding:10px 16px;
}

.inner-site-header{
  position:sticky;
  top:0;
  z-index:100;
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:12px 28px 12px 10px;
  background:rgba(244,236,217,.96);
  border-bottom:1px solid rgba(32,26,18,.22);
  backdrop-filter:blur(12px);
}

body.admin-bar .inner-site-header{top:32px}

.inner-brand img{
  display:block;
  width:112px;
  height:auto;
}

.inner-desktop-nav{
  display:flex;
  align-items:center;
  gap:24px;
}

.inner-desktop-nav a,
.inner-mobile-links a{
  font-family:"Caprasimo","Cooper Black",Georgia,serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#0b0a07;
  text-decoration:none;
}

.inner-desktop-nav a{
  font-size:13px;
}

.inner-desktop-nav a:hover{
  color:#b9712f;
}

.inner-mobile-menu{
  display:none;
  position:relative;
}

.inner-mobile-menu summary{
  list-style:none;
  width:42px;
  height:42px;
  display:grid;
  align-content:center;
  gap:5px;
  cursor:pointer;
}

.inner-mobile-menu summary::-webkit-details-marker{display:none}

.inner-mobile-menu summary span{
  display:block;
  width:28px;
  height:2px;
  margin-left:auto;
  background:#0b0a07;
}

.inner-mobile-links{
  position:absolute;
  right:0;
  top:50px;
  width:min(280px,86vw);
  display:grid;
  gap:0;
  padding:10px;
  background:#fff8e9;
  border:2px solid #0b0a07;
  border-radius:18px;
  box-shadow:7px 7px 0 #ff8d2b;
}

.inner-mobile-links a{
  display:block;
  padding:14px 16px;
  font-size:17px;
  border-bottom:1px solid rgba(11,10,7,.16);
}

.inner-mobile-links a:last-child{border-bottom:0}

.inner-page-main{
  margin:0;
  padding:0;
}

@media(max-width:900px){
  .inner-desktop-nav{display:none}
  .inner-mobile-menu{display:block}
}

@media(max-width:782px){
  body.admin-bar .inner-site-header{top:46px}
}

@media(max-width:760px){
  .inner-site-header{
    min-height:72px;
    padding:10px 18px;
  }

  .inner-brand img{width:100px}
}

/* SIMPLIFIED GLOBAL NAV + PAGE-SPECIFIC SUBNAV */
.inner-cart{
  background:#0b0a07;
  color:#fff8e9 !important;
  border-radius:999px;
  padding:11px 17px;
}

.section-subnav{
  position:sticky;
  top:76px;
  z-index:90;
  display:flex;
  justify-content:center;
  gap:34px;
  padding:14px 18px;
  background:#fff8e9;
  border-bottom:2px solid #0b0a07;
}

body.admin-bar .section-subnav{top:108px}

.section-subnav a{
  font-family:"Caprasimo","Cooper Black",Georgia,serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#0b0a07;
  text-decoration:none;
}

.around-fire-page{
  max-width:none !important;
  background:#f4ecd9;
}

.around-fire-page-hero{
  padding:100px 24px;
  text-align:center;
  border-bottom:3px solid #0b0a07;
}

.around-fire-page-section{
  padding:90px 24px;
  text-align:center;
}

.around-fire-page-section > *{
  max-width:900px;
  margin-left:auto !important;
  margin-right:auto !important;
}

.around-fire-page-section h2{
  font-family:"Caprasimo","Cooper Black",Georgia,serif;
  font-size:clamp(38px,5vw,68px);
  line-height:1;
}

.around-fire-page-section p{
  font-size:20px;
  line-height:1.5;
}

.around-fire-page-section.dark{
  background:#0b0a07;
  color:#fff8e9;
}

.around-fire-page-section.join{
  background:#fff8e9;
}

@media(max-width:900px){
  .section-subnav{
    top:72px;
    gap:18px;
    overflow-x:auto;
    justify-content:flex-start;
    white-space:nowrap;
  }

  body.admin-bar .section-subnav{top:118px}
}

@media(max-width:760px){
  .section-subnav a{font-size:14px}
  .around-fire-page-hero{padding:70px 18px}
  .around-fire-page-section{padding:64px 18px}
}

/* HOMEPAGE DOUBLE-NAV FIX
   The new global header is rendered by front-page.php.
   Hide the old editable homepage topbar/header blocks only on the homepage. */
body.home .entry-content > .topbar,
body.home .entry-content > .header,
body.home .entry-content > .wp-block-group.topbar,
body.home .entry-content > header.wp-block-group.header{
  display:none !important;
}

/* DESKTOP HOMEPAGE STICKER PANEL — REMOVE EXCESS EMPTY SPACE */
@media (min-width:901px){
  body.home .small-goods-panel{
    grid-template-columns:minmax(420px, 620px) minmax(180px, 1fr) !important;
    align-items:center !important;
    gap:52px !important;
    min-height:0 !important;
    padding:30px 36px !important;
  }

  body.home .small-goods-copy{
    align-self:center !important;
  }

  body.home .small-goods-panel .sticker-stage{
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  body.home .small-goods-panel .sticker-stage > *{
    margin:0 !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    justify-content:center !important;
    margin:0 !important;
  }

  body.home .sticker-copy{
    max-width:590px !important;
  }

  body.home .sticker-tagline{
    margin-top:14px !important;
  }
}

/* HOMEPAGE STICKER PANEL — POSTER-STYLE DESKTOP REDESIGN */
@media (min-width:901px){
  body.home .small-goods-panel{
    position:relative !important;
    display:grid !important;
    grid-template-columns:minmax(430px, 600px) 1fr !important;
    align-items:center !important;
    gap:44px !important;
    min-height:320px !important;
    padding:34px 44px !important;
    overflow:hidden !important;
  }

  body.home .small-goods-copy{
    position:relative !important;
    z-index:2 !important;
    max-width:590px !important;
  }

  body.home .small-goods-panel::after{
    content:"STICKERS" !important;
    position:absolute !important;
    right:-28px !important;
    top:50% !important;
    transform:translateY(-50%) rotate(-4deg) !important;
    font-family:"Caprasimo","Cooper Black",Georgia,serif !important;
    font-size:clamp(92px,10vw,190px) !important;
    line-height:.82 !important;
    letter-spacing:-.04em !important;
    color:#f4ecd9 !important;
    text-shadow:8px 8px 0 #ff8d2b !important;
    white-space:nowrap !important;
    opacity:.98 !important;
    pointer-events:none !important;
  }

  body.home .small-goods-panel .sticker-stage{
    position:relative !important;
    z-index:3 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:210px !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    position:relative !important;
    z-index:4 !important;
    justify-content:center !important;
  }

  body.home .small-goods-panel .wp-block-button__link{
    border:2px solid #0b0a07 !important;
    box-shadow:6px 6px 0 #ff8d2b !important;
    padding:15px 24px !important;
  }
}

/* HOMEPAGE STICKER PANEL — BALANCED DESKTOP COMPOSITION */
@media (min-width:901px){
  body.home .small-goods-panel{
    grid-template-columns:minmax(430px, 560px) minmax(420px, 1fr) !important;
    gap:54px !important;
    min-height:310px !important;
    padding:40px 48px !important;
  }

  body.home .small-goods-panel::after{
    content:"STICKERS" !important;
    right:54px !important;
    top:46% !important;
    transform:translateY(-50%) rotate(-2deg) !important;
    font-size:clamp(68px,7vw,122px) !important;
    line-height:.9 !important;
    max-width:48% !important;
    text-align:center !important;
    white-space:nowrap !important;
    color:#f4ecd9 !important;
    text-shadow:6px 6px 0 #ff8d2b !important;
    opacity:1 !important;
  }

  body.home .small-goods-panel .sticker-stage{
    min-height:220px !important;
    align-items:flex-end !important;
    padding-bottom:26px !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    align-self:end !important;
    margin-bottom:6px !important;
  }

  body.home .small-goods-panel .wp-block-button__link{
    position:relative !important;
    z-index:5 !important;
    padding:14px 24px !important;
    background:#f4ecd9 !important;
    color:#0b0a07 !important;
    border:2px solid #0b0a07 !important;
    box-shadow:5px 5px 0 #ff8d2b !important;
  }
}


/* HOMEPAGE STICKER SECTION — USE REAL STICKER PHOTO FOR DESKTOP BALANCE */
@media (min-width: 901px){
  body.home .small-goods-panel{
    position:relative !important;
    display:grid !important;
    grid-template-columns:minmax(430px, 560px) minmax(260px, 360px) !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:42px !important;
    min-height:0 !important;
    padding:34px 42px !important;
  }

  body.home .small-goods-panel::after{
    content:none !important;
    display:none !important;
  }

  body.home .small-goods-copy{
    max-width:540px !important;
    align-self:center !important;
  }

  body.home .small-goods-panel .sticker-stage{
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  body.home .small-goods-panel .sticker-photo-block{
    width:100% !important;
    max-width:360px !important;
    margin:0 auto !important;
  }

  body.home .small-goods-panel .sticker-photo-block img{
    width:100% !important;
    max-width:none !important;
    display:block !important;
    margin:0 auto !important;
    border-radius:24px !important;
    border:2px solid rgba(244,236,217,.75) !important;
    background:#0b0a07 !important;
    box-shadow:10px 10px 0 #ff8d2b !important;
    transform:rotate(-2deg) !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    justify-content:flex-start !important;
    margin-top:18px !important;
  }

  body.home .small-goods-panel .wp-block-button__link{
    background:#f4ecd9 !important;
    color:#0b0a07 !important;
    border:2px solid #0b0a07 !important;
    box-shadow:5px 5px 0 #ff8d2b !important;
  }
}


/* FORCE THE REAL STICKER PHOTO TO DISPLAY EVEN IF THE OLD IMAGE BLOCK WAS REMOVED */
@media (min-width:901px){
  body.home .small-goods-panel .sticker-stage{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:20px !important;
    min-height:250px !important;
  }

  body.home .small-goods-panel .sticker-stage::before{
    content:"" !important;
    display:block !important;
    width:min(100%, 330px) !important;
    aspect-ratio:375 / 442 !important;
    background-image:url('assets/stickers.png') !important;
    background-size:cover !important;
    background-position:center !important;
    background-repeat:no-repeat !important;
    border-radius:22px !important;
    border:2px solid rgba(244,236,217,.75) !important;
    box-shadow:10px 10px 0 #ff8d2b !important;
    transform:rotate(-2deg) !important;
  }

  body.home .small-goods-panel .sticker-photo-block{
    display:none !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    margin:0 !important;
    justify-content:center !important;
  }
}

/* FINAL HOMEPAGE STICKER PHOTO FIX
   Works even when the original sticker image block no longer exists. */
@media (min-width:901px){
  body.home .small-goods-panel{
    position:relative !important;
    display:grid !important;
    grid-template-columns:minmax(430px, 560px) 1fr !important;
    align-items:center !important;
    min-height:330px !important;
    padding:34px 46px !important;
    overflow:hidden !important;
  }

  body.home .small-goods-copy{
    position:relative !important;
    z-index:3 !important;
    max-width:540px !important;
  }

  body.home .small-goods-panel::after{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    top:50% !important;
    right:255px !important;
    width:250px !important;
    height:275px !important;
    transform:translateY(-50%) rotate(-2deg) !important;
    background:url('assets/stickers.png') center/cover no-repeat !important;
    border:2px solid rgba(244,236,217,.78) !important;
    border-radius:22px !important;
    box-shadow:9px 9px 0 #ff8d2b !important;
    opacity:1 !important;
    pointer-events:none !important;
    z-index:2 !important;
  }

  body.home .small-goods-panel .sticker-stage{
    display:none !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    position:absolute !important;
    right:48px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:4 !important;
    margin:0 !important;
  }

  body.home .small-goods-panel .wp-block-button__link{
    background:#f4ecd9 !important;
    color:#0b0a07 !important;
    border:2px solid #0b0a07 !important;
    box-shadow:5px 5px 0 #ff8d2b !important;
  }
}

@media (min-width:901px) and (max-width:1250px){
  body.home .small-goods-panel::after{
    right:210px !important;
    width:210px !important;
    height:235px !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    right:34px !important;
  }
}

/* HOMEPAGE STICKER SECTION — REMOVE LEFT TEXT SCROLLBAR */
body.home .small-goods-panel .small-goods-copy,
body.home .small-goods-panel .small-goods-copy > *,
body.home .small-goods-panel .small-goods-copy .wp-block-html,
body.home .small-goods-panel .small-goods-copy .sticker-copy{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  overflow-x:visible !important;
  overflow-y:visible !important;
}

body.home .small-goods-panel .small-goods-copy{
  align-self:center !important;
}

body.home .small-goods-panel .sticker-copy{
  margin:0 0 18px !important;
}

body.home .small-goods-panel .sticker-tagline{
  margin:0 !important;
}

@media (min-width:901px){
  body.home .small-goods-panel{
    align-items:center !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    margin-top:18px !important;
  }
}

/* HOMEPAGE STICKER SECTION — BALANCED DESKTOP WIDTH */
@media (min-width:901px){
  body.home .small-goods-panel{
    display:grid !important;
    grid-template-columns:minmax(430px, 560px) minmax(340px, 420px) !important;
    justify-content:center !important;
    align-items:center !important;
    column-gap:110px !important;
    min-height:0 !important;
    padding:34px 42px !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child{
    width:100% !important;
    max-width:420px !important;
    justify-self:center !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:18px !important;
  }

  body.home .small-goods-panel .sticker-photo-block,
  body.home .small-goods-panel .sticker-photo-block img{
    width:100% !important;
    max-width:360px !important;
    height:auto !important;
    margin:0 auto !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    position:static !important;
    transform:none !important;
    margin:0 !important;
    justify-content:center !important;
  }
}

@media (min-width:901px) and (max-width:1250px){
  body.home .small-goods-panel{
    grid-template-columns:minmax(390px, 520px) minmax(300px, 360px) !important;
    column-gap:60px !important;
  }
}

/* FINAL CLEANUP: REMOVE ALL GENERATED/OLD STICKER OVERLAYS */
@media (min-width:901px){
  body.home .small-goods-panel::before,
  body.home .small-goods-panel::after,
  body.home .small-goods-panel .sticker-stage::before,
  body.home .small-goods-panel .sticker-stage::after{
    content:none !important;
    display:none !important;
    background:none !important;
  }

  body.home .small-goods-panel{
    display:grid !important;
    grid-template-columns:minmax(430px,560px) minmax(320px,380px) !important;
    justify-content:center !important;
    align-items:center !important;
    column-gap:72px !important;
    min-height:0 !important;
    padding:42px !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child{
    position:static !important;
    width:100% !important;
    max-width:380px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:18px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
  }

  body.home .small-goods-panel .sticker-stage{
    display:block !important;
    position:static !important;
    width:100% !important;
    max-width:360px !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
    transform:none !important;
  }

  body.home .small-goods-panel .sticker-photo-block{
    display:block !important;
    position:static !important;
    width:100% !important;
    max-width:360px !important;
    margin:0 !important;
    transform:none !important;
  }

  body.home .small-goods-panel .sticker-photo-block img{
    display:block !important;
    position:static !important;
    width:100% !important;
    max-width:360px !important;
    height:auto !important;
    margin:0 auto !important;
    border-radius:20px !important;
    border:0 !important;
    box-shadow:none !important;
    transform:none !important;
    object-fit:contain !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    position:static !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
    margin:0 !important;
    justify-content:center !important;
  }
}

@media (min-width:901px) and (max-width:1250px){
  body.home .small-goods-panel{
    grid-template-columns:minmax(390px,520px) minmax(280px,340px) !important;
    column-gap:48px !important;
  }
}

/* FINAL HOMEPAGE STICKER SECTION POLISH */
@media (min-width:901px){
  body.home .small-goods-panel{
    display:grid !important;
    grid-template-columns:minmax(500px, 620px) minmax(360px, 440px) !important;
    justify-content:center !important;
    align-items:center !important;
    column-gap:64px !important;
    min-height:0 !important;
    max-width:1320px !important;
    margin:34px auto 0 !important;
    padding:40px 52px !important;
  }

  body.home .small-goods-copy{
    width:100% !important;
    max-width:620px !important;
    margin:0 auto !important;
    text-align:left !important;
  }

  body.home .small-goods-copy .sticker-copy{
    margin:0 0 22px !important;
    line-height:.88 !important;
    letter-spacing:.015em !important;
    overflow:visible !important;
  }

  body.home .small-goods-copy .sticker-copy span{
    display:block !important;
    white-space:nowrap !important;
  }

  body.home .small-goods-copy .sticker-copy span:nth-child(1){font-size:2.65rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(2){font-size:2.38rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(3){font-size:2.12rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(4){font-size:1.88rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(5){font-size:1.64rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(6){font-size:1.42rem !important;}

  body.home .small-goods-copy .sticker-tagline{
    margin:0 !important;
    font-size:1.08rem !important;
    line-height:1.45 !important;
    max-width:380px !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child{
    position:static !important;
    width:100% !important;
    max-width:440px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:18px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image{
    width:100% !important;
    max-width:430px !important;
    margin:0 !important;
    line-height:0 !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img{
    content:normal !important;
    width:100% !important;
    max-width:430px !important;
    height:auto !important;
    display:block !important;
    margin:0 auto !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:transparent !important;
    object-fit:contain !important;
    transform:rotate(-2deg) !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    position:static !important;
    transform:none !important;
    margin:0 !important;
    justify-content:center !important;
  }

  body.home .small-goods-panel .wp-block-button__link{
    padding:13px 24px !important;
  }
}

@media (min-width:901px) and (max-width:1200px){
  body.home .small-goods-panel{
    grid-template-columns:minmax(430px, 540px) minmax(300px, 370px) !important;
    column-gap:42px !important;
    padding:36px !important;
  }

  body.home .small-goods-copy .sticker-copy span:nth-child(1){font-size:2.25rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(2){font-size:2.02rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(3){font-size:1.82rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(4){font-size:1.62rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(5){font-size:1.42rem !important;}
  body.home .small-goods-copy .sticker-copy span:nth-child(6){font-size:1.22rem !important;}
}

/* Keep mobile simple and readable. */
@media (max-width:900px){
  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img{
    content:normal !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    object-fit:contain !important;
  }
}

/* USE THE REAL STICKER PILE PHOTO — NO GENERATED/TRANSPARENCY HALOS */
body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img{
  content:normal !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
  transform:rotate(-1deg) !important;
  object-fit:contain !important;
}

@media (min-width:901px){
  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image,
  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img{
    max-width:420px !important;
  }
}

/* COMPACT FRAMED STICKER CARD — FINAL DESKTOP BALANCE */
@media (min-width:901px){
  body.home .small-goods-panel{
    display:grid !important;
    grid-template-columns:minmax(500px, 610px) minmax(290px, 340px) !important;
    justify-content:center !important;
    align-items:center !important;
    column-gap:52px !important;
    min-height:0 !important;
    max-width:1220px !important;
    margin:34px auto 0 !important;
    padding:32px 42px !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child{
    width:100% !important;
    max-width:340px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:14px !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image{
    width:100% !important;
    max-width:310px !important;
    margin:0 !important;
    line-height:0 !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img{
    content:normal !important;
    display:block !important;
    width:100% !important;
    max-width:310px !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    background:#fff8e9 !important;
    border:2px solid rgba(244,236,217,.85) !important;
    border-radius:18px !important;
    box-shadow:7px 7px 0 #ff8d2b !important;
    transform:rotate(-1deg) !important;
    object-fit:contain !important;
    filter:none !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    position:static !important;
    transform:none !important;
    margin:0 !important;
    justify-content:center !important;
  }

  body.home .small-goods-panel .wp-block-button__link{
    padding:12px 22px !important;
  }
}

@media (min-width:901px) and (max-width:1200px){
  body.home .small-goods-panel{
    grid-template-columns:minmax(430px, 540px) minmax(260px, 310px) !important;
    column-gap:38px !important;
    padding:28px 32px !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child,
  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image,
  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img{
    max-width:285px !important;
  }
}

/* FINAL STICKER SECTION ADJUSTMENTS */
@media (min-width:901px){
  body.home .small-goods-panel > .wp-block-group:last-child{
    gap:30px !important;
  }

  body.home .small-goods-panel .sticker-tagline{
    margin-top:16px !important;
    font-size:1.28rem !important;
    line-height:1.45 !important;
    max-width:420px !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    margin-top:0 !important;
  }
}



/* STICKER BUTTON CLEARANCE — keep card size and section height unchanged */
@media (min-width:901px){
  body.home .small-goods-panel .wp-block-buttons{
    transform:translateY(14px) !important;
  }
}

/* MOBILE STICKER IMAGE POLISH — use a cleaner transparent pile on phones/tablets */
@media (max-width:900px){
  body.home .small-goods-panel{
    padding:24px 18px !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:14px !important;
    margin-top:8px !important;
    padding:0 !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image{
    width:100% !important;
    max-width:300px !important;
    margin:0 auto !important;
    line-height:0 !important;
  }

  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img{
    content:normal !important;
    display:block !important;
    width:100% !important;
    max-width:300px !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    transform:none !important;
    object-fit:contain !important;
    filter:none !important;
  }

  body.home .small-goods-panel .wp-block-buttons{
    position:static !important;
    transform:none !important;
    margin:10px 0 0 !important;
    justify-content:center !important;
  }

  body.home .small-goods-panel .wp-block-button__link{
    width:auto !important;
    min-width:0 !important;
  }
}

@media (max-width:640px){
  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image,
  body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img{
    max-width:280px !important;
  }
}

/* ================================================================
   VERSION 2.1 — COMBINED MOBILE + PAGE CLEANUP
   Permanent replacement for the temporary Guadalupe fix plugins.
   ================================================================ */

/* The theme now owns the single page sub-navigation. Hide the duplicate
   editable content nav and any nav injected by the temporary plugins. */
.inner-page-main .gp-page > .gp-page-nav,
.inner-page-main .around-fire-page > .gp-page-nav,
.gp-around-fire-nav-final{
  display:none !important;
}

.section-subnav{
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.section-subnav::-webkit-scrollbar{display:none}
.section-subnav a{
  display:block;
  position:relative;
  font-size:15px;
  font-weight:700;
  line-height:1.15;
  white-space:nowrap;
}
.section-subnav a[aria-current="page"]{
  color:var(--brown);
}
.section-subnav a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:3px;
  border-radius:999px;
  background:var(--orange);
}

/* Editable interior page foundations. */
.gp-page{
  width:min(1180px,100%);
  margin:0 auto;
  padding:76px 24px 94px;
}
.gp-page > .eyebrow,
.gp-page > .section-title,
.gp-page > .lead{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.gp-page > .lead{max-width:760px}

.gp-feature-card{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);
  gap:34px;
  align-items:center;
  margin:38px 0 0;
  padding:26px;
  border:2px solid var(--black);
  border-radius:26px;
  background:var(--paper);
  box-shadow:8px 8px 0 var(--orange);
  overflow:hidden;
}
.gp-feature-card.reverse{
  grid-template-columns:minmax(280px,.92fr) minmax(0,1.08fr);
}
.gp-feature-card.reverse > figure{order:2}
.gp-feature-card figure{margin:0}
.gp-feature-card figure img{
  width:100%;
  height:auto;
  max-height:480px;
  object-fit:contain;
  border-radius:18px;
}
.gp-feature-card h2,
.gp-coming-card h2,
.gp-product-card h2,
.gp-stickers-page h2{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  text-transform:uppercase;
  line-height:.98;
}
.gp-feature-card h2{font-size:clamp(34px,4vw,58px);margin:0 0 14px}
.gp-feature-card p{font-size:18px;line-height:1.55;color:#4b4034}
.gp-feature-card .wp-block-buttons{margin-top:20px}

.gp-coming-card,
.gp-coming-page{
  text-align:center;
}
.gp-coming-card{
  margin-top:38px;
  padding:52px 28px;
  border:2px solid var(--black);
  border-radius:26px;
  background:var(--black);
  color:var(--paper);
}
.gp-coming-card h2{font-size:clamp(38px,5vw,68px);margin:8px 0 14px}
.gp-coming-card p:not(.eyebrow){color:#ddcfb8;font-size:19px}
.gp-coming-card .wp-block-buttons{justify-content:center;margin-top:22px}

.gp-product-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:26px;
  margin-top:42px;
}
.gp-product-card{
  padding:0 0 24px;
  border:2px solid var(--black);
  border-radius:24px;
  background:var(--paper);
  overflow:hidden;
  box-shadow:7px 7px 0 rgba(185,113,47,.30);
}
.gp-product-card figure{margin:0 0 22px;background:#efe2ca}
.gp-product-card figure img{
  width:100%;
  aspect-ratio:1.25/1;
  object-fit:cover;
}
.gp-product-card h2,
.gp-product-card > p{
  margin-left:22px;
  margin-right:22px;
}
.gp-product-card h2{font-size:clamp(26px,3vw,38px);margin-top:0;margin-bottom:10px}
.gp-product-card > p{font-size:17px;line-height:1.5;color:#574b3e}
.gp-product-card .gp-price{font-weight:900;color:var(--brown);font-size:20px}
.gp-edit-note{
  max-width:740px;
  margin:42px auto 0 !important;
  padding:18px 22px;
  text-align:center;
  border:1px solid rgba(11,10,7,.28);
  border-radius:16px;
  color:#5e5143;
  background:rgba(255,248,233,.72);
}

.gp-stickers-page .gp-sticker-hero{
  max-width:760px;
  margin:38px auto 34px;
}
.gp-stickers-page .gp-sticker-hero img{
  width:100%;
  height:auto;
  border-radius:22px;
  border:2px solid rgba(11,10,7,.28);
}
.gp-stickers-page > h2{
  max-width:920px;
  margin:0 auto 18px;
  text-align:center;
  font-size:clamp(28px,4vw,52px);
}

/* Around the Fire: one nav, tighter rhythm, no duplicate list or empty gulf. */
.around-fire-page{
  width:100% !important;
  padding:0 !important;
}
.around-fire-page > .eyebrow,
.around-fire-page > .section-title,
.around-fire-page > .lead{
  text-align:left;
  max-width:1180px;
  padding-left:24px;
  padding-right:24px;
}
.around-fire-page > .eyebrow{margin:76px auto 0 !important}
.around-fire-page > .section-title{margin:14px auto 18px !important}
.around-fire-page > .lead{margin:0 auto 58px !important}
.around-fire-page-section{
  scroll-margin-top:150px;
}

/* Homepage link safety and consistent CTA styling. */
body.home .gp-sticker-link-fallback{
  justify-content:center !important;
  margin:10px 0 0 !important;
}
body.home .contact-links a[href="#"],
body.home .contact-links a:not([href]){
  pointer-events:none;
  opacity:.65;
}

@media (max-width:900px){
  .inner-site-header{
    min-height:64px !important;
    padding:8px 16px !important;
  }
  .inner-brand img{width:92px !important}
  .inner-mobile-menu summary{width:40px;height:40px}
  .inner-mobile-menu summary span{width:27px}
  .inner-mobile-links{top:44px}

  .section-subnav{
    top:64px !important;
    width:100%;
    padding:12px 12px 13px !important;
    gap:0 !important;
    overflow:visible !important;
    white-space:normal !important;
  }
  body.admin-bar .section-subnav{top:110px !important}

  .section-subnav-gear{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:center;
  }
  .section-subnav-fire{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    row-gap:11px !important;
    border-bottom-width:2px;
  }
  .section-subnav a{
    min-width:0;
    padding:3px 6px;
    text-align:center;
    font-size:clamp(11px,3.2vw,14px) !important;
    letter-spacing:.055em;
    white-space:nowrap;
  }
  .section-subnav a[aria-current="page"]::after{
    left:18%;
    right:18%;
    bottom:-5px;
  }

  .gp-page{
    padding:52px 18px 72px;
  }
  .gp-page > .section-title{
    max-width:100%;
    font-size:clamp(38px,12vw,58px) !important;
    line-height:.92 !important;
  }
  .gp-page > .lead{
    font-size:18px;
    line-height:1.5;
  }

  .gp-feature-card,
  .gp-feature-card.reverse{
    grid-template-columns:1fr;
    gap:20px;
    margin-top:28px;
    padding:18px;
    box-shadow:5px 5px 0 var(--orange);
  }
  .gp-feature-card.reverse > figure{order:0}
  .gp-feature-card h2{font-size:36px}
  .gp-feature-card p{font-size:17px}

  .gp-product-grid{
    grid-template-columns:1fr;
    gap:22px;
    margin-top:30px;
  }
  .gp-product-card{
    box-shadow:5px 5px 0 rgba(185,113,47,.30);
  }
  .gp-product-card figure img{aspect-ratio:1.18/1}

  .gp-stickers-page .gp-sticker-hero{
    margin:28px auto 26px;
  }
  .gp-stickers-page .gp-sticker-hero img{
    border-radius:18px;
  }

  .around-fire-page > .eyebrow,
  .around-fire-page > .section-title,
  .around-fire-page > .lead{
    padding-left:20px;
    padding-right:20px;
  }
  .around-fire-page > .eyebrow{margin-top:48px !important}
  .around-fire-page > .section-title{
    font-size:clamp(46px,15vw,68px) !important;
    line-height:.88 !important;
    margin-top:12px !important;
  }
  .around-fire-page > .lead{
    margin-bottom:38px !important;
    font-size:18px !important;
    line-height:1.48 !important;
  }
  .around-fire-page-section{
    padding:48px 20px !important;
    scroll-margin-top:178px;
  }
  .around-fire-page-section h2{
    font-size:clamp(34px,10vw,50px) !important;
    line-height:.98 !important;
    margin-top:10px !important;
  }
  .around-fire-page-section p{
    font-size:18px !important;
    line-height:1.5 !important;
  }
}

@media (max-width:430px){
  .section-subnav-fire a{
    font-size:11px !important;
    letter-spacing:.035em;
  }
  .section-subnav-gear a{font-size:12px !important}
  .inner-mobile-links{width:min(260px,88vw)}
  .gp-page{padding-left:14px;padding-right:14px}
  .gp-feature-card{padding:14px}
}


/* VERSION 2.2 — STORE-MESSAGING AND MOBILE NAV CLEANUP */

/* Checkout is not live yet, so hide shipping/cart promises everywhere. */
.inner-topbar,
.topbar,
header a[href*="/cart/"],
nav a[href*="/cart/"],
.menu a[href="#cart"],
.cart,
.inner-cart{
  display:none !important;
}

/* The page template now owns the one clean Around the Fire section nav. */
body.page .around-fire-page > .gp-page-nav,
body.page .around-fire-page .gp-page-nav,
body.page .gp-around-fire-nav-final{
  display:none !important;
}

/* Keep the permanent four-link nav clean and readable on phones. */
@media (max-width:900px){
  body.page .section-subnav-fire{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px 8px !important;
    padding:11px 10px 12px !important;
    overflow:visible !important;
  }
  body.page .section-subnav-fire a{
    display:block !important;
    min-width:0 !important;
    padding:5px 4px !important;
    font-size:clamp(10px,3.15vw,13px) !important;
    line-height:1.15 !important;
    letter-spacing:.035em !important;
    white-space:nowrap !important;
  }
}

/* Links repaired by the theme retain normal button styling. */
body.home .gp-theme-repaired-link{
  color:inherit;
  text-decoration:none;
}
body.home .wp-block-button > .gp-theme-repaired-link{
  display:inline-block;
  width:100%;
}

/* ================================================================
   VERSION 2.4 — MOBILE AROUND THE FIRE + GEAR + FONT RESTORATION
   Desktop layouts remain unchanged. These rules intentionally apply
   only to tablet/phone widths unless otherwise noted.
   ================================================================ */

/* Caprasimo is loaded by functions.php. Keep the brand face consistent
   anywhere a display font is expected, including iPhone/Safari. */
:where(
  .inner-desktop-nav a,
  .inner-mobile-links a,
  .section-subnav a,
  .eyebrow,
  .section-title,
  .gp-page h1,
  .gp-page h2,
  .gp-page h3,
  .gp-feature-card h2,
  .gp-coming-card h2,
  .around-fire-page-section h2,
  .wp-block-button__link
){
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
}

/* The permanent template navigation is the only category navigation.
   Remove old editable copies left behind by the temporary fix plugins. */
.inner-page-main .gp-page .gp-page-nav,
.inner-page-main .gp-page > .gp-page-nav,
.inner-page-main .around-fire-page .gp-page-nav,
.inner-page-main .around-fire-page > .gp-page-nav,
.inner-page-main .gp-around-fire-nav-final{
  display:none !important;
}

/* Modern-browser fallback for old content saved without the expected class. */
@supports selector(p:has(a)){
  .around-fire-page p:has(> a[href="#field-notes"]),
  .around-fire-page p:has(> a[href="#campfire-talk"]),
  .around-fire-page p:has(> a[href="#trail-sightings"]),
  .around-fire-page p:has(> a[href="#join-the-pack"]){
    display:none !important;
  }
}

@media (max-width:900px){
  /* ---------- GLOBAL MOBILE FONT SAFETY ---------- */
  body{
    -webkit-text-size-adjust:100%;
  }

  .inner-site-header{
    min-height:66px !important;
    padding:9px 16px !important;
  }
  .inner-brand img{
    width:96px !important;
  }

  /* ---------- SHARED SUBNAV ---------- */
  .section-subnav{
    position:sticky !important;
    top:66px !important;
    z-index:90 !important;
    width:100% !important;
    margin:0 !important;
    background:#fff8e9 !important;
    border-bottom:2px solid #0b0a07 !important;
    box-shadow:none !important;
  }
  body.admin-bar .section-subnav{
    top:112px !important;
  }

  /* ---------- AROUND THE FIRE ---------- */
  .section-subnav-fire{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px 10px !important;
    padding:10px 12px 11px !important;
    overflow:visible !important;
    white-space:normal !important;
  }
  .section-subnav-fire a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:34px !important;
    min-width:0 !important;
    padding:4px 3px !important;
    text-align:center !important;
    font-size:clamp(10px,3.05vw,13px) !important;
    line-height:1.05 !important;
    letter-spacing:.03em !important;
    white-space:nowrap !important;
  }

  .around-fire-page{
    overflow:hidden !important;
  }
  .around-fire-page > .eyebrow,
  .around-fire-page > .section-title,
  .around-fire-page > .lead{
    width:100% !important;
    max-width:100% !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }
  .around-fire-page > .eyebrow{
    margin:42px auto 0 !important;
    font-size:13px !important;
    letter-spacing:.14em !important;
  }
  .around-fire-page > .section-title{
    margin:10px auto 16px !important;
    font-size:clamp(43px,13.2vw,61px) !important;
    line-height:.88 !important;
    letter-spacing:.005em !important;
    text-wrap:balance !important;
  }
  .around-fire-page > .lead{
    max-width:620px !important;
    margin:0 auto 28px !important;
    font-size:18px !important;
    line-height:1.45 !important;
  }
  .around-fire-page-section{
    min-height:0 !important;
    padding:42px 20px !important;
    scroll-margin-top:178px !important;
  }
  .around-fire-page-section > *{
    max-width:760px !important;
  }
  .around-fire-page-section .eyebrow{
    margin-bottom:12px !important;
  }
  .around-fire-page-section h2{
    margin:0 auto 14px !important;
    font-size:clamp(32px,9.4vw,47px) !important;
    line-height:.96 !important;
    letter-spacing:.005em !important;
    text-wrap:balance !important;
  }
  .around-fire-page-section p:not(.eyebrow){
    margin:0 auto !important;
    font-size:17px !important;
    line-height:1.52 !important;
  }

  /* ---------- GEAR ---------- */
  .section-subnav-gear{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:0 !important;
    padding:10px 10px 11px !important;
    overflow:visible !important;
  }
  .section-subnav-gear a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:36px !important;
    min-width:0 !important;
    padding:4px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    letter-spacing:.05em !important;
    white-space:nowrap !important;
  }

  .gp-gear-page{
    padding-top:42px !important;
    padding-bottom:64px !important;
  }
  .gp-gear-page > .eyebrow{
    margin-top:0 !important;
  }
  .gp-gear-page > .section-title{
    margin-top:10px !important;
    margin-bottom:16px !important;
    font-size:clamp(43px,13vw,60px) !important;
    line-height:.9 !important;
  }
  .gp-gear-page > .lead{
    margin-bottom:26px !important;
    font-size:18px !important;
    line-height:1.48 !important;
  }
  .gp-gear-page .gp-feature-card,
  .gp-gear-page .gp-feature-card.reverse{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
    margin:22px 0 0 !important;
    padding:14px !important;
    border-radius:20px !important;
    box-shadow:5px 5px 0 #ff8d2b !important;
  }
  .gp-gear-page .gp-feature-card.reverse > figure{
    order:0 !important;
  }
  .gp-gear-page .gp-feature-card figure{
    width:100% !important;
    margin:0 !important;
    border-radius:14px !important;
    overflow:hidden !important;
    background:#f4ecd9 !important;
  }
  .gp-gear-page .gp-feature-card figure img{
    width:100% !important;
    height:auto !important;
    max-height:260px !important;
    object-fit:contain !important;
    object-position:center !important;
    border-radius:14px !important;
  }
  .gp-gear-page .gp-feature-card h2{
    margin:2px 0 10px !important;
    font-size:34px !important;
    line-height:.96 !important;
  }
  .gp-gear-page .gp-feature-card p{
    margin:0 !important;
    font-size:17px !important;
    line-height:1.48 !important;
  }
  .gp-gear-page .gp-feature-card .wp-block-buttons{
    margin-top:16px !important;
  }
  .gp-gear-page .wp-block-button__link{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-height:46px !important;
    padding:12px 18px !important;
    font-size:13px !important;
    line-height:1 !important;
  }
  .gp-gear-page .gp-coming-card{
    margin-top:24px !important;
    padding:36px 20px !important;
    border-radius:20px !important;
  }
  .gp-gear-page .gp-coming-card h2{
    margin:8px 0 12px !important;
    font-size:40px !important;
  }
}

@media (max-width:430px){
  .section-subnav-fire{
    gap:7px 6px !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }
  .section-subnav-fire a{
    font-size:10px !important;
    letter-spacing:.015em !important;
  }
  .around-fire-page > .section-title{
    font-size:clamp(40px,12.8vw,55px) !important;
  }
  .gp-gear-page{
    padding-left:14px !important;
    padding-right:14px !important;
  }
}



/* ================================================================
   VERSION 2.5 — OUR STORY FONT RESTORATION
   Keep paragraph copy readable while forcing the Guadalupe display
   face on every story-page heading, label and button on all screens.
   ================================================================ */
body.gp-our-story .inner-page-main :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .wp-block-heading,
  .section-title,
  .eyebrow,
  .story-title,
  .story-kicker,
  .story-label,
  .wp-block-button__link,
  .wp-element-button
){
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
}

/* Some older editable story blocks saved section labels as bold paragraphs
   instead of heading blocks. Target those labels without changing normal copy. */
body.gp-our-story .inner-page-main :where(
  p.eyebrow,
  p.section-title,
  p.story-kicker,
  p.story-label,
  .wp-block-group > p.has-text-align-center.has-large-font-size,
  .wp-block-group > p.has-text-align-center.has-x-large-font-size
){
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
}

@media (max-width:900px){
  body.gp-our-story .inner-page-main :where(
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    .wp-block-heading,
    .section-title,
    .eyebrow,
    .story-title,
    .story-kicker,
    .story-label,
    .wp-block-button__link,
    .wp-element-button
  ){
    font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
    font-weight:400 !important;
    font-synthesis:none !important;
  }
}

/* ================================================================
   VERSION 2.6 — OUR STORY RESPONSIVE LAYOUT
   Front-end-only presentation. Gutenberg content remains editable.
   ================================================================ */
body.gp-our-story{
  background:var(--cream) !important;
}

body.gp-our-story .inner-page-main{
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 7%,rgba(255,141,43,.10),transparent 28%),
    linear-gradient(180deg,#fff8e9 0,#f4ecd9 38%,#f4ecd9 100%);
}

body.gp-our-story .gp-story-page{
  width:100%;
  margin:0;
  padding:74px 24px 104px;
}

body.gp-our-story .gp-story-page :where(
  .gp-story-page-label,
  .gp-story-hero-title,
  .gp-story-intro,
  .gp-story-map,
  .gp-story-section-label,
  .gp-story-section-title,
  .gp-story-copy,
  .gp-story-manifesto-live,
  .gp-story-manifesto-work,
  .wp-block-buttons
){
  margin-left:auto !important;
  margin-right:auto !important;
}

body.gp-our-story .gp-story-page-label,
body.gp-our-story .gp-story-section-label{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
  font-style:normal !important;
  text-align:center !important;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:var(--brown);
}

body.gp-our-story .gp-story-page-label{
  max-width:760px;
  margin-top:0 !important;
  margin-bottom:18px !important;
  font-size:14px !important;
  line-height:1.1 !important;
}

body.gp-our-story .gp-story-hero-title{
  max-width:1050px;
  margin-top:0 !important;
  margin-bottom:28px !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(64px,8.4vw,118px) !important;
  font-weight:400 !important;
  line-height:.84 !important;
  letter-spacing:.005em !important;
  text-align:center !important;
  text-transform:uppercase;
  text-wrap:balance;
}

body.gp-our-story .gp-story-intro{
  max-width:770px;
  margin-top:0 !important;
  margin-bottom:10px !important;
  color:#3f352b;
  font-family:Georgia,Cambria,serif !important;
  font-size:clamp(19px,1.65vw,23px) !important;
  font-weight:400 !important;
  line-height:1.58 !important;
  text-align:center !important;
  text-wrap:pretty;
}

body.gp-our-story .gp-story-map{
  display:block;
  width:min(980px,100%);
  margin-top:48px !important;
  margin-bottom:22px !important;
  padding:14px;
  overflow:hidden;
  border:3px solid var(--black);
  border-radius:28px;
  background:var(--black);
  box-shadow:10px 10px 0 var(--orange);
}

body.gp-our-story .gp-story-map img{
  display:block;
  width:100% !important;
  height:auto !important;
  margin:0 !important;
  border-radius:17px;
  object-fit:contain;
}

body.gp-our-story .gp-story-section-label{
  position:relative;
  max-width:900px;
  margin-top:104px !important;
  margin-bottom:17px !important;
  padding-top:24px;
  font-size:14px !important;
  line-height:1.1 !important;
}

body.gp-our-story .gp-story-section-label::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  width:54px;
  height:4px;
  border-radius:999px;
  background:var(--orange);
  transform:translateX(-50%);
}

body.gp-our-story .gp-story-section-title{
  max-width:920px;
  margin-top:0 !important;
  margin-bottom:24px !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(43px,5.4vw,76px) !important;
  font-weight:400 !important;
  line-height:.93 !important;
  letter-spacing:.004em !important;
  text-align:center !important;
  text-wrap:balance;
}

body.gp-our-story .gp-story-copy{
  max-width:780px;
  margin-top:0 !important;
  margin-bottom:18px !important;
  color:#493e32;
  font-family:Georgia,Cambria,serif !important;
  font-size:19px !important;
  font-weight:400 !important;
  line-height:1.66 !important;
  text-align:center !important;
  text-wrap:pretty;
}

body.gp-our-story .gp-story-manifesto-live{
  max-width:1050px;
  margin-top:112px !important;
  margin-bottom:10px !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(59px,7.5vw,104px) !important;
  font-weight:400 !important;
  line-height:.86 !important;
  letter-spacing:.006em !important;
  text-align:center !important;
  text-transform:uppercase;
  text-wrap:balance;
}

body.gp-our-story .gp-story-manifesto-work{
  max-width:920px;
  margin-top:0 !important;
  margin-bottom:30px !important;
  color:var(--brown) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(40px,5.4vw,76px) !important;
  font-weight:400 !important;
  line-height:.93 !important;
  letter-spacing:.055em !important;
  text-align:center !important;
  text-transform:uppercase;
  text-wrap:balance;
}

body.gp-our-story .gp-story-copy-manifesto{
  max-width:820px;
}

body.gp-our-story .gp-story-cta-label{
  margin-top:112px !important;
}

body.gp-our-story .gp-story-cta-title{
  margin-bottom:20px !important;
}

body.gp-our-story .gp-story-copy-cta{
  max-width:700px;
}

body.gp-our-story .gp-story-page .wp-block-buttons{
  display:flex !important;
  justify-content:center !important;
  width:100%;
  max-width:760px;
  margin-top:28px !important;
  margin-bottom:0 !important;
}

body.gp-our-story .gp-story-button,
body.gp-our-story .gp-story-page .wp-block-button__link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:50px;
  padding:14px 24px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--black) !important;
  color:var(--paper) !important;
  box-shadow:5px 5px 0 var(--orange) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:.08em !important;
  text-align:center !important;
  text-transform:uppercase;
}

@media (max-width:900px){
  body.gp-our-story .gp-story-page{
    padding:50px 20px 78px;
  }

  body.gp-our-story .gp-story-page-label{
    margin-bottom:14px !important;
    font-size:12px !important;
    letter-spacing:.15em !important;
  }

  body.gp-our-story .gp-story-hero-title{
    max-width:720px;
    margin-bottom:22px !important;
    font-size:clamp(47px,12vw,72px) !important;
    line-height:.88 !important;
  }

  body.gp-our-story .gp-story-intro{
    max-width:650px;
    margin-bottom:8px !important;
    font-size:18px !important;
    line-height:1.52 !important;
  }

  body.gp-our-story .gp-story-map{
    margin-top:34px !important;
    padding:10px;
    border-radius:22px;
    box-shadow:7px 7px 0 var(--orange);
  }

  body.gp-our-story .gp-story-map img{
    border-radius:13px;
  }

  body.gp-our-story .gp-story-section-label{
    margin-top:76px !important;
    margin-bottom:14px !important;
    padding-top:21px;
    font-size:12px !important;
    letter-spacing:.14em !important;
  }

  body.gp-our-story .gp-story-section-label::before{
    width:46px;
    height:3px;
  }

  body.gp-our-story .gp-story-section-title{
    max-width:720px;
    margin-bottom:19px !important;
    font-size:clamp(36px,8.4vw,54px) !important;
    line-height:.95 !important;
  }

  body.gp-our-story .gp-story-copy{
    max-width:660px;
    margin-bottom:16px !important;
    font-size:18px !important;
    line-height:1.58 !important;
  }

  body.gp-our-story .gp-story-manifesto-live{
    margin-top:82px !important;
    margin-bottom:9px !important;
    font-size:clamp(48px,11vw,72px) !important;
    line-height:.89 !important;
  }

  body.gp-our-story .gp-story-manifesto-work{
    margin-bottom:24px !important;
    font-size:clamp(35px,8vw,52px) !important;
    line-height:.94 !important;
    letter-spacing:.035em !important;
  }

  body.gp-our-story .gp-story-cta-label{
    margin-top:82px !important;
  }
}

@media (max-width:560px){
  body.gp-our-story .gp-story-page{
    padding:40px 16px 66px;
  }

  body.gp-our-story .gp-story-hero-title{
    margin-bottom:19px !important;
    font-size:clamp(42px,12.7vw,57px) !important;
    line-height:.9 !important;
  }

  body.gp-our-story .gp-story-intro{
    font-size:17px !important;
    line-height:1.52 !important;
  }

  body.gp-our-story .gp-story-map{
    margin-top:29px !important;
    padding:7px;
    border-width:2px;
    border-radius:18px;
    box-shadow:5px 5px 0 var(--orange);
  }

  body.gp-our-story .gp-story-map img{
    border-radius:10px;
  }

  body.gp-our-story .gp-story-section-label{
    margin-top:62px !important;
    padding-top:18px;
  }

  body.gp-our-story .gp-story-section-title{
    margin-bottom:16px !important;
    font-size:clamp(32px,9.6vw,44px) !important;
    line-height:.96 !important;
  }

  body.gp-our-story .gp-story-copy{
    font-size:17px !important;
    line-height:1.56 !important;
  }

  body.gp-our-story .gp-story-manifesto-live{
    margin-top:68px !important;
    font-size:clamp(42px,12vw,57px) !important;
    line-height:.9 !important;
  }

  body.gp-our-story .gp-story-manifesto-work{
    margin-bottom:21px !important;
    font-size:clamp(31px,8.8vw,42px) !important;
    line-height:.95 !important;
    letter-spacing:.025em !important;
  }

  body.gp-our-story .gp-story-cta-label{
    margin-top:68px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-buttons{
    margin-top:24px !important;
  }

  body.gp-our-story .gp-story-button,
  body.gp-our-story .gp-story-page .wp-block-button__link{
    min-height:46px;
    padding:12px 20px !important;
    font-size:13px !important;
  }
}

/* ================================================================
   VERSION 2.7 — OUR STORY MAP + DESKTOP COLUMN SPACING
   Restores the transparent map artwork on a light paper background
   and gives the trail copy a deliberate gap from the image.
   ================================================================ */
body.gp-our-story .gp-story-map{
  padding:0 !important;
  background:var(--paper) !important;
  border:3px solid var(--black) !important;
  box-shadow:10px 10px 0 var(--orange) !important;
}

body.gp-our-story .gp-story-map img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  background:var(--cream) !important;
  border-radius:24px !important;
  filter:none !important;
  opacity:1 !important;
  mix-blend-mode:normal !important;
}

@media (min-width:901px){
  /* The editable page saves this section as Gutenberg columns. */
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    width:min(1180px,100%) !important;
    max-width:1180px !important;
    margin:54px auto 30px !important;
    column-gap:clamp(64px,6vw,96px) !important;
    row-gap:40px !important;
    align-items:center !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:has(.gp-story-map){
    flex:0 1 44% !important;
    min-width:0 !important;
    padding:0 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:has(.gp-story-map) + .wp-block-column{
    flex:1 1 50% !important;
    min-width:0 !important;
    padding-left:10px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    width:100% !important;
    max-width:560px !important;
    margin:0 auto !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-label{
    margin-top:0 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-title{
    max-width:610px !important;
    font-size:clamp(43px,4.8vw,68px) !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-copy-trail{
    max-width:610px !important;
  }
}

@media (max-width:900px){
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:34px !important;
    width:100% !important;
    max-width:720px !important;
    margin:34px auto 0 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column{
    width:100% !important;
    min-width:0 !important;
    padding:0 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    width:100% !important;
    max-width:600px !important;
    margin:0 auto !important;
    box-shadow:7px 7px 0 var(--orange) !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-label{
    margin-top:10px !important;
  }
}

@media (max-width:560px){
  body.gp-our-story .gp-story-map img{
    border-radius:16px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    gap:28px !important;
  }
}


/* ================================================================
   VERSION 2.7.1 — OUR STORY MOBILE MAP + SPACING REFINEMENT
   Keeps the map readable on cream and tightens the stacked mobile flow.
   ================================================================ */
@media (max-width:900px){
  body.gp-our-story .gp-story-page{
    padding:44px 18px 68px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    gap:22px !important;
    margin:28px auto 0 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    max-width:520px !important;
    margin:0 auto !important;
    background:var(--paper) !important;
    box-shadow:6px 6px 0 var(--orange) !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-label{
    margin-top:0 !important;
    margin-bottom:12px !important;
    padding-top:18px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-title{
    max-width:650px !important;
    margin-bottom:16px !important;
    font-size:clamp(34px,8.8vw,50px) !important;
    line-height:.96 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-copy-trail{
    max-width:650px !important;
    margin-bottom:14px !important;
  }
}

@media (max-width:560px){
  body.gp-our-story .gp-story-page{
    padding:32px 16px 58px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    gap:18px !important;
    margin:24px auto 0 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    max-width:420px !important;
    border-width:2px !important;
    border-radius:18px !important;
    box-shadow:5px 5px 0 var(--orange) !important;
  }

  body.gp-our-story .gp-story-map img{
    background:var(--cream) !important;
    border-radius:14px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-label{
    margin-top:0 !important;
    margin-bottom:10px !important;
    padding-top:15px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-label::before{
    width:42px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-title{
    margin-bottom:14px !important;
    font-size:clamp(32px,9.5vw,42px) !important;
    line-height:.97 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-copy-trail{
    margin-bottom:12px !important;
    font-size:17px !important;
    line-height:1.52 !important;
  }

  body.gp-our-story .gp-story-section-label{
    margin-top:54px !important;
  }

  body.gp-our-story .gp-story-manifesto-live,
  body.gp-our-story .gp-story-cta-label{
    margin-top:60px !important;
  }
}

/* =========================================================
   VERSION 2.8 — CENTERED HEADER + SIMPLIFIED HOMEPAGE
   ========================================================= */
body{overflow-x:hidden}

.gp-global-header{
  position:sticky;
  top:0;
  z-index:1000;
  width:100%;
  background:rgba(244,236,217,.97);
  border-top:1px solid var(--black);
  border-bottom:1px solid rgba(11,10,7,.22);
  backdrop-filter:blur(12px);
}
body.admin-bar .gp-global-header{top:32px}

.gp-global-header-inner{
  min-height:82px;
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:18px;
  padding:10px 26px;
  position:relative;
}

.gp-header-menu{
  grid-column:1;
  justify-self:start;
  position:relative;
}
.gp-header-menu summary{
  list-style:none;
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  min-height:44px;
  padding:7px 4px;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:13px;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.gp-header-menu summary::-webkit-details-marker{display:none}
.gp-menu-icon{
  width:29px;
  height:23px;
  fill:none;
  stroke:var(--black);
  stroke-width:3;
  stroke-linecap:round;
}
.gp-header-menu[open] .gp-menu-icon path:nth-child(1){transform:translate(2px,2px) rotate(45deg);transform-origin:3px 3px}
.gp-header-menu[open] .gp-menu-icon path:nth-child(2){opacity:0}
.gp-header-menu[open] .gp-menu-icon path:nth-child(3){transform:translate(2px,-2px) rotate(-45deg);transform-origin:3px 21px}

.gp-menu-drawer{
  position:absolute;
  left:-10px;
  top:calc(100% + 18px);
  width:min(360px,calc(100vw - 28px));
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:0;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:0 0 20px 20px;
  box-shadow:8px 8px 0 var(--orange);
}
.gp-menu-drawer a{
  display:block;
  padding:14px 12px;
  border-bottom:1px solid rgba(11,10,7,.2);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:18px;
  line-height:1.05;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.gp-menu-drawer a:last-child{border-bottom:0}
.gp-menu-drawer a:hover,.gp-menu-drawer a:focus{color:var(--brown);padding-left:17px}

.gp-header-logo{
  grid-column:2;
  justify-self:center;
  display:block;
  width:154px;
  line-height:0;
}
.gp-header-logo img{width:100%;height:auto}

.gp-header-actions{
  grid-column:3;
  justify-self:end;
  display:flex;
  align-items:center;
  gap:8px;
}
.gp-header-action{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1.5px solid transparent;
  border-radius:999px;
  position:relative;
}
.gp-header-action:hover,.gp-header-action:focus{border-color:var(--black);background:var(--paper)}
.gp-header-action svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:var(--black);
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.gp-cart-count{
  position:absolute;
  right:-2px;
  top:-1px;
  min-width:18px;
  height:18px;
  padding:0 4px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:var(--orange);
  color:var(--black);
  font:700 11px/1 Arial,sans-serif;
  border:1px solid var(--black);
}

/* Keep any gear sub-navigation below the rebuilt header. */
.section-subnav{top:82px !important}
body.admin-bar .section-subnav{top:114px !important}

/* One centered hero action on every screen. */
body.home .hero-buttons{justify-content:center !important}
body.home .hero-buttons .wp-block-button{width:auto !important}
body.home .hero-buttons .wp-block-button__link{width:auto !important;min-width:170px;text-align:center}

/* Compact brand introduction between the hero and product section. */
.gp-home-welcome{
  background:var(--cream);
  padding:72px 24px 76px !important;
  border-bottom:2px solid var(--black);
  text-align:center;
}
.gp-home-welcome-inner{max-width:850px !important;margin:0 auto !important}
.gp-home-welcome .eyebrow{margin:0 0 14px !important;color:var(--brown)}
.gp-home-welcome h2{
  max-width:760px;
  margin:0 auto 20px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(42px,5.4vw,76px);
  line-height:.96;
  letter-spacing:.01em;
  text-wrap:balance;
}
.gp-home-welcome-copy{
  max-width:760px;
  margin:0 auto !important;
  font-size:clamp(18px,1.8vw,22px);
  line-height:1.55;
  color:#4b4034;
  text-wrap:pretty;
}
.gp-home-welcome-link{margin:22px 0 0 !important}
.gp-home-welcome-link a{
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:14px;
  letter-spacing:.09em;
  text-transform:uppercase;
  border-bottom:2px solid var(--orange);
  padding-bottom:4px;
}

/* Shop all hats after the four featured products. */
body.home .gp-shop-hats-cta{
  margin:34px auto 42px !important;
  justify-content:center !important;
}
body.home .gp-shop-hats-cta .wp-block-button__link{
  min-width:170px;
  text-align:center;
  background:var(--paper) !important;
  color:var(--black) !important;
  border:2px solid var(--paper) !important;
  box-shadow:6px 6px 0 var(--orange) !important;
}

/* Two editorial cards and one larger Join the Pack panel. */
.gp-around-fire-v280{padding:72px 24px 78px !important}
.gp-around-fire-v280 .wrap{max-width:1080px !important}
.gp-around-fire-v280 > .wrap > h2{
  max-width:900px;
  margin-left:auto !important;
  margin-right:auto !important;
  text-wrap:balance;
}
.gp-fire-content-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:20px !important;
  margin:34px 0 20px !important;
}
.gp-fire-feature-card{
  min-height:310px;
  padding:34px 30px !important;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  background:#17130e;
  border:2px solid rgba(255,248,233,.82);
  border-radius:24px;
}
.gp-fire-feature-card svg{
  width:58px;
  height:58px;
  margin:0 auto 20px;
  fill:none;
  stroke:var(--orange);
  stroke-width:6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.gp-fire-feature-card h3,
.gp-join-pack-home h3{
  margin:0 0 13px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(28px,3.2vw,42px);
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.gp-fire-feature-card > p:not(.gp-fire-card-link){
  max-width:430px;
  margin:0 auto !important;
  color:#dbcbb2;
  font-size:17px;
  line-height:1.5;
}
.gp-fire-card-link{margin:auto 0 0 !important;padding-top:25px}
.gp-fire-card-link a{
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:14px;
  letter-spacing:.08em;
  text-transform:uppercase;
  border-bottom:2px solid var(--orange);
  padding-bottom:4px;
}
.gp-join-pack-home{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:34px;
  padding:34px 38px !important;
  background:var(--paper);
  color:var(--black);
  border:2px solid var(--paper);
  border-radius:24px;
  box-shadow:8px 8px 0 var(--orange);
  text-align:left;
}
.gp-join-pack-home .eyebrow{margin:0 0 8px !important;color:var(--brown) !important;text-align:left !important}
.gp-join-pack-home h3{font-size:clamp(30px,4vw,50px)}
.gp-join-pack-home p:not(.eyebrow){margin:0 !important;color:#4b4034;font-size:17px;line-height:1.5}
.gp-join-pack-home .wp-block-buttons{margin:0 !important;justify-content:flex-end !important}
.gp-join-pack-home .wp-block-button__link{
  white-space:nowrap;
  background:var(--black) !important;
  color:var(--paper) !important;
  box-shadow:5px 5px 0 var(--orange) !important;
}

/* Standalone Campfire Talk, Trail Sightings, and Join the Pack pages. */
body.gp-editorial-body .inner-page-main{background:var(--cream)}
.gp-editorial-page{
  max-width:1040px !important;
  margin:0 auto !important;
  padding:82px 24px 100px !important;
  text-align:center;
}
.gp-editorial-page > .eyebrow{margin:0 0 15px !important}
.gp-editorial-page > h1{
  max-width:940px;
  margin:0 auto 24px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(58px,9vw,120px);
  line-height:.88;
  text-transform:uppercase;
  letter-spacing:.01em;
  text-wrap:balance;
}
.gp-editorial-lead{
  max-width:760px;
  margin:0 auto 54px !important;
  color:#4b4034;
  font-size:clamp(19px,2vw,24px);
  line-height:1.55;
}
.gp-editorial-card{
  max-width:780px !important;
  margin:0 auto !important;
  padding:44px 38px !important;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:26px;
  box-shadow:8px 8px 0 var(--orange);
}
.gp-editorial-card h2{
  margin:0 0 14px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(34px,5vw,60px);
  line-height:1;
}
.gp-editorial-card p{max-width:610px;margin:0 auto !important;font-size:18px;line-height:1.6;color:#4b4034}
.gp-editorial-card .wp-block-buttons{margin-top:28px !important;justify-content:center !important}

@media(max-width:900px){
  .gp-global-header-inner{min-height:72px;padding:8px 18px}
  .gp-header-logo{width:126px}
  .gp-menu-label{display:none}
  .gp-menu-drawer{top:calc(100% + 14px)}
  .section-subnav{top:72px !important}
  body.admin-bar .gp-global-header{top:46px}
  body.admin-bar .section-subnav{top:118px !important}

  .gp-home-welcome{padding:58px 22px 62px !important}
  .gp-home-welcome h2{font-size:clamp(39px,8.5vw,62px)}

  .gp-fire-content-grid{grid-template-columns:1fr !important}
  .gp-fire-feature-card{min-height:280px}
  .gp-join-pack-home{
    grid-template-columns:1fr;
    text-align:center;
    padding:32px 26px !important;
  }
  .gp-join-pack-home .eyebrow{text-align:center !important}
  .gp-join-pack-home .wp-block-buttons{justify-content:center !important}
}

@media(max-width:560px){
  .gp-global-header-inner{min-height:66px;padding:7px 12px;gap:8px}
  .gp-header-logo{width:105px}
  .gp-header-actions{gap:2px}
  .gp-header-action{width:38px;height:38px}
  .gp-header-action svg{width:22px;height:22px}
  .gp-header-menu summary{min-height:38px;padding:5px 1px}
  .gp-menu-icon{width:27px;height:21px}
  .gp-menu-drawer{left:-2px;top:calc(100% + 12px);padding:14px;width:min(330px,calc(100vw - 24px))}
  .gp-menu-drawer a{font-size:17px;padding:13px 10px}
  .section-subnav{top:66px !important}
  body.admin-bar .section-subnav{top:112px !important}

  body.home .hero-buttons .wp-block-button{width:auto !important}
  body.home .hero-buttons .wp-block-button__link{width:auto !important;min-width:160px !important;padding-left:22px !important;padding-right:22px !important}

  .gp-home-welcome{padding:48px 18px 52px !important}
  .gp-home-welcome h2{font-size:40px;line-height:.98;margin-bottom:17px !important}
  .gp-home-welcome-copy{font-size:17px;line-height:1.55}
  .gp-home-welcome-link{margin-top:18px !important}

  body.home .gp-shop-hats-cta{margin:28px auto 36px !important}
  body.home .gp-shop-hats-cta .wp-block-button{width:auto !important}
  body.home .gp-shop-hats-cta .wp-block-button__link{width:auto !important}

  .gp-around-fire-v280{padding:54px 18px 62px !important}
  .gp-around-fire-v280 .around-intro{font-size:17px;margin-bottom:24px !important}
  .gp-fire-content-grid{gap:16px !important;margin-top:26px !important}
  .gp-fire-feature-card{min-height:0;padding:30px 20px !important}
  .gp-fire-feature-card h3{font-size:31px}
  .gp-fire-feature-card > p:not(.gp-fire-card-link){font-size:16px}
  .gp-fire-card-link{padding-top:23px}
  .gp-join-pack-home{gap:22px;padding:29px 20px !important;box-shadow:6px 6px 0 var(--orange)}
  .gp-join-pack-home h3{font-size:35px}
  .gp-join-pack-home p:not(.eyebrow){font-size:16px}
  .gp-join-pack-home .wp-block-button{width:auto !important}
  .gp-join-pack-home .wp-block-button__link{width:auto !important}

  .gp-editorial-page{padding:58px 18px 74px !important}
  .gp-editorial-page > h1{font-size:clamp(49px,15vw,72px);line-height:.9;margin-bottom:20px !important}
  .gp-editorial-lead{font-size:18px;margin-bottom:38px !important}
  .gp-editorial-card{padding:32px 20px !important;box-shadow:6px 6px 0 var(--orange)}
  .gp-editorial-card h2{font-size:38px}
  .gp-editorial-card p{font-size:17px}
}


/* VERSION 2.8.1 — prevent legacy saved page shells from resurfacing. */
.entry-content > .inner-topbar,
.entry-content > .inner-site-header,
.entry-content > .topbar,
.entry-content > .header,
.inner-page-main > .inner-topbar,
.inner-page-main > .inner-site-header,
.inner-page-main > .topbar,
.inner-page-main > .header{
  display:none !important;
}

/* The rebuilt global header is the only site header on every template. */
.gp-global-header{display:block !important}

/* Keep mail and contact buttons visibly interactive after Gutenberg edits. */
body.home #catch .wp-block-button__link,
body.gp-editorial-body .gp-editorial-card .wp-block-button__link{
  cursor:pointer;
}

/* =========================================================
   VERSION 2.9 — HOMEPAGE HIERARCHY + HERO POLISH
   ========================================================= */

/* Desktop label; tablet/mobile remain icon-only through the existing rule. */
.gp-menu-label{white-space:nowrap}

/* Keep the first desktop view complete while preserving the large wolf/map moment. */
@media (min-width:901px){
  body.home .hero{
    min-height:calc(100svh - 82px) !important;
    height:calc(100svh - 82px) !important;
    max-height:900px !important;
    padding:14px 24px 28px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
  }

  body.home .hero::before{
    inset:0 !important;
    background-position:center top !important;
    background-size:min(1060px,72vw) auto !important;
    opacity:.16 !important;
    filter:grayscale(1) contrast(1.08) !important;
  }

  body.home .hero-inner{
    width:100% !important;
    max-width:1600px !important;
    height:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    transform:none !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
  }

  body.home .hero-logo-wrap{
    flex:0 0 auto !important;
    margin:38px 0 6px !important;
    padding:0 !important;
    transform:none !important;
  }

  body.home .hero-logo{
    width:clamp(380px,29vw,480px) !important;
    min-width:0 !important;
    max-width:480px !important;
    margin:0 auto !important;
    transform:none !important;
  }

  body.home .hero-title{
    width:100% !important;
    max-width:1500px !important;
    margin:0 auto !important;
    padding:0 !important;
    transform:none !important;
    gap:5px !important;
    line-height:1 !important;
  }

  body.home .hero-title .hero-live{
    font-size:clamp(58px,5.25vw,94px) !important;
    line-height:.94 !important;
    letter-spacing:.025em !important;
    white-space:nowrap !important;
  }

  body.home .hero-title .hero-work{
    font-size:clamp(43px,3.85vw,69px) !important;
    line-height:.96 !important;
    letter-spacing:.065em !important;
    white-space:nowrap !important;
  }

  body.home .hero-sub{
    width:auto !important;
    max-width:820px !important;
    margin:20px auto 0 !important;
    padding:7px 20px 9px !important;
    color:#241d15 !important;
    font-size:clamp(19px,1.45vw,25px) !important;
    line-height:1.35 !important;
    border-radius:999px !important;
    background:radial-gradient(ellipse at center,rgba(244,236,217,.97) 0%,rgba(244,236,217,.86) 62%,rgba(244,236,217,0) 100%) !important;
    text-shadow:0 1px 0 rgba(255,248,233,.9) !important;
  }

  body.home .hero-buttons{
    margin-top:23px !important;
  }
}

/* Keep the cropped wolf asset balanced on tablets and phones. */
@media (max-width:900px){
  body.home .hero{
    min-height:auto !important;
    height:auto !important;
    padding:22px 16px 42px !important;
  }

  body.home .hero::before{
    inset:0 !important;
    background-position:center top !important;
    background-size:min(920px,145vw) auto !important;
    opacity:.14 !important;
  }

  body.home .hero-inner{
    transform:none !important;
    width:100% !important;
    max-width:100% !important;
  }

  body.home .hero-logo-wrap{
    margin:20px 0 8px !important;
    transform:none !important;
  }

  body.home .hero-logo{
    width:min(76vw,340px) !important;
    min-width:0 !important;
    max-width:340px !important;
    transform:none !important;
  }

  body.home .hero-title{
    margin:0 auto !important;
    transform:none !important;
    gap:4px !important;
  }

  body.home .hero-title .hero-live{
    font-size:clamp(34px,10vw,62px) !important;
    line-height:.95 !important;
    white-space:normal !important;
  }

  body.home .hero-title .hero-work{
    font-size:clamp(27px,7.8vw,46px) !important;
    line-height:.98 !important;
    white-space:normal !important;
  }

  body.home .hero-sub{
    max-width:680px !important;
    margin:18px auto 0 !important;
    padding:6px 12px 7px !important;
    color:#241d15 !important;
    font-size:clamp(16px,3.1vw,20px) !important;
    line-height:1.4 !important;
    border-radius:18px !important;
    background:rgba(244,236,217,.82) !important;
  }

  body.home .hero-buttons{margin-top:20px !important}
}

@media (max-width:560px){
  body.home .hero{padding:18px 14px 38px !important}
  body.home .hero-logo-wrap{margin-top:14px !important}
  body.home .hero-logo{width:min(75vw,295px) !important}
  body.home .hero-title .hero-live{font-size:clamp(32px,10vw,43px) !important}
  body.home .hero-title .hero-work{font-size:clamp(25px,7.7vw,34px) !important}
  body.home .hero-sub{font-size:16px !important;max-width:92vw !important}
}

/* Welcome section: brand name first, supporting thought second. */
.gp-home-welcome .gp-home-welcome-title{
  max-width:980px !important;
  margin:0 auto 10px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(58px,6.4vw,92px) !important;
  line-height:.92 !important;
  letter-spacing:.015em !important;
  text-transform:uppercase !important;
  text-wrap:balance;
}
.gp-home-welcome .gp-home-welcome-tagline{
  max-width:760px !important;
  margin:0 auto 24px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(28px,3vw,42px) !important;
  line-height:1.03 !important;
  color:var(--black) !important;
  font-weight:400 !important;
  text-wrap:balance;
}

/* Gear section: section name first; hero slogan is not repeated. */
body.home .gear .gp-gear-title{
  max-width:1000px !important;
  margin:0 0 12px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(58px,6vw,86px) !important;
  line-height:.94 !important;
  letter-spacing:.015em !important;
  text-transform:uppercase !important;
  color:var(--paper) !important;
}
body.home .gear .gp-gear-audience{
  max-width:940px !important;
  margin:0 0 28px !important;
  font-size:clamp(22px,2vw,30px) !important;
  line-height:1.35 !important;
  color:#eee0c9 !important;
}
body.home .gear .gear-subhead{margin-top:0 !important}

/* Around the Fire: section name leads, emotional line supports it. */
.gp-around-fire-v280 .gp-around-title{
  max-width:920px !important;
  margin:0 auto 10px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(58px,6vw,86px) !important;
  line-height:.92 !important;
  letter-spacing:.02em !important;
  text-transform:uppercase !important;
  color:var(--orange) !important;
  text-align:center !important;
  text-wrap:balance;
}
.gp-around-fire-v280 .gp-around-tagline{
  max-width:900px !important;
  margin:0 auto 14px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(38px,4.5vw,64px) !important;
  line-height:.98 !important;
  letter-spacing:.02em !important;
  text-transform:uppercase !important;
  color:var(--paper) !important;
  text-align:center !important;
  text-wrap:balance;
}

/* Join the Pack card follows the same hierarchy. */
.gp-join-pack-home .gp-join-title{
  margin:0 0 7px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(38px,4.2vw,58px) !important;
  line-height:.96 !important;
  letter-spacing:.02em !important;
  text-transform:uppercase !important;
  color:var(--black) !important;
}
.gp-join-pack-home .gp-join-tagline{
  margin:0 0 13px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(24px,2.4vw,34px) !important;
  line-height:1.05 !important;
  color:var(--brown) !important;
}

@media (max-width:900px){
  .gp-home-welcome .gp-home-welcome-title{font-size:clamp(48px,9vw,72px) !important}
  .gp-home-welcome .gp-home-welcome-tagline{font-size:clamp(27px,5vw,38px) !important}
  body.home .gear .gp-gear-title{font-size:clamp(50px,9vw,72px) !important}
  body.home .gear .gp-gear-audience{font-size:clamp(20px,3.5vw,26px) !important}
  .gp-around-fire-v280 .gp-around-title{font-size:clamp(50px,9vw,72px) !important}
  .gp-around-fire-v280 .gp-around-tagline{font-size:clamp(34px,6vw,52px) !important}
  .gp-join-pack-home .gp-join-title{font-size:clamp(38px,7vw,52px) !important}
  .gp-join-pack-home .gp-join-tagline{font-size:clamp(23px,4.2vw,31px) !important}
}

@media (max-width:560px){
  .gp-home-welcome .gp-home-welcome-title{font-size:43px !important;line-height:.94 !important}
  .gp-home-welcome .gp-home-welcome-tagline{font-size:27px !important;margin-bottom:20px !important}
  body.home .gear .gp-gear-title{font-size:46px !important}
  body.home .gear .gp-gear-audience{font-size:20px !important;margin-bottom:24px !important}
  .gp-around-fire-v280 .gp-around-title{font-size:45px !important}
  .gp-around-fire-v280 .gp-around-tagline{font-size:33px !important}
  .gp-join-pack-home .gp-join-title{font-size:40px !important;text-align:center !important}
  .gp-join-pack-home .gp-join-tagline{font-size:25px !important;text-align:center !important}
}

/* =========================================================
   VERSION 2.9.1 — DESKTOP HERO FIT + MAP CLEARANCE
   Keep the wolf unchanged; let the slogan and spacing give up room.
   ========================================================= */
@media (min-width:901px){
  body.home .hero::before{
    /* Preserve the existing map scale and visibility; only lift it slightly. */
    background-position:center -10px !important;
  }

  body.home .hero-logo,
  body.home .hero-logo-wrap{
    /* Explicitly preserve the 2.9 wolf size and placement. */
    transform:none !important;
  }

  body.home .hero-title{
    gap:2px !important;
  }

  body.home .hero-title .hero-live{
    font-size:clamp(54px,4.9vw,87px) !important;
    line-height:.93 !important;
  }

  body.home .hero-title .hero-work{
    font-size:clamp(40px,3.58vw,64px) !important;
    line-height:.95 !important;
  }

  body.home .hero-sub{
    margin-top:13px !important;
  }

  body.home .hero-buttons{
    margin-top:14px !important;
  }
}


/* =========================================================
   VERSION 2.9.2 — FINAL DESKTOP HERO CLEARANCE
   Keep wolf and map presence; give the slogan stack slightly less room.
   ========================================================= */
@media (min-width:901px){
  body.home .hero-title{
    margin-top:-12px !important;
    gap:0 !important;
  }

  body.home .hero-title .hero-live{
    font-size:clamp(52px,4.72vw,84px) !important;
    line-height:.92 !important;
  }

  body.home .hero-title .hero-work{
    font-size:clamp(39px,3.42vw,61px) !important;
    line-height:.94 !important;
  }

  body.home .hero-sub{
    margin-top:9px !important;
  }

  body.home .hero-buttons{
    margin-top:8px !important;
  }
}


/* =========================================================
   VERSION 2.9.3 — FINAL DESKTOP HERO BUTTON CLEARANCE
   Tiny upward nudge for subtitle/button only.
   ========================================================= */
@media (min-width:901px){
  body.home .hero-sub{
    margin-top:6px !important;
    transform:translateY(-8px) !important;
  }

  body.home .hero-buttons{
    margin-top:2px !important;
    transform:translateY(-10px) !important;
  }
}


/* =========================================================
   VERSION 2.10.0 — HOMEPAGE COLOR + TYPE REFINEMENT
   ========================================================= */

/* Primary homepage section names: orange, slightly smaller, cleaner. */
body.home .gp-home-welcome .gp-home-welcome-title{
  color:var(--orange) !important;
  font-size:clamp(52px,5.75vw,82px) !important;
  line-height:.90 !important;
  letter-spacing:.008em !important;
}

body.home .gear .gp-gear-title{
  color:var(--orange) !important;
  font-size:clamp(52px,5.4vw,78px) !important;
  line-height:.92 !important;
  letter-spacing:.008em !important;
}

/* Emphasize only the first word in the sticker headline. */
body.home .sticker-copy .gp-sticker-word{
  display:inline !important;
  color:var(--orange) !important;
  font-size:inherit !important;
}

/* Around the Fire: smaller section title and one-line supporting thought on desktop. */
body.home .gp-around-fire-v280 .gp-around-title{
  font-size:clamp(52px,5.4vw,78px) !important;
  line-height:.91 !important;
}

body.home .gp-around-fire-v280 .gp-around-tagline{
  max-width:none !important;
  font-size:clamp(28px,2.85vw,43px) !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

/* Card titles need more breathing room inside their borders. */
body.home .gp-fire-feature-card h3{
  font-size:clamp(25px,2.75vw,37px) !important;
  line-height:1 !important;
  letter-spacing:.02em !important;
}

@media (max-width:900px){
  body.home .gp-home-welcome .gp-home-welcome-title{
    font-size:clamp(44px,8vw,64px) !important;
  }
  body.home .gear .gp-gear-title{
    font-size:clamp(44px,8vw,64px) !important;
  }
  body.home .gp-around-fire-v280 .gp-around-title{
    font-size:clamp(44px,8vw,64px) !important;
  }
  body.home .gp-around-fire-v280 .gp-around-tagline{
    max-width:760px !important;
    font-size:clamp(29px,5.2vw,43px) !important;
    white-space:normal !important;
    text-wrap:balance;
  }
  body.home .gp-fire-feature-card h3{
    font-size:clamp(27px,4.8vw,35px) !important;
  }
}

@media (max-width:560px){
  body.home .gp-home-welcome .gp-home-welcome-title{
    font-size:39px !important;
    line-height:.92 !important;
  }
  body.home .gear .gp-gear-title{
    font-size:42px !important;
  }
  body.home .gp-around-fire-v280 .gp-around-title{
    font-size:41px !important;
  }
  body.home .gp-around-fire-v280 .gp-around-tagline{
    font-size:28px !important;
    line-height:1.02 !important;
  }
  body.home .gp-fire-feature-card h3{
    font-size:28px !important;
  }
}


/* =========================================================
   VERSION 2.10.1 — WELCOME SECTION COLOR HIERARCHY
   Main welcome heading returns to black; supporting line carries orange.
   ========================================================= */
body.home .gp-home-welcome .gp-home-welcome-title{
  color:var(--black) !important;
  font-size:clamp(48px,5.15vw,74px) !important;
  line-height:.91 !important;
  letter-spacing:.006em !important;
}

body.home .gp-home-welcome .gp-home-welcome-tagline{
  color:var(--orange) !important;
}

@media (max-width:900px){
  body.home .gp-home-welcome .gp-home-welcome-title{
    font-size:clamp(41px,7.4vw,58px) !important;
  }
}

@media (max-width:560px){
  body.home .gp-home-welcome .gp-home-welcome-title{
    font-size:36px !important;
    line-height:.93 !important;
  }
}


/* =========================================================
   VERSION 2.10.2 — HOMEPAGE TYPE BREATHING ROOM
   Reduce crowded Caprasimo headings, prevent synthetic bold,
   and use warm brown for text placed on light backgrounds.
   ========================================================= */

/* Light-background supporting line uses the warmer brand brown. */
body.home .gp-home-welcome .gp-home-welcome-tagline{
  color:var(--brown) !important;
}

/* Main homepage headings: slightly smaller, normal weight, more air. */
body.home .gp-home-welcome .gp-home-welcome-title{
  font-size:clamp(46px,4.65vw,66px) !important;
  line-height:.98 !important;
  letter-spacing:.018em !important;
  font-weight:400 !important;
}

body.home .gear .gp-gear-title{
  font-size:clamp(48px,4.85vw,70px) !important;
  line-height:.98 !important;
  letter-spacing:.018em !important;
  font-weight:400 !important;
}

body.home .gp-around-fire-v280 .gp-around-title{
  font-size:clamp(48px,4.85vw,70px) !important;
  line-height:.98 !important;
  letter-spacing:.018em !important;
  font-weight:400 !important;
}

body.home .gp-around-fire-v280 .gp-around-tagline{
  font-size:clamp(26px,2.4vw,36px) !important;
  line-height:1.08 !important;
  letter-spacing:.018em !important;
  font-weight:400 !important;
}

body.home .gp-fire-feature-card h3{
  font-size:clamp(23px,2.25vw,32px) !important;
  line-height:1.08 !important;
  letter-spacing:.025em !important;
  font-weight:400 !important;
}

@media (max-width:900px){
  body.home .gp-home-welcome .gp-home-welcome-title{
    font-size:clamp(38px,6.8vw,54px) !important;
    line-height:1 !important;
  }

  body.home .gear .gp-gear-title{
    font-size:clamp(40px,7.2vw,58px) !important;
    line-height:1 !important;
  }

  body.home .gp-around-fire-v280 .gp-around-title{
    font-size:clamp(40px,7.2vw,58px) !important;
    line-height:1 !important;
  }

  body.home .gp-around-fire-v280 .gp-around-tagline{
    font-size:clamp(25px,4.5vw,36px) !important;
    line-height:1.1 !important;
  }

  body.home .gp-fire-feature-card h3{
    font-size:clamp(24px,4.2vw,31px) !important;
    line-height:1.1 !important;
  }
}

@media (max-width:560px){
  body.home .gp-home-welcome .gp-home-welcome-title{
    font-size:33px !important;
    line-height:1.02 !important;
    letter-spacing:.016em !important;
  }

  body.home .gear .gp-gear-title{
    font-size:38px !important;
    line-height:1.02 !important;
  }

  body.home .gp-around-fire-v280 .gp-around-title{
    font-size:38px !important;
    line-height:1.02 !important;
  }

  body.home .gp-around-fire-v280 .gp-around-tagline{
    font-size:25px !important;
    line-height:1.12 !important;
    white-space:normal !important;
  }

  body.home .gp-fire-feature-card h3{
    font-size:25px !important;
    line-height:1.12 !important;
  }
}


/* =========================================================
   VERSION 2.10.3 — MOBILE HOMEPAGE HERO + DISPLAY FONT FIX
   Mobile only. Desktop/tablet desktop layout remains unchanged.
   ========================================================= */
@media (max-width:560px){
  /* Show the full faint Guadalupe Provisions Co. line at the top. */
  body.home .hero::before{
    background-position:center 14px !important;
    background-size:118vw auto !important;
  }

  /* Give the mobile slogan and supporting copy more breathing room. */
  body.home .hero-title{
    margin-top:8px !important;
    gap:4px !important;
  }

  body.home .hero-title .hero-live{
    font-size:38px !important;
    line-height:.98 !important;
    letter-spacing:.015em !important;
  }

  body.home .hero-title .hero-work{
    font-size:29px !important;
    line-height:1 !important;
    letter-spacing:.045em !important;
    white-space:nowrap !important;
  }

  body.home .hero-sub{
    max-width:330px !important;
    margin-top:22px !important;
    padding:8px 12px 9px !important;
    line-height:1.42 !important;
  }

  body.home .hero-buttons{
    margin-top:24px !important;
  }

  /* Restore the Guadalupe display face where mobile was falling back. */
  body.home .gear .gear-subhead h3,
  body.home .small-goods-copy .sticker-copy,
  body.home .small-goods-copy .sticker-copy span,
  body.home .small-goods-copy .sticker-copy .gp-sticker-word{
    font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
    font-weight:400 !important;
  }
}


/* =========================================================
   VERSION 2.10.4 — FINAL MOBILE HERO SUBTITLE SPACING
   Add clear separation below Work for Nothing on phones only.
   ========================================================= */
@media (max-width:560px){
  body.home .hero-sub{
    margin-top:40px !important;
  }
}


/* =========================================================
   VERSION 2.10.5 — MOBILE HERO SPACING (HARD FIX)
   Use an explicit visual offset because prior margin-only spacing
   was neutralized by the existing mobile hero layout.
   ========================================================= */
@media (max-width:760px){
  body.home .hero-sub{
    margin-top:0 !important;
    transform:translateY(18px) !important;
  }

  body.home .hero-buttons{
    transform:translateY(18px) !important;
  }
}


/* ================================================================
   VERSION 2.11 — SHOP GEAR PAGE HIERARCHY + CTA LABELS
   Make the Gear page eyebrow more prominent, reduce the oversized
   supporting title, and align the CTA wording with the homepage.
   ================================================================ */
.gp-gear-page > .eyebrow{
  margin:0 auto 10px !important;
  font-size:24px !important;
  line-height:1.08 !important;
  letter-spacing:.12em !important;
}

.gp-gear-page > .section-title{
  max-width:980px !important;
  margin:0 auto 18px !important;
  font-size:clamp(54px,5.7vw,84px) !important;
  line-height:.90 !important;
  letter-spacing:.005em !important;
}

@media (max-width:900px){
  .gp-gear-page > .eyebrow{
    margin:0 auto 8px !important;
    font-size:19px !important;
    line-height:1.08 !important;
    letter-spacing:.10em !important;
  }

  .gp-gear-page > .section-title{
    margin:0 auto 14px !important;
    font-size:clamp(32px,8.8vw,44px) !important;
    line-height:.94 !important;
    letter-spacing:.003em !important;
  }
}


/* ================================================================
   VERSION 2.11.1 — SHOP GEAR HEADING SELECTOR FIX
   The saved page nests the headings inside Gutenberg groups, so the
   previous direct-child selectors did not reach them.
   ================================================================ */
body.gp-shop-gear .gp-shop-gear-primary,
body.gp-shop-gear .gp-gear-page .eyebrow{
  display:block !important;
  max-width:980px !important;
  margin:0 auto 12px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(44px,4.6vw,66px) !important;
  line-height:.94 !important;
  letter-spacing:.015em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  color:var(--brown) !important;
  font-weight:400 !important;
  font-synthesis:none !important;
}

body.gp-shop-gear .gp-shop-gear-secondary,
body.gp-shop-gear .gp-gear-page .section-title{
  max-width:940px !important;
  margin:0 auto 20px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(38px,4.15vw,58px) !important;
  line-height:.96 !important;
  letter-spacing:.006em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  color:var(--black) !important;
  font-weight:400 !important;
  font-synthesis:none !important;
}

@media (max-width:900px){
  body.gp-shop-gear .gp-shop-gear-primary,
  body.gp-shop-gear .gp-gear-page .eyebrow{
    margin-bottom:9px !important;
    font-size:clamp(31px,9vw,42px) !important;
    line-height:.96 !important;
    letter-spacing:.012em !important;
  }

  body.gp-shop-gear .gp-shop-gear-secondary,
  body.gp-shop-gear .gp-gear-page .section-title{
    margin-bottom:16px !important;
    font-size:clamp(29px,8vw,39px) !important;
    line-height:.98 !important;
    letter-spacing:.004em !important;
  }
}


/* ================================================================
   VERSION 2.11.2 — SHOP GEAR SUPPORTING TITLE SCALE
   Keep Gear & Provisions dominant; make the supporting line clearly secondary.
   ================================================================ */
body.gp-shop-gear .gp-shop-gear-secondary,
body.gp-shop-gear .gp-gear-page .section-title{
  max-width:900px !important;
  margin-bottom:18px !important;
  font-size:clamp(30px,3vw,44px) !important;
  line-height:1 !important;
  letter-spacing:.004em !important;
}

@media (max-width:900px){
  body.gp-shop-gear .gp-shop-gear-secondary,
  body.gp-shop-gear .gp-gear-page .section-title{
    margin-bottom:15px !important;
    font-size:clamp(24px,6.5vw,32px) !important;
    line-height:1.02 !important;
    letter-spacing:.003em !important;
  }
}


/* ================================================================
   VERSION 2.11.3 — SHOP GEAR INTRO ALIGNMENT
   Keep the centered heading lockup consistent by centering the intro line.
   ================================================================ */
body.gp-shop-gear .gp-shop-gear-intro,
body.gp-shop-gear .gp-gear-page > .lead{
  max-width:900px !important;
  margin:0 auto 30px !important;
  text-align:center !important;
}

@media (max-width:900px){
  body.gp-shop-gear .gp-shop-gear-intro,
  body.gp-shop-gear .gp-gear-page > .lead{
    max-width:680px !important;
    margin:0 auto 24px !important;
    text-align:center !important;
  }
}


/* ================================================================
   VERSION 2.11.4 — SHOP GEAR FINAL INTRO HIERARCHY
   Make the supporting title clearly secondary and center the intro copy.
   ================================================================ */
body.gp-shop-gear .gp-shop-gear-secondary,
body.gp-shop-gear .gp-gear-page .section-title{
  max-width:820px !important;
  margin:0 auto 18px !important;
  font-size:clamp(25px,2.25vw,33px) !important;
  line-height:1.04 !important;
  letter-spacing:.006em !important;
  text-align:center !important;
}

body.gp-shop-gear .gp-shop-gear-intro{
  display:block !important;
  width:100% !important;
  max-width:900px !important;
  margin:0 auto 30px !important;
  padding-left:18px !important;
  padding-right:18px !important;
  text-align:center !important;
}

@media (max-width:900px){
  body.gp-shop-gear .gp-shop-gear-secondary,
  body.gp-shop-gear .gp-gear-page .section-title{
    max-width:680px !important;
    margin:0 auto 14px !important;
    font-size:clamp(21px,5.5vw,27px) !important;
    line-height:1.08 !important;
    letter-spacing:.004em !important;
  }

  body.gp-shop-gear .gp-shop-gear-intro{
    max-width:680px !important;
    margin:0 auto 24px !important;
    padding-left:12px !important;
    padding-right:12px !important;
    text-align:center !important;
  }
}


/* ================================================================
   VERSION 2.11.5 — SHOP GEAR INTRO HARD CENTER
   Use direct selectors without relying on body classes so the intro
   paragraph centers reliably in the rendered page.
   ================================================================ */
.gp-shop-gear-intro,
.gp-gear-page .gp-shop-gear-intro,
.gp-gear-page p.gp-shop-gear-intro,
.gp-gear-page > p.lead.gp-shop-gear-intro,
.gp-gear-page > .lead.gp-shop-gear-intro{
  display:block !important;
  float:none !important;
  clear:both !important;
  width:100% !important;
  max-width:900px !important;
  margin:0 auto 30px !important;
  padding-left:18px !important;
  padding-right:18px !important;
  text-align:center !important;
}

@media (max-width:900px){
  .gp-shop-gear-intro,
  .gp-gear-page .gp-shop-gear-intro,
  .gp-gear-page p.gp-shop-gear-intro,
  .gp-gear-page > p.lead.gp-shop-gear-intro,
  .gp-gear-page > .lead.gp-shop-gear-intro{
    max-width:680px !important;
    margin:0 auto 24px !important;
    padding-left:12px !important;
    padding-right:12px !important;
    text-align:center !important;
  }
}


/* ================================================================
   VERSION 2.12 — OUR STORY HIERARCHY + RESPONSIVE RHYTHM
   OUR STORY becomes the page title, the old placeholder slogan is removed,
   and desktop/mobile spacing is simplified without changing other pages.
   ================================================================ */
body.gp-our-story .gp-story-hero-title{
  display:none !important;
}

body.gp-our-story .gp-story-main-title,
body.gp-our-story .gp-story-page-label{
  display:block !important;
  max-width:980px !important;
  margin:0 auto 24px !important;
  padding:0 !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(68px,7vw,102px) !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:.90 !important;
  letter-spacing:.01em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.gp-our-story .gp-story-page{
  padding:58px 24px 78px !important;
}

body.gp-our-story .gp-story-intro{
  max-width:760px !important;
  margin:0 auto 8px !important;
  font-size:21px !important;
  line-height:1.55 !important;
}

/* Trail/map section: keep two columns on desktop, but reduce the empty gulf. */
@media (min-width:901px){
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    width:min(1160px,100%) !important;
    max-width:1160px !important;
    margin:42px auto 18px !important;
    column-gap:clamp(54px,5vw,78px) !important;
    row-gap:30px !important;
    align-items:center !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    max-width:540px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-label{
    margin-top:0 !important;
  }
}

body.gp-our-story .gp-story-section-label{
  margin-top:68px !important;
  margin-bottom:13px !important;
  padding-top:20px !important;
}

body.gp-our-story .gp-story-section-title{
  margin-bottom:18px !important;
  font-size:clamp(40px,4.7vw,66px) !important;
  line-height:.95 !important;
}

body.gp-our-story .gp-story-copy{
  max-width:780px !important;
  margin-bottom:14px !important;
  font-size:18px !important;
  line-height:1.58 !important;
}

body.gp-our-story .gp-story-manifesto-live{
  margin-top:72px !important;
  margin-bottom:8px !important;
  font-size:clamp(54px,6.4vw,88px) !important;
  line-height:.89 !important;
}

body.gp-our-story .gp-story-manifesto-work{
  margin-bottom:24px !important;
  font-size:clamp(37px,4.6vw,62px) !important;
  line-height:.95 !important;
}

body.gp-our-story .gp-story-cta-label{
  margin-top:72px !important;
}

body.gp-our-story .gp-story-page .wp-block-buttons{
  margin-top:22px !important;
}

@media (max-width:900px){
  body.gp-our-story .gp-story-page{
    padding:38px 18px 58px !important;
  }

  body.gp-our-story .gp-story-main-title,
  body.gp-our-story .gp-story-page-label{
    max-width:680px !important;
    margin-bottom:19px !important;
    font-size:clamp(50px,11vw,72px) !important;
    line-height:.92 !important;
  }

  body.gp-our-story .gp-story-intro{
    max-width:650px !important;
    margin-bottom:7px !important;
    font-size:18px !important;
    line-height:1.52 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
    width:100% !important;
    max-width:680px !important;
    margin:28px auto 0 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column{
    width:100% !important;
    min-width:0 !important;
    padding:0 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    width:100% !important;
    max-width:520px !important;
    margin:0 auto !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-label{
    margin-top:0 !important;
    margin-bottom:11px !important;
  }

  body.gp-our-story .gp-story-section-label{
    margin-top:48px !important;
    margin-bottom:11px !important;
    padding-top:17px !important;
  }

  body.gp-our-story .gp-story-section-title{
    margin-bottom:15px !important;
    font-size:clamp(34px,8vw,48px) !important;
    line-height:.97 !important;
  }

  body.gp-our-story .gp-story-copy{
    max-width:650px !important;
    margin-bottom:12px !important;
    font-size:17px !important;
    line-height:1.54 !important;
  }

  body.gp-our-story .gp-story-manifesto-live{
    margin-top:52px !important;
    margin-bottom:7px !important;
    font-size:clamp(43px,10vw,62px) !important;
    line-height:.91 !important;
  }

  body.gp-our-story .gp-story-manifesto-work{
    margin-bottom:20px !important;
    font-size:clamp(31px,7.5vw,44px) !important;
    line-height:.96 !important;
  }

  body.gp-our-story .gp-story-cta-label{
    margin-top:52px !important;
  }
}

@media (max-width:560px){
  body.gp-our-story .gp-story-page{
    padding:30px 15px 52px !important;
  }

  body.gp-our-story .gp-story-main-title,
  body.gp-our-story .gp-story-page-label{
    margin-bottom:17px !important;
    font-size:clamp(44px,13vw,56px) !important;
    line-height:.93 !important;
  }

  body.gp-our-story .gp-story-intro{
    font-size:17px !important;
    line-height:1.5 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    gap:18px !important;
    margin-top:24px !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    max-width:100% !important;
    border-width:2px !important;
    border-radius:17px !important;
    box-shadow:5px 5px 0 var(--orange) !important;
  }

  body.gp-our-story .gp-story-section-label{
    margin-top:42px !important;
  }

  body.gp-our-story .gp-story-section-title{
    font-size:clamp(31px,9vw,40px) !important;
  }

  body.gp-our-story .gp-story-manifesto-live,
  body.gp-our-story .gp-story-cta-label{
    margin-top:46px !important;
  }
}


/* ================================================================
   VERSION 2.12.1 — THE LONG WAY HERE + TIGHTER STORY RHYTHM
   Removes oversized gaps and keeps the story flowing continuously.
   ================================================================ */
body.gp-our-story .gp-story-page{
  padding:44px 24px 64px !important;
}

body.gp-our-story .gp-story-main-title,
body.gp-our-story .gp-story-page-label{
  max-width:1100px !important;
  margin:0 auto 18px !important;
  font-size:clamp(66px,6.5vw,96px) !important;
  line-height:.92 !important;
  letter-spacing:.008em !important;
}

body.gp-our-story .gp-story-intro{
  max-width:780px !important;
  margin:0 auto !important;
}

@media (min-width:901px){
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    width:min(1180px,100%) !important;
    max-width:1180px !important;
    margin:24px auto 12px !important;
    column-gap:clamp(48px,4.5vw,72px) !important;
    row-gap:24px !important;
    align-items:center !important;
  }
}

body.gp-our-story .gp-story-section-label{
  margin-top:48px !important;
  margin-bottom:11px !important;
  padding-top:16px !important;
}

body.gp-our-story .gp-story-section-title{
  margin-bottom:15px !important;
}

body.gp-our-story .gp-story-copy{
  margin-bottom:11px !important;
}

body.gp-our-story .gp-story-manifesto-live{
  margin-top:50px !important;
}

body.gp-our-story .gp-story-cta-label{
  margin-top:50px !important;
}

@media (max-width:900px){
  body.gp-our-story .gp-story-page{
    padding:32px 18px 52px !important;
  }

  body.gp-our-story .gp-story-main-title,
  body.gp-our-story .gp-story-page-label{
    max-width:720px !important;
    margin-bottom:15px !important;
    font-size:clamp(48px,10vw,68px) !important;
    line-height:.94 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    gap:18px !important;
    margin:18px auto 0 !important;
  }

  body.gp-our-story .gp-story-section-label{
    margin-top:38px !important;
    margin-bottom:10px !important;
    padding-top:14px !important;
  }

  body.gp-our-story .gp-story-manifesto-live,
  body.gp-our-story .gp-story-cta-label{
    margin-top:42px !important;
  }
}

@media (max-width:560px){
  body.gp-our-story .gp-story-page{
    padding:26px 15px 46px !important;
  }

  body.gp-our-story .gp-story-main-title,
  body.gp-our-story .gp-story-page-label{
    margin-bottom:13px !important;
    font-size:clamp(42px,12vw,54px) !important;
    line-height:.95 !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    gap:16px !important;
    margin-top:16px !important;
  }

  body.gp-our-story .gp-story-section-label{
    margin-top:34px !important;
  }

  body.gp-our-story .gp-story-manifesto-live,
  body.gp-our-story .gp-story-cta-label{
    margin-top:38px !important;
  }
}


/* ================================================================
   VERSION 2.12.2 — STORY COLUMN BALANCE
   Use the open space beside the portrait map by stacking the River of
   the Wolf section beneath the GPC Trail copy on desktop. Mobile remains
   a natural single-column flow.
   ================================================================ */
@media (min-width:901px){
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    align-items:start !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:last-child{
    align-self:start !important;
    padding-top:8px !important;
  }

  body.gp-our-story .gp-story-wolf-inline{
    margin-top:42px !important;
    padding-top:0 !important;
  }

  body.gp-our-story .gp-story-wolf-inline .gp-story-section-label{
    margin-top:0 !important;
    padding-top:16px !important;
  }

  body.gp-our-story .gp-story-wolf-inline .gp-story-section-title{
    max-width:760px !important;
  }

  body.gp-our-story .gp-story-wolf-inline .gp-story-copy{
    max-width:760px !important;
  }
}

@media (max-width:900px){
  body.gp-our-story .gp-story-wolf-inline{
    margin-top:34px !important;
  }

  body.gp-our-story .gp-story-wolf-inline .gp-story-section-label{
    margin-top:0 !important;
  }
}


/* ================================================================
   VERSION 2.12.4 — SAVED STORY GRID + MAP BALANCE
   The editable Gutenberg layout now places River of the Wolf beneath
   The GPC Trail. The desktop map column is slightly narrower so both
   columns finish closer together. Mobile remains a natural one-column flow.
   ================================================================ */
@media (min-width:901px){
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    display:grid !important;
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr) !important;
    column-gap:clamp(48px,4.5vw,68px) !important;
    align-items:start !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column{
    width:auto !important;
    min-width:0 !important;
    flex-basis:auto !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:first-child{
    align-self:start !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
  }

  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:last-child{
    align-self:start !important;
    padding-top:4px !important;
  }

  body.gp-our-story .gp-story-wolf-inline{
    width:100% !important;
    margin:40px 0 0 !important;
    padding:0 !important;
    text-align:center !important;
  }

  body.gp-our-story .gp-story-wolf-inline .gp-story-section-label{
    margin-top:0 !important;
    padding-top:14px !important;
  }

  body.gp-our-story .gp-story-wolf-inline .gp-story-section-title,
  body.gp-our-story .gp-story-wolf-inline .gp-story-copy{
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

@media (max-width:900px){
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:22px !important;
  }

  body.gp-our-story .gp-story-wolf-inline{
    margin:34px 0 0 !important;
    padding:0 !important;
    text-align:center !important;
  }

  body.gp-our-story .gp-story-wolf-inline .gp-story-section-label{
    margin-top:0 !important;
  }
}

/* ================================================================
   VERSION 2.12.5 — OUR STORY SINGLE FLOW
   Trail copy comes first, the centered map follows underneath, and
   River of the Wolf continues below. This removes the unmatched
   two-column height on desktop and gives mobile the same stable order.
   ================================================================ */
body.gp-our-story .gp-story-page .gp-story-single-flow,
body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
  display:flex !important;
  flex-direction:column !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  width:min(1180px,100%) !important;
  max-width:1180px !important;
  margin:28px auto 0 !important;
  gap:34px !important;
  column-gap:0 !important;
  row-gap:34px !important;
}

body.gp-our-story .gp-story-page .gp-story-single-flow > .wp-block-column,
body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  flex:0 0 auto !important;
  flex-basis:auto !important;
  align-self:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding:0 !important;
}

body.gp-our-story .gp-story-page .gp-story-single-flow > .gp-story-trail-column,
body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:not(:has(.gp-story-map)){
  order:1 !important;
  max-width:1040px !important;
  text-align:center !important;
}

body.gp-our-story .gp-story-page .gp-story-single-flow > .gp-story-map-column,
body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:has(.gp-story-map){
  order:2 !important;
  max-width:900px !important;
}

body.gp-our-story .gp-story-page .gp-story-single-flow .gp-story-map,
body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
  width:100% !important;
  max-width:900px !important;
  margin:0 auto !important;
}

body.gp-our-story .gp-story-page .gp-story-single-flow .gp-story-trail-label,
body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-label{
  margin-top:0 !important;
}

body.gp-our-story .gp-story-page .gp-story-single-flow .gp-story-trail-title,
body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-trail-title{
  max-width:980px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.gp-our-story .gp-story-page .gp-story-single-flow .gp-story-copy-trail,
body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-copy-trail{
  max-width:900px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* A prior layout may have saved River of the Wolf inside the Trail column.
   The PHP fallback moves it below the map; this styling keeps that section
   aligned correctly after it is moved. */
body.gp-our-story .gp-story-page .gp-story-single-flow + .gp-story-wolf-inline{
  width:min(900px,100%) !important;
  margin:48px auto 0 !important;
  padding:0 !important;
  text-align:center !important;
}

@media (max-width:900px){
  body.gp-our-story .gp-story-page .gp-story-single-flow,
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    width:100% !important;
    max-width:680px !important;
    margin-top:22px !important;
    gap:28px !important;
    row-gap:28px !important;
  }

  body.gp-our-story .gp-story-page .gp-story-single-flow > .gp-story-trail-column,
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:not(:has(.gp-story-map)){
    max-width:680px !important;
  }

  body.gp-our-story .gp-story-page .gp-story-single-flow > .gp-story-map-column,
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:has(.gp-story-map),
  body.gp-our-story .gp-story-page .gp-story-single-flow .gp-story-map,
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    max-width:580px !important;
  }

  body.gp-our-story .gp-story-page .gp-story-single-flow + .gp-story-wolf-inline{
    width:min(650px,100%) !important;
    margin-top:40px !important;
  }
}

@media (max-width:560px){
  body.gp-our-story .gp-story-page .gp-story-single-flow,
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map){
    margin-top:18px !important;
    gap:24px !important;
    row-gap:24px !important;
  }

  body.gp-our-story .gp-story-page .gp-story-single-flow > .gp-story-map-column,
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) > .wp-block-column:has(.gp-story-map),
  body.gp-our-story .gp-story-page .gp-story-single-flow .gp-story-map,
  body.gp-our-story .gp-story-page .wp-block-columns:has(.gp-story-map) .gp-story-map{
    max-width:100% !important;
  }

  body.gp-our-story .gp-story-page .gp-story-single-flow + .gp-story-wolf-inline{
    margin-top:34px !important;
  }
}


/* ================================================================
   VERSION 2.12.6 — PHYSICAL OUR STORY STACK
   Explicit Gutenberg groups replace the former desktop Columns layout.
   No :has() selector is required for the final order.
   ================================================================ */
body.gp-our-story .gp-story-page .gp-story-flow-v2126,
body.gp-our-story .gp-story-flow-v2126{
  display:block !important;
  width:min(1180px,100%) !important;
  max-width:1180px !important;
  margin:30px auto 0 !important;
  padding:0 !important;
}

body.gp-our-story .gp-story-page .gp-story-trail-stack,
body.gp-our-story .gp-story-trail-stack{
  display:block !important;
  width:100% !important;
  max-width:1040px !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
}

body.gp-our-story .gp-story-page .gp-story-map-stack,
body.gp-our-story .gp-story-map-stack{
  display:block !important;
  width:100% !important;
  max-width:900px !important;
  margin:42px auto 0 !important;
  padding:0 !important;
}

body.gp-our-story .gp-story-map-stack .gp-story-map,
body.gp-our-story .gp-story-map-stack figure{
  display:block !important;
  width:100% !important;
  max-width:900px !important;
  margin:0 auto !important;
}

body.gp-our-story .gp-story-map-stack img{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  margin:0 auto !important;
}

body.gp-our-story .gp-story-trail-stack .gp-story-trail-label{
  margin-top:0 !important;
}

body.gp-our-story .gp-story-trail-stack .gp-story-trail-title{
  max-width:980px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.gp-our-story .gp-story-trail-stack .gp-story-copy-trail{
  max-width:900px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.gp-our-story .gp-story-flow-v2126 + .gp-story-wolf-inline{
  width:min(900px,100%) !important;
  max-width:900px !important;
  margin:48px auto 0 !important;
  padding:0 !important;
  text-align:center !important;
}

@media (max-width:900px){
  body.gp-our-story .gp-story-page .gp-story-flow-v2126,
  body.gp-our-story .gp-story-flow-v2126{
    width:100% !important;
    max-width:680px !important;
    margin-top:22px !important;
  }

  body.gp-our-story .gp-story-page .gp-story-map-stack,
  body.gp-our-story .gp-story-map-stack{
    max-width:580px !important;
    margin-top:30px !important;
  }

  body.gp-our-story .gp-story-flow-v2126 + .gp-story-wolf-inline{
    width:min(650px,100%) !important;
    margin-top:40px !important;
  }
}

@media (max-width:560px){
  body.gp-our-story .gp-story-page .gp-story-flow-v2126,
  body.gp-our-story .gp-story-flow-v2126{
    margin-top:18px !important;
  }

  body.gp-our-story .gp-story-page .gp-story-map-stack,
  body.gp-our-story .gp-story-map-stack{
    max-width:100% !important;
    margin-top:26px !important;
  }

  body.gp-our-story .gp-story-flow-v2126 + .gp-story-wolf-inline{
    margin-top:34px !important;
  }
}

/* ================================================================
   VERSION 2.12.7 — EXACT SAVED GUTENBERG STORY STACK
   Matches the actual saved block classes on the Our Story page:
   .gp-story-trail > .gp-story-copy + .gp-story-trail-art
   ================================================================ */
.gp-story-page .gp-story-trail{
  display:flex !important;
  flex-direction:column !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  grid-template-columns:1fr !important;
  width:min(1180px,100%) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:54px 24px 64px !important;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}

.gp-story-page .gp-story-trail > .gp-story-copy{
  order:1 !important;
  display:block !important;
  width:100% !important;
  max-width:900px !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
}

.gp-story-page .gp-story-trail > .gp-story-trail-art{
  order:2 !important;
  display:block !important;
  width:min(900px,100%) !important;
  max-width:900px !important;
  margin:38px auto 0 !important;
  padding:0 !important;
}

.gp-story-page .gp-story-trail > .gp-story-trail-art figure,
.gp-story-page .gp-story-trail > .gp-story-trail-art .wp-block-image{
  display:block !important;
  width:100% !important;
  max-width:900px !important;
  margin:0 auto !important;
}

.gp-story-page .gp-story-trail > .gp-story-trail-art img{
  display:block !important;
  width:100% !important;
  max-width:900px !important;
  height:auto !important;
  margin:0 auto !important;
}

.gp-story-page .gp-story-trail > .gp-story-copy .gp-eyebrow{
  margin-top:0 !important;
}

.gp-story-page .gp-story-trail > .gp-story-copy h2{
  margin-left:auto !important;
  margin-right:auto !important;
}

.gp-story-page .gp-story-trail > .gp-story-copy p:not(.gp-eyebrow){
  max-width:820px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.gp-story-page .gp-story-wolf-section{
  margin-top:0 !important;
}

@media (max-width:900px){
  .gp-story-page .gp-story-trail{
    width:100% !important;
    max-width:720px !important;
    padding:42px 18px 54px !important;
  }

  .gp-story-page .gp-story-trail > .gp-story-copy{
    max-width:680px !important;
  }

  .gp-story-page .gp-story-trail > .gp-story-trail-art{
    width:min(580px,100%) !important;
    max-width:580px !important;
    margin-top:30px !important;
  }
}

@media (max-width:560px){
  .gp-story-page .gp-story-trail{
    padding:34px 15px 46px !important;
  }

  .gp-story-page .gp-story-trail > .gp-story-trail-art{
    width:100% !important;
    max-width:100% !important;
    margin-top:26px !important;
  }
}

/* ================================================================
   VERSION 2.12.8 — DESKTOP-ONLY OUR STORY SPACING
   Tightens the opening-to-trail transition on screens wider than 900px.
   Tablet and mobile rules are intentionally untouched.
   ================================================================ */
@media (min-width:901px){
  body.gp-our-story .gp-story-page > .gp-story-hero,
  body.gp-our-story .gp-story-hero{
    display:block !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:92px 24px 58px !important;
  }

  body.gp-our-story .gp-story-hero > .gp-story-hero-inner,
  body.gp-our-story .gp-story-hero-inner{
    display:block !important;
    width:100% !important;
    max-width:1200px !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  body.gp-our-story .gp-story-page > .gp-story-trail,
  body.gp-our-story .gp-story-page .gp-story-trail{
    padding-top:34px !important;
  }
}


/* ================================================================
   VERSION 2.13.0 — EDITABLE GEAR HIERARCHY + CENTERED CARDS
   Make GEAR & PROVISIONS the dominant editable H1, keep the supporting
   line near half its size, center the Gear cards, and suppress only
   truly empty Gutenberg blocks on this page.
   ================================================================ */
body.gp-shop-gear .gp-gear-page{
  width:min(1180px,100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.gp-shop-gear .gp-gear-page > .gp-shop-gear-primary,
body.gp-shop-gear .gp-gear-page .gp-shop-gear-primary{
  display:block !important;
  max-width:1080px !important;
  margin:0 auto 16px !important;
  color:var(--brown) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(58px,6vw,76px) !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:.92 !important;
  letter-spacing:.01em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.gp-shop-gear .gp-gear-page > .gp-shop-gear-secondary,
body.gp-shop-gear .gp-gear-page .gp-shop-gear-secondary{
  display:block !important;
  max-width:900px !important;
  margin:0 auto 18px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(28px,3vw,38px) !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:1.02 !important;
  letter-spacing:.004em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.gp-shop-gear .gp-gear-page > .gp-shop-gear-intro,
body.gp-shop-gear .gp-gear-page .gp-shop-gear-intro{
  margin:0 auto 32px !important;
}

body.gp-shop-gear .gp-gear-page > .gp-feature-card,
body.gp-shop-gear .gp-gear-page > .gp-coming-card{
  width:min(100%,1040px) !important;
  max-width:1040px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.gp-shop-gear .gp-gear-page > .gp-feature-card{
  margin-top:34px !important;
}

body.gp-shop-gear .gp-gear-page > .gp-coming-card{
  margin-top:38px !important;
}

body.gp-shop-gear .gp-feature-card > figure,
body.gp-shop-gear .gp-feature-card > .wp-block-group{
  min-width:0 !important;
}

body.gp-shop-gear .gp-feature-card > figure{
  justify-self:center !important;
  width:100% !important;
}

body.gp-shop-gear .gp-feature-card > figure img{
  margin-left:auto !important;
  margin-right:auto !important;
}

/* These selectors only remove blocks with no content at all. */
body.gp-shop-gear .gp-gear-page > p:empty,
body.gp-shop-gear .gp-gear-page > .wp-block-spacer:empty,
body.gp-shop-gear .gp-gear-page > .wp-block-group:empty,
body.gp-shop-gear .gp-feature-card > .wp-block-group:empty,
body.gp-shop-gear .gp-feature-card > figure:empty,
body.gp-shop-gear .gp-coming-card > p:empty,
body.gp-shop-gear .gp-coming-card > .wp-block-group:empty{
  display:none !important;
  width:0 !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
}

@media (max-width:900px){
  body.gp-shop-gear .gp-gear-page > .gp-shop-gear-primary,
  body.gp-shop-gear .gp-gear-page .gp-shop-gear-primary{
    max-width:680px !important;
    margin-bottom:12px !important;
    font-size:clamp(42px,11vw,52px) !important;
    line-height:.94 !important;
  }

  body.gp-shop-gear .gp-gear-page > .gp-shop-gear-secondary,
  body.gp-shop-gear .gp-gear-page .gp-shop-gear-secondary{
    max-width:620px !important;
    margin-bottom:15px !important;
    font-size:clamp(23px,6.1vw,28px) !important;
    line-height:1.04 !important;
  }

  body.gp-shop-gear .gp-gear-page > .gp-feature-card,
  body.gp-shop-gear .gp-gear-page > .gp-coming-card{
    width:100% !important;
    max-width:680px !important;
  }
}

/* ================================================================
   VERSION 2.13.1 — CENTER HATS + STICKERS CARD CONTENT
   The editable cards were still inheriting the old desktop two-column
   grid. Convert only the desktop Gear feature cards to one centered
   stack so no unused right-hand column remains.
   ================================================================ */
@media (min-width:901px){
  body.gp-shop-gear .gp-gear-page > .gp-feature-card,
  body.gp-shop-gear .gp-gear-page > .gp-feature-card.reverse{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    grid-template-columns:none !important;
    gap:22px !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-gear-page > .gp-feature-card > figure,
  body.gp-shop-gear .gp-gear-page > .gp-feature-card.reverse > figure{
    order:0 !important;
    width:min(100%,760px) !important;
    max-width:760px !important;
    margin:0 auto !important;
    justify-self:center !important;
    align-self:center !important;
  }

  body.gp-shop-gear .gp-gear-page > .gp-feature-card > figure img,
  body.gp-shop-gear .gp-gear-page > .gp-feature-card.reverse > figure img{
    width:100% !important;
    max-width:760px !important;
    margin:0 auto !important;
    object-position:center !important;
  }

  body.gp-shop-gear .gp-gear-page > .gp-feature-card > .wp-block-group,
  body.gp-shop-gear .gp-gear-page > .gp-feature-card.reverse > .wp-block-group{
    order:1 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    width:min(100%,760px) !important;
    max-width:760px !important;
    margin:0 auto !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-feature-card h2{
    width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-feature-card p{
    max-width:700px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-feature-card .wp-block-buttons{
    width:100% !important;
    justify-content:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}



/* ================================================================
   VERSION 2.13.2 — ROBUST GEAR CARD CENTERING
   WordPress may insert Gutenberg inner-container wrappers around Group
   blocks. The previous direct-child selectors therefore missed the live
   Hats and Stickers cards. These descendant selectors handle both the
   wrapped and unwrapped Gutenberg output and remove the unused grid column.
   ================================================================ */
@media (min-width:901px){
  .gp-gear-page .gp-feature-card,
  .gp-gear-page .gp-feature-card.reverse{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    grid-template-columns:none !important;
    width:min(100%,1040px) !important;
    max-width:1040px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    gap:22px !important;
    text-align:center !important;
  }

  .gp-gear-page .gp-feature-card > .wp-block-group__inner-container,
  .gp-gear-page .gp-feature-card.reverse > .wp-block-group__inner-container{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    gap:22px !important;
    text-align:center !important;
  }

  .gp-gear-page .gp-feature-card figure,
  .gp-gear-page .gp-feature-card.reverse figure{
    order:0 !important;
    width:min(100%,760px) !important;
    max-width:760px !important;
    margin:0 auto !important;
    justify-self:center !important;
    align-self:center !important;
  }

  .gp-gear-page .gp-feature-card figure img,
  .gp-gear-page .gp-feature-card.reverse figure img{
    width:100% !important;
    max-width:760px !important;
    margin:0 auto !important;
    object-position:center !important;
  }

  .gp-gear-page .gp-feature-card figure + .wp-block-group,
  .gp-gear-page .gp-feature-card .wp-block-group__inner-container > .wp-block-group,
  .gp-gear-page .gp-feature-card.reverse figure + .wp-block-group,
  .gp-gear-page .gp-feature-card.reverse .wp-block-group__inner-container > .wp-block-group{
    order:1 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    width:min(100%,760px) !important;
    max-width:760px !important;
    margin:0 auto !important;
    text-align:center !important;
  }

  .gp-gear-page .gp-feature-card h2,
  .gp-gear-page .gp-feature-card p,
  .gp-gear-page .gp-feature-card .wp-block-buttons{
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  .gp-gear-page .gp-feature-card p{
    max-width:700px !important;
  }

  .gp-gear-page .gp-feature-card .wp-block-buttons{
    display:flex !important;
    width:100% !important;
    justify-content:center !important;
  }
}


/* ================================================================
   VERSION 2.13.3 — EDITABLE HATS PAGE
   No visual rules are changed. The Hats page markup is converted to
   valid Gutenberg blocks so product images can be replaced directly.
   ================================================================ */

/* ================================================================
   VERSION 2.13.4 — HATS PAGE HIERARCHY + TWO-COLUMN PRODUCT GRID
   Keep the Hats page editable while correcting the visual hierarchy
   and handling both wrapped and unwrapped Gutenberg Group output.
   ================================================================ */
body.gp-shop-hats .gp-products-page{
  width:min(1180px,100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* GEAR is the primary page heading. These fallback selectors also style
   the pre-migration eyebrow block, so the change remains visible even if
   a page cache delays the saved-block update. */
body.gp-shop-hats .gp-products-page .gp-hats-primary,
body.gp-shop-hats .gp-products-page > .eyebrow,
body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .eyebrow{
  display:block !important;
  max-width:1000px !important;
  margin:0 auto 14px !important;
  color:var(--brown) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(58px,6.2vw,74px) !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:.92 !important;
  letter-spacing:.01em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

/* HATS is the smaller supporting heading, approximately half the size. */
body.gp-shop-hats .gp-products-page .gp-hats-secondary,
body.gp-shop-hats .gp-products-page > .section-title,
body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .section-title{
  display:block !important;
  max-width:900px !important;
  margin:0 auto 18px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(30px,3.1vw,38px) !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:1 !important;
  letter-spacing:.006em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.gp-shop-hats .gp-products-page .gp-hats-intro,
body.gp-shop-hats .gp-products-page > .lead,
body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .lead{
  display:block !important;
  max-width:780px !important;
  margin:0 auto 28px !important;
  text-align:center !important;
}

/* Gutenberg can insert an inner-container around Group children. Apply the
   same two-column grid to both possible structures so the cards cannot fall
   back into a single left-aligned column on desktop. */
body.gp-shop-hats .gp-products-page .gp-product-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:26px !important;
  width:100% !important;
  max-width:none !important;
  margin:42px auto 0 !important;
  align-items:stretch !important;
}

body.gp-shop-hats .gp-products-page .gp-product-grid > .wp-block-group__inner-container{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:26px !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  grid-column:1 / -1 !important;
  align-items:stretch !important;
}

body.gp-shop-hats .gp-products-page .gp-product-grid > .gp-product-card,
body.gp-shop-hats .gp-products-page .gp-product-grid > .wp-block-group__inner-container > .gp-product-card{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
}

@media (max-width:900px){
  body.gp-shop-hats .gp-products-page .gp-hats-primary,
  body.gp-shop-hats .gp-products-page > .eyebrow,
  body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .eyebrow{
    margin-bottom:10px !important;
    font-size:clamp(42px,12vw,52px) !important;
    line-height:.94 !important;
  }

  body.gp-shop-hats .gp-products-page .gp-hats-secondary,
  body.gp-shop-hats .gp-products-page > .section-title,
  body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .section-title{
    margin-bottom:14px !important;
    font-size:clamp(24px,7vw,30px) !important;
    line-height:1.02 !important;
  }

  body.gp-shop-hats .gp-products-page .gp-hats-intro,
  body.gp-shop-hats .gp-products-page > .lead,
  body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .lead{
    margin-bottom:24px !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }

  body.gp-shop-hats .gp-products-page .gp-product-grid,
  body.gp-shop-hats .gp-products-page .gp-product-grid > .wp-block-group__inner-container{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
}

/* ================================================================
   VERSION 2.13.5 — HATS TITLE SCALE MATCHES STICKERS PAGE
   Visual-only update. GEAR now uses the same small label scale as
   SMALL GOODS. LARGE IDEAS., while HATS uses the same display-title
   scale as STICKERS. Product cards, images, grid, and mobile stacking
   remain unchanged.
   ================================================================ */
body.gp-shop-hats .gp-products-page .gp-hats-primary,
body.gp-shop-hats .gp-products-page > .eyebrow,
body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .eyebrow{
  display:block !important;
  max-width:1000px !important;
  margin:0 auto 10px !important;
  color:var(--brown) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:13px !important;
  font-weight:900 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:1.2 !important;
  letter-spacing:.17em !important;
  text-align:center !important;
  text-transform:uppercase !important;
}

body.gp-shop-hats .gp-products-page .gp-hats-secondary,
body.gp-shop-hats .gp-products-page > .section-title,
body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .section-title{
  display:block !important;
  max-width:1000px !important;
  margin:10px auto 18px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(42px,6.8vw,92px) !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:.9 !important;
  letter-spacing:0 !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

@media (max-width:560px){
  body.gp-shop-hats .gp-products-page .gp-hats-primary,
  body.gp-shop-hats .gp-products-page > .eyebrow,
  body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .eyebrow{
    font-size:13px !important;
    margin-bottom:10px !important;
  }

  body.gp-shop-hats .gp-products-page .gp-hats-secondary,
  body.gp-shop-hats .gp-products-page > .section-title,
  body.gp-shop-hats .gp-products-page > .wp-block-group__inner-container > .section-title{
    font-size:42px !important;
    line-height:.9 !important;
    margin-bottom:18px !important;
  }
}

/* ================================================================
   VERSION 2.13.6 — SITE CLEANUP RELEASE
   Removes public setup notes, keeps the cart out of the unfinished shop,
   adds clear launch calls to action, and preserves the locked layouts.
   ================================================================ */
.gp-cart-action{
  display:none !important;
}

.gp-launch-cta{
  width:min(920px,100%) !important;
  margin:52px auto 0 !important;
  padding:42px 30px !important;
  border:2px solid var(--black) !important;
  border-radius:24px !important;
  background:var(--paper) !important;
  box-shadow:8px 8px 0 var(--orange) !important;
  text-align:center !important;
}
.gp-launch-cta .eyebrow{
  margin:0 auto 12px !important;
  color:var(--brown) !important;
  text-align:center !important;
}
.gp-launch-cta h2,
.gp-launch-cta .gp-launch-title{
  max-width:760px !important;
  margin:0 auto 16px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(32px,4.8vw,58px) !important;
  font-weight:400 !important;
  line-height:.96 !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}
.gp-launch-cta > p:not(.eyebrow),
.gp-launch-cta > .wp-block-group__inner-container > p:not(.eyebrow){
  max-width:650px !important;
  margin:0 auto !important;
  color:#574b3e !important;
  font-size:18px !important;
  line-height:1.55 !important;
  text-align:center !important;
}
.gp-launch-cta .wp-block-buttons{
  display:flex !important;
  justify-content:center !important;
  margin-top:24px !important;
}

@media (max-width:560px){
  .gp-launch-cta{
    margin-top:38px !important;
    padding:34px 18px !important;
    box-shadow:6px 6px 0 var(--orange) !important;
  }
  .gp-launch-cta h2,
  .gp-launch-cta .gp-launch-title{
    font-size:clamp(30px,10vw,42px) !important;
  }
  .gp-launch-cta > p:not(.eyebrow),
  .gp-launch-cta > .wp-block-group__inner-container > p:not(.eyebrow){
    font-size:17px !important;
  }
}


/* ================================================================
   VERSION 2.13.7 — EDITABLE STICKER PRODUCT CARDS
   Converts the Stickers page into normal Gutenberg blocks with two
   editable cards. The layout is two across on desktop and one per row
   on mobile, while preserving the existing page-title treatment.
   ================================================================ */
body.gp-shop-stickers .gp-stickers-editable-v2137{
  width:min(1180px,100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.gp-shop-stickers .gp-stickers-editable-v2137 .gp-stickers-eyebrow{
  display:block !important;
  margin:0 auto 10px !important;
  color:var(--brown) !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  letter-spacing:.17em !important;
  text-align:center !important;
  text-transform:uppercase !important;
}

body.gp-shop-stickers .gp-stickers-editable-v2137 .gp-stickers-title{
  display:block !important;
  max-width:1000px !important;
  margin:10px auto 28px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(42px,6.8vw,92px) !important;
  font-weight:400 !important;
  line-height:.9 !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.gp-shop-stickers .gp-stickers-intro{
  width:min(960px,100%) !important;
  margin:0 auto !important;
  text-align:center !important;
}

body.gp-shop-stickers .gp-stickers-intro .gp-stickers-intro-title{
  max-width:940px !important;
  margin:0 auto 16px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(27px,3.8vw,50px) !important;
  font-weight:400 !important;
  line-height:.98 !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.gp-shop-stickers .gp-stickers-intro .gp-stickers-intro-copy{
  max-width:620px !important;
  margin:0 auto !important;
  color:#574b3e !important;
  font-size:19px !important;
  line-height:1.5 !important;
  text-align:center !important;
}

body.gp-shop-stickers .gp-sticker-product-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:28px !important;
  width:100% !important;
  max-width:none !important;
  margin:46px auto 0 !important;
  align-items:stretch !important;
}

body.gp-shop-stickers .gp-sticker-product-grid > .wp-block-group__inner-container{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:28px !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  grid-column:1 / -1 !important;
  align-items:stretch !important;
}

body.gp-shop-stickers .gp-sticker-product-grid > .gp-sticker-product-card,
body.gp-shop-stickers .gp-sticker-product-grid > .wp-block-group__inner-container > .gp-sticker-product-card{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
}

body.gp-shop-stickers .gp-sticker-product-card figure{
  width:100% !important;
  margin:0 0 22px !important;
  background:#efe2ca !important;
}

body.gp-shop-stickers .gp-sticker-product-card figure img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:4 / 5 !important;
  object-fit:cover !important;
  object-position:center !important;
}

body.gp-shop-stickers .gp-sticker-product-card h2,
body.gp-shop-stickers .gp-sticker-product-card > p,
body.gp-shop-stickers .gp-sticker-product-card > .wp-block-group__inner-container > h2,
body.gp-shop-stickers .gp-sticker-product-card > .wp-block-group__inner-container > p{
  margin-left:22px !important;
  margin-right:22px !important;
}

body.gp-shop-stickers .gp-sticker-product-card .gp-price{
  margin-top:auto !important;
  padding-top:8px !important;
  color:var(--brown) !important;
  font-weight:900 !important;
  letter-spacing:.06em !important;
}

@media (max-width:900px){
  body.gp-shop-stickers .gp-sticker-product-grid,
  body.gp-shop-stickers .gp-sticker-product-grid > .wp-block-group__inner-container{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
}

@media (max-width:560px){
  body.gp-shop-stickers .gp-stickers-editable-v2137 .gp-stickers-title{
    margin-bottom:22px !important;
    font-size:42px !important;
  }

  body.gp-shop-stickers .gp-stickers-intro .gp-stickers-intro-title{
    font-size:clamp(26px,9vw,38px) !important;
  }

  body.gp-shop-stickers .gp-stickers-intro .gp-stickers-intro-copy{
    font-size:17px !important;
  }

  body.gp-shop-stickers .gp-sticker-product-grid{
    margin-top:34px !important;
  }
}

/* ================================================================
   VERSION 2.13.9 — PRODUCT LINK + PRODUCT PAGE REPAIR
   ================================================================ */
body.gp-shop-hats .gp-product-card,
body.gp-shop-stickers .gp-product-card{
  position:relative !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}
body.gp-shop-hats .gp-product-card:hover,
body.gp-shop-stickers .gp-product-card:hover{
  transform:translateY(-3px) !important;
  box-shadow:10px 10px 0 var(--orange) !important;
}
.gp-product-card-overlay{
  position:absolute !important;
  inset:0 !important;
  z-index:5 !important;
  border-radius:inherit !important;
}
.gp-product-card-overlay:focus{
  outline:3px solid rgba(255,141,43,.55) !important;
  outline-offset:5px !important;
}

body.single-product .gp-woocommerce-main{
  width:min(1180px,100%) !important;
  margin:0 auto !important;
  padding:64px 24px 82px !important;
}
body.single-product .gp-single-product{
  width:100% !important;
}
body.single-product .gp-single-product-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
  gap:40px !important;
  align-items:start !important;
}
body.single-product .gp-single-product-media,
body.single-product .gp-single-product-summary{
  border:2px solid var(--black) !important;
  border-radius:28px !important;
  box-shadow:10px 10px 0 var(--orange) !important;
  overflow:hidden !important;
}
body.single-product .gp-single-product-media{
  background:#efe2ca !important;
}
body.single-product .gp-single-product-main-image img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  object-position:center !important;
}
body.single-product .gp-single-product-gallery{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
  padding:14px !important;
  background:var(--paper) !important;
}
body.single-product .gp-single-product-gallery img{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  border:1px solid rgba(32,26,18,.24) !important;
  border-radius:12px !important;
}
body.single-product .gp-single-product-summary{
  padding:34px 30px !important;
  background:var(--paper) !important;
}
body.single-product .gp-product-eyebrow{
  margin:0 0 12px !important;
  color:var(--brown) !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  letter-spacing:.17em !important;
  text-transform:uppercase !important;
}
body.single-product .gp-single-product-summary h1{
  margin:0 0 14px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(36px,4.8vw,62px) !important;
  font-weight:400 !important;
  line-height:.94 !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}
body.single-product .gp-product-short{
  margin:0 0 20px !important;
  color:#574b3e !important;
  font-size:19px !important;
  line-height:1.55 !important;
}
body.single-product .gp-product-status{
  display:inline-flex !important;
  align-items:center !important;
  margin:0 0 24px !important;
  padding:10px 14px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--cream) !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:14px !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
}
body.single-product .gp-product-long{
  color:#574b3e !important;
  font-size:18px !important;
  line-height:1.62 !important;
}
body.single-product .gp-product-long p{
  margin:0 0 16px !important;
}
body.single-product .gp-product-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:14px !important;
  margin-top:28px !important;
}
body.single-product .gp-product-actions a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:50px !important;
  padding:0 18px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:14px !important;
  letter-spacing:.07em !important;
  text-transform:uppercase !important;
}
body.single-product .gp-primary-action{
  background:var(--orange) !important;
  color:var(--black) !important;
}
body.single-product .gp-secondary-action{
  background:var(--paper) !important;
  color:var(--black) !important;
}
body.single-product .gp-product-meta{
  margin-top:26px !important;
  padding-top:22px !important;
  border-top:1px solid rgba(32,26,18,.18) !important;
  color:#574b3e !important;
  font-size:15px !important;
  line-height:1.55 !important;
}
body.single-product .gp-product-meta p{
  margin:0 0 7px !important;
}
body.single-product .gp-product-meta strong{
  color:var(--black) !important;
}

@media (max-width:900px){
  body.single-product .gp-woocommerce-main{
    padding:42px 18px 62px !important;
  }
  body.single-product .gp-single-product-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
  body.single-product .gp-single-product-media,
  body.single-product .gp-single-product-summary{
    box-shadow:8px 8px 0 var(--orange) !important;
  }
  body.single-product .gp-single-product-summary{
    padding:28px 20px !important;
  }
  body.single-product .gp-single-product-summary h1{
    font-size:clamp(34px,10vw,48px) !important;
  }
  body.single-product .gp-product-short,
  body.single-product .gp-product-long{
    font-size:17px !important;
  }
}


/* ================================================================
   VERSION 2.14.0 — DYNAMIC HOMEPAGE FEATURED HATS
   The homepage cards now render directly from WooCommerce products.
   Product image, name, short description, status/price, and link stay
   synchronized while the locked homepage layout remains unchanged.
   ================================================================ */
.gear-grid .gp-home-featured-product{
  position:relative;
}
.gear-grid .gp-home-featured-product .gp-home-product-card-link{
  position:absolute;
  inset:0;
  z-index:2;
  border-radius:24px;
}
.gear-grid .gp-home-featured-product .small-btn,
.gear-grid .gp-home-featured-product .small-btn a{
  position:relative;
  z-index:3;
}
.gear-grid .gp-home-featured-product:focus-within,
.gear-grid .gp-home-featured-product:hover{
  transform:translateY(-2px);
  box-shadow:8px 8px 0 var(--orange);
}
.gear-grid .gp-home-featured-product{
  transition:transform .18s ease, box-shadow .18s ease;
}
.gear-grid .gp-home-featured-product .price .amount{
  color:inherit;
}
.gp-featured-hats-editor{
  padding:28px;
  border:2px dashed #b9712f;
  border-radius:18px;
  background:#fff8e9;
  color:#0b0a07;
  text-align:center;
}
.gp-featured-hats-editor strong{
  display:block;
  margin-bottom:8px;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:24px;
  text-transform:uppercase;
}
.gp-featured-hats-editor p{
  margin:0;
}


/* ================================================================
   VERSION 2.14.1 — HOMEPAGE GEAR SECTION REFINEMENT
   Simplifies the section hierarchy without changing the dynamic
   WooCommerce product cards or any other homepage section.
   ================================================================ */
body.home .gear .gp-gear-title{
  color:#dbcbb2 !important;
  font-size:clamp(45px,4.5vw,65px) !important;
  line-height:.98 !important;
  margin:0 0 8px !important;
}

/* The welcome section already carries this idea, so the gear section
   no longer repeats it. This also acts as a front-end fallback while
   WordPress saves the cleaned Gutenberg block structure. */
body.home .gear .gp-gear-audience{
  display:none !important;
}

body.home .gear .gear-subhead{
  margin-top:2px !important;
  margin-bottom:16px !important;
}

@media (max-width:900px){
  body.home .gear .gp-gear-title{
    font-size:clamp(38px,6.7vw,54px) !important;
    margin-bottom:8px !important;
  }
}

@media (max-width:560px){
  body.home .gear .gp-gear-title{
    font-size:35px !important;
    line-height:1.02 !important;
    margin-bottom:8px !important;
  }
  body.home .gear .gear-subhead{
    margin-top:0 !important;
    margin-bottom:15px !important;
  }
}


/* ================================================================
   VERSION 2.14.3 — PRODUCT CARD TEXT ALIGNMENT
   Alignment-only refinement. All existing Gutenberg content and
   WooCommerce product links remain unchanged and editable.
   ================================================================ */

/* Hats: center the Coming Soon status beneath each description. */
body.gp-shop-hats .gp-products-page .gp-product-card .gp-price,
body.gp-shop-hats .gp-products-page .gp-product-card > .wp-block-group__inner-container > .gp-price{
  display:block !important;
  width:100% !important;
  margin:18px auto 0 !important;
  padding:0 22px 22px !important;
  text-align:center !important;
}

/* Stickers: center every text element beneath the product image. */
body.gp-shop-stickers .gp-sticker-product-card h2,
body.gp-shop-stickers .gp-sticker-product-card > p,
body.gp-shop-stickers .gp-sticker-product-card > .wp-block-group__inner-container > h2,
body.gp-shop-stickers .gp-sticker-product-card > .wp-block-group__inner-container > p{
  width:auto !important;
  margin-left:22px !important;
  margin-right:22px !important;
  text-align:center !important;
}

body.gp-shop-stickers .gp-sticker-product-card .gp-price,
body.gp-shop-stickers .gp-sticker-product-card > .wp-block-group__inner-container > .gp-price{
  display:block !important;
  width:100% !important;
  margin:18px auto 0 !important;
  padding:0 22px 22px !important;
  text-align:center !important;
}

/* Show the same alignment inside the Gutenberg editor. */
.editor-styles-wrapper .gp-hats-editable-v2133 .gp-product-card .gp-price,
.editor-styles-wrapper .gp-stickers-editable-v2137 .gp-sticker-product-card h2,
.editor-styles-wrapper .gp-stickers-editable-v2137 .gp-sticker-product-card p{
  text-align:center !important;
}


/* ================================================================
   VERSION 2.14.4 — BRANDED WOOCOMMERCE PRODUCT EXPERIENCE
   Replaces WooCommerce's default tabs and plain related-product output
   with a Guadalupe product story, field-notes details, and trail cards.
   ================================================================ */
body.single-product{
  background:var(--cream) !important;
  color:var(--black) !important;
}
body.single-product .gp-woocommerce-main.gp-product-detail-page{
  width:min(1240px,100%) !important;
  margin:0 auto !important;
  padding:72px 28px 94px !important;
}
body.single-product .gp-single-product{
  width:100% !important;
  max-width:none !important;
}
body.single-product .gp-single-product-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr) !important;
  gap:42px !important;
  align-items:start !important;
}
body.single-product .gp-single-product-media,
body.single-product .gp-single-product-summary,
body.single-product .gp-product-details-section{
  border:2px solid var(--black) !important;
  border-radius:28px !important;
  background:var(--paper) !important;
  box-shadow:10px 10px 0 var(--orange) !important;
}
body.single-product .gp-single-product-media{
  overflow:hidden !important;
}
body.single-product .gp-single-product-main-image{
  background:#eadcc4 !important;
}
body.single-product .gp-single-product-main-image img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  object-position:center !important;
}
body.single-product .gp-single-product-gallery{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:12px !important;
  padding:16px !important;
  background:var(--paper) !important;
  border-top:2px solid var(--black) !important;
}
body.single-product .gp-product-thumb{
  appearance:none !important;
  display:block !important;
  width:100% !important;
  padding:0 !important;
  border:2px solid transparent !important;
  border-radius:13px !important;
  background:none !important;
  overflow:hidden !important;
  cursor:pointer !important;
}
body.single-product .gp-product-thumb:hover,
body.single-product .gp-product-thumb:focus,
body.single-product .gp-product-thumb.is-active{
  border-color:var(--orange) !important;
  outline:none !important;
}
body.single-product .gp-product-thumb img{
  display:block !important;
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
}
body.single-product .gp-single-product-summary{
  padding:42px 38px !important;
}
body.single-product .gp-product-eyebrow,
body.single-product .gp-related-eyebrow{
  margin:0 0 12px !important;
  color:var(--brown) !important;
  font-family:Georgia,Cambria,serif !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
}
body.single-product .gp-single-product-summary h1,
body.single-product .gp-product-details-heading h2,
body.single-product .gp-related-products-section > h2{
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}
body.single-product .gp-single-product-summary h1{
  margin:0 0 20px !important;
  font-size:clamp(42px,5.2vw,70px) !important;
  line-height:.92 !important;
}
body.single-product .gp-product-short,
body.single-product .gp-product-short p{
  margin:0 !important;
  color:#574b3e !important;
  font-size:20px !important;
  line-height:1.55 !important;
}
body.single-product .gp-product-status{
  display:inline-flex !important;
  align-items:center !important;
  margin:28px 0 14px !important;
  padding:11px 16px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--cream) !important;
  color:var(--brown) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:15px !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
body.single-product .gp-product-trail-note{
  margin:0 !important;
  color:#574b3e !important;
  font-size:17px !important;
  font-style:italic !important;
  line-height:1.5 !important;
}
body.single-product .gp-product-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:13px !important;
  margin-top:30px !important;
}
body.single-product .gp-product-actions a,
body.single-product .gp-live-product-cart button,
body.single-product .gp-live-product-cart .button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:50px !important;
  padding:0 19px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:13px !important;
  letter-spacing:.075em !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
}
body.single-product .gp-primary-action,
body.single-product .gp-live-product-cart button,
body.single-product .gp-live-product-cart .button{
  background:var(--orange) !important;
  color:var(--black) !important;
}
body.single-product .gp-secondary-action{
  background:var(--paper) !important;
  color:var(--black) !important;
}
body.single-product .gp-product-actions a:hover,
body.single-product .gp-live-product-cart button:hover,
body.single-product .gp-live-product-cart .button:hover{
  transform:translateY(-2px) !important;
}
body.single-product .gp-live-product-price{
  margin:26px 0 18px !important;
  color:var(--brown) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:30px !important;
}
body.single-product .gp-live-product-cart form.cart{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  align-items:center !important;
  margin:0 !important;
}
body.single-product .gp-live-product-cart .quantity input{
  min-height:48px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--paper) !important;
  text-align:center !important;
}
body.single-product .gp-product-details-section{
  display:grid !important;
  grid-template-columns:minmax(220px,.72fr) minmax(0,1.35fr) minmax(245px,.78fr) !important;
  gap:34px !important;
  margin-top:54px !important;
  padding:38px !important;
}
body.single-product .gp-product-details-heading h2{
  margin:0 !important;
  font-size:clamp(36px,4.4vw,58px) !important;
  line-height:.94 !important;
}
body.single-product .gp-product-details-copy{
  color:#574b3e !important;
  font-size:18px !important;
  line-height:1.68 !important;
}
body.single-product .gp-product-details-copy p{
  margin:0 0 17px !important;
}
body.single-product .gp-product-details-copy p:last-child{
  margin-bottom:0 !important;
}
body.single-product .gp-product-facts{
  align-self:stretch !important;
  padding:22px !important;
  border:2px solid var(--black) !important;
  border-radius:20px !important;
  background:var(--cream) !important;
}
body.single-product .gp-product-facts > div{
  display:grid !important;
  gap:5px !important;
  padding:14px 0 !important;
  border-bottom:1px solid rgba(32,26,18,.2) !important;
}
body.single-product .gp-product-facts > div:first-child{
  padding-top:0 !important;
}
body.single-product .gp-product-facts > div:last-child{
  padding-bottom:0 !important;
  border-bottom:0 !important;
}
body.single-product .gp-product-facts span{
  color:var(--brown) !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.16em !important;
}
body.single-product .gp-product-facts strong{
  color:var(--black) !important;
  font-size:16px !important;
  line-height:1.35 !important;
}
body.single-product .gp-related-products-section{
  margin-top:68px !important;
}
body.single-product .gp-related-products-section > .gp-related-eyebrow{
  text-align:center !important;
}
body.single-product .gp-related-products-section > h2{
  max-width:920px !important;
  margin:0 auto 32px !important;
  font-size:clamp(38px,5.2vw,68px) !important;
  line-height:.92 !important;
  text-align:center !important;
}
body.single-product .gp-related-product-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
}
body.single-product .gp-related-product-card{
  min-width:0 !important;
  overflow:hidden !important;
  border:2px solid var(--black) !important;
  border-radius:24px !important;
  background:var(--paper) !important;
  box-shadow:8px 8px 0 var(--orange) !important;
  transition:transform .18s ease,box-shadow .18s ease !important;
}
body.single-product .gp-related-product-card:hover{
  transform:translateY(-3px) !important;
  box-shadow:10px 10px 0 var(--orange) !important;
}
body.single-product .gp-related-product-card a{
  display:block !important;
  color:inherit !important;
  text-decoration:none !important;
}
body.single-product .gp-related-product-image{
  overflow:hidden !important;
  background:#eadcc4 !important;
}
body.single-product .gp-related-product-image img{
  display:block !important;
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
}
body.single-product .gp-related-product-body{
  padding:20px 18px 22px !important;
  text-align:center !important;
}
body.single-product .gp-related-product-body h3{
  margin:0 0 12px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(22px,2.2vw,30px) !important;
  font-weight:400 !important;
  line-height:.98 !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}
body.single-product .gp-related-product-body p{
  margin:0 !important;
  color:var(--brown) !important;
  font-size:14px !important;
  font-weight:900 !important;
  letter-spacing:.075em !important;
  text-transform:uppercase !important;
}

@media (max-width:1020px){
  body.single-product .gp-single-product-grid{
    grid-template-columns:1fr !important;
  }
  body.single-product .gp-product-details-section{
    grid-template-columns:1fr 1.25fr !important;
  }
  body.single-product .gp-product-facts{
    grid-column:1 / -1 !important;
  }
  body.single-product .gp-related-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:620px){
  body.single-product .gp-woocommerce-main.gp-product-detail-page{
    padding:38px 16px 62px !important;
  }
  body.single-product .gp-single-product-grid{
    gap:22px !important;
  }
  body.single-product .gp-single-product-media,
  body.single-product .gp-single-product-summary,
  body.single-product .gp-product-details-section{
    border-radius:22px !important;
    box-shadow:7px 7px 0 var(--orange) !important;
  }
  body.single-product .gp-single-product-summary{
    padding:30px 22px !important;
  }
  body.single-product .gp-single-product-summary h1{
    font-size:clamp(38px,12vw,52px) !important;
  }
  body.single-product .gp-product-short,
  body.single-product .gp-product-short p{
    font-size:18px !important;
  }
  body.single-product .gp-single-product-gallery{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
  body.single-product .gp-product-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  body.single-product .gp-product-actions a{
    width:100% !important;
  }
  body.single-product .gp-product-details-section{
    grid-template-columns:1fr !important;
    gap:24px !important;
    margin-top:36px !important;
    padding:28px 22px !important;
  }
  body.single-product .gp-product-facts{
    grid-column:auto !important;
  }
  body.single-product .gp-related-products-section{
    margin-top:52px !important;
  }
  body.single-product .gp-related-product-grid{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
}


/* ================================================================
   VERSION 2.14.5 — RELATED PRODUCT STATUS ALIGNMENT
   Keeps title wrapping natural while anchoring the status line to the
   bottom of every More Down the Trail card. Scoped to product pages only.
   ================================================================ */
body.single-product .gp-related-product-card{
  display:flex !important;
}
body.single-product .gp-related-product-card > a{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  height:100% !important;
}
body.single-product .gp-related-product-body{
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  min-height:154px !important;
}
body.single-product .gp-related-product-body p{
  margin-top:auto !important;
}

@media (max-width:1020px){
  body.single-product .gp-related-product-body{
    min-height:138px !important;
  }
}

@media (max-width:620px){
  body.single-product .gp-related-product-body{
    min-height:0 !important;
  }
}


/* ================================================================
   VERSION 2.14.6 — HOMEPAGE FEATURED HAT IMAGE ALIGNMENT
   Gives only the dynamic homepage Featured Hats images one consistent
   frame so every card begins its text at the same height.
   ================================================================ */
body.home .gp-featured-hats-dynamic .gp-home-featured-product .product-photo,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .product-photo{
  width:100% !important;
  height:auto !important;
  aspect-ratio:4 / 3 !important;
  overflow:hidden !important;
  flex:0 0 auto !important;
}

body.home .gp-featured-hats-dynamic .gp-home-featured-product .product-photo > figure,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .product-photo > figure{
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
}

body.home .gp-featured-hats-dynamic .gp-home-featured-product .product-photo img,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .product-photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center !important;
}


/* ================================================================
   VERSION 2.14.7 — PRODUCT COPY + ORIGINAL ROPE HAT VARIATIONS
   Adds a simple color preview to the coming-soon variable hat while
   preserving the branded product page and future WooCommerce checkout.
   ================================================================ */
.gp-coming-soon-variations{
  margin:2px 0 24px;
  padding:20px;
  border:2px solid var(--black);
  border-radius:18px;
  background:var(--cream);
}
.gp-coming-soon-variations .gp-variation-label{
  display:block;
  margin:0 0 12px;
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:13px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.gp-coming-soon-variations .gp-color-options{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.gp-coming-soon-variations .gp-color-option{
  appearance:none;
  min-height:42px;
  padding:0 16px;
  border:2px solid var(--black);
  border-radius:999px;
  background:var(--paper);
  color:var(--black);
  cursor:pointer;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:13px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.gp-coming-soon-variations .gp-color-option:hover,
.gp-coming-soon-variations .gp-color-option:focus-visible,
.gp-coming-soon-variations .gp-color-option.is-active{
  background:var(--orange);
  outline:none;
}
.gp-coming-soon-variations .gp-color-note{
  min-height:1.5em;
  margin:14px 0 0;
  color:#574b3e;
  font-size:16px;
  line-height:1.45;
}
@media (max-width:560px){
  .gp-coming-soon-variations{
    padding:16px;
  }
  .gp-coming-soon-variations .gp-color-option{
    flex:1 1 calc(50% - 10px);
  }
}


/* ================================================================
   VERSION 2.14.8 — HOMEPAGE FEATURED HAT ACTION ALIGNMENT
   Keeps the dynamic homepage cards equal in height and pins the
   COMING SOON / VIEW HAT row to the bottom without changing copy,
   images, WooCommerce links, or any other product-card layout.
   ================================================================ */
body.home .gp-featured-hats-dynamic .gp-home-featured-product,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product{
  height:100% !important;
}

body.home .gp-featured-hats-dynamic .gp-home-featured-product .product-body,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .product-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-height:0 !important;
}

body.home .gp-featured-hats-dynamic .gp-home-featured-product .buy,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .buy{
  margin-top:auto !important;
  padding-top:18px !important;
  align-items:center !important;
}

body.home .gp-featured-hats-dynamic .gp-home-featured-product .buy .price,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .buy .price{
  margin:0 !important;
}

body.home .gp-featured-hats-dynamic .gp-home-featured-product .buy .wp-block-buttons,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .buy .wp-block-buttons{
  margin:0 !important;
}


/* ================================================================
   VERSION 2.14.9 — CAMPFIRE TALK EDITORIAL SYSTEM
   A dynamic story index powered by normal WordPress Posts, plus a
   branded single-article template. The page intro remains editable in
   Gutenberg; published posts assigned to the Campfire Talk category
   appear automatically.
   ================================================================ */
body.gp-campfire-index .inner-page-main,
body.gp-campfire-article-body .inner-page-main{
  background:var(--cream);
}

.gp-campfire-page-shell{
  width:100%;
}

body.gp-campfire-index .gp-campfire-page{
  padding-bottom:46px !important;
}

.gp-campfire-feed{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  padding:0 0 100px;
}

.gp-campfire-feature{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  overflow:hidden;
  min-height:430px;
  margin:0 0 34px;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:28px;
  box-shadow:10px 10px 0 var(--orange);
}

.gp-campfire-feature-media,
.gp-campfire-card-media{
  display:block;
  position:relative;
  overflow:hidden;
  background:#18130d;
}

.gp-campfire-feature-media img,
.gp-campfire-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.gp-campfire-feature-media img{min-height:430px}
.gp-campfire-card-media{aspect-ratio:4/3}

.gp-campfire-image-placeholder{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  min-height:250px;
  padding:28px;
  color:var(--paper);
  background:
    radial-gradient(circle at 50% 58%, rgba(255,141,43,.9) 0 7%, transparent 7.5%),
    radial-gradient(circle at 45% 66%, rgba(185,113,47,.65) 0 12%, transparent 12.5%),
    linear-gradient(145deg,#0b0a07,#2b1b10);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(28px,4vw,52px);
  line-height:.95;
  text-align:center;
  text-transform:uppercase;
}

.gp-campfire-feature-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:42px 38px;
}

.gp-campfire-kicker,
.gp-campfire-article-eyebrow{
  margin:0 0 12px;
  color:var(--brown);
  font-size:13px;
  font-weight:900;
  letter-spacing:.17em;
  text-transform:uppercase;
}

.gp-campfire-feature h2,
.gp-campfire-card h2,
.gp-campfire-article h1,
.gp-campfire-article-content h2,
.gp-campfire-article-content h3{
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-weight:400;
  text-transform:uppercase;
}

.gp-campfire-feature h2{
  margin:0 0 16px;
  font-size:clamp(38px,5vw,66px);
  line-height:.94;
  text-wrap:balance;
}

.gp-campfire-feature-excerpt{
  margin:0 0 24px;
  color:#574b3e;
  font-size:18px;
  line-height:1.58;
}

.gp-campfire-read-link{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  background:var(--black);
  color:var(--paper);
  box-shadow:5px 5px 0 var(--orange);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.gp-campfire-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px;
}

.gp-campfire-card{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  min-width:0;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:24px;
  box-shadow:8px 8px 0 var(--orange);
}

.gp-campfire-card-copy{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:24px 22px 26px;
}

.gp-campfire-card h2{
  margin:0 0 12px;
  font-size:clamp(27px,2.8vw,38px);
  line-height:.98;
  text-wrap:balance;
}

.gp-campfire-card-excerpt{
  margin:0 0 20px;
  color:#574b3e;
  font-size:16px;
  line-height:1.55;
}

.gp-campfire-card .gp-campfire-read-link{
  margin-top:auto;
}

.gp-campfire-empty{
  max-width:820px;
  margin:0 auto;
  padding:48px 34px;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:26px;
  box-shadow:8px 8px 0 var(--orange);
  text-align:center;
}

.gp-campfire-empty h2{
  margin:0 0 14px;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(36px,5vw,60px);
  font-weight:400;
  line-height:.96;
  text-transform:uppercase;
}

.gp-campfire-empty p{
  max-width:640px;
  margin:0 auto 26px;
  color:#574b3e;
  font-size:18px;
  line-height:1.6;
}

.gp-campfire-empty .gp-campfire-read-link{
  align-self:auto;
}

.gp-campfire-pagination{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:46px;
}

.gp-campfire-pagination .page-numbers{
  display:grid;
  place-items:center;
  min-width:44px;
  min-height:44px;
  padding:8px 12px;
  border:2px solid var(--black);
  border-radius:999px;
  background:var(--paper);
  font-weight:900;
}

.gp-campfire-pagination .current{
  background:var(--orange);
}

/* Single Campfire Talk article */
.gp-campfire-article{
  width:min(980px,calc(100% - 48px));
  margin:0 auto;
  padding:78px 0 100px;
}

.gp-campfire-article-header{
  max-width:880px;
  margin:0 auto 38px;
  text-align:center;
}

.gp-campfire-article h1{
  margin:0 auto 18px;
  font-size:clamp(50px,8vw,96px);
  line-height:.9;
  text-wrap:balance;
}

.gp-campfire-article-meta{
  margin:0;
  color:#6f604d;
  font-size:15px;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.gp-campfire-article-hero{
  overflow:hidden;
  margin:0 auto 34px;
  border:2px solid var(--black);
  border-radius:28px;
  box-shadow:10px 10px 0 var(--orange);
}

.gp-campfire-article-hero img{
  width:100%;
  max-height:680px;
  object-fit:cover;
}

.gp-campfire-article-content{
  padding:46px 44px;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:28px;
  box-shadow:10px 10px 0 var(--orange);
  color:#3f352b;
  font-size:19px;
  line-height:1.75;
}

.gp-campfire-article-content > *{
  max-width:760px;
  margin-left:auto;
  margin-right:auto;
}

.gp-campfire-article-content p{margin-top:0;margin-bottom:1.35em}
.gp-campfire-article-content h2{margin-top:1.5em;margin-bottom:.55em;font-size:clamp(34px,5vw,56px);line-height:.98}
.gp-campfire-article-content h3{margin-top:1.4em;margin-bottom:.5em;font-size:clamp(27px,4vw,40px);line-height:1}
.gp-campfire-article-content figure{max-width:860px;margin-top:34px;margin-bottom:34px}
.gp-campfire-article-content img{border-radius:18px}
.gp-campfire-article-content blockquote{
  padding:8px 0 8px 24px;
  border-left:5px solid var(--orange);
  font-size:1.18em;
  font-style:italic;
}

.gp-campfire-article-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  margin-top:34px;
}

.gp-campfire-article-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:0 19px;
  border:2px solid var(--black);
  border-radius:999px;
  background:var(--paper);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:13px;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.gp-campfire-article-actions a:first-child{
  background:var(--black);
  color:var(--paper);
  box-shadow:5px 5px 0 var(--orange);
}

.gp-campfire-post-nav{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:42px;
}

.gp-campfire-post-nav a{
  display:block;
  padding:22px;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:20px;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  line-height:1.05;
  text-transform:uppercase;
}

.gp-campfire-post-nav .gp-next{text-align:right}

@media (max-width:900px){
  .gp-campfire-feature{grid-template-columns:1fr;min-height:0}
  .gp-campfire-feature-media{aspect-ratio:4/3}
  .gp-campfire-feature-media img{min-height:0}
  .gp-campfire-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:620px){
  body.gp-campfire-index .gp-campfire-page{padding-bottom:34px !important}
  .gp-campfire-feed{width:min(100% - 32px,1180px);padding-bottom:68px}
  .gp-campfire-feature{margin-bottom:24px;box-shadow:7px 7px 0 var(--orange)}
  .gp-campfire-feature-copy{padding:30px 22px}
  .gp-campfire-feature h2{font-size:clamp(34px,10vw,46px)}
  .gp-campfire-grid{grid-template-columns:1fr;gap:22px}
  .gp-campfire-card{box-shadow:7px 7px 0 var(--orange)}
  .gp-campfire-empty{padding:38px 22px;box-shadow:7px 7px 0 var(--orange)}
  .gp-campfire-article{width:min(100% - 32px,980px);padding:54px 0 72px}
  .gp-campfire-article h1{font-size:clamp(43px,13vw,64px)}
  .gp-campfire-article-hero,
  .gp-campfire-article-content{box-shadow:7px 7px 0 var(--orange)}
  .gp-campfire-article-content{padding:34px 22px;font-size:17px;line-height:1.7}
  .gp-campfire-post-nav{grid-template-columns:1fr}
  .gp-campfire-post-nav .gp-next{text-align:left}
}


/* ================================================================
   VERSION 2.15.0 — CAMPFIRE TALK TYPOGRAPHY POLISH
   Make the Campfire Talk page title use the Guadalupe display face
   through all Gutenberg wrapper variations, and give the empty-state
   kicker the established bright-orange accent treatment.
   ================================================================ */
body.gp-campfire-index .gp-campfire-page h1,
body.gp-campfire-index .gp-campfire-page > .wp-block-group__inner-container > h1,
body.gp-campfire-index .gp-campfire-page .wp-block-group__inner-container > h1,
.editor-styles-wrapper .gp-campfire-page h1{
  display:block !important;
  max-width:940px !important;
  margin:0 auto 24px !important;
  color:var(--black) !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(58px,9vw,120px) !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:.88 !important;
  letter-spacing:.01em !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.gp-campfire-index .gp-campfire-empty .gp-campfire-kicker,
body.gp-campfire-index .gp-campfire-empty > .wp-block-group__inner-container > .gp-campfire-kicker{
  display:block !important;
  margin:0 auto 14px !important;
  color:var(--orange) !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:14px !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  line-height:1.2 !important;
  letter-spacing:.16em !important;
  text-align:center !important;
  text-transform:uppercase !important;
}

@media (max-width:560px){
  body.gp-campfire-index .gp-campfire-page h1,
  body.gp-campfire-index .gp-campfire-page > .wp-block-group__inner-container > h1,
  body.gp-campfire-index .gp-campfire-page .wp-block-group__inner-container > h1,
  .editor-styles-wrapper .gp-campfire-page h1{
    font-size:clamp(49px,15vw,72px) !important;
    line-height:.9 !important;
    margin-bottom:20px !important;
  }
}


/* ================================================================
   VERSION 2.15.1 — CAMPFIRE ARTICLE READING EXPERIENCE
   Tightens the article hero, introduces a warmer editorial body face,
   and keeps long-form stories inside a comfortable reading measure.
   This is scoped only to Campfire Talk article pages.
   ================================================================ */
body.gp-campfire-article-body .gp-campfire-article{
  width:min(980px,calc(100% - 48px));
  padding-top:64px;
}

body.gp-campfire-article-body .gp-campfire-article-header{
  margin-bottom:30px;
}

body.gp-campfire-article-body .gp-campfire-article-hero{
  width:min(800px,100%);
  aspect-ratio:3 / 2;
  margin:0 auto 24px;
}

body.gp-campfire-article-body .gp-campfire-article-hero img{
  width:100%;
  height:100%;
  max-height:none;
  aspect-ratio:3 / 2;
  object-fit:cover;
  object-position:center;
}

body.gp-campfire-article-body .gp-campfire-article-content{
  width:min(820px,100%);
  margin:0 auto;
  padding:42px 46px;
  font-family:'Lora',Georgia,Cambria,serif;
  font-size:18px;
  line-height:1.8;
}

body.gp-campfire-article-body .gp-campfire-article-content > *{
  max-width:720px;
}

body.gp-campfire-article-body .gp-campfire-article-content > p:first-child,
body.gp-campfire-article-body .gp-campfire-article-content > .wp-block-group__inner-container > p:first-child{
  margin-bottom:1em;
  color:var(--black);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(27px,3vw,36px);
  font-weight:400;
  line-height:1.12;
}

body.gp-campfire-article-body .gp-campfire-article-content h2,
body.gp-campfire-article-body .gp-campfire-article-content h3{
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
}

@media (max-width:620px){
  body.gp-campfire-article-body .gp-campfire-article{
    width:min(100% - 32px,980px);
    padding-top:48px;
  }

  body.gp-campfire-article-body .gp-campfire-article-header{
    margin-bottom:24px;
  }

  body.gp-campfire-article-body .gp-campfire-article-hero{
    width:100%;
    margin-bottom:20px;
    border-radius:22px;
  }

  body.gp-campfire-article-body .gp-campfire-article-content{
    width:100%;
    padding:32px 22px;
    font-size:17px;
    line-height:1.75;
  }

  body.gp-campfire-article-body .gp-campfire-article-content > p:first-child,
  body.gp-campfire-article-body .gp-campfire-article-content > .wp-block-group__inner-container > p:first-child{
    font-size:clamp(25px,8vw,32px);
  }
}


/* ================================================================
   VERSION 2.15.2 — TRAIL SIGHTINGS PHOTO JOURNAL
   A phone-friendly featured-image gallery powered by normal posts in
   the Trail Sightings category. No individual-page click is required.
   ================================================================ */
body.gp-editorial-body .gp-sightings-main{
  background:var(--cream);
}
.gp-sightings-shell{
  width:min(1180px,100%);
  margin:0 auto;
  padding:82px 24px 100px;
}
.gp-sightings-intro{
  max-width:980px;
  margin:0 auto 48px;
  text-align:center;
}
.gp-sightings-intro .eyebrow{
  margin:0 0 15px;
  color:var(--brown);
}
.gp-sightings-intro h1{
  max-width:940px;
  margin:0 auto 24px;
  color:var(--black);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(58px,9vw,120px);
  font-weight:400;
  line-height:.88;
  letter-spacing:.01em;
  text-transform:uppercase;
  text-wrap:balance;
}
.gp-sightings-intro .gp-sightings-lead{
  max-width:760px;
  margin:0 auto;
  color:#4b4034;
  font-size:clamp(19px,2vw,24px);
  line-height:1.55;
}
.gp-sightings-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}
.gp-sighting-card{
  display:flex;
  min-width:0;
  height:100%;
  overflow:hidden;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:24px;
  box-shadow:7px 7px 0 var(--orange);
}
.gp-sighting-button{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  width:100%;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  cursor:zoom-in;
  text-align:left;
}
.gp-sighting-media{
  position:relative;
  overflow:hidden;
  height:clamp(260px,31vw,380px);
  background:#e9dcc3;
}
.gp-sighting-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .25s ease;
}
.gp-sighting-button:hover .gp-sighting-media img,
.gp-sighting-button:focus-visible .gp-sighting-media img{
  transform:scale(1.025);
}
.gp-sighting-button:focus-visible{
  outline:3px solid rgba(255,141,43,.55);
  outline-offset:4px;
}
.gp-sighting-copy{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  flex:1 1 auto;
  min-height:202px;
  padding:22px 18px 24px;
  text-align:center;
}
.gp-sighting-copy h2{
  width:100%;
  margin:0;
  color:var(--black);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(22px,2vw,34px);
  font-weight:400;
  line-height:.95;
  text-transform:uppercase;
  text-wrap:balance;
}
.gp-sighting-copy p{
  max-width:28ch;
  margin:0;
  color:#574b3e;
  font-size:16px;
  line-height:1.5;
}
.gp-sightings-empty{
  max-width:780px;
  margin:0 auto;
  padding:44px 38px;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:26px;
  box-shadow:8px 8px 0 var(--orange);
  text-align:center;
}
.gp-sightings-empty .eyebrow{
  margin:0 0 12px;
  color:var(--orange);
}
.gp-sightings-empty h2{
  margin:0 0 14px;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(34px,5vw,60px);
  font-weight:400;
  line-height:1;
  text-transform:uppercase;
}
.gp-sightings-empty p{
  max-width:610px;
  margin:0 auto;
  color:#4b4034;
  font-size:18px;
  line-height:1.6;
}
.gp-sightings-cta{
  max-width:780px;
  margin:56px auto 0;
  padding:42px 34px;
  background:var(--paper);
  border:2px solid var(--black);
  border-radius:26px;
  box-shadow:8px 8px 0 var(--orange);
  text-align:center;
}
.gp-sightings-cta .eyebrow{
  margin:0 0 12px;
  color:var(--brown);
}
.gp-sightings-cta h2{
  margin:0 0 14px;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(34px,5vw,60px);
  font-weight:400;
  line-height:1;
  text-transform:uppercase;
}
.gp-sightings-cta p{
  max-width:610px;
  margin:0 auto;
  color:#4b4034;
  font-size:18px;
  line-height:1.6;
}
.gp-sightings-cta .gp-sightings-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  margin-top:24px;
  padding:0 20px;
  border:2px solid var(--black);
  border-radius:999px;
  background:var(--black);
  color:var(--paper);
  box-shadow:5px 5px 0 var(--orange);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:14px;
  letter-spacing:.07em;
  text-transform:uppercase;
}

/* Trail Sightings lightbox. */
.gp-sightings-lightbox[hidden]{display:none!important}
.gp-sightings-lightbox{
  position:fixed;
  inset:0;
  z-index:100000;
  display:grid;
  place-items:center;
  padding:28px;
}
.gp-sightings-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(11,10,7,.88);
  backdrop-filter:blur(5px);
}
.gp-sightings-lightbox-dialog{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(250px,340px);
  width:min(1040px,100%);
  max-height:calc(100vh - 56px);
  overflow:hidden;
  background:var(--paper);
  border:2px solid var(--cream);
  border-radius:26px;
  box-shadow:10px 10px 0 var(--orange);
}
.gp-sightings-lightbox-image-wrap{
  display:grid;
  place-items:center;
  min-height:420px;
  overflow:hidden;
  background:var(--black);
}
.gp-sightings-lightbox-image{
  display:block;
  width:100%;
  height:100%;
  max-height:calc(100vh - 60px);
  object-fit:contain;
}
.gp-sightings-lightbox-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:36px 30px;
}
.gp-sightings-lightbox-copy h2{
  margin:0 0 12px;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(30px,4vw,50px);
  font-weight:400;
  line-height:.95;
  text-transform:uppercase;
}
.gp-sightings-lightbox-copy p{
  margin:0;
  color:#574b3e;
  font-size:18px;
  line-height:1.6;
}
.gp-sightings-lightbox-close,
.gp-sightings-lightbox-prev,
.gp-sightings-lightbox-next{
  position:absolute;
  z-index:2;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  padding:0;
  border:2px solid var(--paper);
  border-radius:50%;
  background:var(--black);
  color:var(--paper);
  cursor:pointer;
  font:700 25px/1 Arial,sans-serif;
}
.gp-sightings-lightbox-close{top:14px;right:14px}
.gp-sightings-lightbox-prev{left:14px;top:50%;transform:translateY(-50%)}
.gp-sightings-lightbox-next{right:14px;top:50%;transform:translateY(-50%)}
body.gp-lightbox-open{overflow:hidden}

@media(max-width:900px){
  .gp-sightings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gp-sightings-lightbox-dialog{grid-template-columns:1fr;overflow:auto}
  .gp-sightings-lightbox-image-wrap{min-height:0;max-height:62vh}
  .gp-sightings-lightbox-image{max-height:62vh}
  .gp-sightings-lightbox-copy{padding:26px 22px 30px}
}
@media(max-width:560px){
  .gp-sightings-shell{padding:58px 16px 72px}
  .gp-sightings-intro{margin-bottom:34px}
  .gp-sightings-intro h1{font-size:clamp(48px,16vw,68px)}
  .gp-sightings-grid{grid-template-columns:1fr;gap:22px}
  .gp-sighting-media{height:320px}
  .gp-sighting-copy{min-height:0;padding:18px 18px 22px}
  .gp-sightings-empty,
  .gp-sightings-cta{padding:34px 20px;box-shadow:6px 6px 0 var(--orange)}
  .gp-sightings-lightbox{padding:12px}
  .gp-sightings-lightbox-dialog{max-height:calc(100vh - 24px);border-radius:20px;box-shadow:6px 6px 0 var(--orange)}
  .gp-sightings-lightbox-image-wrap{max-height:58vh}
  .gp-sightings-lightbox-image{max-height:58vh}
  .gp-sightings-lightbox-prev,.gp-sightings-lightbox-next{width:40px;height:40px}
  .gp-sightings-lightbox-close{width:40px;height:40px;top:10px;right:10px}
}


/* =========================================================
   VERSION 2.15.3 — JOIN THE PACK + MAILPOET
   ========================================================= */
.gp-join-page .gp-join-card{
  max-width:820px !important;
  padding:46px 42px 42px !important;
}
.gp-join-page .gp-join-card > p{
  max-width:620px;
  margin:0 auto 25px !important;
}
.gp-join-mailpoet{
  width:100%;
  max-width:690px;
  margin:0 auto;
}
.gp-join-form{
  margin:0;
}
.gp-join-form-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
  gap:13px;
}
.gp-join-form label{
  display:block;
}
.gp-join-form input[type="email"]{
  width:100%;
  min-height:58px;
  margin:0;
  padding:15px 20px;
  border:2px solid var(--black);
  border-radius:999px;
  background:#fffdf6;
  color:var(--black);
  font-family:'Lora',Georgia,serif;
  font-size:18px;
  line-height:1.2;
  box-shadow:none;
  outline:none;
}
.gp-join-form input[type="email"]::placeholder{
  color:#746655;
  opacity:1;
}
.gp-join-form input[type="email"]:focus{
  border-color:var(--brown);
  box-shadow:0 0 0 4px rgba(255,141,43,.22);
}
.gp-join-submit,
.gp-join-fallback-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:58px;
  padding:14px 24px;
  border:2px solid var(--black);
  border-radius:999px;
  background:var(--black);
  color:var(--paper);
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:15px;
  line-height:1;
  letter-spacing:.07em;
  text-transform:uppercase;
  box-shadow:5px 5px 0 var(--orange);
  cursor:pointer;
  white-space:nowrap;
  transition:transform .16s ease,box-shadow .16s ease;
}
.gp-join-submit:hover,
.gp-join-fallback-link:hover{
  transform:translate(2px,2px);
  box-shadow:3px 3px 0 var(--orange);
}
.gp-join-submit:focus-visible,
.gp-join-fallback-link:focus-visible{
  outline:3px solid var(--orange);
  outline-offset:4px;
}
.gp-join-consent{
  max-width:610px !important;
  margin:17px auto 0 !important;
  color:#6c5d4c !important;
  font-size:13px !important;
  line-height:1.55 !important;
}
.gp-join-consent a{
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.gp-join-message{
  max-width:650px;
  margin:0 auto 22px;
  padding:16px 18px;
  border:2px solid var(--black);
  border-radius:16px;
  background:#fffdf6;
  color:var(--black);
  font-size:17px;
  line-height:1.5;
  text-align:center;
}
.gp-join-message-success{
  background:#eef2df;
  border-color:var(--green);
}
.gp-join-message-error{
  background:#fff1df;
  border-color:var(--brown);
}
.gp-join-success-title{
  margin:0 0 8px;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(27px,4vw,38px);
  line-height:1;
  text-transform:uppercase;
}
.gp-join-success-copy{
  margin:0 !important;
  color:#4b4034 !important;
  font-size:17px !important;
  line-height:1.55 !important;
}
.gp-join-fallback{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
}
.gp-join-fallback p{
  margin:0 !important;
}
.gp-join-honeypot{
  position:absolute !important;
  left:-10000px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
.gp-visually-hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
@media(max-width:620px){
  .gp-join-page .gp-join-card{
    padding:34px 20px 31px !important;
  }
  .gp-join-form-row{
    grid-template-columns:1fr;
    gap:12px;
  }
  .gp-join-submit,
  .gp-join-fallback-link{
    width:100%;
    min-height:56px;
  }
  .gp-join-form input[type="email"]{
    min-height:56px;
    font-size:17px;
  }
}


/* =========================================================
   VERSION 2.15.4 — JOIN THE PACK VISUAL REFINEMENT
   ========================================================= */
/* The Gutenberg group may add an inner wrapper on the live site, so use
   descendant selectors here instead of relying on the H1 being a direct child. */
.gp-join-page h1{
  max-width:820px !important;
  margin:0 auto 24px !important;
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif !important;
  font-size:clamp(44px,5.4vw,70px) !important;
  font-weight:400 !important;
  line-height:.98 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-wrap:balance;
}
.gp-join-page .gp-editorial-lead{
  max-width:830px !important;
  margin:0 auto 48px !important;
}
.gp-join-page .gp-join-card{
  max-width:720px !important;
  padding:34px 34px 32px !important;
}
.gp-join-page .gp-join-card h2{
  margin:0 0 14px !important;
  font-size:clamp(38px,4.2vw,52px) !important;
  line-height:1 !important;
}
.gp-join-page .gp-join-card > p,
.gp-join-page .gp-join-card > .wp-block-group__inner-container > p{
  max-width:545px !important;
  margin:0 auto 22px !important;
  line-height:1.52 !important;
  text-wrap:balance;
}
.gp-join-page .gp-join-mailpoet{
  max-width:650px;
  margin:0 auto;
  padding-bottom:3px;
}
.gp-join-page .gp-join-form-row{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
  gap:12px;
}
.gp-join-page .gp-join-form-row > label,
.gp-join-page .gp-join-submit{
  height:58px;
  min-height:58px;
}
.gp-join-page .gp-join-form input[type="email"]{
  height:58px;
  min-height:58px;
  padding:0 20px;
}
.gp-join-page .gp-join-submit{
  padding:0 24px;
}
.gp-join-page .gp-join-consent{
  width:100%;
  max-width:640px !important;
  margin:18px auto 0 !important;
  padding:0 5px;
  font-size:14px !important;
  line-height:1.5 !important;
  text-wrap:pretty;
}

@media(max-width:760px){
  .gp-join-page h1{
    font-size:clamp(42px,11vw,58px) !important;
    margin-bottom:18px !important;
  }
  .gp-join-page .gp-editorial-lead{
    margin-bottom:34px !important;
  }
  .gp-join-page .gp-join-card{
    max-width:680px !important;
    padding:30px 24px 29px !important;
  }
}
@media(max-width:620px){
  .gp-join-page .gp-join-card{
    padding:30px 19px 27px !important;
  }
  .gp-join-page .gp-join-card h2{
    font-size:clamp(36px,11vw,44px) !important;
  }
  .gp-join-page .gp-join-card > p,
  .gp-join-page .gp-join-card > .wp-block-group__inner-container > p{
    max-width:430px !important;
    margin-bottom:20px !important;
  }
  .gp-join-page .gp-join-form-row{
    grid-template-columns:1fr;
    gap:11px;
  }
  .gp-join-page .gp-join-form-row > label,
  .gp-join-page .gp-join-submit,
  .gp-join-page .gp-join-form input[type="email"]{
    width:100%;
    height:56px;
    min-height:56px;
  }
  .gp-join-page .gp-join-consent{
    max-width:460px !important;
    margin-top:16px !important;
    padding:0 2px;
    font-size:13.5px !important;
  }
}

/* =========================================================
   VERSION 2.15.5 — JOIN THE PACK EYEBROW EMPHASIS
   ========================================================= */
/* Strengthen the page label without competing with the main headline. */
.gp-join-page > .eyebrow,
.gp-join-page > .wp-block-group__inner-container > .eyebrow,
.gp-join-page .wp-block-group__inner-container > .eyebrow:first-child{
  margin:0 0 18px !important;
  font-size:18px !important;
  line-height:1.1 !important;
  letter-spacing:.18em !important;
  font-weight:900 !important;
}

@media(max-width:620px){
  .gp-join-page > .eyebrow,
  .gp-join-page > .wp-block-group__inner-container > .eyebrow,
  .gp-join-page .wp-block-group__inner-container > .eyebrow:first-child{
    margin-bottom:14px !important;
    font-size:16px !important;
    letter-spacing:.16em !important;
  }
}



/* ================================================================
   VERSION 2.15.6 — HOMEPAGE FEATURED HATS HEADER CENTERING
   Centers the Gear & Provisions / Featured Hats lockup so it aligns
   with the featured product grid beneath it. Homepage only.
   ================================================================ */
body.home .gear .wrap,
body.front-page .gear .wrap{
  text-align:center !important;
}

body.home .gear .gp-gear-title,
body.front-page .gear .gp-gear-title{
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

body.home .gear .gear-subhead,
body.front-page .gear .gear-subhead{
  max-width:760px !important;
  margin:0 auto 18px !important;
  text-align:center !important;
}

body.home .gear .gear-subhead h3,
body.front-page .gear .gear-subhead h3{
  margin:0 auto 10px !important;
  text-align:center !important;
}

body.home .gear .gear-subhead p,
body.front-page .gear .gear-subhead p{
  max-width:700px !important;
  margin:0 auto !important;
  text-align:center !important;
}

@media (max-width:900px){
  body.home .gear .gear-subhead,
  body.front-page .gear .gear-subhead{
    max-width:680px !important;
    margin:0 auto 16px !important;
  }

  body.home .gear .gear-subhead p,
  body.front-page .gear .gear-subhead p{
    max-width:560px !important;
  }
}


/* Version 2.15.11: tighter approved homepage shared-link preview image */
.footer .gp-footer-privacy{
  color:#d6c6ad;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}
.footer .gp-footer-privacy:hover{color:var(--paper)}
.gp-legal-footer{
  background:#050505;
  color:#d6c6ad;
  border-top:1px solid rgba(255,248,233,.14);
  padding:17px 28px;
}
.gp-legal-footer-inner{
  width:100%;
  max-width:1180px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.gp-legal-footer span,.gp-legal-footer a{
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.gp-legal-footer a{
  color:var(--paper);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}
.gp-privacy-page{
  max-width:820px;
  margin:0 auto;
  padding:82px 24px 96px;
}
.gp-privacy-page .section-title{margin-bottom:14px}
.gp-privacy-page .gp-privacy-updated{color:var(--muted);font-style:italic;margin-bottom:34px}
.gp-privacy-page h2{
  font-family:'Caprasimo','Cooper Black','Bookman Old Style',Georgia,serif;
  font-size:clamp(25px,3.5vw,38px);
  line-height:1.05;
  margin:40px 0 14px;
}
.gp-privacy-page p,.gp-privacy-page li{font-size:18px;line-height:1.7;color:#3f352a}
.gp-privacy-page a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:560px){
  .footer .gp-footer-privacy{width:100%;text-align:center}
  .gp-legal-footer{padding:15px 18px}
  .gp-legal-footer-inner{justify-content:center;text-align:center}
  .gp-privacy-page{padding:58px 20px 72px}
  .gp-privacy-page p,.gp-privacy-page li{font-size:17px}
}


/* Version 2.15.12: Hats and Stickers listing cards now render directly from WooCommerce product data. */

/* ================================================================
   VERSION 2.15.13 — HATS CARD IMAGE + TEXT ALIGNMENT
   CSS-only refinement for the WooCommerce-managed Hats grid.
   Keeps every hat image in the same landscape frame and aligns the
   title, description, and status areas across each desktop row.
   ================================================================ */
body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
}

body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > figure{
  display:block !important;
  width:100% !important;
  aspect-ratio:16 / 10 !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 0 22px !important;
  overflow:hidden !important;
  background:#efe2ca !important;
}

body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > figure img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center top !important;
}

body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > h2{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  min-height:2.05em !important;
  margin-top:0 !important;
  margin-bottom:10px !important;
  text-align:center !important;
}

body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > p:not(.gp-price){
  min-height:3em !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  text-align:center !important;
}

body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > .gp-price{
  margin-top:auto !important;
  padding-top:18px !important;
}

@media (max-width:900px){
  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > figure{
    aspect-ratio:4 / 3 !important;
  }

  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > h2,
  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > p:not(.gp-price){
    min-height:0 !important;
  }
}

/* ================================================================
   VERSION 2.15.14 — HOMEPAGE FEATURED HATS TYPOGRAPHY
   Applies the Guadalupe display face only to the dynamic homepage
   Featured Hats titles, status labels, and View Hat buttons. Product
   content and WooCommerce synchronization remain unchanged.
   ================================================================ */
body.home .gp-featured-hats-dynamic .gp-home-featured-product .product-body > h3,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .product-body > h3{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
}

body.home .gp-featured-hats-dynamic .gp-home-featured-product .buy .price,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .buy .price{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
  letter-spacing:.025em !important;
}

body.home .gp-featured-hats-dynamic .gp-home-featured-product .small-btn,
body.home .gp-featured-hats-dynamic .gp-home-featured-product .small-btn a,
body.home .gp-featured-hats-dynamic .gp-home-featured-product .small-btn .wp-block-button__link,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .small-btn,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .small-btn a,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .small-btn .wp-block-button__link{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
}

/* ================================================================
   VERSION 2.15.15 — PRODUCT STATUS TYPOGRAPHY
   Extends the Guadalupe display face to the Hats-page status line and
   More Down the Trail status line only. Product data, card syncing,
   links, image sizing, and layouts remain unchanged.
   ================================================================ */
body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > .gp-price,
body.single-product .gp-related-product-body > p{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
  letter-spacing:.025em !important;
}

/* ================================================================
   VERSION 2.15.16 — COMING SOON BRAND COLOR
   Restores the brighter Guadalupe orange to product status labels
   across the homepage, Hats, Stickers, product detail, and related
   product cards. Product data, synchronization, links, and layouts
   remain unchanged.
   ================================================================ */
body.home .gp-featured-hats-dynamic .gp-home-featured-product .buy .price,
body.front-page .gp-featured-hats-dynamic .gp-home-featured-product .buy .price,
body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > .gp-price,
body.gp-shop-stickers .gp-products-page .gp-dynamic-product-grid > .gp-sticker-product-card > .gp-price,
body.single-product .gp-product-status,
body.single-product .gp-related-product-body > p,
.gp-woo-coming-soon-price{
  color:#FF8D2B !important;
}

/* ================================================================
   VERSION 2.15.17 — REMAINING COMING SOON TYPOGRAPHY
   Extends the Guadalupe display face to the Stickers-page status line
   and the main product-page status line only. Product data, syncing,
   pricing, links, images, and layouts remain unchanged.
   ================================================================ */
body.gp-shop-stickers .gp-products-page .gp-dynamic-product-grid > .gp-sticker-product-card > .gp-price,
body.single-product .gp-product-status{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
  letter-spacing:.025em !important;
}

/* ================================================================
   VERSION 2.15.18 — DYNAMIC SHIRTS PAGE + SHIRT PRODUCT ROUTING
   Adds a WooCommerce-managed Shirts grid that matches the established
   product-card language while preserving Hats, Stickers, and all other
   layouts. Shirt products route back to Shirts on their detail pages.
   ================================================================ */
body.gp-shop-shirts .gp-products-page .gp-shirts-primary{
  display:block !important;
  max-width:1000px !important;
  margin:0 auto 10px !important;
  color:var(--brown) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  letter-spacing:.17em !important;
  text-align:center !important;
  text-transform:uppercase !important;
}

body.gp-shop-shirts .gp-products-page .gp-shirts-secondary{
  display:block !important;
  max-width:1000px !important;
  margin:10px auto 18px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(42px,6.8vw,92px) !important;
  font-weight:400 !important;
  line-height:.9 !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-wrap:balance !important;
}

body.gp-shop-shirts .gp-products-page .gp-shirts-intro{
  display:block !important;
  max-width:780px !important;
  margin:0 auto 28px !important;
  text-align:center !important;
}

body.gp-shop-shirts .gp-shirt-product-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:26px !important;
  width:100% !important;
  max-width:none !important;
  margin:42px auto 0 !important;
  align-items:stretch !important;
}

body.gp-shop-shirts .gp-shirt-product-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  height:100% !important;
  margin:0 !important;
  transition:transform .18s ease,box-shadow .18s ease !important;
}

body.gp-shop-shirts .gp-shirt-product-card:hover{
  transform:translateY(-3px) !important;
  box-shadow:10px 10px 0 var(--orange) !important;
}

body.gp-shop-shirts .gp-shirt-product-card > figure{
  display:block !important;
  width:100% !important;
  aspect-ratio:4 / 5 !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 0 22px !important;
  overflow:hidden !important;
  background:#efe2ca !important;
}

body.gp-shop-shirts .gp-shirt-product-card > figure img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center top !important;
}

body.gp-shop-shirts .gp-shirt-product-card > h2{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  min-height:2.05em !important;
  margin-top:0 !important;
  margin-bottom:10px !important;
  text-align:center !important;
}

body.gp-shop-shirts .gp-shirt-product-card > p:not(.gp-price){
  min-height:3em !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  text-align:center !important;
}

body.gp-shop-shirts .gp-shirt-product-card > .gp-price{
  margin-top:auto !important;
  padding-top:18px !important;
  color:#FF8D2B !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
  letter-spacing:.025em !important;
}

@media (max-width:900px){
  body.gp-shop-shirts .gp-shirt-product-grid{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  body.gp-shop-shirts .gp-shirt-product-card > h2,
  body.gp-shop-shirts .gp-shirt-product-card > p:not(.gp-price){
    min-height:0 !important;
  }
}

@media (max-width:560px){
  body.gp-shop-shirts .gp-products-page .gp-shirts-secondary{
    font-size:42px !important;
    line-height:.9 !important;
    margin-bottom:18px !important;
  }
  body.gp-shop-shirts .gp-products-page .gp-shirts-intro{
    padding-left:8px !important;
    padding-right:8px !important;
  }
}


/* Version 2.15.19: product galleries now include the featured image as the first thumbnail so visitors can return to the main image after viewing gallery photos. */

/* ================================================================
   VERSION 2.15.20 — DESKTOP SHIRTS + STICKERS CARD SCALE
   Uses category-specific desktop sizing: Shirts display three across
   on wide screens and two across on tablets, while Stickers remain a
   centered two-card row with a restrained maximum width. Hats and all
   mobile card sizing remain unchanged.
   ================================================================ */
@media (min-width:1100px){
  body.gp-shop-shirts .gp-shirt-product-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:24px !important;
    width:100% !important;
    max-width:1132px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.gp-shop-stickers .gp-sticker-product-grid,
  body.gp-shop-stickers .gp-sticker-product-grid > .wp-block-group__inner-container{
    grid-template-columns:repeat(2,minmax(0,400px)) !important;
    justify-content:center !important;
    gap:24px !important;
    width:100% !important;
    max-width:824px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

@media (min-width:700px) and (max-width:1099px){
  body.gp-shop-shirts .gp-shirt-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:24px !important;
    width:100% !important;
    max-width:820px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.gp-shop-stickers .gp-sticker-product-grid,
  body.gp-shop-stickers .gp-sticker-product-grid > .wp-block-group__inner-container{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    justify-content:center !important;
    gap:24px !important;
    width:100% !important;
    max-width:820px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}


/* ================================================================
   VERSION 2.15.21 — COMPACT DESKTOP STICKER CARDS
   Restrains the Stickers listing on desktop only. Cards use a shorter
   4:3 image frame and a narrower centered two-column row. Hats, Shirts,
   mobile layouts, WooCommerce data, and product syncing are unchanged.
   ================================================================ */
@media (min-width:901px){
  body.gp-shop-stickers .gp-sticker-product-grid,
  body.gp-shop-stickers .gp-sticker-product-grid > .wp-block-group__inner-container{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,340px)) !important;
    justify-content:center !important;
    align-items:stretch !important;
    gap:24px !important;
    width:100% !important;
    max-width:704px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.gp-shop-stickers .gp-sticker-product-grid > .gp-sticker-product-card,
  body.gp-shop-stickers .gp-sticker-product-grid > .wp-block-group__inner-container > .gp-sticker-product-card{
    width:100% !important;
    max-width:340px !important;
    margin:0 auto !important;
  }

  body.gp-shop-stickers .gp-sticker-product-card figure{
    display:block !important;
    width:100% !important;
    height:auto !important;
    aspect-ratio:4 / 3 !important;
    margin:0 0 16px !important;
    overflow:hidden !important;
  }

  body.gp-shop-stickers .gp-sticker-product-card figure img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    object-position:center top !important;
  }

  body.gp-shop-stickers .gp-sticker-product-card h2{
    min-height:1.9em !important;
    margin-top:0 !important;
    margin-bottom:8px !important;
    font-size:clamp(25px,2vw,31px) !important;
    line-height:.98 !important;
  }

  body.gp-shop-stickers .gp-sticker-product-card > p:not(.gp-price){
    min-height:2.8em !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    font-size:16px !important;
    line-height:1.4 !important;
  }

  body.gp-shop-stickers .gp-sticker-product-card .gp-price{
    margin-top:auto !important;
    padding:12px 20px 20px !important;
  }
}

/* ================================================================
   VERSION 2.15.22 — COMPACT DESKTOP HATS GRID
   Displays Hats three across on wide desktop, two across on tablet
   and smaller desktop, and one across on mobile. Card content and
   WooCommerce syncing remain unchanged.
   ================================================================ */
@media (min-width:1100px){
  body.gp-shop-hats .gp-products-page .gp-product-grid,
  body.gp-shop-hats .gp-products-page .gp-product-grid > .wp-block-group__inner-container,
  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    justify-content:center !important;
    align-items:stretch !important;
    gap:22px !important;
    width:100% !important;
    max-width:1100px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card{
    width:100% !important;
    max-width:352px !important;
    margin:0 auto !important;
  }

  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > figure{
    margin-bottom:18px !important;
  }

  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > h2{
    min-height:2em !important;
    margin-left:18px !important;
    margin-right:18px !important;
    margin-bottom:8px !important;
    font-size:clamp(23px,1.8vw,29px) !important;
    line-height:1 !important;
  }

  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > p:not(.gp-price){
    min-height:3em !important;
    margin-left:18px !important;
    margin-right:18px !important;
    font-size:16px !important;
    line-height:1.4 !important;
  }

  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid > .gp-product-card > .gp-price{
    padding-top:14px !important;
  }
}

@media (min-width:700px) and (max-width:1099px){
  body.gp-shop-hats .gp-products-page .gp-product-grid,
  body.gp-shop-hats .gp-products-page .gp-product-grid > .wp-block-group__inner-container,
  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:24px !important;
    width:100% !important;
    max-width:820px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

@media (max-width:699px){
  body.gp-shop-hats .gp-products-page .gp-product-grid,
  body.gp-shop-hats .gp-products-page .gp-product-grid > .wp-block-group__inner-container,
  body.gp-shop-hats .gp-products-page .gp-dynamic-product-grid{
    grid-template-columns:1fr !important;
  }
}



/* ================================================================
   VERSION 2.15.23 — GEAR NAVIGATION + STICKER LAUNCH CTA
   Keeps the Hats / Stickers / Shirts navigation available on product
   pages, fixes its sticky position beneath the rendered site header,
   and restores the launch call-to-action beneath the Sticker cards.
   ================================================================ */
.gp-global-header{
  z-index:1000 !important;
}

.section-subnav.gp-gear-category-nav,
.section-subnav-gear{
  position:sticky !important;
  top:var(--gp-subnav-top,82px) !important;
  z-index:999 !important;
  isolation:isolate;
  pointer-events:auto !important;
  width:100% !important;
  margin:0 !important;
  background:#fff8e9 !important;
  border-top:0 !important;
  border-bottom:2px solid var(--black) !important;
  box-shadow:0 4px 10px rgba(11,10,7,.08) !important;
  transform:translateZ(0);
}

body.admin-bar .section-subnav.gp-gear-category-nav,
body.admin-bar .section-subnav-gear{
  top:var(--gp-subnav-top,114px) !important;
}

.section-subnav.gp-gear-category-nav a,
.section-subnav-gear a{
  position:relative;
  z-index:2;
  pointer-events:auto !important;
  touch-action:manipulation;
}

.section-subnav.gp-gear-category-nav a:focus-visible,
.section-subnav-gear a:focus-visible{
  outline:3px solid var(--orange);
  outline-offset:5px;
  border-radius:4px;
}

.gp-product-detail-page,
.inner-page-main{
  position:relative;
  z-index:1;
}

body.single-product .gp-product-detail-page{
  scroll-margin-top:calc(var(--gp-subnav-top,82px) + 58px);
}

body.gp-shop-stickers .gp-stickers-launch-cta{
  clear:both;
}

@media (max-width:900px){
  .section-subnav.gp-gear-category-nav,
  .section-subnav-gear{
    top:var(--gp-subnav-top,72px) !important;
  }
  body.admin-bar .section-subnav.gp-gear-category-nav,
  body.admin-bar .section-subnav-gear{
    top:var(--gp-subnav-top,118px) !important;
  }
}

@media (max-width:560px){
  .section-subnav.gp-gear-category-nav,
  .section-subnav-gear{
    top:var(--gp-subnav-top,66px) !important;
    box-shadow:0 3px 8px rgba(11,10,7,.08) !important;
  }
  body.admin-bar .section-subnav.gp-gear-category-nav,
  body.admin-bar .section-subnav-gear{
    top:var(--gp-subnav-top,112px) !important;
  }
}

/* ================================================================
   VERSION 2.15.24 — COMPACT GEAR LANDING CARDS
   Restrains only the main Gear landing-page category cards. Wide
   desktop uses a three-column row, tablet/smaller desktop uses two
   columns, and the existing one-column mobile layout is preserved.
   Product listings, product pages, navigation, and WooCommerce data
   are unchanged.
   ================================================================ */
@media (min-width:1100px){
  body.gp-shop-gear .gp-gear-page{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    align-items:stretch !important;
    gap:24px !important;
    width:min(1180px,100%) !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container{
    display:contents !important;
  }

  body.gp-shop-gear .gp-gear-page > :is(
    .eyebrow,
    .gp-shop-gear-primary,
    .section-title,
    .gp-shop-gear-secondary,
    .lead,
    .gp-shop-gear-intro
  ){
    grid-column:1 / -1 !important;
  }

  body.gp-shop-gear .gp-gear-page > .gp-feature-card,
  body.gp-shop-gear .gp-gear-page > .gp-coming-card,
  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .gp-feature-card,
  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .gp-coming-card{
    grid-column:auto !important;
    align-self:stretch !important;
    width:100% !important;
    max-width:360px !important;
    min-width:0 !important;
    height:100% !important;
    margin:0 auto !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card,
  body.gp-shop-gear .gp-gear-page .gp-feature-card.reverse{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:14px !important;
    padding:14px !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card > .wp-block-group__inner-container,
  body.gp-shop-gear .gp-gear-page .gp-feature-card.reverse > .wp-block-group__inner-container{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:14px !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card figure,
  body.gp-shop-gear .gp-gear-page .gp-feature-card.reverse figure{
    order:0 !important;
    display:block !important;
    width:100% !important;
    max-width:none !important;
    aspect-ratio:16 / 10 !important;
    margin:0 !important;
    overflow:hidden !important;
    border-radius:16px !important;
    background:var(--cream) !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card figure img,
  body.gp-shop-gear .gp-gear-page .gp-feature-card.reverse figure img{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    height:100% !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    margin:0 !important;
    object-fit:cover !important;
    object-position:center !important;
    border-radius:0 !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card figure + .wp-block-group,
  body.gp-shop-gear .gp-gear-page .gp-feature-card .wp-block-group__inner-container > .wp-block-group,
  body.gp-shop-gear .gp-gear-page .gp-feature-card.reverse figure + .wp-block-group,
  body.gp-shop-gear .gp-gear-page .gp-feature-card.reverse .wp-block-group__inner-container > .wp-block-group{
    order:1 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    padding:2px 8px 10px !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card h2{
    margin:0 0 8px !important;
    font-size:clamp(27px,2vw,32px) !important;
    line-height:.98 !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card p{
    min-height:4.2em !important;
    margin:0 auto !important;
    font-size:16px !important;
    line-height:1.4 !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card .wp-block-buttons{
    margin-top:auto !important;
    padding-top:16px !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-coming-card{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:100% !important;
    padding:30px 24px !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-coming-card > .wp-block-group__inner-container{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    height:100% !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-coming-card h2{
    margin:8px 0 12px !important;
    font-size:clamp(34px,3vw,44px) !important;
    line-height:.95 !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-coming-card p:not(.eyebrow){
    margin:0 auto 18px !important;
    font-size:16px !important;
    line-height:1.45 !important;
  }
}

@media (min-width:700px) and (max-width:1099px){
  body.gp-shop-gear .gp-gear-page{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    align-items:stretch !important;
    gap:24px !important;
    width:min(880px,100%) !important;
    max-width:880px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container{
    display:contents !important;
  }

  body.gp-shop-gear .gp-gear-page > :is(
    .eyebrow,
    .gp-shop-gear-primary,
    .section-title,
    .gp-shop-gear-secondary,
    .lead,
    .gp-shop-gear-intro
  ){
    grid-column:1 / -1 !important;
  }

  body.gp-shop-gear .gp-gear-page > .gp-feature-card,
  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .gp-feature-card{
    grid-column:auto !important;
    width:100% !important;
    max-width:420px !important;
    margin:0 auto !important;
  }

  body.gp-shop-gear .gp-gear-page > .gp-coming-card,
  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .gp-coming-card{
    grid-column:1 / -1 !important;
    width:100% !important;
    max-width:420px !important;
    margin:0 auto !important;
  }
}

/* ================================================================
   VERSION 2.15.25 — GEAR INTRO + LIVE SHIRTS CARD
   Keeps the compact category-card grid from 2.15.24, restores the
   Gear heading group as one centered full-width block, and makes the
   Shirts category card match Hats and Stickers now that Shirts are live.
   ================================================================ */
body.gp-shop-gear .gp-gear-page > .gp-gear-intro-block,
body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .gp-gear-intro-block{
  grid-column:1 / -1 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  max-width:1080px !important;
  margin:0 auto 30px !important;
  padding:0 18px !important;
  text-align:center !important;
}

body.gp-shop-gear .gp-gear-intro-block > .wp-block-group__inner-container{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
}

body.gp-shop-gear .gp-gear-intro-block .gp-shop-gear-primary,
body.gp-shop-gear .gp-gear-intro-block .gp-shop-gear-secondary,
body.gp-shop-gear .gp-gear-intro-block .gp-shop-gear-intro,
body.gp-shop-gear .gp-gear-intro-block > .eyebrow,
body.gp-shop-gear .gp-gear-intro-block > .section-title,
body.gp-shop-gear .gp-gear-intro-block > .lead{
  position:static !important;
  float:none !important;
  clear:both !important;
  grid-column:auto !important;
  width:100% !important;
  max-width:100% !important;
  transform:none !important;
  text-align:center !important;
}

body.gp-shop-gear .gp-gear-intro-block .gp-shop-gear-primary,
body.gp-shop-gear .gp-gear-intro-block > .eyebrow{
  margin:0 auto 12px !important;
}

body.gp-shop-gear .gp-gear-intro-block .gp-shop-gear-secondary,
body.gp-shop-gear .gp-gear-intro-block > .section-title{
  margin:0 auto 14px !important;
}

body.gp-shop-gear .gp-gear-intro-block .gp-shop-gear-intro,
body.gp-shop-gear .gp-gear-intro-block > .lead{
  margin:0 auto !important;
}

body.gp-shop-gear .gp-gear-page > .wp-block-shortcode,
body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .wp-block-shortcode{
  grid-column:auto !important;
  display:block !important;
  width:100% !important;
  max-width:360px !important;
  height:100% !important;
  margin:0 auto !important;
}

body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card{
  width:100% !important;
  max-width:360px !important;
  height:100% !important;
  margin:0 auto !important;
}

body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card figure img{
  object-position:center 38% !important;
}

@media (min-width:700px) and (max-width:1099px){
  body.gp-shop-gear .gp-gear-page > .wp-block-shortcode,
  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .wp-block-shortcode{
    grid-column:1 / -1 !important;
    max-width:420px !important;
  }
  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card{
    max-width:420px !important;
  }
}

@media (max-width:699px){
  body.gp-shop-gear .gp-gear-page > .gp-gear-intro-block,
  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .gp-gear-intro-block{
    margin-bottom:22px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  body.gp-shop-gear .gp-gear-page > .wp-block-shortcode,
  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .wp-block-shortcode,
  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card{
    width:100% !important;
    max-width:none !important;
  }
}

/* ================================================================
   VERSION 2.15.26 — THREE LIVE GEAR CARDS + HOVER RESTORE
   Removes the obsolete Shirts placeholder defensively and restores the
   orange lift/highlight treatment to the three live Gear category cards.
   ================================================================ */
body.gp-shop-gear .gp-gear-page .gp-coming-card{
  display:none !important;
}

body.gp-shop-gear .gp-gear-page .gp-feature-card,
body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card{
  position:relative !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  transform:translate3d(0,0,0);
  will-change:transform;
}

@media (hover:hover) and (pointer:fine){
  body.gp-shop-gear .gp-gear-page .gp-feature-card:hover,
  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card:hover{
    transform:translate3d(-4px,-4px,0) !important;
    border-color:var(--orange) !important;
    box-shadow:12px 12px 0 var(--orange) !important;
  }
}

body.gp-shop-gear .gp-gear-page .gp-feature-card:focus-within,
body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card:focus-within{
  transform:translate3d(-4px,-4px,0) !important;
  border-color:var(--orange) !important;
  box-shadow:12px 12px 0 var(--orange) !important;
}

@media (prefers-reduced-motion:reduce){
  body.gp-shop-gear .gp-gear-page .gp-feature-card,
  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card{
    transition:none !important;
  }
}

/* ================================================================
   VERSION 2.15.28 — HOMEPAGE FEATURED SHIRTS
   Adds a three-card WooCommerce-powered shirt section beneath Featured
   Hats. Section copy and the Shop All Shirts button remain editable in
   Gutenberg; product cards stay synchronized with WooCommerce.
   ================================================================ */
body.home .gp-home-featured-shirts-section,
body.front-page .gp-home-featured-shirts-section{
  margin-top:52px !important;
}

body.home .gp-home-featured-shirts-section .gp-shirts-subhead,
body.front-page .gp-home-featured-shirts-section .gp-shirts-subhead{
  max-width:760px !important;
  margin:0 auto 18px !important;
  text-align:center !important;
}

body.home .gp-home-featured-shirts-section .gp-shirts-subhead h3,
body.front-page .gp-home-featured-shirts-section .gp-shirts-subhead h3{
  color:var(--orange) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(30px,3vw,42px) !important;
  font-weight:400 !important;
  letter-spacing:.03em !important;
  line-height:1 !important;
  text-transform:uppercase !important;
}

body.home .gp-home-featured-shirts-section .gp-shirts-subhead p,
body.front-page .gp-home-featured-shirts-section .gp-shirts-subhead p{
  color:#dbcbb2 !important;
  font-size:18px !important;
  line-height:1.5 !important;
}

body.home .gp-home-featured-shirts-grid,
body.front-page .gp-home-featured-shirts-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important;
  width:min(100%,1080px) !important;
  margin:0 auto !important;
}

body.home .gp-home-featured-shirt,
body.front-page .gp-home-featured-shirt{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  height:100% !important;
  transition:transform .18s ease,box-shadow .18s ease !important;
}

body.home .gp-home-featured-shirt:hover,
body.home .gp-home-featured-shirt:focus-within,
body.front-page .gp-home-featured-shirt:hover,
body.front-page .gp-home-featured-shirt:focus-within{
  transform:translateY(-2px) !important;
  box-shadow:8px 8px 0 var(--orange) !important;
}

body.home .gp-home-featured-shirt .product-photo,
body.front-page .gp-home-featured-shirt .product-photo{
  width:100% !important;
  aspect-ratio:4 / 5 !important;
  overflow:hidden !important;
  flex:0 0 auto !important;
}

body.home .gp-home-featured-shirt .product-photo figure,
body.front-page .gp-home-featured-shirt .product-photo figure{
  width:100% !important;
  height:100% !important;
  margin:0 !important;
}

body.home .gp-home-featured-shirt .product-photo img,
body.front-page .gp-home-featured-shirt .product-photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

body.home .gp-home-featured-shirt .product-body,
body.front-page .gp-home-featured-shirt .product-body{
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  min-height:0 !important;
}

body.home .gp-home-featured-shirt .product-body > h3,
body.front-page .gp-home-featured-shirt .product-body > h3,
body.home .gp-home-featured-shirt .price,
body.front-page .gp-home-featured-shirt .price,
body.home .gp-home-featured-shirt .small-btn,
body.home .gp-home-featured-shirt .small-btn a,
body.front-page .gp-home-featured-shirt .small-btn,
body.front-page .gp-home-featured-shirt .small-btn a{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-weight:400 !important;
}

body.home .gp-home-featured-shirt .product-body > h3,
body.front-page .gp-home-featured-shirt .product-body > h3{
  font-size:clamp(21px,2vw,27px) !important;
}

body.home .gp-home-featured-shirt .buy,
body.front-page .gp-home-featured-shirt .buy{
  margin-top:auto !important;
  padding-top:18px !important;
}

body.home .gp-home-featured-shirt .price,
body.front-page .gp-home-featured-shirt .price{
  color:var(--orange) !important;
  letter-spacing:.025em !important;
  margin:0 !important;
}

body.home .gp-home-featured-shirt .gp-home-product-card-link,
body.front-page .gp-home-featured-shirt .gp-home-product-card-link{
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  border-radius:24px !important;
}

body.home .gp-home-featured-shirt .small-btn,
body.home .gp-home-featured-shirt .small-btn a,
body.front-page .gp-home-featured-shirt .small-btn,
body.front-page .gp-home-featured-shirt .small-btn a{
  position:relative !important;
  z-index:3 !important;
}

body.home .gp-shop-shirts-cta,
body.front-page .gp-shop-shirts-cta{
  margin:28px auto 8px !important;
}

.gp-featured-shirts-editor{
  padding:28px;
  border:2px dashed #b9712f;
  border-radius:18px;
  background:#fff8e9;
  color:#0b0a07;
}
.gp-featured-shirts-editor strong{
  display:block;
  margin-bottom:8px;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:24px;
  text-transform:uppercase;
}
.gp-featured-shirts-editor p{margin:0;}

@media (max-width:980px){
  body.home .gp-home-featured-shirts-grid,
  body.front-page .gp-home-featured-shirts-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    width:min(100%,760px) !important;
  }
}

@media (max-width:620px){
  body.home .gp-home-featured-shirts-section,
  body.front-page .gp-home-featured-shirts-section{
    margin-top:38px !important;
  }
  body.home .gp-home-featured-shirts-grid,
  body.front-page .gp-home-featured-shirts-grid{
    grid-template-columns:1fr !important;
    width:min(100%,520px) !important;
  }
  body.home .gp-home-featured-shirts-section .gp-shirts-subhead p,
  body.front-page .gp-home-featured-shirts-section .gp-shirts-subhead p{
    font-size:16px !important;
  }
}

/* ================================================================
   VERSION 2.15.29 — HOMEPAGE SHOP ALL SHIRTS BUTTON
   Match the Featured Shirts collection button to Shop All Hats.
   ================================================================ */
body.home .gp-shop-shirts-cta .wp-block-button__link,
body.front-page .gp-shop-shirts-cta .wp-block-button__link{
  min-width:170px !important;
  text-align:center !important;
  background:var(--paper) !important;
  color:var(--black) !important;
  border:2px solid var(--paper) !important;
  border-radius:999px !important;
  box-shadow:6px 6px 0 var(--orange) !important;
}

@media(max-width:560px){
  body.home .gp-shop-shirts-cta .wp-block-button,
  body.front-page .gp-shop-shirts-cta .wp-block-button{
    width:auto !important;
  }
  body.home .gp-shop-shirts-cta .wp-block-button__link,
  body.front-page .gp-shop-shirts-cta .wp-block-button__link{
    width:auto !important;
  }
}


/* ================================================================
   VERSION 2.15.30 — ALL GEAR CATEGORY NAVIGATION
   Adds a direct All Gear link to the shared category bar on Gear,
   Hats, Stickers, Shirts, and product pages. The Gear page marks it
   active, while product pages continue to highlight their category.
   ================================================================ */
.section-subnav-gear{
  grid-template-columns:repeat(4,minmax(0,auto));
}

@media (max-width:900px){
  .section-subnav-gear{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:0 !important;
    justify-content:stretch !important;
    overflow:visible !important;
  }
  .section-subnav-gear a{
    min-width:0 !important;
    padding-left:4px !important;
    padding-right:4px !important;
    font-size:clamp(10px,2.4vw,13px) !important;
    letter-spacing:.035em !important;
  }
}

@media (max-width:430px){
  .section-subnav-gear a{
    font-size:clamp(9px,2.7vw,12px) !important;
    letter-spacing:.02em !important;
  }
}


/* ================================================================
   VERSION 2.15.31 — GEAR LANDING PAGE NAV CLEANUP
   Removes the redundant category navigation from the main Gear &
   Provisions overview while preserving All Gear / Hats / Stickers /
   Shirts on category pages and individual product pages.
   ================================================================ */


/* ================================================================
   VERSION 2.15.32 — GEAR OVERVIEW CATEGORY LINKS
   Restores Hats / Stickers / Shirts beneath the main Gear overview,
   while keeping All Gear as the first link everywhere below it.
   ================================================================ */
.section-subnav-gear.gp-gear-overview-nav{
  display:flex !important;
  grid-template-columns:none !important;
  justify-content:center !important;
  gap:34px !important;
}

@media (max-width:900px){
  .section-subnav-gear.gp-gear-overview-nav{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:0 !important;
  }
}

/* ================================================================
   VERSION 2.15.33 — MOBILE GEAR + HOMEPAGE SPACING
   Gives the Gear-page Shirts card clearer separation from Stickers,
   centers its copy and button on phones, and adds breathing room below
   the homepage Shop All Shirts button before the Stickers panel.
   Desktop and tablet layouts are unchanged.
   ================================================================ */
@media (max-width:699px){
  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card{
    align-self:center !important;
    margin:34px auto 0 !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card > .wp-block-group,
  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card > .wp-block-group__inner-container > .wp-block-group{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card h2,
  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card p{
    width:100% !important;
    max-width:34rem !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card .wp-block-buttons{
    display:flex !important;
    width:100% !important;
    justify-content:center !important;
    margin:18px auto 0 !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-gear-shirts-card .wp-block-button{
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

@media (max-width:620px){
  body.home .gp-home-featured-shirts-section,
  body.front-page .gp-home-featured-shirts-section{
    margin-bottom:48px !important;
  }

  body.home .gp-shop-shirts-cta,
  body.front-page .gp-shop-shirts-cta{
    margin-top:32px !important;
    margin-bottom:0 !important;
  }
}

/* ================================================================
   VERSION 2.15.36 — TABLET PORTRAIT + LANDSCAPE HOMEPAGE SLOGAN FONT
   Use width for portrait/smaller tablets and touch capability for
   desktop-sized iPad landscape viewports. Phone and true desktop
   styling remain unchanged.
   ================================================================ */
@media (min-width:561px) and (max-width:1100px){
  .hero .hero-title > .hero-live,
  .hero .hero-title > .hero-work,
  .hero .wp-block-heading.hero-live,
  .hero .wp-block-heading.hero-work{
    font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
    font-weight:400 !important;
  }
}

@media (min-width:901px) and (max-width:1600px) and (any-pointer:coarse){
  .hero .hero-title > .hero-live,
  .hero .hero-title > .hero-work,
  .hero .wp-block-heading.hero-live,
  .hero .wp-block-heading.hero-work{
    font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
    font-weight:400 !important;
  }
}

/* ================================================================
   VERSION 2.15.37 — CENTER ODD FEATURED SHIRT ON TABLET PORTRAIT
   Keeps the first two featured shirts side by side and centers an odd
   final card beneath them at the same width. Mobile and wider layouts
   remain unchanged.
   ================================================================ */
@media (min-width:621px) and (max-width:980px){
  body.home .gp-home-featured-shirts-grid,
  body.front-page .gp-home-featured-shirts-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }

  body.home .gp-home-featured-shirts-grid > .gp-home-featured-shirt,
  body.front-page .gp-home-featured-shirts-grid > .gp-home-featured-shirt{
    grid-column:span 2;
  }

  body.home .gp-home-featured-shirts-grid > .gp-home-featured-shirt:last-child:nth-child(odd),
  body.front-page .gp-home-featured-shirts-grid > .gp-home-featured-shirt:last-child:nth-child(odd){
    grid-column:2 / span 2;
  }
}

/* ================================================================
   VERSION 2.15.38 — MOBILE HOMEPAGE FOOTER ALIGNMENT
   Centers the logo and motto in a vertical stack, then places Privacy
   Policy and Shipping & Returns side by side on one centered row.
   Tablet and desktop footer layouts remain unchanged.
   ================================================================ */
@media (max-width:560px){
  body.home .footer,
  body.front-page .footer{
    display:grid !important;
    grid-template-columns:max-content max-content !important;
    justify-content:center !important;
    align-items:center !important;
    column-gap:20px !important;
    row-gap:18px !important;
    padding:38px 22px 40px !important;
    text-align:center !important;
  }

  body.home .footer > .footer-logo,
  body.front-page .footer > .footer-logo{
    grid-column:1 / -1 !important;
    justify-self:center !important;
    margin:0 !important;
  }

  body.home .footer > .footer-logo img,
  body.front-page .footer > .footer-logo img{
    display:block;
    margin:0 auto;
  }

  body.home .footer > p,
  body.front-page .footer > p{
    grid-column:1 / -1 !important;
    justify-self:center !important;
    width:100% !important;
    max-width:340px;
    margin:0 !important;
    text-align:center !important;
    line-height:1.35;
  }

  body.home .footer .gp-footer-privacy,
  body.home .footer .gpc-sr-footer-fallback,
  body.front-page .footer .gp-footer-privacy,
  body.front-page .footer .gpc-sr-footer-fallback{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    justify-self:center !important;
    color:#d6c6ad !important;
    font-family:inherit;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    line-height:1.3 !important;
    text-align:center !important;
    text-transform:uppercase !important;
    text-decoration:underline !important;
    text-decoration-thickness:1px !important;
    text-underline-offset:4px !important;
    white-space:nowrap;
  }

  body.home .footer .gp-footer-privacy,
  body.front-page .footer .gp-footer-privacy{
    grid-column:1;
  }

  body.home .footer .gpc-sr-footer-fallback,
  body.front-page .footer .gpc-sr-footer-fallback{
    grid-column:2;
    display:inline-flex !important;
    align-items:center;
  }

  body.home .footer .gpc-sr-footer-separator,
  body.front-page .footer .gpc-sr-footer-separator{
    display:none !important;
  }
}

/* ================================================================
   VERSION 2.15.39 — CENTER SHIRTS CARD ON GEAR TABLET PORTRAIT
   Keeps Hats and Stickers side by side, then centers the Shirts card
   beneath them at the same card width. Phone and landscape/desktop
   layouts remain unchanged.
   ================================================================ */
@media (min-width:700px) and (max-width:1099px) and (orientation:portrait){
  body.gp-shop-gear .gp-gear-page > .gp-gear-shirts-card,
  body.gp-shop-gear .gp-gear-page > .wp-block-group__inner-container > .gp-gear-shirts-card{
    grid-column:1 / -1 !important;
    justify-self:center !important;
    width:100% !important;
    max-width:420px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}


/* ================================================================
   VERSION 2.15.40 — TERMS & CONDITIONS PAGE + LEGAL FOOTER LINKS
   Creates a branded, Gutenberg-editable Terms page and adds it to the
   footer and WooCommerce checkout without changing the main navigation.
   ================================================================ */
.footer .gp-footer-terms,
.footer .gp-footer-legal-separator{
  color:#d6c6ad;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.footer .gp-footer-terms{
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}
.footer .gp-footer-terms:hover{color:var(--paper)}
.footer .gp-footer-legal-separator{opacity:.7}

.gp-legal-footer-links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
}
.gp-terms-page strong{color:var(--black)}

@media(max-width:560px){
  .gp-legal-footer-links{
    justify-content:center;
    gap:12px 18px;
  }

  body.home .footer .gp-footer-terms,
  body.front-page .footer .gp-footer-terms{
    grid-column:1 / -1 !important;
    justify-self:center !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    color:#d6c6ad !important;
    font-family:inherit;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.08em !important;
    line-height:1.3 !important;
    text-align:center !important;
    text-transform:uppercase !important;
    text-decoration:underline !important;
    text-decoration-thickness:1px !important;
    text-underline-offset:4px !important;
    white-space:nowrap;
  }

  body.home .footer .gp-footer-legal-separator,
  body.front-page .footer .gp-footer-legal-separator{
    display:none !important;
  }
}

/* ================================================================
   VERSION 2.15.41 — DESKTOP SHIPPING & RETURNS FOOTER MATCH
   Matches Shipping & Returns to the existing Privacy Policy and Terms
   links on non-phone layouts. Phone footer styling remains unchanged.
   ================================================================ */
@media (min-width:561px){
  body.home .footer .gpc-sr-footer-fallback,
  body.front-page .footer .gpc-sr-footer-fallback,
  body.home .footer .gpc-sr-footer-fallback a,
  body.front-page .footer .gpc-sr-footer-fallback a{
    color:#d6c6ad !important;
    font-family:inherit;
    font-size:12px !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    line-height:1.3 !important;
    text-transform:uppercase !important;
    text-decoration:underline !important;
    text-decoration-thickness:1px !important;
    text-underline-offset:4px !important;
    white-space:nowrap;
  }

  body.home .footer .gpc-sr-footer-fallback:hover,
  body.front-page .footer .gpc-sr-footer-fallback:hover,
  body.home .footer .gpc-sr-footer-fallback a:hover,
  body.front-page .footer .gpc-sr-footer-fallback a:hover{
    color:var(--paper) !important;
  }
}


/* ================================================================
   VERSION 2.15.42 — LIVE WOOCOMMERCE CART + CHECKOUT
   Dedicated templates bypass the retired placeholder while keeping
   cart links out of the public navigation until launch.
   ================================================================ */
body.woocommerce-cart,
body.woocommerce-checkout{
  background:var(--cream) !important;
}

.gp-commerce-page{
  min-height:62vh;
  background:var(--cream);
}

section.gp-commerce-shell{
  width:min(1180px,100%);
  margin:0 auto;
  padding:68px 24px 92px;
}

.gp-commerce-header{
  max-width:760px;
  margin:0 auto 34px;
  text-align:center;
}

.gp-commerce-eyebrow{
  margin:0 0 12px;
  color:var(--brown);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:13px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.gp-commerce-header h1{
  margin:0;
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:clamp(54px,8vw,94px);
  font-weight:400;
  letter-spacing:.03em;
  line-height:.9;
  text-transform:uppercase;
}

.gp-commerce-header > p:last-child{
  max-width:640px;
  margin:22px auto 0;
  color:#574b3e;
  font-size:18px;
  line-height:1.55;
}

.gp-commerce-card{
  width:100%;
  padding:34px;
  border:3px solid var(--black);
  border-radius:28px;
  background:var(--paper);
  box-shadow:10px 10px 0 var(--orange);
}

.gp-commerce-card .woocommerce{
  width:100%;
}

.gp-commerce-card .woocommerce-notices-wrapper:empty{
  display:none;
}

.gp-commerce-card .woocommerce-message,
.gp-commerce-card .woocommerce-info,
.gp-commerce-card .woocommerce-error{
  margin:0 0 24px !important;
  padding:16px 18px 16px 50px !important;
  border:2px solid var(--black) !important;
  border-top-width:2px !important;
  border-radius:14px !important;
  background:var(--cream) !important;
  color:var(--black) !important;
  line-height:1.45 !important;
}

.gp-commerce-card .woocommerce-message::before,
.gp-commerce-card .woocommerce-info::before,
.gp-commerce-card .woocommerce-error::before{
  color:var(--brown) !important;
  top:16px !important;
}

.gp-commerce-card table.shop_table{
  width:100%;
  margin:0 0 28px !important;
  border:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:transparent !important;
}

.gp-commerce-card table.shop_table th,
.gp-commerce-card table.shop_table td{
  padding:16px 14px !important;
  border:0 !important;
  border-bottom:1px solid rgba(11,10,7,.18) !important;
  background:transparent !important;
  vertical-align:middle !important;
}

.gp-commerce-card table.shop_table th{
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:13px !important;
  font-weight:400 !important;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.gp-commerce-card table.shop_table td{
  color:#3f352b !important;
  font-size:16px !important;
}

.gp-commerce-card table.shop_table .product-name a{
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:17px;
  letter-spacing:.02em;
}

.gp-commerce-card table.shop_table .product-thumbnail img{
  width:82px !important;
  height:82px !important;
  border:2px solid var(--black);
  border-radius:14px;
  object-fit:cover;
}

.gp-commerce-card a.remove{
  display:inline-grid !important;
  width:30px !important;
  height:30px !important;
  place-items:center;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  color:var(--black) !important;
  font-size:20px !important;
  line-height:1 !important;
}

.gp-commerce-card a.remove:hover{
  background:var(--orange) !important;
  color:var(--black) !important;
}

.gp-commerce-card input.input-text,
.gp-commerce-card input[type="text"],
.gp-commerce-card input[type="email"],
.gp-commerce-card input[type="tel"],
.gp-commerce-card input[type="number"],
.gp-commerce-card input[type="password"],
.gp-commerce-card select,
.gp-commerce-card textarea,
.gp-commerce-card .select2-container .select2-selection--single{
  min-height:48px !important;
  padding:10px 13px !important;
  border:2px solid var(--black) !important;
  border-radius:12px !important;
  background:#fffdf6 !important;
  color:var(--black) !important;
  font:inherit !important;
  box-shadow:none !important;
}

.gp-commerce-card textarea{
  min-height:120px !important;
}

.gp-commerce-card .select2-container .select2-selection--single .select2-selection__rendered{
  padding:0 !important;
  line-height:24px !important;
}

.gp-commerce-card .select2-container .select2-selection--single .select2-selection__arrow{
  top:10px !important;
  right:9px !important;
}

.gp-commerce-card .quantity .qty{
  width:76px !important;
  text-align:center;
}

.gp-commerce-card button.button,
.gp-commerce-card a.button,
.gp-commerce-card input.button,
.gp-commerce-card #place_order,
.gp-commerce-card .wc-backward{
  min-height:48px !important;
  padding:12px 18px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--black) !important;
  color:var(--paper) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:13px !important;
  font-weight:400 !important;
  letter-spacing:.07em !important;
  line-height:1.1 !important;
  text-transform:uppercase !important;
  box-shadow:none !important;
}

.gp-commerce-card button.button:hover,
.gp-commerce-card a.button:hover,
.gp-commerce-card input.button:hover,
.gp-commerce-card #place_order:hover,
.gp-commerce-card .wc-backward:hover{
  transform:translateY(-2px);
  background:var(--orange) !important;
  color:var(--black) !important;
}

.gp-commerce-card .coupon{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.gp-commerce-card .coupon .input-text{
  width:min(250px,100%) !important;
  margin:0 !important;
}

.gp-commerce-card .cart-collaterals{
  display:flex;
  justify-content:flex-end;
}

.gp-commerce-card .cart_totals{
  width:min(520px,100%) !important;
  float:none !important;
  padding:26px;
  border:2px solid var(--black);
  border-radius:20px;
  background:var(--cream);
}

.gp-commerce-card .cart_totals h2,
.gp-commerce-card .woocommerce-billing-fields h3,
.gp-commerce-card .woocommerce-shipping-fields h3,
.gp-commerce-card #order_review_heading,
.gp-commerce-card .woocommerce-order-details__title,
.gp-commerce-card .woocommerce-column__title{
  margin:0 0 20px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(25px,3vw,36px) !important;
  font-weight:400 !important;
  line-height:1 !important;
  text-transform:uppercase !important;
}

.gp-commerce-card .wc-proceed-to-checkout{
  padding:18px 0 0 !important;
}

.gp-commerce-card .wc-proceed-to-checkout a.checkout-button{
  display:flex !important;
  width:100%;
  justify-content:center;
  margin:0 !important;
  background:var(--orange) !important;
  color:var(--black) !important;
}

.gp-commerce-card form.checkout.woocommerce-checkout{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);
  gap:34px;
}

.gp-commerce-card form.checkout.woocommerce-checkout > #customer_details,
.gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading,
.gp-commerce-card form.checkout.woocommerce-checkout > #order_review{
  width:100% !important;
  float:none !important;
}

.gp-commerce-card form.checkout.woocommerce-checkout > #customer_details{
  grid-row:1 / span 2;
}

.gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading{
  align-self:end;
  margin-bottom:-14px !important;
}

.gp-commerce-card .col2-set,
.gp-commerce-card .col2-set .col-1,
.gp-commerce-card .col2-set .col-2{
  width:100% !important;
  float:none !important;
}

.gp-commerce-card .woocommerce-billing-fields__field-wrapper,
.gp-commerce-card .woocommerce-shipping-fields__field-wrapper{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 14px;
}

.gp-commerce-card .form-row{
  width:100% !important;
  float:none !important;
  margin:0 0 16px !important;
  padding:0 !important;
}

.gp-commerce-card .form-row-wide,
.gp-commerce-card #billing_address_1_field,
.gp-commerce-card #billing_address_2_field,
.gp-commerce-card #shipping_address_1_field,
.gp-commerce-card #shipping_address_2_field,
.gp-commerce-card #order_comments_field{
  grid-column:1 / -1;
}

.gp-commerce-card .form-row label{
  display:block;
  margin:0 0 7px;
  color:var(--black);
  font-weight:700;
}

.gp-commerce-card #order_review{
  padding:24px;
  border:2px solid var(--black);
  border-radius:20px;
  background:var(--cream);
}

.gp-commerce-card #payment{
  border:0 !important;
  border-radius:16px !important;
  background:#efe2ca !important;
}

.gp-commerce-card #payment ul.payment_methods{
  padding:18px !important;
  border-bottom:1px solid rgba(11,10,7,.18) !important;
}

.gp-commerce-card #payment div.payment_box{
  background:var(--paper) !important;
  color:#3f352b !important;
}

.gp-commerce-card #payment div.payment_box::before{
  border-bottom-color:var(--paper) !important;
}

.gp-commerce-card #payment .place-order{
  padding:18px !important;
}

.gp-commerce-card #place_order{
  width:100%;
  background:var(--orange) !important;
  color:var(--black) !important;
}

.gp-commerce-card .woocommerce-privacy-policy-text,
.gp-commerce-card .woocommerce-terms-and-conditions-checkbox-text,
.gp-commerce-card .woocommerce-form__label-for-checkbox{
  color:#574b3e !important;
  font-size:14px;
  line-height:1.5;
}

.gp-commerce-card .woocommerce-privacy-policy-text a,
.gp-commerce-card .woocommerce-terms-and-conditions-checkbox-text a{
  color:var(--brown) !important;
  text-decoration:underline !important;
  text-underline-offset:3px;
}

.gp-commerce-card .woocommerce-order-overview{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:0 0 30px !important;
  padding:0 !important;
}

.gp-commerce-card .woocommerce-order-overview li{
  margin:0 !important;
  padding:14px !important;
  border:1px solid rgba(11,10,7,.2) !important;
  border-radius:12px;
}

@media (max-width:900px){
  .gp-commerce-card form.checkout.woocommerce-checkout{
    display:block;
  }
  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading{
    margin-top:34px !important;
    margin-bottom:20px !important;
  }
  .gp-commerce-card .woocommerce-order-overview{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:680px){
  section.gp-commerce-shell{
    padding:48px 14px 70px;
  }
  .gp-commerce-card{
    padding:18px 14px;
    border-radius:20px;
    box-shadow:6px 6px 0 var(--orange);
  }
  .gp-commerce-header{
    margin-bottom:26px;
  }
  .gp-commerce-header > p:last-child{
    font-size:16px;
  }
  .gp-commerce-card table.shop_table_responsive thead{
    display:none;
  }
  .gp-commerce-card table.shop_table_responsive tr{
    display:block;
    margin-bottom:18px;
    padding:10px;
    border:2px solid var(--black);
    border-radius:16px;
  }
  .gp-commerce-card table.shop_table_responsive td{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:11px 8px !important;
    text-align:right !important;
  }
  .gp-commerce-card table.shop_table_responsive td::before{
    float:none !important;
    color:var(--black);
    font-weight:700;
    text-align:left;
  }
  .gp-commerce-card table.shop_table_responsive td.product-thumbnail{
    display:none !important;
  }
  .gp-commerce-card table.shop_table_responsive td.product-remove{
    justify-content:flex-end;
  }
  .gp-commerce-card table.shop_table_responsive td.actions{
    display:block !important;
    text-align:left !important;
  }
  .gp-commerce-card .coupon{
    display:grid;
    grid-template-columns:1fr;
  }
  .gp-commerce-card .coupon .input-text,
  .gp-commerce-card .coupon .button,
  .gp-commerce-card td.actions > .button{
    width:100% !important;
  }
  .gp-commerce-card .woocommerce-billing-fields__field-wrapper,
  .gp-commerce-card .woocommerce-shipping-fields__field-wrapper{
    display:block;
  }
  .gp-commerce-card #order_review,
  .gp-commerce-card .cart_totals{
    padding:18px 14px;
  }
  .gp-commerce-card .woocommerce-order-overview{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   2.15.43 — Stacked checkout + Join the Pack opt-in
   Keeps checkout easier to scan on desktop by placing the
   order review below customer details, matching mobile flow.
   ========================================================= */

/* Use one clear vertical checkout flow at every screen size. */
.gp-commerce-card form.checkout.woocommerce-checkout{
  display:block;
}

.gp-commerce-card form.checkout.woocommerce-checkout > #customer_details,
.gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading,
.gp-commerce-card form.checkout.woocommerce-checkout > #order_review{
  width:100% !important;
  max-width:none !important;
  float:none !important;
}

.gp-commerce-card form.checkout.woocommerce-checkout > #customer_details{
  margin:0 !important;
}

.gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading{
  margin:44px 0 20px !important;
}

.gp-commerce-card form.checkout.woocommerce-checkout > #order_review{
  margin:0 !important;
}

/* Brand the MailPoet checkout opt-in without changing its consent text. */
.gp-commerce-card #mailpoet_woocommerce_checkout_optin_field,
.gp-commerce-card .mailpoet_woocommerce_checkout_optin{
  grid-column:1 / -1;
  margin-top:8px !important;
  padding-top:22px !important;
  border-top:1px solid rgba(11,10,7,.18);
}

.gp-commerce-card #mailpoet_woocommerce_checkout_optin_field::before,
.gp-commerce-card .mailpoet_woocommerce_checkout_optin::before{
  content:"JOIN THE PACK!";
  display:block;
  margin:0 0 10px;
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:clamp(20px,2.4vw,28px);
  font-weight:400;
  letter-spacing:.035em;
  line-height:1;
  text-transform:uppercase;
}

.gp-commerce-card #mailpoet_woocommerce_checkout_optin_field label,
.gp-commerce-card .mailpoet_woocommerce_checkout_optin label{
  display:flex !important;
  align-items:flex-start;
  gap:9px;
  margin:0 !important;
  color:#574b3e !important;
  font-size:15px;
  font-weight:400 !important;
  line-height:1.5;
}

.gp-commerce-card #mailpoet_woocommerce_checkout_optin_field input[type="checkbox"],
.gp-commerce-card .mailpoet_woocommerce_checkout_optin input[type="checkbox"]{
  flex:0 0 auto;
  margin-top:4px !important;
}

@media (max-width:680px){
  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading{
    margin-top:34px !important;
  }

  .gp-commerce-card #mailpoet_woocommerce_checkout_optin_field,
  .gp-commerce-card .mailpoet_woocommerce_checkout_optin{
    padding-top:18px !important;
  }
}



/* =========================================================
   2.15.44 — Desktop checkout columns + reliable opt-in heading
   Restores the compact two-column desktop checkout while keeping
   mobile stacked. The Join the Pack heading is inserted by a small
   checkout helper so it survives WooCommerce checkout refreshes.
   ========================================================= */

/* The helper adds this class to the actual MailPoet opt-in row. */
.gp-commerce-card .gp-checkout-mailpoet-optin{
  margin:0 0 30px !important;
  padding:0 !important;
  border:0 !important;
}

.gp-commerce-card .gp-checkout-join-heading{
  margin:24px 0 10px !important;
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(21px,2.1vw,28px) !important;
  font-weight:400 !important;
  letter-spacing:.035em;
  line-height:1 !important;
  text-transform:uppercase;
}

.gp-commerce-card .gp-checkout-mailpoet-optin label{
  display:flex !important;
  align-items:flex-start;
  gap:9px;
  margin:0 !important;
  color:#574b3e !important;
  font-size:15px;
  font-weight:400 !important;
  line-height:1.5;
}

.gp-commerce-card .gp-checkout-mailpoet-optin input[type="checkbox"]{
  flex:0 0 auto;
  margin-top:4px !important;
}

.gp-commerce-card #ship-to-different-address{
  margin-top:8px !important;
}

@media (min-width:901px){
  .gp-commerce-card form.checkout.woocommerce-checkout{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);
    gap:34px;
    align-items:start;
  }

  .gp-commerce-card form.checkout.woocommerce-checkout > #customer_details,
  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading,
  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review{
    width:100% !important;
    max-width:none !important;
    float:none !important;
  }

  .gp-commerce-card form.checkout.woocommerce-checkout > #customer_details{
    grid-column:1;
    grid-row:1 / span 2;
    margin:0 !important;
  }

  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading{
    grid-column:2;
    grid-row:1;
    align-self:end;
    margin:0 0 20px !important;
  }

  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review{
    grid-column:2;
    grid-row:2;
    margin:0 !important;
  }
}

@media (max-width:900px){
  .gp-commerce-card form.checkout.woocommerce-checkout{
    display:block;
  }

  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading{
    margin:34px 0 20px !important;
  }
}


/* =========================================================
   2.15.45 — Checkout heading alignment + inline pack opt-in
   Keeps Billing Details and Your Order level on desktop, and
   places the Join the Pack invitation inside the consent line.
   ========================================================= */

/* Retire the earlier standalone opt-in headings. */
.gp-commerce-card .gp-checkout-join-heading{
  display:none !important;
}

.gp-commerce-card #mailpoet_woocommerce_checkout_optin_field::before,
.gp-commerce-card .mailpoet_woocommerce_checkout_optin::before,
.gp-commerce-card .gp-checkout-mailpoet-optin::before{
  content:none !important;
  display:none !important;
}

/* The invitation belongs in the checkbox sentence, not above Billing Details. */
.gp-commerce-card .gp-checkout-mailpoet-optin{
  margin:0 0 30px !important;
  padding:0 !important;
  border:0 !important;
}

.gp-commerce-card .gp-checkout-mailpoet-optin label{
  display:flex !important;
  align-items:flex-start;
  flex-wrap:wrap;
  column-gap:7px;
  row-gap:2px;
  margin:0 !important;
  color:#574b3e !important;
  font-size:15px;
  font-weight:400 !important;
  line-height:1.5;
}

.gp-commerce-card .gp-checkout-mailpoet-optin input[type="checkbox"]{
  flex:0 0 auto;
  margin:4px 0 0 !important;
}

.gp-commerce-card .gp-checkout-join-inline{
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:15px;
  font-weight:400;
  letter-spacing:.025em;
  line-height:1.5;
  text-transform:uppercase;
  white-space:nowrap;
}

@media (min-width:901px){
  .gp-commerce-card form.checkout.woocommerce-checkout{
    grid-template-rows:auto 1fr;
    align-items:start;
  }

  .gp-commerce-card form.checkout.woocommerce-checkout > #customer_details{
    grid-column:1;
    grid-row:1 / span 2;
    align-self:start;
  }

  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review_heading{
    grid-column:2;
    grid-row:1;
    align-self:start !important;
    margin:0 0 20px !important;
  }

  .gp-commerce-card form.checkout.woocommerce-checkout > #order_review{
    grid-column:2;
    grid-row:2;
    align-self:start;
    margin:0 !important;
  }
}

@media (max-width:680px){
  .gp-commerce-card .gp-checkout-mailpoet-optin label{
    column-gap:6px;
  }
}

/* ================================================================
   VERSION 2.15.47 — COHESIVE WOOCOMMERCE MY ACCOUNT
   Locks the WooCommerce account output into a dependable two-column
   desktop panel, keeps navigation and endpoint content aligned at the
   same height, and stacks cleanly on smaller screens.
   ================================================================ */
body.gp-account-body{
  background:var(--cream) !important;
}

.gp-account-main{
  min-height:62vh;
  background:var(--cream);
}

.gp-account-shell{
  width:min(1160px,100%);
  margin:0 auto;
  padding:52px 24px 86px;
}

.gp-account-header{
  max-width:760px;
  margin:0 auto 30px;
  text-align:center;
}

.gp-account-eyebrow{
  margin:0 0 9px;
  color:var(--brown);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:13px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.gp-account-header h1{
  margin:0;
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:clamp(48px,6vw,76px);
  font-weight:400;
  letter-spacing:.025em;
  line-height:.92;
  text-transform:uppercase;
}

.gp-account-header > p:last-child{
  max-width:650px;
  margin:17px auto 0;
  color:#574b3e;
  font-size:17px;
  line-height:1.5;
}

.gp-account-stage{
  width:100%;
}

.gp-account-stage > .woocommerce{
  width:100%;
}

.gp-account-stage .woocommerce-notices-wrapper:empty{
  display:none;
}

.gp-account-stage .woocommerce-message,
.gp-account-stage .woocommerce-info,
.gp-account-stage .woocommerce-error{
  margin:0 0 20px !important;
  padding:15px 18px 15px 48px !important;
  border:2px solid var(--black) !important;
  border-top-width:2px !important;
  border-radius:14px !important;
  background:var(--paper) !important;
  color:var(--black) !important;
  line-height:1.45 !important;
}

.gp-account-stage .woocommerce-message::before,
.gp-account-stage .woocommerce-info::before,
.gp-account-stage .woocommerce-error::before{
  color:var(--brown) !important;
  top:15px !important;
}

/* One cohesive account panel on desktop. */
body.gp-account-logged-in .gp-account-stage{
  padding:22px;
  border:3px solid var(--black);
  border-radius:28px;
  background:var(--paper);
  box-shadow:10px 10px 0 var(--orange);
}

body.gp-account-logged-in .gp-account-stage > .woocommerce{
  display:grid !important;
  grid-template-columns:minmax(220px,250px) minmax(0,1fr) !important;
  grid-template-areas:
    "notice notice"
    "nav content" !important;
  gap:22px !important;
  align-items:stretch !important;
  margin:0 !important;
}

body.gp-account-logged-in .gp-account-stage .woocommerce-notices-wrapper{
  grid-area:notice;
  min-width:0;
}

.gp-account-stage .woocommerce-MyAccount-navigation{
  grid-area:nav;
  align-self:stretch;
  width:auto !important;
  min-width:0 !important;
  float:none !important;
  margin:0 !important;
  padding:15px !important;
  border:2px solid var(--black);
  border-radius:19px;
  background:var(--black);
}

.gp-account-stage .woocommerce-MyAccount-navigation ul{
  display:grid;
  align-content:start;
  gap:8px;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.gp-account-stage .woocommerce-MyAccount-navigation li{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.gp-account-stage .woocommerce-MyAccount-navigation a{
  display:block;
  padding:13px 14px;
  border:1px solid rgba(255,248,233,.36);
  border-radius:11px;
  color:var(--paper) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:13px;
  letter-spacing:.06em;
  line-height:1.15;
  text-decoration:none !important;
  text-transform:uppercase;
  transition:background .16s ease,color .16s ease,border-color .16s ease;
}

.gp-account-stage .woocommerce-MyAccount-navigation a:hover,
.gp-account-stage .woocommerce-MyAccount-navigation .is-active a{
  border-color:var(--orange);
  background:var(--orange);
  color:var(--black) !important;
}

.gp-account-stage .woocommerce-MyAccount-content{
  grid-area:content;
  align-self:stretch;
  width:auto !important;
  min-width:0 !important;
  min-height:330px;
  float:none !important;
  margin:0 !important;
  padding:30px !important;
  border:2px solid var(--black);
  border-radius:19px;
  background:var(--cream);
  color:#3f352b;
  font-size:17px;
  line-height:1.62;
  overflow-wrap:anywhere;
}

.gp-account-stage .woocommerce-MyAccount-content > :first-child{
  margin-top:0 !important;
}

.gp-account-stage .woocommerce-MyAccount-content > :last-child{
  margin-bottom:0 !important;
}

.gp-account-stage .woocommerce-MyAccount-content h2,
.gp-account-stage .woocommerce-MyAccount-content h3,
.gp-account-stage .woocommerce-Address-title h3{
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-weight:400;
  letter-spacing:.025em;
  line-height:1;
  text-transform:uppercase;
}

.gp-account-stage .woocommerce-MyAccount-content h2{
  font-size:clamp(30px,4vw,46px);
}

.gp-account-stage .woocommerce-MyAccount-content a:not(.button){
  color:var(--brown);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

/* Tables, addresses, forms, and buttons inside account endpoints. */
.gp-account-stage table.shop_table,
.gp-account-stage table.woocommerce-orders-table{
  width:100%;
  margin:20px 0 0 !important;
  border:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:transparent !important;
}

.gp-account-stage table.shop_table th,
.gp-account-stage table.shop_table td,
.gp-account-stage table.woocommerce-orders-table th,
.gp-account-stage table.woocommerce-orders-table td{
  padding:14px 12px !important;
  border:0 !important;
  border-bottom:1px solid rgba(11,10,7,.18) !important;
  background:transparent !important;
}

.gp-account-stage table.shop_table th,
.gp-account-stage table.woocommerce-orders-table th{
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:12px;
  font-weight:400;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.gp-account-stage .u-columns.woocommerce-Addresses{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:24px;
}

.gp-account-stage .woocommerce-Address{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  padding:21px;
  border:2px solid var(--black);
  border-radius:17px;
  background:var(--paper);
}

.gp-account-stage input.input-text,
.gp-account-stage input[type="text"],
.gp-account-stage input[type="email"],
.gp-account-stage input[type="tel"],
.gp-account-stage input[type="password"],
.gp-account-stage select,
.gp-account-stage textarea{
  width:100%;
  min-height:48px !important;
  padding:10px 13px !important;
  border:2px solid var(--black) !important;
  border-radius:12px !important;
  background:#fffdf6 !important;
  color:var(--black) !important;
  font:inherit !important;
  box-shadow:none !important;
}

.gp-account-stage label{
  color:var(--black);
  font-weight:700;
}

.gp-account-stage button.button,
.gp-account-stage a.button,
.gp-account-stage input.button,
.gp-account-stage .woocommerce-Button{
  min-height:48px !important;
  padding:12px 18px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--black) !important;
  color:var(--paper) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:13px !important;
  font-weight:400 !important;
  letter-spacing:.07em !important;
  line-height:1.1 !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  box-shadow:none !important;
}

.gp-account-stage button.button:hover,
.gp-account-stage a.button:hover,
.gp-account-stage input.button:hover,
.gp-account-stage .woocommerce-Button:hover{
  transform:translateY(-2px);
  background:var(--orange) !important;
  color:var(--black) !important;
}

/* Logged-out account: one centered, branded login panel. */
body.gp-account-logged-out .gp-account-stage > .woocommerce{
  width:min(680px,100%);
  margin:0 auto !important;
  padding:32px !important;
  border:3px solid var(--black);
  border-radius:26px;
  background:var(--paper);
  box-shadow:9px 9px 0 var(--orange);
}

body.gp-account-logged-out .gp-account-stage .woocommerce h2{
  margin:0 0 22px;
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:clamp(36px,5vw,54px);
  font-weight:400;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
}

body.gp-account-logged-out .gp-account-stage .woocommerce-form-login{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}

body.gp-account-logged-out .gp-account-stage .woocommerce-form-login__rememberme{
  display:flex !important;
  align-items:center;
  gap:8px;
  margin:3px 0 16px !important;
}

body.gp-account-logged-out .gp-account-stage .lost_password{
  margin:18px 0 0;
  text-align:center;
}

@media (max-width:900px){
  .gp-account-shell{
    padding-top:46px;
  }

  body.gp-account-logged-in .gp-account-stage{
    padding:17px;
    box-shadow:7px 7px 0 var(--orange);
  }

  body.gp-account-logged-in .gp-account-stage > .woocommerce{
    display:block !important;
  }

  .gp-account-stage .woocommerce-MyAccount-navigation{
    margin:0 0 18px !important;
    padding:13px !important;
  }

  .gp-account-stage .woocommerce-MyAccount-navigation ul{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .gp-account-stage .woocommerce-MyAccount-content{
    min-height:0;
  }
}

@media (max-width:680px){
  .gp-account-shell{
    padding:42px 14px 66px;
  }

  .gp-account-header{
    margin-bottom:24px;
  }

  .gp-account-header h1{
    font-size:clamp(43px,15vw,62px);
  }

  .gp-account-header > p:last-child{
    font-size:16px;
  }

  body.gp-account-logged-in .gp-account-stage{
    padding:12px;
    border-radius:21px;
    box-shadow:6px 6px 0 var(--orange);
  }

  .gp-account-stage .woocommerce-MyAccount-navigation ul{
    grid-template-columns:1fr;
  }

  .gp-account-stage .woocommerce-MyAccount-content,
  body.gp-account-logged-out .gp-account-stage > .woocommerce{
    padding:21px 15px !important;
    border-radius:17px;
    box-shadow:none;
  }

  body.gp-account-logged-out .gp-account-stage > .woocommerce{
    border-radius:21px;
    box-shadow:6px 6px 0 var(--orange);
  }

  .gp-account-stage .u-columns.woocommerce-Addresses{
    grid-template-columns:1fr;
  }

  .gp-account-stage table.shop_table_responsive thead,
  .gp-account-stage table.woocommerce-orders-table_responsive thead{
    display:none;
  }

  .gp-account-stage table.shop_table_responsive tr,
  .gp-account-stage table.woocommerce-orders-table_responsive tr{
    display:block;
    margin-bottom:16px;
    padding:10px;
    border:2px solid var(--black);
    border-radius:14px;
  }

  .gp-account-stage table.shop_table_responsive td,
  .gp-account-stage table.woocommerce-orders-table_responsive td{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 7px !important;
    text-align:right !important;
  }

  .gp-account-stage table.shop_table_responsive td::before,
  .gp-account-stage table.woocommerce-orders-table_responsive td::before{
    float:none !important;
    color:var(--black);
    font-weight:700;
    text-align:left;
  }
}

/* ================================================================
   VERSION 2.15.48 — MY ACCOUNT ENDPOINT POLISH
   Keeps the approved dashboard intact while tightening the Addresses,
   Orders, Address forms, and Account Details endpoints. Desktop address
   cards align in one row; endpoint sidebars stay compact; forms and order
   tables use the same branded system without excess empty space.
   ================================================================ */

/* Endpoint pages should size to their real content instead of forcing the
   navigation panel to stretch down beside longer WooCommerce output. */
body.gp-account-address-list .gp-account-stage > .woocommerce,
body.gp-account-address-form .gp-account-stage > .woocommerce,
body.gp-account-endpoint-orders .gp-account-stage > .woocommerce,
body.gp-account-endpoint-view-order .gp-account-stage > .woocommerce,
body.gp-account-endpoint-edit-account .gp-account-stage > .woocommerce{
  align-items:start !important;
}

body.gp-account-address-list .woocommerce-MyAccount-navigation,
body.gp-account-address-form .woocommerce-MyAccount-navigation,
body.gp-account-endpoint-orders .woocommerce-MyAccount-navigation,
body.gp-account-endpoint-view-order .woocommerce-MyAccount-navigation,
body.gp-account-endpoint-edit-account .woocommerce-MyAccount-navigation{
  align-self:start !important;
}

body.gp-account-address-list .woocommerce-MyAccount-content,
body.gp-account-address-form .woocommerce-MyAccount-content,
body.gp-account-endpoint-orders .woocommerce-MyAccount-content,
body.gp-account-endpoint-view-order .woocommerce-MyAccount-content,
body.gp-account-endpoint-edit-account .woocommerce-MyAccount-content{
  align-self:start !important;
  min-height:0 !important;
}

/* Address overview: reset WooCommerce's legacy floats/column placement and
   force equal, aligned cards in normal billing-then-shipping order. */
body.gp-account-address-list .woocommerce-MyAccount-content > p:first-child{
  margin:0 0 20px !important;
}

body.gp-account-address-list .woocommerce-Addresses,
body.gp-account-address-list .u-columns.woocommerce-Addresses,
body.gp-account-address-list .col2-set.woocommerce-Addresses{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-auto-flow:row !important;
  align-items:stretch !important;
  gap:20px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

body.gp-account-address-list .woocommerce-Addresses::before,
body.gp-account-address-list .woocommerce-Addresses::after{
  display:none !important;
  content:none !important;
}

body.gp-account-address-list .woocommerce-Addresses > .woocommerce-Address,
body.gp-account-address-list .woocommerce-Addresses > .u-column1,
body.gp-account-address-list .woocommerce-Addresses > .u-column2,
body.gp-account-address-list .woocommerce-Addresses > .col-1,
body.gp-account-address-list .woocommerce-Addresses > .col-2{
  position:relative !important;
  inset:auto !important;
  grid-column:auto !important;
  grid-row:auto !important;
  place-self:stretch !important;
  float:none !important;
  clear:none !important;
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:24px !important;
  transform:none !important;
  border:2px solid var(--black) !important;
  border-radius:17px !important;
  background:var(--paper) !important;
}

body.gp-account-address-list .woocommerce-Addresses > .u-column1,
body.gp-account-address-list .woocommerce-Addresses > .col-1{
  order:1 !important;
}

body.gp-account-address-list .woocommerce-Addresses > .u-column2,
body.gp-account-address-list .woocommerce-Addresses > .col-2{
  order:2 !important;
}

body.gp-account-address-list .woocommerce-Address-title{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  flex-wrap:wrap !important;
  gap:10px 16px !important;
  width:100% !important;
  margin:0 0 18px !important;
}

body.gp-account-address-list .woocommerce-Address-title::before,
body.gp-account-address-list .woocommerce-Address-title::after{
  display:none !important;
  content:none !important;
}

body.gp-account-address-list .woocommerce-Address-title h2,
body.gp-account-address-list .woocommerce-Address-title h3{
  float:none !important;
  max-width:70% !important;
  margin:0 !important;
  font-size:clamp(28px,3.2vw,42px) !important;
  line-height:.98 !important;
}

body.gp-account-address-list .woocommerce-Address-title a,
body.gp-account-address-list .woocommerce-Address-title a.edit{
  float:none !important;
  flex:0 0 auto !important;
  margin:4px 0 0 !important;
  white-space:nowrap;
}

body.gp-account-address-list .woocommerce-Address address{
  margin:0 !important;
  color:#4b3e31;
  font-style:normal !important;
  line-height:1.55;
}

/* Orders and individual order views: compact, readable, and anchored at the
   top of the content card. */
body.gp-account-endpoint-orders .woocommerce-MyAccount-content > h2,
body.gp-account-endpoint-view-order .woocommerce-MyAccount-content > h2{
  margin:0 0 18px !important;
}

body.gp-account-endpoint-orders table.woocommerce-orders-table,
body.gp-account-endpoint-view-order table.shop_table{
  margin-top:14px !important;
}

body.gp-account-endpoint-orders .woocommerce-orders-table__cell-order-actions{
  white-space:nowrap;
}

body.gp-account-endpoint-orders .woocommerce-orders-table__cell-order-actions .button{
  min-height:38px !important;
  padding:9px 13px !important;
  font-size:11px !important;
}

/* Account details: stable two-column first/last-name row with all other
   fields spanning the full content width. */
body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px 18px !important;
  margin:0 !important;
}

body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm > .form-row{
  float:none !important;
  width:auto !important;
  margin:0 !important;
}

body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm > .form-row-wide,
body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm > fieldset,
body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm > .clear,
body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm > p:last-child{
  grid-column:1 / -1 !important;
}

body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm > .clear{
  display:none !important;
}

body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm fieldset{
  min-width:0;
  margin:4px 0 0 !important;
  padding:20px !important;
  border:2px solid var(--black) !important;
  border-radius:15px !important;
  background:var(--paper);
}

body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm legend{
  padding:0 8px;
  color:var(--black);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:18px;
  text-transform:uppercase;
}

body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm fieldset .form-row{
  float:none !important;
  width:100% !important;
  margin:0 0 14px !important;
}

body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm fieldset .form-row:last-child{
  margin-bottom:0 !important;
}

body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm > p:last-child{
  margin:2px 0 0 !important;
}

/* Editing billing or shipping address uses the same clean two-column field
   rhythm, while wide fields and the save action span the row. */
body.gp-account-address-form .woocommerce-address-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px 18px !important;
}

body.gp-account-address-form .woocommerce-address-fields__field-wrapper > .form-row{
  float:none !important;
  width:auto !important;
  margin:0 !important;
}

body.gp-account-address-form .woocommerce-address-fields__field-wrapper > .form-row-wide,
body.gp-account-address-form .woocommerce-address-fields__field-wrapper > #billing_country_field,
body.gp-account-address-form .woocommerce-address-fields__field-wrapper > #shipping_country_field,
body.gp-account-address-form .woocommerce-address-fields__field-wrapper > #billing_address_1_field,
body.gp-account-address-form .woocommerce-address-fields__field-wrapper > #billing_address_2_field,
body.gp-account-address-form .woocommerce-address-fields__field-wrapper > #shipping_address_1_field,
body.gp-account-address-form .woocommerce-address-fields__field-wrapper > #shipping_address_2_field{
  grid-column:1 / -1 !important;
}

body.gp-account-address-form .woocommerce-address-fields > p:last-child{
  margin:20px 0 0 !important;
}

@media (max-width:900px){
  body.gp-account-address-list .woocommerce-Addresses,
  body.gp-account-address-list .u-columns.woocommerce-Addresses,
  body.gp-account-address-list .col2-set.woocommerce-Addresses{
    grid-template-columns:1fr !important;
  }

  body.gp-account-address-list .woocommerce-Address-title h2,
  body.gp-account-address-list .woocommerce-Address-title h3{
    max-width:none !important;
  }
}

@media (max-width:680px){
  body.gp-account-address-list .woocommerce-Addresses > .woocommerce-Address,
  body.gp-account-address-list .woocommerce-Addresses > .u-column1,
  body.gp-account-address-list .woocommerce-Addresses > .u-column2,
  body.gp-account-address-list .woocommerce-Addresses > .col-1,
  body.gp-account-address-list .woocommerce-Addresses > .col-2{
    padding:20px 16px !important;
  }

  body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm,
  body.gp-account-address-form .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr !important;
  }

  body.gp-account-endpoint-edit-account form.woocommerce-EditAccountForm > .form-row,
  body.gp-account-address-form .woocommerce-address-fields__field-wrapper > .form-row{
    grid-column:1 / -1 !important;
  }
}



/* ================================================================
   VERSION 2.15.49 — ACCOUNT ADDRESS HEADING WRAP
   Keeps the approved 2.15.48 account layout and corrects only the
   Billing Address and Shipping Address headings. On desktop each
   title wraps at the space into two clean lines, never between letters.
   ================================================================ */
body.gp-account-address-list .woocommerce-Address-title h2,
body.gp-account-address-list .woocommerce-Address-title h3{
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}

@media (min-width:901px){
  body.gp-account-address-list .woocommerce-Address-title{
    display:block !important;
  }

  body.gp-account-address-list .woocommerce-Address-title h2,
  body.gp-account-address-list .woocommerce-Address-title h3{
    display:block !important;
    width:min-content !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    font-size:clamp(28px,2.55vw,36px) !important;
    line-height:.98 !important;
    white-space:normal !important;
  }

  body.gp-account-address-list .woocommerce-Address-title a,
  body.gp-account-address-list .woocommerce-Address-title a.edit{
    display:inline-block !important;
    margin:18px 0 0 !important;
  }
}

/* ================================================================
   VERSION 2.15.50 — COMPACT MOBILE MY ACCOUNT
   Tightens only the mobile My Account experience. Desktop remains
   unchanged: smaller title and spacing, shorter account navigation,
   and more compact endpoint content for quicker access on phones.
   ================================================================ */
@media (max-width:680px){
  .gp-account-shell{
    padding:26px 12px 48px !important;
  }

  .gp-account-header{
    margin-bottom:18px !important;
  }

  .gp-account-eyebrow{
    margin-bottom:6px !important;
    font-size:11px !important;
    letter-spacing:.16em !important;
  }

  .gp-account-header h1{
    font-size:clamp(38px,12vw,50px) !important;
    line-height:.94 !important;
    letter-spacing:.012em !important;
  }

  .gp-account-header > p:last-child{
    max-width:340px !important;
    margin-top:12px !important;
    font-size:15px !important;
    line-height:1.4 !important;
  }

  body.gp-account-logged-in .gp-account-stage{
    padding:9px !important;
    border-width:2px !important;
    border-radius:18px !important;
    box-shadow:5px 5px 0 var(--orange) !important;
  }

  .gp-account-stage .woocommerce-MyAccount-navigation{
    margin:0 0 12px !important;
    padding:8px !important;
    border-radius:15px !important;
  }

  .gp-account-stage .woocommerce-MyAccount-navigation ul{
    gap:6px !important;
  }

  .gp-account-stage .woocommerce-MyAccount-navigation a{
    min-height:0 !important;
    padding:10px 12px !important;
    border-radius:10px !important;
    font-size:12px !important;
    line-height:1.1 !important;
  }

  .gp-account-stage .woocommerce-MyAccount-content,
  body.gp-account-logged-out .gp-account-stage > .woocommerce{
    padding:17px 13px !important;
    border-radius:15px !important;
    font-size:15.5px !important;
    line-height:1.5 !important;
  }

  .gp-account-stage .u-columns.woocommerce-Addresses{
    gap:12px !important;
    margin-top:16px !important;
  }

  .gp-account-stage .woocommerce-Address{
    padding:16px !important;
    border-radius:14px !important;
  }

  .gp-account-stage .woocommerce-MyAccount-content h2{
    font-size:clamp(28px,10vw,38px) !important;
  }
}


/* ================================================================
   VERSION 2.15.51 — FULL PRODUCT IMAGE DISPLAY
   Stops the main single-product image from being forced into a square
   crop. Product gallery thumbnails remain square for a tidy layout.
   ================================================================ */
body.single-product .gp-single-product-main-image{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#efe2ca !important;
}
body.single-product .gp-single-product-main-image img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}


/* ================================================================
   VERSION 2.15.54 — EDITABLE MEET THE CREW PAGE
   All content is stored as normal Gutenberg blocks. The placeholder
   images can be replaced from the editor without changing the theme.
   ================================================================ */
body.page-meet-the-crew .inner-page-main{
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
  padding:58px 0 82px;
}
.gp-crew-page{max-width:none !important}
.gp-crew-hero{
  max-width:920px !important;
  margin:0 auto 48px !important;
  text-align:center;
}
.gp-crew-eyebrow{
  margin:0 0 12px !important;
  color:var(--brown);
  font-family:Arial,sans-serif;
  font-size:12px;
  font-weight:800;
  letter-spacing:.18em;
}
.gp-crew-hero h1{
  margin:0 !important;
  font-family:'Caprasimo',Georgia,serif;
  font-size:clamp(52px,8vw,92px);
  line-height:.92;
}
.gp-crew-intro{
  max-width:820px;
  margin:24px auto 0 !important;
  font-size:clamp(18px,2vw,22px);
  line-height:1.62;
}
.gp-crew-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:28px;
  align-items:stretch;
}
.gp-crew-card{
  display:flex;
  flex-direction:column;
  max-width:none !important;
  min-width:0;
  margin:0 !important;
  padding:18px 18px 28px !important;
  border:3px solid var(--black);
  border-radius:20px;
  background:var(--paper);
  box-shadow:7px 7px 0 var(--orange);
}
.gp-crew-photo{
  overflow:hidden;
  width:100%;
  margin:0 0 24px !important;
  border:2px solid var(--black);
  border-radius:14px;
  background:#efe2ca;
}
.gp-crew-photo img{
  display:block;
  width:100%;
  aspect-ratio:6/5;
  object-fit:cover;
}
.gp-crew-card h2{
  margin:0 0 5px !important;
  font-family:'Caprasimo',Georgia,serif;
  font-size:clamp(34px,4vw,48px);
  line-height:1;
}
.gp-crew-title{
  margin:0 0 18px !important;
  color:var(--brown);
  font-family:Arial,sans-serif;
  font-size:13px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.gp-trail-name{
  max-width:none !important;
  margin:0 0 20px !important;
  padding:12px 16px !important;
  border:2px solid var(--black);
  border-radius:12px;
  background:var(--cream);
}
.gp-trail-name p{
  margin:0 0 2px !important;
  color:var(--brown);
  font-family:Arial,sans-serif;
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.gp-trail-name h3{
  margin:0 !important;
  font-family:'Caprasimo',Georgia,serif;
  font-size:25px;
  line-height:1.1;
}
.gp-crew-card > p:last-child{
  margin:0 !important;
  font-size:17px;
  line-height:1.65;
}
.gp-pull-up-chair{
  max-width:900px !important;
  margin:62px auto 0 !important;
  padding:38px clamp(22px,5vw,58px) !important;
  border:3px solid var(--black);
  border-radius:20px;
  background:var(--black);
  color:var(--paper);
  text-align:center;
  box-shadow:8px 8px 0 var(--brown);
}
.gp-pull-up-chair h2{
  margin:0 0 20px !important;
  color:var(--orange);
  font-family:'Caprasimo',Georgia,serif;
  font-size:clamp(40px,6vw,64px);
}
.gp-pull-up-chair p{
  max-width:720px;
  margin:0 auto 14px !important;
  font-size:18px;
  line-height:1.6;
}
.gp-crew-motto{
  margin:28px 0 12px !important;
  color:var(--orange);
  font-family:'Caprasimo',Georgia,serif;
  font-size:clamp(30px,5vw,48px);
  line-height:1.05;
}
.gp-crew-signoff{
  margin-bottom:0 !important;
  font-style:italic;
}
@media (max-width:760px){
  body.page-meet-the-crew .inner-page-main{
    width:min(100% - 22px,680px);
    padding:38px 0 58px;
  }
  .gp-crew-hero{margin-bottom:32px !important}
  .gp-crew-grid{grid-template-columns:1fr;gap:22px}
  .gp-crew-card{padding:13px 13px 23px !important;box-shadow:5px 5px 0 var(--orange)}
  .gp-crew-photo{margin-bottom:19px !important}
  .gp-crew-card > p:last-child{font-size:16px}
  .gp-pull-up-chair{margin-top:38px !important;padding:30px 18px !important;box-shadow:5px 5px 0 var(--brown)}
}


/* ================================================================
   VERSION 2.15.56 — MEET THE CREW LAYOUT REFINEMENT
   Center the page/card grid, reduce portrait placeholders, and add
   breathing room below the site header. Content remains Gutenberg-editable.
   ================================================================ */
body.page-meet-the-crew .inner-page-main{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:82px 20px 92px !important;
}
body.page-meet-the-crew .gp-crew-page{
  width:min(1180px,100%) !important;
  max-width:1180px !important;
  margin:0 auto !important;
}
body.page-meet-the-crew .gp-crew-hero{
  width:min(920px,100%) !important;
  margin:0 auto 58px !important;
  padding:0 18px;
  text-align:center;
}
body.page-meet-the-crew .gp-crew-grid{
  width:100% !important;
  max-width:1180px !important;
  margin:0 auto !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:30px;
}
body.page-meet-the-crew .gp-crew-card{
  align-items:center;
  text-align:center;
  padding:28px 28px 32px !important;
}
body.page-meet-the-crew .gp-crew-photo{
  width:min(100%,360px) !important;
  max-width:360px !important;
  margin:0 auto 24px !important;
}
body.page-meet-the-crew .gp-crew-photo img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:1/1 !important;
  object-fit:cover !important;
}
body.page-meet-the-crew .gp-crew-title{
  text-align:center;
}
body.page-meet-the-crew .gp-trail-name{
  width:min(100%,390px) !important;
  margin:0 auto 20px !important;
  text-align:center;
}
body.page-meet-the-crew .gp-crew-card > p:last-child{
  width:100%;
  max-width:500px;
  margin:0 auto !important;
  text-align:center;
}
body.page-meet-the-crew .gp-pull-up-chair{
  width:min(900px,100%) !important;
}
@media (max-width:760px){
  body.page-meet-the-crew .inner-page-main{
    padding:56px 11px 64px !important;
  }
  body.page-meet-the-crew .gp-crew-hero{
    margin-bottom:38px !important;
    padding:0 8px;
  }
  body.page-meet-the-crew .gp-crew-grid{
    grid-template-columns:1fr;
  }
  body.page-meet-the-crew .gp-crew-card{
    padding:18px 14px 25px !important;
  }
  body.page-meet-the-crew .gp-crew-photo{
    width:min(100%,320px) !important;
    max-width:320px !important;
  }
}

/* ================================================================
   VERSION 2.15.57 — CLEAN MEET THE CREW RESTART
   Dedicated page template; isolated selectors; no dependency on the
   old Gutenberg block markup or body classes.
   ================================================================ */
.gp-crew57{
  box-sizing:border-box;
  width:min(1140px,calc(100% - 44px));
  margin:0 auto;
  padding:72px 0 88px;
}
.gp-crew57 *{box-sizing:border-box}
.gp-crew57__hero{
  max-width:920px;
  margin:0 auto 40px;
  text-align:center;
}
.gp-crew57__eyebrow{
  margin:0 0 14px;
  color:var(--brown,#b9712f);
  font-family:Arial,sans-serif;
  font-size:12px;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.gp-crew57__hero h1{
  margin:0;
  font-family:'Caprasimo',Georgia,serif;
  font-size:clamp(56px,7vw,92px);
  line-height:.94;
}
.gp-crew57__intro{
  max-width:800px;
  margin:22px auto 0;
  font-size:clamp(18px,1.7vw,22px);
  line-height:1.6;
}
.gp-crew57__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:32px;
  width:100%;
  max-width:1140px;
  margin:0 auto;
}
.gp-crew57__card{
  display:grid;
  grid-template-columns:200px minmax(0,1fr);
  align-items:center;
  gap:24px;
  min-height:370px;
  margin:0;
  padding:26px;
  border:3px solid var(--black,#0b0a07);
  border-radius:20px;
  background:var(--paper,#fff8e9);
  box-shadow:8px 8px 0 var(--orange,#ff8d2b);
}
.gp-crew57__photo-wrap{
  width:200px;
  height:200px;
  overflow:hidden;
  border:2px solid var(--black,#0b0a07);
  border-radius:14px;
  background:#efe2ca;
}
.gp-crew57__photo{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.gp-crew57__copy{min-width:0}
.gp-crew57__copy h2{
  margin:0 0 5px;
  font-family:'Caprasimo',Georgia,serif;
  font-size:clamp(30px,2.6vw,40px);
  line-height:.98;
}
.gp-crew57__title{
  margin:0 0 14px;
  color:var(--brown,#b9712f);
  font-family:Arial,sans-serif;
  font-size:12px;
  font-weight:800;
  letter-spacing:.075em;
  line-height:1.35;
  text-transform:uppercase;
}
.gp-crew57__badge{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  margin:0 0 15px;
  padding:10px 13px;
  border:2px solid var(--black,#0b0a07);
  border-radius:10px;
  background:var(--cream,#f4ecd9);
}
.gp-crew57__badge span{
  color:var(--brown,#b9712f);
  font-family:Arial,sans-serif;
  font-size:9px;
  font-weight:800;
  letter-spacing:.18em;
  line-height:1;
  text-transform:uppercase;
}
.gp-crew57__badge strong{
  margin-top:4px;
  font-family:'Caprasimo',Georgia,serif;
  font-size:20px;
  line-height:1;
}
.gp-crew57__bio{
  margin:0;
  font-size:15.5px;
  line-height:1.55;
}
.gp-crew57__divider{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  max-width:700px;
  margin:58px auto 32px;
}
.gp-crew57__divider span{height:2px;flex:1;background:var(--black,#0b0a07)}
.gp-crew57__divider b{color:var(--orange,#ff8d2b);font-size:26px;transform:rotate(180deg)}
.gp-crew57__closing{
  max-width:850px;
  margin:0 auto;
  text-align:center;
}
.gp-crew57__closing h2{
  margin:0 0 20px;
  font-family:'Caprasimo',Georgia,serif;
  font-size:clamp(44px,6vw,68px);
  line-height:1;
}
.gp-crew57__closing p{
  max-width:760px;
  margin:0 auto 15px;
  font-size:18px;
  line-height:1.62;
}
.gp-crew57__motto{
  display:block;
  margin:30px auto 12px;
  color:var(--brown,#b9712f);
  font-family:Arial,sans-serif;
  font-size:15px;
  font-weight:900;
  letter-spacing:.14em;
}
.gp-crew57__signoff{font-style:italic}
@media(max-width:1040px){
  .gp-crew57__grid{grid-template-columns:1fr;max-width:760px}
  .gp-crew57__card{grid-template-columns:210px minmax(0,1fr);min-height:350px}
  .gp-crew57__photo-wrap{width:210px;height:210px}
}
@media(max-width:680px){
  .gp-crew57{width:min(100% - 22px,620px);padding:48px 0 64px}
  .gp-crew57__hero{margin-bottom:30px}
  .gp-crew57__hero h1{font-size:clamp(48px,16vw,68px)}
  .gp-crew57__grid{gap:22px}
  .gp-crew57__card{grid-template-columns:1fr;min-height:0;padding:18px;text-align:center;box-shadow:5px 5px 0 var(--orange,#ff8d2b)}
  .gp-crew57__photo-wrap{width:min(250px,100%);height:auto;aspect-ratio:1/1;margin:0 auto}
  .gp-crew57__badge{align-items:center}
  .gp-crew57__divider{margin-top:48px}
  .gp-crew57__closing p{font-size:16px}
}


/* VERSION 2.15.58 — CREW PAGE POLISH */
.gp-crew57 > section{margin-left:auto !important;margin-right:auto !important;}
.gp-crew57__grid{padding:0 !important;}
.gp-crew57__card > *{margin-top:0;}
@media (min-width:1041px){
  .gp-crew57__card{align-content:center;}
  .gp-crew57__copy{display:flex;flex-direction:column;justify-content:center;}
}


/* VERSION 2.15.59 — CREW CARD ALIGNMENT + SPACING */
.gp-crew57{
  padding-top:60px;
}
.gp-crew57__hero{
  margin-bottom:30px;
}
.gp-crew57__grid{
  gap:28px;
}
.gp-crew57__card{
  grid-template-columns:190px minmax(0,1fr);
  align-items:start;
  gap:24px;
  min-height:390px;
  padding:26px;
}
.gp-crew57__photo-wrap{
  width:190px;
  height:190px;
  align-self:start;
  margin-top:2px;
}
.gp-crew57__copy{
  display:grid;
  grid-template-rows:auto minmax(34px,auto) 62px 1fr;
  align-content:start;
  min-width:0;
}
.gp-crew57__copy h2{
  min-height:42px;
  margin:0 0 5px;
  display:flex;
  align-items:flex-end;
}
.gp-crew57__title{
  min-height:34px;
  margin:0 0 12px;
  display:flex;
  align-items:flex-start;
}
.gp-crew57__badge{
  width:100%;
  min-height:62px;
  margin:0 0 14px;
  justify-content:center;
}
.gp-crew57__bio{
  align-self:start;
}
@media(max-width:1040px){
  .gp-crew57__card{
    grid-template-columns:190px minmax(0,1fr);
    min-height:365px;
  }
  .gp-crew57__photo-wrap{width:190px;height:190px}
}
@media(max-width:680px){
  .gp-crew57{padding-top:44px}
  .gp-crew57__hero{margin-bottom:26px}
  .gp-crew57__card{grid-template-columns:1fr;min-height:0}
  .gp-crew57__photo-wrap{width:min(230px,100%);height:auto;margin:0 auto;aspect-ratio:1/1}
  .gp-crew57__copy{display:flex;flex-direction:column;align-items:stretch}
  .gp-crew57__copy h2,.gp-crew57__title{min-height:0;display:block}
  .gp-crew57__badge{width:auto;min-height:0;align-self:center}
}


/* VERSION 2.15.60 — LOCKED INTERNAL CREW CARD ROWS */
@media (min-width:681px){
  .gp-crew57__card{
    align-content:start !important;
    align-items:start !important;
  }
  .gp-crew57__photo-wrap{
    align-self:start !important;
    margin-top:2px !important;
  }
  .gp-crew57__copy{
    align-self:start !important;
    align-content:start !important;
    grid-template-rows:48px 40px 62px auto !important;
  }
  .gp-crew57__copy h2{
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    display:flex !important;
    align-items:flex-start !important;
  }
  .gp-crew57__title{
    height:40px !important;
    min-height:40px !important;
    margin:0 !important;
    display:flex !important;
    align-items:flex-start !important;
    padding-top:1px;
  }
  .gp-crew57__badge{
    height:62px !important;
    min-height:62px !important;
    margin:0 !important;
    align-self:start !important;
  }
  .gp-crew57__bio{
    margin-top:14px !important;
    align-self:start !important;
  }
}


/* VERSION 2.15.61 — LIGHT CAMPFIRE WATERMARK + CLEANER CREW NAMES */
.gp-crew57__grid{
  position:relative;
  isolation:isolate;
}
.gp-crew57__grid::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:50%;
  top:50%;
  width:min(1080px,94vw);
  aspect-ratio:1135 / 829;
  transform:translate(-50%,-50%);
  background:url('assets/crew-campfire-watermark.png') center/contain no-repeat;
  opacity:.055;
  pointer-events:none;
}
.gp-crew57__card{
  background:rgba(255,248,233,.965);
}
.gp-crew57__copy h2{
  font-weight:400 !important;
  font-synthesis:none !important;
  letter-spacing:.005em;
  font-size:clamp(29px,2.35vw,38px);
}
@media(max-width:680px){
  .gp-crew57__grid::before{
    width:105%;
    top:48%;
    opacity:.035;
  }
  .gp-crew57__card{
    background:rgba(255,248,233,.98);
  }
}


/* VERSION 2.15.62 — VISIBLE CAMPFIRE SCENE + LIGHTER DISPLAY LABELS */
.gp-crew57{
  position:relative;
  isolation:isolate;
}
.gp-crew57::before{
  content:"";
  position:absolute;
  z-index:0;
  left:50%;
  top:300px;
  width:min(1500px,112vw);
  aspect-ratio:1135 / 829;
  transform:translateX(-50%);
  background:url('assets/crew-campfire-watermark.png') center top / contain no-repeat;
  opacity:.095;
  pointer-events:none;
}
.gp-crew57 > *{
  position:relative;
  z-index:1;
}
.gp-crew57__grid::before{
  display:none !important;
}
.gp-crew57__card{
  background:rgba(255,248,233,.94);
}
.gp-crew57__badge strong{
  font-family:Georgia,Cambria,serif !important;
  font-size:19px !important;
  font-weight:700 !important;
  letter-spacing:-.015em;
  line-height:1.05 !important;
}
.gp-crew57__closing h2{
  font-family:Georgia,Cambria,serif !important;
  font-size:clamp(38px,5vw,56px) !important;
  font-weight:700 !important;
  letter-spacing:-.025em;
  line-height:1.02 !important;
}
@media(max-width:1040px){
  .gp-crew57::before{
    top:340px;
    width:1280px;
    opacity:.075;
  }
}
@media(max-width:680px){
  .gp-crew57::before{
    top:360px;
    width:980px;
    opacity:.05;
  }
  .gp-crew57__card{
    background:rgba(255,248,233,.965);
  }
  .gp-crew57__badge strong{
    font-size:18px !important;
  }
}


/* VERSION 2.15.63 — CAMPFIRE SCENE CONTAINED IN HERO */
.gp-crew57::before{
  display:none !important;
}
.gp-crew57__hero{
  position:relative;
  isolation:isolate;
  width:100%;
  max-width:none;
  min-height:545px;
  margin:0 auto 18px;
  padding:20px 20px 270px;
  overflow:visible;
}
.gp-crew57__hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:50%;
  bottom:0;
  width:min(1480px,112vw);
  height:500px;
  transform:translateX(-50%);
  background:url('assets/crew-campfire-watermark.png') center bottom / contain no-repeat;
  opacity:.105;
  pointer-events:none;
}
.gp-crew57__eyebrow,
.gp-crew57__hero h1,
.gp-crew57__intro{
  position:relative;
  z-index:1;
}
.gp-crew57__intro{
  max-width:820px;
}
.gp-crew57__grid{
  position:relative;
  z-index:2;
}
@media(max-width:1040px){
  .gp-crew57__hero{
    min-height:500px;
    padding-bottom:240px;
  }
  .gp-crew57__hero::before{
    width:1250px;
    height:450px;
    opacity:.09;
  }
}
@media(max-width:680px){
  .gp-crew57__hero{
    min-height:430px;
    padding:10px 4px 190px;
    margin-bottom:14px;
  }
  .gp-crew57__hero::before{
    width:820px;
    height:330px;
    opacity:.07;
    background-position:center bottom;
  }
}


/* VERSION 2.15.64 — WIDER HERO SCENE + TIGHTER CARD CONNECTION */
.gp-crew57__hero{
  min-height:525px;
  margin-bottom:0;
  padding-bottom:248px;
}
.gp-crew57__hero::before{
  width:min(1720px,122vw);
  height:500px;
  background-size:100% 100%;
  background-position:center bottom;
}
.gp-crew57__grid{
  margin-top:-6px;
}
@media(max-width:1040px){
  .gp-crew57__hero{
    min-height:480px;
    padding-bottom:218px;
    margin-bottom:0;
  }
  .gp-crew57__hero::before{
    width:1320px;
    height:430px;
    background-size:100% 100%;
  }
  .gp-crew57__grid{margin-top:-4px;}
}
@media(max-width:680px){
  .gp-crew57__hero{
    min-height:410px;
    padding-bottom:170px;
    margin-bottom:0;
  }
  .gp-crew57__hero::before{
    width:900px;
    height:305px;
    background-size:100% 100%;
  }
  .gp-crew57__grid{margin-top:0;}
}


/* VERSION 2.15.65 — MOBILE HERO PROPORTIONS + TIGHTER CARD CONNECTION */
@media(max-width:680px){
  .gp-crew57{
    width:100%;
    padding-top:28px;
  }
  .gp-crew57__hero{
    min-height:0 !important;
    margin:0 !important;
    padding:22px 18px 178px !important;
    overflow:hidden;
  }
  .gp-crew57__eyebrow{
    margin-bottom:20px;
    font-size:13px;
    line-height:1.35;
    letter-spacing:.24em;
  }
  .gp-crew57__hero h1{
    max-width:360px;
    margin:0 auto 24px;
    font-size:clamp(50px,15vw,64px) !important;
    line-height:.96;
  }
  .gp-crew57__intro{
    max-width:390px;
    margin:0 auto;
    font-size:20px;
    line-height:1.52;
  }
  .gp-crew57__hero::before{
    width:720px !important;
    height:225px !important;
    bottom:-2px;
    opacity:.085;
    background-size:720px 225px !important;
    background-position:center bottom !important;
  }
  .gp-crew57__grid{
    width:calc(100% - 20px);
    margin:-2px auto 0 !important;
    gap:18px;
  }
}

@media(max-width:420px){
  .gp-crew57__hero{
    padding:18px 14px 158px !important;
  }
  .gp-crew57__eyebrow{
    font-size:12px;
    letter-spacing:.21em;
  }
  .gp-crew57__hero h1{
    max-width:330px;
    font-size:clamp(46px,14.5vw,58px) !important;
    margin-bottom:20px;
  }
  .gp-crew57__intro{
    max-width:355px;
    font-size:18px;
    line-height:1.48;
  }
  .gp-crew57__hero::before{
    width:640px !important;
    height:195px !important;
    background-size:640px 195px !important;
  }
}


/* VERSION 2.15.66 — DESKTOP HERO ART RAISED + CREW CARDS PULLED UP */
@media(min-width:1041px){
  .gp-crew57__hero{
    min-height:455px;
    padding-bottom:178px;
    margin-bottom:0;
  }
  .gp-crew57__hero::before{
    width:min(1780px,126vw);
    height:455px;
    bottom:24px;
    background-size:100% 100%;
    background-position:center center;
  }
  .gp-crew57__grid{
    margin-top:-24px;
  }
}
@media(min-width:681px) and (max-width:1040px){
  .gp-crew57__hero{
    min-height:435px;
    padding-bottom:180px;
    margin-bottom:0;
  }
  .gp-crew57__hero::before{
    width:1380px;
    height:410px;
    bottom:18px;
    background-size:100% 100%;
    background-position:center center;
  }
  .gp-crew57__grid{
    margin-top:-18px;
  }
}


/* VERSION 2.15.67 — FINAL DESKTOP HERO COMPOSITION POLISH */
@media(min-width:1041px){
  .gp-crew57__hero{
    min-height:420px;
    padding-bottom:142px;
    margin-bottom:0;
  }
  .gp-crew57__hero::before{
    width:min(1780px,126vw);
    height:455px;
    bottom:68px;
    background-size:100% 100%;
    background-position:center center;
  }
  .gp-crew57__intro{
    position:relative;
    isolation:isolate;
  }
  .gp-crew57__intro::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:-14px -26px;
    background:radial-gradient(ellipse at center,rgba(244,236,217,.42) 0%,rgba(244,236,217,.24) 55%,rgba(244,236,217,0) 82%);
    pointer-events:none;
  }
  .gp-crew57__grid{
    margin-top:-48px;
  }
}
@media(min-width:681px) and (max-width:1040px){
  .gp-crew57__hero{
    min-height:408px;
    padding-bottom:155px;
  }
  .gp-crew57__hero::before{
    bottom:48px;
  }
  .gp-crew57__grid{
    margin-top:-34px;
  }
}


/* VERSION 2.15.68 — FINAL HERO CROP + CARD CONNECTION */
@media(min-width:1041px){
  .gp-crew57__hero{
    min-height:365px;
    padding-bottom:88px;
    margin-bottom:0;
  }
  .gp-crew57__hero::before{
    bottom:78px;
  }
  .gp-crew57__intro::before{
    inset:-16px -30px;
    background:radial-gradient(ellipse at center,rgba(244,236,217,.58) 0%,rgba(244,236,217,.36) 54%,rgba(244,236,217,.08) 74%,rgba(244,236,217,0) 88%);
  }
  .gp-crew57__grid{
    margin-top:-73px;
  }
}
@media(min-width:681px) and (max-width:1040px){
  .gp-crew57__hero{
    min-height:378px;
    padding-bottom:128px;
  }
  .gp-crew57__hero::before{
    bottom:58px;
  }
  .gp-crew57__grid{
    margin-top:-49px;
  }
}

/* VERSION 2.15.70 — TRUE GUTENBERG-NATIVE MEET THE CREW */
.gp-crew-native-page{overflow:hidden;background:var(--cream)}
.gp-crew-native{margin:0!important;padding:0 0 80px!important;max-width:none!important}
.gp-crew-native__hero{position:relative;isolation:isolate;max-width:none!important;min-height:365px;margin:0!important;padding:68px 20px 88px!important;text-align:center;overflow:hidden}
.gp-crew-native__hero:before{content:"";position:absolute;z-index:-2;left:50%;bottom:78px;width:min(1780px,126vw);height:455px;transform:translateX(-50%);background:url('assets/crew-campfire-watermark.png') center/100% 100% no-repeat;opacity:.105;pointer-events:none}
.gp-crew-native__hero:after{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:min(900px,80vw);height:220px;transform:translate(-50%,-42%);background:radial-gradient(ellipse at center,rgba(244,236,217,.58) 0%,rgba(244,236,217,.36) 54%,rgba(244,236,217,.08) 74%,rgba(244,236,217,0) 88%);pointer-events:none}
.gp-crew-native__eyebrow{margin:0 0 16px!important;color:var(--brown);font-family:'Cooper Black','Bookman Old Style',Georgia,serif;font-weight:900;font-size:13px;letter-spacing:.22em;text-transform:uppercase}
.gp-crew-native__hero h1{margin:0 auto 22px!important;font-family:'Cooper Black','Bookman Old Style',Georgia,serif;font-size:clamp(60px,7vw,96px)!important;line-height:.92!important;letter-spacing:-.025em;text-align:center}
.gp-crew-native__intro{max-width:820px!important;margin:0 auto!important;font-size:20px!important;line-height:1.55!important;text-align:center}
.gp-crew-native__grid{position:relative;z-index:2;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px!important;width:min(1040px,calc(100% - 40px));max-width:none!important;margin:-73px auto 0!important;padding:0!important}
.gp-crew-native__card{display:grid!important;grid-template-columns:172px minmax(0,1fr);gap:24px!important;align-items:start;min-height:438px;margin:0!important;padding:26px!important;border:3px solid var(--black);border-radius:22px;background:var(--paper);box-shadow:9px 9px 0 var(--orange)}
.gp-crew-native__photo{width:172px!important;height:172px!important;margin:0!important;border:2px solid var(--black);border-radius:14px;overflow:hidden;background:#efe1c5}
.gp-crew-native__photo img{display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center;border:0!important}
.gp-crew-native__copy{display:grid!important;grid-template-rows:48px 40px 62px auto;gap:0!important;min-width:0;margin:0!important;padding:0!important}
.gp-crew-native__copy h2{margin:0!important;font-family:'Cooper Black','Bookman Old Style',Georgia,serif;font-size:34px!important;line-height:1!important;font-weight:400!important;font-synthesis:none!important}
.gp-crew-native__title{height:40px;margin:0!important;padding-top:5px;color:var(--brown);font-family:'Cooper Black','Bookman Old Style',Georgia,serif;font-size:12px!important;font-weight:900;letter-spacing:.08em;line-height:1.25;text-transform:uppercase}
.gp-crew-native__badge{height:62px;margin:0!important;padding:9px 13px!important;border:2px solid var(--black);border-radius:11px;background:rgba(244,236,217,.65)}
.gp-crew-native__badge p{margin:0 0 2px!important;color:var(--brown);font-family:Arial,sans-serif;font-size:10px!important;font-weight:900;letter-spacing:.18em;line-height:1;text-transform:uppercase}
.gp-crew-native__badge h3{margin:0!important;font-family:Georgia,Cambria,serif;font-size:19px!important;line-height:1.08!important}
.gp-crew-native__bio{margin:14px 0 0!important;font-size:15px!important;line-height:1.48!important}
.gp-crew-native__closing{max-width:760px!important;margin:70px auto 0!important;padding:0 24px!important;text-align:center}
.gp-crew-native__closing h2{margin:0 0 24px!important;font-family:Georgia,Cambria,serif;font-size:clamp(38px,5vw,56px)!important;line-height:1.02!important}
.gp-crew-native__closing p{font-size:18px;line-height:1.6}
.gp-crew-native__motto{margin-top:28px!important;color:var(--brown);font-family:'Cooper Black','Bookman Old Style',Georgia,serif;letter-spacing:.08em;text-transform:uppercase}
.gp-crew-native__signoff{font-style:italic}
@media(max-width:900px){.gp-crew-native__grid{grid-template-columns:1fr;width:min(640px,calc(100% - 30px))}.gp-crew-native__card{min-height:0}}
@media(max-width:680px){.gp-crew-native{padding-bottom:56px!important}.gp-crew-native__hero{min-height:0!important;padding:46px 16px 158px!important}.gp-crew-native__hero:before{bottom:-2px;width:640px;height:195px;opacity:.085}.gp-crew-native__hero:after{width:94vw;height:260px}.gp-crew-native__eyebrow{font-size:12px;letter-spacing:.2em;margin-bottom:20px!important}.gp-crew-native__hero h1{max-width:360px;font-size:clamp(48px,14.5vw,60px)!important;margin-bottom:22px!important}.gp-crew-native__intro{max-width:390px!important;font-size:18px!important;line-height:1.48!important}.gp-crew-native__grid{margin:-2px auto 0!important;gap:18px!important}.gp-crew-native__card{grid-template-columns:132px minmax(0,1fr);gap:18px!important;padding:20px!important;border-radius:20px}.gp-crew-native__photo{width:132px!important;height:132px!important}.gp-crew-native__copy{grid-template-rows:auto auto auto auto}.gp-crew-native__copy h2{font-size:29px!important}.gp-crew-native__title{height:auto;min-height:34px}.gp-crew-native__badge{height:auto;min-height:58px}.gp-crew-native__bio{font-size:14px!important}}
@media(max-width:460px){.gp-crew-native__card{grid-template-columns:1fr}.gp-crew-native__photo{width:100%!important;height:auto!important;aspect-ratio:1/1}.gp-crew-native__copy h2{text-align:left}.gp-crew-native__bio{font-size:15px!important}}

/* VERSION 2.15.71 — GUTENBERG EDITING WITH STABLE LIVE 2x2 RENDERER */
.gp-crew57--gutenberg .gp-crew57__photo{width:100%;height:100%;object-fit:cover;object-position:center;}

/* VERSION 2.15.72 — FINAL CREW PHOTO + HERO POLISH */
@media (min-width:1041px){
  .gp-crew57__intro::before{
    inset:-22px -44px;
    background:radial-gradient(ellipse at center,
      rgba(244,236,217,.82) 0%,
      rgba(244,236,217,.66) 42%,
      rgba(244,236,217,.30) 67%,
      rgba(244,236,217,0) 90%);
  }
  .gp-crew57__grid{
    margin-top:-88px;
  }
  .gp-crew57__photo-wrap{
    width:172px;
    height:238px;
  }
  .gp-crew57--gutenberg .gp-crew57__photo:not([src$=".svg"]){
    transform:scale(1.10);
    transform-origin:center;
  }
}
@media (min-width:681px) and (max-width:1040px){
  .gp-crew57__grid{
    margin-top:-60px;
  }
  .gp-crew57__photo-wrap{
    width:190px;
    height:238px;
  }
  .gp-crew57--gutenberg .gp-crew57__photo:not([src$=".svg"]){
    transform:scale(1.08);
    transform-origin:center;
  }
}


/* VERSION 2.15.73 — FINAL HERO READABILITY + PHOTO CROP POLISH */
@media (min-width:1041px){
  .gp-crew-native__intro{
    position:relative;
    z-index:1;
  }
  .gp-crew-native__intro::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:-18px -42px;
    border-radius:50%;
    background:radial-gradient(ellipse at center,
      rgba(244,236,217,.86) 0%,
      rgba(244,236,217,.70) 48%,
      rgba(244,236,217,.30) 72%,
      rgba(244,236,217,0) 92%);
    pointer-events:none;
  }
  .gp-crew-native__grid{
    margin-top:-93px!important;
  }
  .gp-crew-native__photo{
    border-radius:14px!important;
  }
  .gp-crew-native__photo img:not([src$=".svg"]){
    transform:scale(1.12);
    transform-origin:center center;
  }
}
@media (min-width:681px) and (max-width:1040px){
  .gp-crew-native__intro{
    position:relative;
    z-index:1;
  }
  .gp-crew-native__intro::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:-16px -30px;
    border-radius:50%;
    background:radial-gradient(ellipse at center,
      rgba(244,236,217,.82) 0%,
      rgba(244,236,217,.64) 52%,
      rgba(244,236,217,.22) 76%,
      rgba(244,236,217,0) 94%);
    pointer-events:none;
  }
  .gp-crew-native__grid{
    margin-top:-22px!important;
  }
  .gp-crew-native__photo img:not([src$=".svg"]){
    transform:scale(1.08);
    transform-origin:center center;
  }
}


/* VERSION 2.15.75 — PRECISE HERO GAP + PHOTO COLUMN BALANCE */
@media (min-width:1041px){
  /* Move only the hero copy upward without enlarging the header-to-hero gap. */
  .gp-crew-native__hero{
    padding-top:38px!important;
  }

  /* Restore a deliberate visual break between the intro and first card row. */
  .gp-crew-native__grid{
    margin-top:-63px!important;
  }

  /* Balance the existing left photo column without changing the card structure. */
  .gp-crew-native__photo{
    align-self:center!important;
  }
}

@media (min-width:681px) and (max-width:1040px){
  .gp-crew-native__hero{
    padding-top:50px!important;
  }
  .gp-crew-native__grid{
    margin-top:6px!important;
  }
  .gp-crew-native__photo{
    align-self:center!important;
  }
}


/* VERSION 2.15.76 — FINAL LOCKED CREW SPACING */
@media (min-width:1041px){
  /* Slightly narrower intro for a cleaner wrap without moving the hero. */
  .gp-crew57__intro{
    max-width:770px!important;
  }

  /* Restore a deliberate, modest break between hero copy and cards. */
  .gp-crew57__grid{
    margin-top:-40px!important;
  }

  /* Keep the photo in the existing left column, but place it intentionally lower. */
  .gp-crew57__photo-wrap{
    align-self:center!important;
    transform:translateY(14px);
  }
}

@media (min-width:681px) and (max-width:1040px){
  .gp-crew57__intro{
    max-width:740px!important;
  }
  .gp-crew57__grid{
    margin-top:26px!important;
  }
  .gp-crew57__photo-wrap{
    align-self:center!important;
    transform:translateY(10px);
  }
}


/* VERSION 2.15.77 — LOCKED CREW PHOTO FRAME ALIGNMENT */
@media (min-width:1041px){
  /* Every photo—real or placeholder—begins at the exact same vertical point. */
  .gp-crew57__photo-wrap{
    align-self:start!important;
    margin-top:112px!important;
    transform:none!important;
    width:172px!important;
    height:238px!important;
  }
  .gp-crew57__photo{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
}

@media (min-width:681px) and (max-width:1040px){
  .gp-crew57__photo-wrap{
    align-self:start!important;
    margin-top:96px!important;
    transform:none!important;
    width:190px!important;
    height:238px!important;
  }
  .gp-crew57__photo{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
}

/* VERSION 2.15.80 — MOBILE CAMPFIRE SCENE RAISED 24PX */
@media (max-width:680px){
  /* Preserve the approved mobile type and spacing while giving the artwork
     enough height to show all four friends instead of cropping the sides. */
  .gp-crew57__hero{
    padding-bottom:300px !important;
  }
  .gp-crew57__hero::before{
    width:112vw !important;
    max-width:520px !important;
    height:315px !important;
    bottom:24px !important;
    background-size:contain !important;
    background-position:center bottom !important;
    background-repeat:no-repeat !important;
    opacity:.085 !important;
  }
  .gp-crew57__grid{
    margin-top:-4px !important;
  }
}
@media (max-width:420px){
  .gp-crew57__hero{
    padding-bottom:280px !important;
  }
  .gp-crew57__hero::before{
    width:114vw !important;
    max-width:470px !important;
    height:292px !important;
  }
}


/* VERSION 2.15.81 — FINAL CLOSING TYPOGRAPHY POLISH */
.gp-crew-native__closing h2{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif!important;
  font-weight:400!important;
  letter-spacing:-.02em!important;
}
.gp-crew-native__motto{
  font-size:19px!important;
}
.gp-crew-native__signoff{
  font-family:"Kalam","Segoe Print","Bradley Hand",sans-serif!important;
  font-style:normal!important;
  font-weight:500!important;
  font-size:21px!important;
  letter-spacing:.01em!important;
  transform:rotate(-1deg);
}
@media(max-width:680px){
  .gp-crew-native__closing h2{font-size:clamp(36px,11vw,48px)!important;}
  .gp-crew-native__motto{font-size:17px!important;}
  .gp-crew-native__signoff{font-size:20px!important;}
}

/* VERSION 2.15.82 — LIVE PULL UP A CHAIR TYPOGRAPHY FIX
   Correct selectors for the active gp-crew57 renderer. */
.gp-crew57__closing h2{
  font-family:"Rye","Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-style:normal !important;
  font-weight:400 !important;
  letter-spacing:-.025em !important;
  line-height:.98 !important;
  text-transform:none !important;
}
.gp-crew57__motto{
  font-size:16px !important;
}
.gp-crew57__signoff{
  font-family:"Kalam","Segoe Print","Bradley Hand",sans-serif !important;
  font-style:normal !important;
  font-weight:400 !important;
  font-size:22px !important;
  line-height:1.25 !important;
  letter-spacing:.01em !important;
  transform:rotate(-1deg);
}
@media(max-width:680px){
  .gp-crew57__closing h2{
    font-size:clamp(42px,12vw,56px) !important;
  }
  .gp-crew57__motto{
    font-size:17px !important;
  }
  .gp-crew57__signoff{
    font-size:21px !important;
  }
}



/* VERSION 2.15.83 — FINAL PULL UP A CHAIR TYPOGRAPHY */
.gp-crew57__closing h2{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-style:normal !important;
  font-weight:400 !important;
  letter-spacing:-.02em !important;
  line-height:1.02 !important;
  text-transform:none !important;
}
.gp-crew57__signoff{
  font-family:"Kalam","Segoe Print","Bradley Hand",sans-serif !important;
  font-style:normal !important;
  font-weight:700 !important;
  font-size:19px !important;
  line-height:1.2 !important;
  letter-spacing:-.015em !important;
  transform:rotate(-.5deg) !important;
}
@media(max-width:680px){
  .gp-crew57__closing h2{
    font-size:clamp(38px,10.5vw,50px) !important;
  }
  .gp-crew57__signoff{
    font-size:18px !important;
  }
}

/* =========================================================
   VERSION 2.15.84 — STORE LAUNCH / LIVE PRODUCT PURCHASING
   Keeps the branded product page while making WooCommerce's
   quantity, variation, stock, and Add to Cart controls usable.
   ========================================================= */
body.single-product .gp-live-product-cart form.variations_form.cart{
  display:block !important;
  width:100% !important;
}
body.single-product .gp-live-product-cart table.variations{
  width:100% !important;
  margin:0 0 18px !important;
  border:0 !important;
  border-collapse:collapse !important;
}
body.single-product .gp-live-product-cart table.variations tbody,
body.single-product .gp-live-product-cart table.variations tr,
body.single-product .gp-live-product-cart table.variations th,
body.single-product .gp-live-product-cart table.variations td{
  display:block !important;
  width:100% !important;
}
body.single-product .gp-live-product-cart table.variations th,
body.single-product .gp-live-product-cart table.variations td{
  padding:0 !important;
  border:0 !important;
  text-align:left !important;
}
body.single-product .gp-live-product-cart table.variations th.label{
  margin:0 0 8px !important;
}
body.single-product .gp-live-product-cart table.variations th.label label{
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:13px !important;
  font-weight:400 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
}
body.single-product .gp-live-product-cart table.variations td.value{
  position:relative !important;
  margin:0 0 18px !important;
}
body.single-product .gp-live-product-cart table.variations select{
  display:block !important;
  width:100% !important;
  min-height:50px !important;
  margin:0 !important;
  padding:0 44px 0 15px !important;
  border:2px solid var(--black) !important;
  border-radius:14px !important;
  background-color:var(--paper) !important;
  color:var(--black) !important;
  font-family:Georgia,Cambria,serif !important;
  font-size:16px !important;
  line-height:1.2 !important;
}
body.single-product .gp-live-product-cart .reset_variations{
  display:inline-block !important;
  margin-top:8px !important;
  color:var(--brown) !important;
  font-size:13px !important;
  font-weight:700 !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}
body.single-product .gp-live-product-cart .single_variation_wrap{
  width:100% !important;
  margin-top:4px !important;
}
body.single-product .gp-live-product-cart .woocommerce-variation{
  margin:0 0 14px !important;
}
body.single-product .gp-live-product-cart .woocommerce-variation-price,
body.single-product .gp-live-product-cart .woocommerce-variation-availability{
  margin:0 0 10px !important;
}
body.single-product .gp-live-product-cart .woocommerce-variation-price .price{
  color:var(--brown) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:24px !important;
}
body.single-product .gp-live-product-cart .stock{
  margin:0 0 12px !important;
  font-size:15px !important;
  font-weight:700 !important;
}
body.single-product .gp-live-product-cart .woocommerce-variation-add-to-cart,
body.single-product .gp-live-product-cart form.cart:not(.variations_form){
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:12px !important;
}
body.single-product .gp-live-product-cart .quantity{
  float:none !important;
  margin:0 !important;
}
body.single-product .gp-live-product-cart .quantity .qty{
  width:78px !important;
  min-height:50px !important;
  padding:0 10px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--paper) !important;
  color:var(--black) !important;
  font-size:16px !important;
  font-weight:700 !important;
  text-align:center !important;
}
body.single-product .gp-live-product-cart .single_add_to_cart_button{
  min-width:190px !important;
  min-height:50px !important;
  cursor:pointer !important;
}
body.single-product .gp-live-product-cart .single_add_to_cart_button.disabled,
body.single-product .gp-live-product-cart .single_add_to_cart_button:disabled{
  cursor:not-allowed !important;
  opacity:.5 !important;
}
body.single-product .gp-live-product-cart .added_to_cart{
  margin-left:4px !important;
  color:var(--brown) !important;
  font-weight:700 !important;
  text-decoration:underline !important;
}
@media(max-width:640px){
  body.single-product .gp-live-product-cart .woocommerce-variation-add-to-cart,
  body.single-product .gp-live-product-cart form.cart:not(.variations_form){
    align-items:stretch !important;
  }
  body.single-product .gp-live-product-cart .single_add_to_cart_button{
    flex:1 1 190px !important;
  }
}



/* ================================================================
   VERSION 2.15.85 — LAUNCH POLISH
   Restores a permanent header cart, removes the legacy black .cart
   capsule from live product forms, and restrains product photography.
   ================================================================ */

/* The early pre-launch rules hid every link containing /cart/. The
   launched header cart must remain visible on every public page. */
.gp-header-actions .gp-cart-action{
  display:grid !important;
}
.gp-header-actions .gp-cart-action .gp-cart-count:empty{
  display:none !important;
}

/* Keep product photography substantial without allowing portrait
   lifestyle images to stretch the page for several screen lengths. */
body.single-product .gp-single-product-main-image{
  height:clamp(500px,52vw,680px) !important;
  min-height:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
body.single-product .gp-single-product-main-image img{
  width:100% !important;
  height:100% !important;
  max-height:680px !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center top !important;
}

/* The theme's original generic .cart class was a black pill intended
   for an old navigation button. WooCommerce also calls its purchase
   form .cart, so explicitly neutralize that legacy treatment here. */
body.single-product .gp-live-product-cart form.cart,
body.single-product .gp-live-product-cart form.variations_form.cart{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--black) !important;
  box-shadow:none !important;
}
body.single-product .gp-live-product-cart table.variations{
  width:100% !important;
  margin:0 0 12px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
body.single-product .gp-live-product-cart .single_variation_wrap,
body.single-product .gp-live-product-cart .woocommerce-variation-add-to-cart{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}
body.single-product .gp-live-product-cart .woocommerce-variation-add-to-cart{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:12px !important;
}

@media(max-width:900px){
  body.single-product .gp-single-product-main-image{
    height:clamp(430px,90vw,650px) !important;
  }
}
@media(max-width:560px){
  body.single-product .gp-single-product-main-image{
    height:min(118vw,590px) !important;
  }
  body.single-product .gp-header-actions{
    gap:0 !important;
  }
  body.single-product .gp-live-product-cart .woocommerce-variation-add-to-cart{
    align-items:stretch !important;
  }
}

/* ================================================================
   VERSION 2.15.86 — FINAL STORE POLISH
   Compact desktop product presentation, product-page express-payment
   cleanup, and a fully branded WooCommerce Cart Block experience.
   ================================================================ */

/* PRODUCT PAGE — keep the complete buying area within one desktop view. */
@media (min-width: 961px){
  body.single-product .gp-woocommerce-main.gp-product-detail-page{
    width:min(1140px,100%) !important;
    padding:38px 24px 72px !important;
  }
  body.single-product .gp-single-product-grid{
    grid-template-columns:minmax(0,1fr) minmax(390px,.88fr) !important;
    gap:32px !important;
    align-items:stretch !important;
  }
  body.single-product .gp-single-product-media,
  body.single-product .gp-single-product-summary{
    min-height:0 !important;
    height:auto !important;
  }
  body.single-product .gp-single-product-main-image{
    height:520px !important;
  }
  body.single-product .gp-single-product-main-image img{
    max-height:520px !important;
    object-position:center 18% !important;
  }
  body.single-product .gp-single-product-gallery{
    grid-template-columns:repeat(5,72px) !important;
    justify-content:start !important;
    gap:10px !important;
    padding:13px 16px !important;
  }
  body.single-product .gp-product-thumb{
    width:72px !important;
  }
  body.single-product .gp-single-product-summary{
    padding:30px 30px 28px !important;
  }
  body.single-product .gp-single-product-summary h1{
    margin-bottom:14px !important;
    font-size:clamp(42px,4.2vw,60px) !important;
    line-height:.94 !important;
  }
  body.single-product .gp-product-short,
  body.single-product .gp-product-short p{
    font-size:17px !important;
    line-height:1.45 !important;
  }
  body.single-product .gp-live-product-price{
    margin:22px 0 14px !important;
  }
  body.single-product .gp-live-product-cart table.variations{
    margin-bottom:8px !important;
  }
  body.single-product .gp-live-product-cart table.variations select{
    min-height:46px !important;
  }
  body.single-product .gp-live-product-cart .quantity .qty,
  body.single-product .gp-live-product-cart .single_add_to_cart_button{
    min-height:46px !important;
  }
  body.single-product .gp-product-actions-live{
    margin-top:18px !important;
  }
}

/* Express checkout belongs in cart/checkout, not inside the story-led
   product presentation. WooPayments uses several wrappers by version. */
body.single-product #wcpay-payment-request-wrapper,
body.single-product #wcpay-payment-request-button-separator,
body.single-product .wcpay-payment-request-wrapper,
body.single-product .wcpay-payment-request-button-separator,
body.single-product .wc-block-components-express-payment,
body.single-product .wc-block-components-express-payment-continue-rule,
body.single-product .ppc-button-wrapper,
body.single-product .apple-pay-button-wrapper,
body.single-product .google-pay-button-wrapper{
  display:none !important;
}

/* CART PAGE — branded, centered, and intentionally compact. */
body.woocommerce-cart main,
body.woocommerce-cart .wp-site-blocks main,
body.woocommerce-cart .entry-content{
  background:var(--cream) !important;
}
body.woocommerce-cart .wp-block-woocommerce-cart{
  width:min(1160px,calc(100% - 40px)) !important;
  margin:54px auto 82px !important;
  padding:34px !important;
  border:3px solid var(--black) !important;
  border-radius:28px !important;
  background:var(--paper) !important;
  box-shadow:10px 10px 0 var(--orange) !important;
}
body.woocommerce-cart .wc-block-cart{
  gap:30px !important;
}
body.woocommerce-cart .wc-block-cart__main{
  padding-right:28px !important;
}
body.woocommerce-cart .wc-block-cart__sidebar{
  padding-left:28px !important;
  border-left:2px solid var(--black) !important;
}
body.woocommerce-cart .wc-block-cart-items{
  margin:0 !important;
  border:0 !important;
}
body.woocommerce-cart .wc-block-cart-items thead th,
body.woocommerce-cart .wc-block-cart__totals-title{
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:15px !important;
  font-weight:400 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
body.woocommerce-cart .wc-block-cart-items__row{
  border-top:1px solid rgba(11,10,7,.2) !important;
}
body.woocommerce-cart .wc-block-cart-item__image img{
  width:104px !important;
  height:104px !important;
  border:2px solid var(--black) !important;
  border-radius:14px !important;
  object-fit:cover !important;
}
body.woocommerce-cart .wc-block-components-product-name{
  color:var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:19px !important;
  line-height:1.12 !important;
  text-decoration:none !important;
}
body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-details{
  color:#574b3e !important;
  font-size:14px !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector{
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--cream) !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector input,
body.woocommerce-cart .wc-block-components-quantity-selector button{
  min-height:38px !important;
  color:var(--black) !important;
}
body.woocommerce-cart .wc-block-cart-item__remove-link{
  color:var(--brown) !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}
body.woocommerce-cart .wc-block-cart__sidebar{
  align-self:start !important;
}
body.woocommerce-cart .wc-block-components-totals-wrapper,
body.woocommerce-cart .wc-block-components-panel,
body.woocommerce-cart .wc-block-components-totals-coupon{
  border-color:rgba(11,10,7,.2) !important;
}
body.woocommerce-cart .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-item__value{
  color:var(--black) !important;
  font-family:Georgia,Cambria,serif !important;
  font-size:16px !important;
}
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:24px !important;
  font-weight:400 !important;
}
body.woocommerce-cart .wc-block-cart__submit-button{
  min-height:54px !important;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  background:var(--orange) !important;
  color:var(--black) !important;
  box-shadow:5px 5px 0 var(--black) !important;
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:15px !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
}
body.woocommerce-cart .wc-block-cart__submit-button:hover{
  transform:translate(2px,2px) !important;
  box-shadow:3px 3px 0 var(--black) !important;
}
body.woocommerce-cart .wc-block-components-express-payment{
  margin-top:22px !important;
}
body.woocommerce-cart .wc-block-components-express-payment__event-buttons{
  border-radius:12px !important;
  overflow:hidden !important;
}
body.woocommerce-cart .wc-block-cart__empty-cart__title{
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif !important;
  font-size:clamp(42px,6vw,72px) !important;
  text-transform:uppercase !important;
}

@media (max-width: 900px){
  body.woocommerce-cart .wp-block-woocommerce-cart{
    width:min(100% - 24px,760px) !important;
    margin:30px auto 62px !important;
    padding:22px !important;
    border-radius:22px !important;
    box-shadow:7px 7px 0 var(--orange) !important;
  }
  body.woocommerce-cart .wc-block-cart__main{
    padding-right:0 !important;
  }
  body.woocommerce-cart .wc-block-cart__sidebar{
    padding:24px 0 0 !important;
    border-left:0 !important;
    border-top:2px solid var(--black) !important;
  }
}

@media (max-width: 560px){
  body.single-product .gp-woocommerce-main.gp-product-detail-page{
    padding-top:24px !important;
  }
  body.single-product .gp-single-product-main-image{
    height:min(108vw,520px) !important;
  }
  body.woocommerce-cart .wp-block-woocommerce-cart{
    width:calc(100% - 18px) !important;
    padding:16px !important;
  }
  body.woocommerce-cart .wc-block-cart-item__image img{
    width:78px !important;
    height:78px !important;
  }
}

/* ================================================================
   VERSION 2.15.87 — PRODUCT GALLERY + CART FINISH
   Show complete apparel photography, remove product-page express pay,
   and restore the handcrafted Guadalupe cart template.
   ================================================================ */

/* Keep the compact product footprint without cutting off the garment. */
body.single-product .gp-single-product-main-image{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  background:#f8f0df !important;
}
body.single-product .gp-single-product-main-image img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center top !important;
}

/* The only child retained here is WooCommerce's normal add-to-cart form. */
body.single-product .gp-live-product-cart > *:not(form.cart),
body.single-product #wcpay-express-checkout-element,
body.single-product #wcpay-express-checkout-button-separator,
body.single-product .wcpay-express-checkout-wrapper,
body.single-product .wcpay-express-checkout-button,
body.single-product iframe[title*="Google Pay" i],
body.single-product iframe[title*="G Pay" i]{
  display:none !important;
}

/* CLASSIC GUADALUPE CART — balanced product and totals cards. */
body.woocommerce-cart section.gp-commerce-shell{
  width:min(1120px,100%) !important;
  padding:42px 24px 82px !important;
}
body.woocommerce-cart .gp-commerce-header{
  margin-bottom:26px !important;
}
body.woocommerce-cart .gp-commerce-header h1{
  font-size:clamp(52px,7vw,82px) !important;
}
body.woocommerce-cart .gp-commerce-card{
  padding:28px !important;
}
body.woocommerce-cart .gp-commerce-card > .woocommerce{
  display:grid !important;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.75fr) !important;
  gap:28px !important;
  align-items:start !important;
}
body.woocommerce-cart .gp-commerce-card .woocommerce-notices-wrapper,
body.woocommerce-cart .gp-commerce-card .woocommerce-message,
body.woocommerce-cart .gp-commerce-card .woocommerce-info,
body.woocommerce-cart .gp-commerce-card .woocommerce-error,
body.woocommerce-cart .gp-commerce-card .return-to-shop{
  grid-column:1 / -1 !important;
}
body.woocommerce-cart .gp-commerce-card form.woocommerce-cart-form{
  grid-column:1 !important;
  margin:0 !important;
  padding:22px !important;
  border:2px solid var(--black) !important;
  border-radius:20px !important;
  background:var(--cream) !important;
}
body.woocommerce-cart .gp-commerce-card .cart-collaterals{
  grid-column:2 !important;
  display:block !important;
  margin:0 !important;
}
body.woocommerce-cart .gp-commerce-card .cart_totals{
  width:100% !important;
  padding:24px !important;
  background:var(--cream) !important;
  box-shadow:6px 6px 0 var(--orange) !important;
}
body.woocommerce-cart .gp-commerce-card table.shop_table{
  margin:0 !important;
}
body.woocommerce-cart .gp-commerce-card table.shop_table th,
body.woocommerce-cart .gp-commerce-card table.shop_table td{
  padding:14px 10px !important;
}
body.woocommerce-cart .gp-commerce-card table.shop_table .product-thumbnail img{
  width:92px !important;
  height:112px !important;
  object-fit:contain !important;
  background:var(--paper) !important;
}
body.woocommerce-cart .gp-commerce-card td.actions{
  padding-top:20px !important;
}
body.woocommerce-cart .gp-commerce-card .cart_totals h2{
  font-size:30px !important;
}
body.woocommerce-cart .gp-commerce-card .cart_totals table th,
body.woocommerce-cart .gp-commerce-card .cart_totals table td{
  padding:12px 4px !important;
}
body.woocommerce-cart .gp-commerce-card .wc-proceed-to-checkout a.checkout-button{
  min-height:52px !important;
  box-shadow:4px 4px 0 var(--black) !important;
}

@media (max-width: 860px){
  body.woocommerce-cart .gp-commerce-card > .woocommerce{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-cart .gp-commerce-card form.woocommerce-cart-form,
  body.woocommerce-cart .gp-commerce-card .cart-collaterals{
    grid-column:1 !important;
  }
}

@media (max-width: 560px){
  body.single-product .gp-single-product-main-image{
    height:auto !important;
    min-height:0 !important;
  }
  body.single-product .gp-single-product-main-image img{
    height:auto !important;
    max-height:none !important;
  }
  body.woocommerce-cart section.gp-commerce-shell{
    padding:28px 12px 62px !important;
  }
  body.woocommerce-cart .gp-commerce-card{
    padding:14px !important;
  }
  body.woocommerce-cart .gp-commerce-card form.woocommerce-cart-form,
  body.woocommerce-cart .gp-commerce-card .cart_totals{
    padding:15px !important;
  }
}

/* ================================================================
   VERSION 2.15.88 — STORE FINISH
   Portrait-friendly product gallery and guaranteed cart item output.
   ================================================================ */
@media (min-width: 961px){
  body.single-product .gp-woocommerce-main.gp-product-detail-page{
    width:min(1060px,100%) !important;
  }
  body.single-product .gp-single-product-grid{
    grid-template-columns:470px minmax(0,1fr) !important;
    gap:28px !important;
  }
  body.single-product .gp-single-product-media{
    padding:22px 18px 18px !important;
  }
  body.single-product .gp-single-product-main-image{
    width:min(100%,410px) !important;
    height:520px !important;
    margin:0 auto !important;
    background:#f8f0df !important;
  }
  body.single-product .gp-single-product-main-image img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
  }
  body.single-product .gp-single-product-gallery{
    width:min(100%,410px) !important;
    margin:0 auto !important;
    padding:13px 0 0 !important;
  }
}

body.woocommerce-cart .gp-cart-finish-card{
  padding:26px !important;
}
body.woocommerce-cart .gp-cart-layout{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:28px;
  align-items:start;
}
body.woocommerce-cart .gp-cart-items-card,
body.woocommerce-cart .gp-cart-totals-card{
  margin:0 !important;
  padding:24px !important;
  border:2px solid var(--black) !important;
  border-radius:20px !important;
  background:var(--cream) !important;
}
body.woocommerce-cart .gp-cart-totals-card{
  box-shadow:6px 6px 0 var(--orange) !important;
}
body.woocommerce-cart .gp-cart-items-heading{
  display:grid;
  grid-template-columns:1fr auto;
  gap:20px;
  padding:0 0 14px;
  border-bottom:1px solid rgba(11,10,7,.22);
  font-family:"Caprasimo","Cooper Black","Bookman Old Style",Georgia,serif;
  font-size:14px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.woocommerce-cart .gp-cart-line-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:22px;
  align-items:start;
  padding:20px 0;
  border-bottom:1px solid rgba(11,10,7,.18);
}
body.woocommerce-cart .gp-cart-line-main{
  display:grid;
  grid-template-columns:108px minmax(0,1fr);
  gap:18px;
  align-items:start;
}
body.woocommerce-cart .gp-cart-line-image img{
  display:block;
  width:108px !important;
  height:132px !important;
  border:2px solid var(--black);
  border-radius:14px;
  background:var(--paper);
  object-fit:contain;
}
body.woocommerce-cart .gp-cart-line-copy h2{
  margin:0 0 5px;
  font-size:20px;
  line-height:1.1;
}
body.woocommerce-cart .gp-cart-line-copy h2 a{
  color:var(--black);
  text-decoration:none;
}
body.woocommerce-cart .gp-cart-line-price{
  margin-bottom:5px;
  color:var(--brown);
  font-weight:800;
}
body.woocommerce-cart .gp-cart-line-meta,
body.woocommerce-cart .gp-cart-line-meta p{
  margin:0;
  color:#574b3e;
  font-size:14px;
}
body.woocommerce-cart .gp-cart-line-controls{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:12px;
}
body.woocommerce-cart .gp-cart-line-controls .quantity .qty{
  width:78px !important;
  min-height:42px !important;
  padding:6px 8px !important;
  border-radius:999px !important;
  text-align:center;
}
body.woocommerce-cart .gp-cart-remove{
  display:inline-grid !important;
  width:34px !important;
  height:34px !important;
  place-items:center;
  border:2px solid var(--black) !important;
  border-radius:999px !important;
  color:var(--black) !important;
  font-size:22px !important;
  text-decoration:none !important;
}
body.woocommerce-cart .gp-cart-line-total{
  color:var(--brown);
  font-weight:800;
  white-space:nowrap;
}
body.woocommerce-cart .gp-cart-form-actions{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:14px;
  padding-top:20px;
}
body.woocommerce-cart .gp-cart-coupon{
  display:flex;
  gap:10px;
}
body.woocommerce-cart .gp-cart-coupon .input-text{
  width:180px !important;
}
body.woocommerce-cart .gp-cart-totals-card .cart-collaterals,
body.woocommerce-cart .gp-cart-totals-card .cart_totals{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
body.woocommerce-cart .gp-cart-empty{
  padding:48px 24px;
  text-align:center;
}
body.woocommerce-cart .gp-cart-empty h2{
  margin:0 0 10px;
  font-size:38px;
  text-transform:uppercase;
}

@media(max-width:860px){
  body.woocommerce-cart .gp-cart-layout{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  body.woocommerce-cart .gp-cart-finish-card,
  body.woocommerce-cart .gp-cart-items-card,
  body.woocommerce-cart .gp-cart-totals-card{
    padding:15px !important;
  }
  body.woocommerce-cart .gp-cart-items-heading{
    display:none;
  }
  body.woocommerce-cart .gp-cart-line-item{
    grid-template-columns:1fr;
  }
  body.woocommerce-cart .gp-cart-line-main{
    grid-template-columns:86px minmax(0,1fr);
    gap:12px;
  }
  body.woocommerce-cart .gp-cart-line-image img{
    width:86px !important;
    height:106px !important;
  }
  body.woocommerce-cart .gp-cart-line-total{
    padding-left:98px;
  }
  body.woocommerce-cart .gp-cart-form-actions,
  body.woocommerce-cart .gp-cart-coupon{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  body.woocommerce-cart .gp-cart-coupon .input-text,
  body.woocommerce-cart .gp-cart-form-actions .button{
    width:100% !important;
  }
}


/* ================================================================
   VERSION 2.15.89 — FINAL PRODUCT PHOTOGRAPHY POLISH
   Balances the homepage at three hats and three shirts, gives shirt
   photography a more intentional garment-focused crop, removes the
   stray image divider, and lets cart thumbnails fill their frames.
   ================================================================ */

/* HOMEPAGE — matching three-card featured collections. */
body.home .gp-featured-hats-dynamic,
body.front-page .gp-featured-hats-dynamic{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  width:min(100%,1080px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Treat the homepage shirt photos as intentional garment-detail crops
   rather than accidental headless portraits. */
body.home .gp-home-featured-shirt .product-photo,
body.front-page .gp-home-featured-shirt .product-photo{
  aspect-ratio:4 / 3 !important;
  background:#1a1712 !important;
}
body.home .gp-home-featured-shirt .product-photo img,
body.front-page .gp-home-featured-shirt .product-photo img{
  object-fit:cover !important;
  object-position:center 58% !important;
  transform:scale(1.035);
}

/* SHIRTS PAGE — fuller, more consistent card photography. */
body.gp-shop-shirts .gp-shirt-product-card > figure{
  aspect-ratio:4 / 3 !important;
  margin-bottom:18px !important;
  border-bottom:0 !important;
  background:#1a1712 !important;
}
body.gp-shop-shirts .gp-shirt-product-card > figure::after{
  display:none !important;
  content:none !important;
}
body.gp-shop-shirts .gp-shirt-product-card > figure img{
  object-fit:cover !important;
  object-position:center 55% !important;
  transform:scale(1.02);
}

/* PRODUCT PAGE — fill the photography panel cleanly and remove the
   unexplained dark rule at the bottom of the main image. */
body.single-product .gp-single-product-main-image{
  border-bottom:0 !important;
  background:#1a1712 !important;
}
body.single-product .gp-single-product-main-image::after{
  display:none !important;
  content:none !important;
}
body.single-product .gp-single-product-main-image img{
  object-fit:cover !important;
  object-position:center 28% !important;
}

/* CART — use the entire premium thumbnail frame instead of floating a
   narrow portrait image inside it. */
body.woocommerce-cart .gp-cart-line-image{
  display:block;
  width:108px;
  height:132px;
  overflow:hidden;
  border:2px solid var(--black);
  border-radius:14px;
  background:#1a1712;
}
body.woocommerce-cart .gp-cart-line-image img{
  width:100% !important;
  height:100% !important;
  border:0 !important;
  border-radius:0 !important;
  object-fit:cover !important;
  object-position:center 30% !important;
}

@media(max-width:900px){
  body.home .gp-featured-hats-dynamic,
  body.front-page .gp-featured-hats-dynamic{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:620px){
  body.home .gp-featured-hats-dynamic,
  body.front-page .gp-featured-hats-dynamic{
    grid-template-columns:1fr !important;
  }
  body.home .gp-home-featured-shirt .product-photo,
  body.front-page .gp-home-featured-shirt .product-photo,
  body.gp-shop-shirts .gp-shirt-product-card > figure{
    aspect-ratio:4 / 3 !important;
  }
}

/* ================================================================
   VERSION 2.15.97 — EVEN SHIRT COLLECTION PHOTO FRAMES
   Uses the first WooCommerce gallery image in a consistent 4:5
   portrait frame. Images are anchored at the top so the cards crop
   only excess floor and background from the bottom while keeping the
   shirt itself visible and every collection card the same height.
   ================================================================ */

/* Dedicated Shirts page, All Gear shirt cards, and any other dynamic
   shirt collection using the shared shirt-card markup. */
.gp-shirt-product-card > figure.gp-shirt-photo-final{
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:4 / 5 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  line-height:0 !important;
  flex:0 0 auto !important;
}

.gp-shirt-product-card > figure.gp-shirt-photo-final img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:cover !important;
  object-position:center top !important;
  transform:none !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
}

/* Homepage Featured Shirts uses one extra wrapper and figure. */
body.home .gp-home-featured-shirt .product-photo.gp-shirt-photo-final,
body.front-page .gp-home-featured-shirt .product-photo.gp-shirt-photo-final{
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:4 / 5 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  line-height:0 !important;
  flex:0 0 auto !important;
}

body.home .gp-home-featured-shirt .product-photo.gp-shirt-photo-final figure,
body.front-page .gp-home-featured-shirt .product-photo.gp-shirt-photo-final figure{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  line-height:0 !important;
}

body.home .gp-home-featured-shirt .product-photo.gp-shirt-photo-final img,
body.front-page .gp-home-featured-shirt .product-photo.gp-shirt-photo-final img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:cover !important;
  object-position:center top !important;
  transform:none !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
}



/* v2.15.99 — Let the Gutenberg image block control the Stickers & Patches artwork. */
body.home .small-goods-panel .sticker-photo-block img,
body.home .small-goods-panel > .wp-block-group:last-child .wp-block-image img {
  content: normal !important;
}

/* v2.16.00 — Stickers & Patches hard fix.
   The legacy desktop/mobile asset filenames themselves now contain the mixed
   stickers + patches artwork, so older content:url overrides cannot show
   the sticker-only art. */


/* ================================================================
   VERSION 2.16.01 — STICKERS & PATCHES SHARED GEAR NAV
   Updates the visible category label everywhere while preserving the
   existing /stickers/ URL and WooCommerce/internal category keys.
   The longer label is allowed to wrap cleanly on narrow screens.
   ================================================================ */
.section-subnav-gear a[href$="/stickers/"],
.section-subnav.gp-gear-category-nav a[href$="/stickers/"]{
  white-space:normal !important;
  text-align:center !important;
  line-height:1.05 !important;
}

@media (max-width:900px){
  .section-subnav-gear a[href$="/stickers/"],
  .section-subnav.gp-gear-category-nav a[href$="/stickers/"]{
    font-size:clamp(9px,2.2vw,12px) !important;
    letter-spacing:.02em !important;
    padding-left:2px !important;
    padding-right:2px !important;
  }
}

@media (max-width:430px){
  .section-subnav-gear a[href$="/stickers/"],
  .section-subnav.gp-gear-category-nav a[href$="/stickers/"]{
    font-size:9px !important;
    line-height:1 !important;
  }
}


/* ================================================================
   VERSION 2.16.02 — STICKERS & PATCHES PAGE CLEANUP
   ================================================================ */

/* Let the category name own the page; the support line is intentionally quieter. */
body.gp-shop-stickers .gp-stickers-intro .gp-stickers-intro-title{
  max-width:760px !important;
  margin:0 auto 12px !important;
  font-size:clamp(24px,2.55vw,36px) !important;
  line-height:1.02 !important;
  text-wrap:balance !important;
}

body.gp-shop-stickers .gp-stickers-intro .gp-stickers-intro-copy{
  max-width:620px !important;
  margin:0 auto !important;
}

/* The store is open. Never show the legacy launch CTA on this page. */
body.gp-shop-stickers .gp-stickers-launch-cta,
body.gp-shop-stickers .gp-launch-cta{
  display:none !important;
}

/* Product photos are portrait source images. A 4:3 cover crop was cutting
   the actual stickers out of frame, so use a near-source 4:5 frame. */
@media (min-width:901px){
  body.gp-shop-stickers .gp-sticker-product-card figure{
    aspect-ratio:4 / 5 !important;
    overflow:hidden !important;
  }

  body.gp-shop-stickers .gp-sticker-product-card figure img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
  }
}


/* ================================================================
   VERSION 2.16.03 — HATS / STICKERS CTA + FULL ACCESSORY PHOTOS
   ================================================================ */

/* The store is open; obsolete pre-launch CTAs are retired. */
body.gp-shop-hats .gp-hats-launch-cta,
body.gp-shop-stickers .gp-stickers-launch-cta{
  display:none !important;
}

/* Accessory cards must show the whole featured photo, never a forced crop. */
body.gp-shop-stickers .gp-sticker-product-card figure,
body.gp-shop-stickers .gp-dynamic-product-grid .gp-sticker-product-card figure{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  overflow:hidden !important;
  margin:0 0 16px !important;
}

body.gp-shop-stickers .gp-sticker-product-card figure img,
body.gp-shop-stickers .gp-dynamic-product-grid .gp-sticker-product-card figure img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
}


/* ================================================================
   VERSION 2.16.04 — STICKER CARD PROPORTIONS
   The full-natural-ratio treatment in 2.16.03 made the cards far too
   tall. Return to a compact landscape card and bias the crop lower so
   the full sticker remains the visual focus.
   ================================================================ */

body.gp-shop-stickers .gp-products-page .gp-dynamic-product-grid > .gp-sticker-product-card > figure,
body.gp-shop-stickers .gp-sticker-product-card figure{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:4 / 3 !important;
  overflow:hidden !important;
  margin:0 0 16px !important;
  background:#efe2ca !important;
}

body.gp-shop-stickers .gp-products-page .gp-dynamic-product-grid > .gp-sticker-product-card > figure img,
body.gp-shop-stickers .gp-sticker-product-card figure img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center 68% !important;
}

/* Keep the category heading visually dominant over the support sentence. */
body.gp-shop-stickers .gp-stickers-intro .gp-stickers-intro-title,
body.gp-shop-stickers .gp-stickers-intro-title{
  max-width:760px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  font-size:clamp(22px,2.2vw,31px) !important;
  line-height:1.06 !important;
  text-wrap:balance !important;
}

@media (max-width:699px){
  body.gp-shop-stickers .gp-products-page .gp-dynamic-product-grid > .gp-sticker-product-card > figure,
  body.gp-shop-stickers .gp-sticker-product-card figure{
    aspect-ratio:4 / 3 !important;
  }

  body.gp-shop-stickers .gp-stickers-intro .gp-stickers-intro-title,
  body.gp-shop-stickers .gp-stickers-intro-title{
    font-size:clamp(20px,6vw,27px) !important;
  }
}


/* ================================================================
   VERSION 2.16.05 — STICKER LISTING PHOTOS + CTA FOOTER SPACING
   ================================================================ */

/* The two established sticker cards now use exact 4:3 listing artwork,
   so do not introduce another crop on top of those files. */
body.gp-shop-stickers .gp-sticker-product-card figure,
body.gp-shop-stickers .gp-products-page .gp-dynamic-product-grid > .gp-sticker-product-card > figure{
  aspect-ratio:4 / 3 !important;
  overflow:hidden !important;
}

body.gp-shop-stickers .gp-sticker-product-card figure img,
body.gp-shop-stickers .gp-products-page .gp-dynamic-product-grid > .gp-sticker-product-card > figure img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}

/* Keep the evergreen Join-the-Pack card clear of the legal footer on
   both Hats and Stickers & Patches. */
body.gp-shop-hats .gp-evergreen-pack-cta,
body.gp-shop-stickers .gp-evergreen-pack-cta{
  margin:52px auto 58px !important;
}

@media (max-width:560px){
  body.gp-shop-hats .gp-evergreen-pack-cta,
  body.gp-shop-stickers .gp-evergreen-pack-cta{
    margin:38px auto 46px !important;
  }
}


/* ================================================================
   VERSION 2.16.06 — PRODUCT PAGE FOOTER CLEARANCE
   Bottom margins on the final CTA can collapse through .inner-page-main,
   allowing the orange card shadow to visually run into the legal footer.
   Real padding on the page container creates guaranteed physical space.
   ================================================================ */

body.gp-shop-hats .inner-page-main,
body.gp-shop-stickers .inner-page-main{
  box-sizing:border-box !important;
  padding-bottom:72px !important;
}

/* Let the page padding, rather than a collapsible last-child margin,
   control the final space above the legal footer. */
body.gp-shop-hats .gp-evergreen-pack-cta,
body.gp-shop-stickers .gp-evergreen-pack-cta{
  margin-top:52px !important;
  margin-bottom:0 !important;
}

/* Keep the footer in its own visual layer below the cream page area. */
body.gp-shop-hats .gp-legal-footer,
body.gp-shop-stickers .gp-legal-footer{
  position:relative !important;
  z-index:2 !important;
}

@media (max-width:560px){
  body.gp-shop-hats .inner-page-main,
  body.gp-shop-stickers .inner-page-main{
    padding-bottom:54px !important;
  }

  body.gp-shop-hats .gp-evergreen-pack-cta,
  body.gp-shop-stickers .gp-evergreen-pack-cta{
    margin-top:38px !important;
    margin-bottom:0 !important;
  }
}


/* ================================================================
   VERSION 2.16.07 — MATCH HATS / STICKERS CTA TO SHIRTS
   The evergreen CTA is now rendered INSIDE .gp-products-page, exactly
   like the Shirts CTA. The existing .gp-page bottom padding therefore
   creates the same cream breathing room above the legal footer.
   ================================================================ */

body.gp-shop-hats .inner-page-main,
body.gp-shop-stickers .inner-page-main{
  padding-bottom:0 !important;
}

body.gp-shop-hats .gp-evergreen-pack-cta,
body.gp-shop-stickers .gp-evergreen-pack-cta{
  margin:52px auto 0 !important;
}

@media (max-width:560px){
  body.gp-shop-hats .inner-page-main,
  body.gp-shop-stickers .inner-page-main{
    padding-bottom:0 !important;
  }

  body.gp-shop-hats .gp-evergreen-pack-cta,
  body.gp-shop-stickers .gp-evergreen-pack-cta{
    margin:38px auto 0 !important;
  }
}


/* ================================================================
   VERSION 2.16.08 — GEAR CATEGORY BUTTON ALIGNMENT
   Make the content portion of all three Gear landing cards stretch
   to fill the remaining card height. This lets margin-top:auto on
   the button row place SHOP HATS / SHOP STICKERS & PATCHES /
   SHOP SHIRTS on the exact same baseline.
   ================================================================ */

@media (min-width:1100px){
  body.gp-shop-gear .gp-gear-page .gp-feature-card{
    height:100% !important;
  }

  /* Direct Gutenberg content group beneath each card image. */
  body.gp-shop-gear .gp-gear-page .gp-feature-card > .wp-block-group,
  body.gp-shop-gear .gp-gear-page .gp-feature-card > .wp-block-group__inner-container > .wp-block-group,
  body.gp-shop-gear .gp-gear-page .gp-feature-card figure + .wp-block-group,
  body.gp-shop-gear .gp-gear-page .gp-feature-card.reverse figure + .wp-block-group{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    flex:1 1 auto !important;
    height:100% !important;
    min-height:0 !important;
  }

  /* Normalize heading space so the two-line accessory title does not
     push its button below the other cards. */
  body.gp-shop-gear .gp-gear-page .gp-feature-card h2{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    min-height:2em !important;
    width:100% !important;
  }

  /* The description occupies a consistent area, then the button drops
     to the bottom of the remaining content panel. */
  body.gp-shop-gear .gp-gear-page .gp-feature-card p{
    min-height:4.2em !important;
  }

  body.gp-shop-gear .gp-gear-page .gp-feature-card .wp-block-buttons{
    margin-top:auto !important;
    padding-top:16px !important;
    width:100% !important;
    justify-content:center !important;
  }
}
