/*
Theme Name: That Spa Brand Production
Theme URI: https://thatspabrand.com
Author: That Spa Brand
Description: Premium one-product WooCommerce theme for That Spa Brand. Built for Drop 01 / The Off-Duty Hoodie.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: that-spa-brand
*/

:root{
  --tsb-black:#0B0B0B;
  --tsb-ink:#111111;
  --tsb-charcoal:#1A1A1A;
  --tsb-grey:#8D8A84;
  --tsb-muted:#A7A29A;
  --tsb-stone:#EAE7E2;
  --tsb-bone:#F2F0EB;
  --tsb-white:#FFFFFF;
  --tsb-line:rgba(255,255,255,.14);
  --tsb-line-dark:rgba(0,0,0,.13);
  --tsb-max:1240px;
  --tsb-radius:0px;
  --tsb-pad:clamp(22px,4vw,56px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--tsb-black);
  color:var(--tsb-white);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:16px;
  line-height:1.55;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
.woocommerce-product-gallery__trigger {
	display:none!important;
	opacity: 0;
}
body:after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.035;
  z-index:9999;
  background-image:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,.18) 0 1px, transparent 1px),
    radial-gradient(circle at 70% 60%, rgba(255,255,255,.12) 0 1px, transparent 1px);
  background-size:42px 42px, 58px 58px;
  mix-blend-mode:overlay;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
.tsb-container{width:min(var(--tsb-max), calc(100% - (var(--tsb-pad) * 2))); margin-inline:auto}
.tsb-eyebrow{
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.72rem;
  color:var(--tsb-muted);
  font-weight:700;
}
.tsb-h1,.tsb-h2,.tsb-h3,h1,h2,h3{
  margin:0;
  line-height:.95;
  letter-spacing:-.029em;
  font-weight:780;
}
.mt-3 {
    margin-top:3rem!important;
}
.tsb-h1{font-size:clamp(3rem,8vw,9rem)}
.tsb-h2{font-size:clamp(2.6rem,7vw,6.6rem)}
.tsb-h3{font-size:clamp(1.8rem,4vw,3.6rem)}
.tsb-lede{font-size:clamp(1.05rem,1.7vw,1.42rem); color:rgba(255,255,255,.78); max-width:720px}
.tsb-btn,.button,button.single_add_to_cart_button,.wc-block-components-button,.checkout-button{
  appearance:none;
  border:1px solid var(--tsb-white)!important;
  background:var(--tsb-white)!important;
  color:var(--tsb-black)!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:15px 24px!important;
  border-radius:0!important;
  font-weight:800!important;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  transition:transform .25s ease, opacity .25s ease, background .25s ease, color .25s ease;
}
.tsb-btn:hover,.button:hover,button.single_add_to_cart_button:hover,.checkout-button:hover{transform:translateY(-1px);opacity:.88}
.tsb-btn--ghost{
  background:transparent!important;
  color:var(--tsb-white)!important;
  border-color:rgba(255,255,255,.35)!important;
}
.tsb-section{padding:clamp(78px,10vw,150px) 0}
.tsb-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,76px);align-items:center}
.tsb-header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:1000;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:linear-gradient(to bottom, rgba(11,11,11,.86), rgba(11,11,11,.48), transparent);
  backdrop-filter:blur(10px);
}
.admin-bar .tsb-header{top:32px}
.tsb-nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.tsb-brand{font-weight:900;letter-spacing:-.04em;text-transform:uppercase;font-size:1.15rem}
.tsb-menu{display:flex;gap:28px;align-items:center}
.tsb-menu a{font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.82);font-weight:800}
.tsb-cart{border:1px solid rgba(255,255,255,.2);padding:10px 14px!important}
.tsb-mobile-toggle{display:none;background:transparent!important;color:white!important;border:1px solid rgba(255,255,255,.22)!important;min-height:40px;padding:8px 12px!important}

.tsb-hero{
  min-height:100svh;
  display:grid;
  align-items:end;
  position:relative;
  overflow:hidden;
  padding:120px 0 60px;
}
.logo {
    max-width:110px;
}
.tsb-hero__bg{position:absolute;inset:0;z-index:0}
.tsb-hero__bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.64) contrast(1.05) saturate(.88)}
.tsb-hero__bg:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.86) 0%, rgba(0,0,0,.58) 33%, rgba(0,0,0,.16) 70%),
             linear-gradient(0deg, rgba(0,0,0,.88) 0%, transparent 46%);
}
.tsb-hero__content{position:relative;z-index:1;width:min(900px,calc(100% - var(--tsb-pad)*2)); margin-left:var(--tsb-pad)}
.tsb-hero__content p{margin:20px 0 34px;font-size:clamp(1rem,1.7vw,1.45rem);max-width:540px;color:rgba(255,255,255,.84)}
.tsb-trust-strip{
  border-top:1px solid var(--tsb-line);
  border-bottom:1px solid var(--tsb-line);
  background:#0e0e0e;
}
.tsb-trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.tsb-trust-item{padding:22px;border-right:1px solid var(--tsb-line);display:flex;gap:13px;align-items:center}
.tsb-trust-item:last-child{border-right:0}
.tsb-trust-item svg{width:24px;height:24px;color:var(--tsb-stone);flex:0 0 24px}
.tsb-trust-item strong{display:block;text-transform:uppercase;font-size:.72rem;letter-spacing:.1em}
.tsb-trust-item span{display:block;color:var(--tsb-muted);font-size:.82rem}

.tsb-product-feature{background:var(--tsb-stone);color:var(--tsb-black)}
.tsb-product-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:clamp(28px,5vw,70px);align-items:start}
.tsb-product-gallery{display:grid;gap:14px}
.tsb-product-gallery-main{background:#d8d3cb;overflow:hidden}
.tsb-product-gallery-main img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:contrast(1.03)}
.tsb-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tsb-thumbs img{aspect-ratio:1/1;object-fit:cover;background:#ddd;cursor:pointer}
.tsb-product-info{position:sticky;top:104px;padding:clamp(26px,4vw,48px);border:1px solid var(--tsb-line-dark);background:#f7f4ee}
.tsb-product-info .price,.woocommerce-Price-amount{font-size:1.35rem;font-weight:900;color:inherit}
.tsb-product-info .tsb-lede{color:#555;margin:20px 0 28px}
.tsb-product-info form.cart{margin-top:26px}
.variations{width:100%;margin:0 0 18px}
.variations th,.variations td{display:block;text-align:left;padding:0 0 10px}
.variations label{text-transform:uppercase;font-size:.75rem;letter-spacing:.12em;font-weight:900}
.variations select, .quantity input.qty, input, textarea, select{
  width:100%;
  min-height:48px;
  border:1px solid rgba(0,0,0,.18);
  background:transparent;
  color:inherit;
  padding:12px 14px;
  border-radius:0;
}
.quantity{display:none!important}
.single_add_to_cart_button{width:100%;margin-top:10px}
.reset_variations{display:inline-block;margin-top:8px;color:#555;font-size:.85rem}
.tsb-product-bullets{display:grid;gap:12px;margin:28px 0 0;padding:0;list-style:none}
.tsb-product-bullets li{display:flex;gap:10px;align-items:center;color:#333}
.tsb-product-bullets li:before{content:"";width:7px;height:7px;border:1px solid #111;transform:rotate(45deg);display:block;flex:0 0 7px}

.tsb-philosophy{background:var(--tsb-black)}
.tsb-philosophy .tsb-split{align-items:end}
.tsb-copy-stack p{font-size:clamp(1.15rem,2.4vw,2.2rem);line-height:1.14;letter-spacing:-.035em;margin:0 0 18px;max-width:650px}
.tsb-copy-stack p.muted{color:rgba(255,255,255,.48)}
.tsb-image-tile{overflow:hidden;background:#111}
.tsb-image-tile img{width:100%;height:100%;object-fit:cover;filter:brightness(.88) contrast(1.05) saturate(.9)}
.tsb-image-tile--portrait img{aspect-ratio:4/5}

.tsb-lifestyle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.tsb-lifestyle-grid .wide{grid-column:span 2}
.tsb-lifestyle-grid img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/4;filter:brightness(.86) contrast(1.06) saturate(.86)}
.tsb-lifestyle-grid .wide img{aspect-ratio:16/10}
.tsb-values{background:var(--tsb-stone);color:var(--tsb-black);border-top:1px solid rgba(0,0,0,.1)}
.tsb-values-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--tsb-line-dark)}
.tsb-value{padding:30px;border-right:1px solid var(--tsb-line-dark)}
.tsb-value:last-child{border-right:0}
.tsb-value svg{width:30px;height:30px;margin-bottom:18px}
.tsb-value h3{font-size:1rem;letter-spacing:.02em;text-transform:uppercase;line-height:1.1}
.tsb-value p{color:#555;margin-bottom:0;font-size:.95rem}

.tsb-drop{position:relative;overflow:hidden;min-height:560px;display:grid;align-items:center}
.tsb-drop img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.55) contrast(1.04)}
.tsb-drop:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.18))}
.tsb-drop-content{position:relative;z-index:1}
.tsb-testimonial{border-top:1px solid var(--tsb-line);border-bottom:1px solid var(--tsb-line);background:#101010}
.tsb-testimonial blockquote{margin:0;font-size:clamp(1.4rem,3vw,3rem);line-height:1.1;letter-spacing:-.04em;max-width:880px}
.tsb-testimonial cite{display:block;margin-top:22px;color:var(--tsb-muted);font-style:normal;text-transform:uppercase;letter-spacing:.11em;font-size:.78rem}

.tsb-footer{background:#070707;border-top:1px solid var(--tsb-line);padding:56px 0 30px}
.tsb-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.6fr;gap:30px}
.tsb-footer h4{margin:0 0 15px;text-transform:uppercase;letter-spacing:.11em;font-size:.75rem}
.tsb-footer a,.tsb-footer p{color:rgba(255,255,255,.68);font-size:.92rem}
.tsb-footer input[type=email]{border-color:rgba(255,255,255,.24);color:white}
.tsb-footer .tsb-btn{min-height:48px;width:100%;margin-top:10px}

/* WooCommerce global */
.woocommerce main,.woocommerce-page main{padding-top:120px}
.woocommerce .woocommerce-breadcrumb,.woocommerce-result-count,.woocommerce-ordering,.product_meta,.tabs,.related.products,.upsells.products{display:none!important}
.woocommerce-notices-wrapper{width:min(var(--tsb-max), calc(100% - (var(--tsb-pad)*2))); margin:110px auto 0}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  background:var(--tsb-stone);
  color:var(--tsb-black);
  border:0;
  padding:18px 22px;
  list-style:none;
}
.woocommerce-message a.button{float:right;min-height:38px;padding:8px 14px!important}
.woocommerce div.product{width:min(var(--tsb-max),calc(100% - var(--tsb-pad)*2)); margin:0 auto 80px;display:grid;grid-template-columns:1.1fr .9fr;gap:54px}
.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none!important;width:auto!important}
.woocommerce div.product div.images img{background:#111}
.woocommerce div.product .product_title{font-size:clamp(2.5rem,6vw,5rem);line-height:.95}
.woocommerce div.product .summary{padding:38px;background:var(--tsb-stone);color:var(--tsb-black);align-self:start;position:sticky;top:104px}
.woocommerce div.product p.price{color:var(--tsb-black);font-weight:900}
.woocommerce div.product .woocommerce-product-details__short-description{color:#444}
.woocommerce-cart .entry-content,.woocommerce-checkout .entry-content,.woocommerce-account .entry-content{
  width:min(var(--tsb-max),calc(100% - var(--tsb-pad)*2)); margin:0 auto 100px; background:var(--tsb-stone); color:var(--tsb-black); padding:clamp(24px,4vw,54px);
}
.woocommerce table.shop_table{border-radius:0;border-color:rgba(0,0,0,.14)}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:rgba(0,0,0,.12)}
.woocommerce-cart-form .button[name=update_cart]{background:#111!important;color:white!important;border-color:#111!important}
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment{background:#eee9df;border-radius:0}
#place_order{width:100%}

/* Pages */
.tsb-page{padding:130px 0 90px}
.tsb-page .entry-title{font-size:clamp(3rem,8vw,7rem);margin-bottom:36px}

@media (max-width: 900px){
  .tsb-menu{display:none}
  .tsb-mobile-toggle{display:inline-flex}
  .tsb-menu.is-open{display:flex;position:absolute;top:74px;left:0;right:0;background:#0b0b0b;flex-direction:column;align-items:flex-start;padding:22px var(--tsb-pad);border-bottom:1px solid var(--tsb-line)}
  .tsb-split,.tsb-product-card,.woocommerce div.product,.tsb-footer-grid{grid-template-columns:1fr}
  .tsb-product-info,.woocommerce div.product .summary{position:static}
  .tsb-trust-grid,.tsb-values-grid{grid-template-columns:1fr 1fr}
  .tsb-lifestyle-grid{grid-template-columns:1fr 1fr}
  .tsb-hero__content{margin-left:auto;margin-right:auto}
}
@media (max-width: 560px){
  .tsb-h1{font-size:3.15rem}
  .tsb-hero{min-height:88svh}
  .tsb-trust-grid,.tsb-values-grid,.tsb-lifestyle-grid,.tsb-lifestyle-grid .wide{grid-template-columns:1fr;grid-column:auto}
  .tsb-trust-item,.tsb-value{border-right:0;border-bottom:1px solid var(--tsb-line)}
  .tsb-footer-grid{gap:18px}
}



.wc-block-components-radio-control__option.wc-block-components-radio-control__option-checked {
	display:none!important;
}
.wc-block-checkout__order-notes.wp-block-woocommerce-checkout-order-note-block.wc-block-components-checkout-step  {
	display:none!important;
}