/*
Theme Name: Talise
Theme URI: https://talise.ee/
Author: Talise OÜ
Author URI: https://talise.ee/
Description: A small-batch, editorial WooCommerce theme for the Estonian chilli brand Talise — "chilli, punk & moonshine". Bilingual (EN/ET, Polylang-ready), with a warm off-white palette, Cormorant Garamond display type, and a full storefront (home, shop, product, cart, checkout, about, FAQ, contact, shipping, payments, feedback). Built from the Talise Shop design handoff.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: talise
Tags: e-commerce, woocommerce, custom-colors, custom-menu, featured-images, translation-ready, full-width-template, two-columns, right-sidebar
WC requires at least: 8.0
WC tested up to: 9.5
*/

/* =========================================================================
   TALISE — design tokens
   ========================================================================= */
:root{
  --bg:#FAF7F2;
  --ink:#1B1512;
  --ta:#B23A24;            /* accent (overridable via customizer) */
  --ta-dark:#7E2A1C;
  --muted:#6F635A;
  --muted-2:#514840;
  --muted-3:#38302A;
  --sand:#A09384;
  --sand-2:#A99A88;
  --hair:#C9BDAE;
  --line:#E6DDD1;
  --panel:#F1EAE0;
  --panel-2:#F5F0E8;
  --field:#FFFFFF;
  --field-border:#D8CDBF;
  --heat-off:#DCD2C4;
  --banner-bg:#1B1512;
  --banner-ink:#F5EFE7;
  --max:1320px;
  --gut:32px;
  --serif:'Cormorant Garamond','Times New Roman',Times,serif;
  --sans:'Archivo',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}

/* =========================================================================
   Base
   ========================================================================= */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:var(--sans);font-size:16px;line-height:1.5;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;
}
a{color:var(--ta);text-decoration:none;}
a:hover{color:var(--ta-dark);text-decoration:underline;}
img{max-width:100%;height:auto;}
button{cursor:pointer;font:inherit;color:inherit;}
input,button,select,textarea{font:inherit;color:inherit;}
h1,h2,h3,h4{margin:0;font-weight:inherit;}
p{margin:0 0 1em;}
::selection{background:var(--ta);color:var(--bg);}
:focus-visible{outline:2px solid var(--ta);outline-offset:2px;}
summary{list-style:none;cursor:pointer;}
summary::-webkit-details-marker{display:none;}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.ta-skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--bg);padding:10px 16px;z-index:200;}
.ta-skip-link:focus{left:12px;top:12px;}

/* layout helpers */
.ta-wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut);}
.ta-site{min-height:100vh;display:flex;flex-direction:column;background:var(--bg);}
.ta-main{flex:1;}
.ta-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ta);}
.ta-label{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);}
.ta-mono{font-family:var(--mono);}
.ta-serif{font-family:var(--serif);}
.ta-h2{font-family:var(--serif);font-weight:600;font-size:clamp(36px,3.6vw,54px);line-height:1.05;margin:0;}

/* =========================================================================
   Banner + header
   ========================================================================= */
.ta-banner{background:var(--banner-bg);color:var(--banner-ink);text-align:center;padding:9px 16px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;}
.ta-header{position:sticky;top:0;z-index:50;background:rgba(250,247,242,.93);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.ta-header__inner{max-width:var(--max);margin:0 auto;padding:0 var(--gut);height:68px;display:flex;align-items:center;gap:32px;}
.ta-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;}
.ta-brand:hover{text-decoration:none;}
.ta-brand img{width:42px;height:42px;object-fit:contain;mix-blend-mode:multiply;}
.ta-brand__name{display:flex;flex-direction:column;gap:1px;}
.ta-brand__name b{font-weight:800;letter-spacing:.22em;font-size:17px;}
.ta-brand__name span{font-family:var(--mono);font-size:8.5px;letter-spacing:.2em;color:var(--muted);}
.ta-nav{display:flex;gap:26px;margin-left:auto;align-items:center;}
.ta-nav ul,.ta-menu{display:flex;gap:26px;align-items:center;list-style:none;margin:0;padding:0;}
.ta-nav li{margin:0;}
.ta-nav a,.ta-nav button{background:none;border:none;padding:4px 0;font-size:13.5px;font-weight:500;color:var(--ink);text-decoration:none;}
.ta-nav a:hover,.ta-nav button:hover{color:var(--ta);text-decoration:none;}
.ta-nav .current-menu-item>a,.ta-nav .current_page_item>a{color:var(--ta);}
.ta-headtools{display:flex;align-items:center;gap:18px;}
.ta-lang{display:flex;gap:4px;font-family:var(--mono);font-size:11px;align-items:center;}
.ta-lang a,.ta-lang span.sep{color:var(--hair);text-decoration:none;padding:4px 2px;}
.ta-lang a{color:var(--sand);letter-spacing:.08em;border-bottom:2px solid transparent;}
.ta-lang a.is-active{color:var(--ink);font-weight:600;border-bottom:2px solid var(--ta);}
.ta-cart-btn{position:relative;display:inline-flex;align-items:center;background:var(--ink);color:var(--bg);border:1px solid var(--ink);padding:9px 18px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;}
.ta-cart-btn:hover{background:var(--ta);border-color:var(--ta);color:var(--bg);text-decoration:none;}
.ta-cart-count{position:absolute;top:-8px;right:-8px;background:var(--ta);color:var(--bg);min-width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;padding:0 5px;}
.ta-burger{display:none;background:none;border:none;width:40px;height:40px;align-items:center;justify-content:center;}
.ta-burger span{display:block;width:20px;height:2px;background:var(--ink);position:relative;}
.ta-burger span::before,.ta-burger span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:var(--ink);}
.ta-burger span::before{top:-6px;}.ta-burger span::after{top:6px;}

/* =========================================================================
   Buttons
   ========================================================================= */
.ta-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:var(--bg);border:1px solid var(--ink);padding:16px 32px;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;transition:background .2s,border-color .2s,color .2s;}
.ta-btn:hover{background:var(--ta);border-color:var(--ta);color:var(--bg);text-decoration:none;}
.ta-btn--ghost{background:none;color:var(--ink);}
.ta-btn--ghost:hover{background:var(--ink);color:var(--bg);border-color:var(--ink);}
.ta-btn--sm{padding:12px 22px;font-size:11.5px;}
.ta-link{background:none;border:none;padding:0;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ta);white-space:nowrap;}
.ta-link:hover{text-decoration:underline;}

/* =========================================================================
   Heat dots
   ========================================================================= */
.ta-heat{display:inline-flex;gap:3px;align-items:center;}
.ta-heat i{width:9px;height:9px;background:var(--heat-off);border-radius:50% 50% 50% 0;transform:rotate(135deg);display:inline-block;}
.ta-heat i.on{background:var(--ta);}
.ta-heat--lg i{width:11px;height:11px;}

/* =========================================================================
   Home — hero
   ========================================================================= */
.ta-hero{max-width:var(--max);margin:0 auto;padding:0 var(--gut);display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center;min-height:72vh;}
.ta-hero__copy{padding:64px 0;animation:ta-up .7s ease both;}
.ta-hero__eyebrow{margin-bottom:26px;}
.ta-hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(52px,6.2vw,92px);line-height:.98;letter-spacing:-.01em;margin:0 0 28px;}
.ta-hero__sub{font-size:17px;line-height:1.65;color:var(--muted-2);max-width:52ch;margin:0 0 38px;}
.ta-hero__cta{display:flex;gap:14px;flex-wrap:wrap;}
.ta-hero__art{position:relative;display:flex;justify-content:center;align-items:flex-end;animation:ta-up .7s .15s ease both;padding:48px 0 56px;}
.ta-hero__art>img.ta-packshot{max-height:min(52vh,480px);width:auto;object-fit:contain;filter:drop-shadow(0 22px 30px rgba(27,21,18,.22));}
.ta-hero__stamp{position:absolute;left:4%;bottom:8%;width:118px;height:118px;object-fit:contain;transform:rotate(-9deg);mix-blend-mode:multiply;}
.ta-hero__batch{position:absolute;right:4%;bottom:2%;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}

/* marquee */
.ta-marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:13px 0;}
.ta-marquee__track{display:flex;width:max-content;animation:ta-marquee 36s linear infinite;font-family:var(--mono);font-size:12px;letter-spacing:.24em;text-transform:uppercase;}
.ta-marquee__track span{white-space:pre;}
.ta-marquee:hover .ta-marquee__track{animation-play-state:paused;}

/* section header row */
.ta-sec{max-width:var(--max);margin:0 auto;padding:88px var(--gut) 40px;}
.ta-sec__head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:44px;}
.ta-sec__head .ta-label{margin-bottom:14px;display:block;color:var(--muted);}

/* =========================================================================
   Product grid + cards
   ========================================================================= */
.ta-grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);}
.ta-grid--4{grid-template-columns:repeat(4,1fr);}
.ta-grid--3{grid-template-columns:repeat(3,1fr);}
.ta-grid--auto{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));}
.ta-card{background:var(--bg);cursor:pointer;padding:14px 14px 20px;display:block;color:inherit;text-decoration:none;}
.ta-card:hover{text-decoration:none;color:inherit;}
.ta-card__media{background:var(--panel);aspect-ratio:3/4;display:flex;align-items:flex-end;justify-content:center;padding:22px 22px 0;margin-bottom:16px;overflow:hidden;position:relative;}
.ta-card__media--wide{aspect-ratio:4/3;padding:16px 16px 0;}
.ta-card__media .ta-packshot-wrap{display:flex;align-items:flex-end;justify-content:center;width:100%;height:100%;transition:transform .45s ease;}
.ta-card:hover .ta-packshot-wrap{transform:translateY(-7px);}
.ta-card__media .ta-packshot{max-width:86%;max-height:96%;object-fit:contain;filter:drop-shadow(0 12px 16px rgba(27,21,18,.16));}
.ta-card__meta{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:7px;}
.ta-card__name{font-weight:800;font-size:17.5px;letter-spacing:.04em;text-transform:uppercase;line-height:1.05;margin-bottom:10px;color:var(--ink);}
.ta-card__sub{font-size:13px;color:var(--muted);margin-bottom:12px;}
.ta-card__row{display:flex;justify-content:space-between;align-items:center;}
.ta-card__price{font-weight:600;font-size:15px;}
.ta-card--rel .ta-card__row{align-items:baseline;}
.ta-card--rel .ta-card__name{font-size:15px;margin-bottom:0;}
.ta-packshot-pending{position:absolute;inset:0;background:repeating-linear-gradient(45deg,#F2EBE0 0 12px,#EDE4D6 12px 24px);display:flex;align-items:center;justify-content:center;}
.ta-packshot-pending span{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:#8A7C6E;text-transform:uppercase;}

/* steps */
.ta-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.ta-step{background:var(--bg);padding:36px 32px 40px;}
.ta-step__no{font-family:var(--serif);font-size:52px;font-weight:500;color:var(--ta);line-height:1;}
.ta-step__t{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin:16px 0 10px;}
.ta-step p{margin:0;font-size:14.5px;line-height:1.6;color:var(--muted-2);}

/* manifesto */
.ta-manifesto{background:var(--ink);color:var(--banner-ink);padding:100px var(--gut);}
.ta-manifesto__inner{max-width:900px;margin:0 auto;text-align:center;}
.ta-manifesto img{width:84px;height:84px;object-fit:contain;margin-bottom:32px;transform:rotate(-6deg);}
.ta-manifesto__quote{font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(30px,3.4vw,48px);line-height:1.25;}
.ta-manifesto__sub{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:#A99A88;margin-top:30px;}

/* land grid */
.ta-land{max-width:var(--max);margin:0 auto;padding:88px var(--gut) 8px;}
.ta-land__intro{margin-bottom:44px;}
.ta-land__intro h2{margin:0 0 14px;}
.ta-land__intro p{margin:0;font-size:15.5px;line-height:1.65;color:var(--muted-2);max-width:60ch;}
.ta-land__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;}
.ta-land__cell figure{margin:0;}
.ta-land__cell .ta-frame{background:var(--panel);overflow:hidden;}
.ta-land__cell img{display:block;width:100%;height:100%;object-fit:cover;}
.ta-land__cell figcaption{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:10px;}
.ta-col-5{grid-column:span 5;}.ta-col-7{grid-column:span 7;}
.ta-ar-45{aspect-ratio:4/5;}.ta-ar-1610{aspect-ratio:16/10;}

/* crate band */
.ta-crate{max-width:var(--max);margin:0 auto;padding:96px var(--gut);display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.ta-crate__media{background:var(--panel);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.ta-crate__media img{width:100%;height:100%;object-fit:cover;}
.ta-crate h2{font-weight:800;font-size:clamp(30px,3.2vw,46px);letter-spacing:.03em;margin:0 0 20px;line-height:1;}
.ta-crate p{font-size:16px;line-height:1.65;color:var(--muted-2);max-width:46ch;margin:0 0 30px;}
.ta-crate__buy{display:flex;align-items:center;gap:22px;flex-wrap:wrap;}
.ta-crate__price{font-family:var(--serif);font-size:32px;font-weight:600;}

/* reviews (home + feedback) */
.ta-reviews{border-top:1px solid var(--line);padding:88px var(--gut);}
.ta-reviews__inner{max-width:var(--max);margin:0 auto;}
.ta-reviews__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.ta-review{border:1px solid var(--line);padding:30px 28px;}
.ta-review__stars{color:var(--ta);letter-spacing:3px;font-size:13px;margin-bottom:16px;}
.ta-review__text{font-family:var(--serif);font-size:22px;line-height:1.35;margin:0 0 20px;}
.ta-review__who{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}

/* =========================================================================
   Shop
   ========================================================================= */
.ta-shop{max-width:var(--max);margin:0 auto;padding:64px var(--gut) 96px;}
.ta-shop__head{display:flex;align-items:baseline;gap:18px;margin-bottom:36px;flex-wrap:wrap;}
.ta-shop__head h1{font-family:var(--serif);font-weight:600;font-size:clamp(42px,4.4vw,64px);margin:0;}
.ta-shop__count{font-family:var(--mono);font-size:12px;color:var(--muted);}
.ta-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin-bottom:44px;}
.ta-pill{background:none;border:1px solid var(--line);padding:9px 18px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-3);text-decoration:none;display:inline-block;}
.ta-pill:hover{color:var(--ta);text-decoration:none;}
.ta-pill.is-active{background:var(--ink);border-color:var(--ink);color:var(--bg);}
.ta-sort{margin-left:auto;display:flex;align-items:center;gap:10px;}
.ta-sort .ta-label{color:var(--muted);}
.ta-sort select{border:1px solid var(--line);background:var(--bg);padding:8px 12px;font-size:13px;}

/* =========================================================================
   Single product
   ========================================================================= */
.ta-pdp{max-width:var(--max);margin:0 auto;padding:44px var(--gut) 96px;}
.ta-pdp__back{background:none;border:none;padding:0 0 30px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:inline-block;}
.ta-pdp__back:hover{color:var(--ta);text-decoration:none;}
.ta-pdp__grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;}
.ta-pdp__media{position:sticky;top:100px;background:var(--panel);aspect-ratio:4/5;display:flex;align-items:flex-end;justify-content:center;padding:40px 40px 0;overflow:hidden;position:relative;}
.ta-pdp__media .ta-packshot{max-height:88%;width:auto;max-width:88%;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(27,21,18,.18));}
.ta-pdp__media img.ta-photo{width:100%;height:100%;object-fit:cover;}
.ta-pdp__meta{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ta);margin-bottom:16px;}
.ta-pdp h1{font-weight:800;font-size:clamp(34px,3.4vw,52px);letter-spacing:.03em;text-transform:uppercase;line-height:1;margin:0 0 10px;}
.ta-pdp__sub{font-size:16px;color:var(--muted);margin-bottom:22px;}
.ta-pdp__pricerow{display:flex;align-items:center;gap:20px;margin-bottom:28px;flex-wrap:wrap;}
.ta-pdp__price{font-family:var(--serif);font-size:34px;font-weight:600;}
.ta-pdp__heatword{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.ta-pdp__desc{font-size:16px;line-height:1.7;color:var(--muted-3);max-width:50ch;margin:0 0 26px;}
.ta-pdp__pairs{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:34px;}
.ta-pdp__pairs b{color:var(--ta);font-weight:400;}
.ta-buy{display:flex;gap:14px;align-items:stretch;margin-bottom:40px;}
.ta-qty{display:flex;align-items:center;border:1px solid var(--ink);}
.ta-qty button{background:none;border:none;width:44px;align-self:stretch;font-size:17px;}
.ta-qty button:hover{background:#F0E9DE;}
.ta-qty input{width:40px;text-align:center;font-weight:600;border:none;background:none;-moz-appearance:textfield;}
.ta-qty input::-webkit-outer-spin-button,.ta-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.ta-buy .ta-btn{flex:1;}
.ta-acc{border-top:1px solid var(--line);}
.ta-acc:last-of-type{border-bottom:1px solid var(--line);}
.ta-acc>summary{display:flex;justify-content:space-between;align-items:center;padding:18px 2px;font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;}
.ta-acc>summary .sign{color:var(--ta);}
.ta-acc[open]>summary .sign::after{content:"–";}
.ta-acc>summary .sign::after{content:"+";}
.ta-acc p{margin:0;padding:0 2px 20px;font-size:14.5px;line-height:1.65;color:var(--muted-2);}
.ta-pdp__extras{margin-top:96px;}
.ta-pdp__extras h2{font-family:var(--serif);font-weight:600;font-size:34px;margin:0 0 30px;}
.ta-recipes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:96px;}
.ta-recipe{background:var(--bg);padding:32px 30px 34px;}
.ta-recipe__top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px;}
.ta-recipe__no{font-family:var(--serif);font-size:40px;font-weight:500;color:var(--ta);line-height:1;}
.ta-recipe__meta{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.ta-recipe__t{font-family:var(--serif);font-weight:600;font-size:27px;line-height:1.1;margin-bottom:12px;}
.ta-recipe p{margin:0 0 18px;font-size:14.5px;line-height:1.65;color:var(--muted-2);}
.ta-recipe__tag{display:inline-block;border:1px solid var(--line);padding:6px 12px;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ta);}

/* =========================================================================
   About
   ========================================================================= */
.ta-about__hero{max-width:var(--max);margin:0 auto;padding:80px var(--gut) 72px;}
.ta-about__hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(44px,5.4vw,80px);line-height:1;margin:0;max-width:16ch;}
.ta-about__body{max-width:var(--max);margin:0 auto;padding:0 var(--gut) 120px;display:grid;grid-template-columns:1fr 1fr;gap:72px;}
.ta-about__figs{position:relative;}
.ta-about__figs img.big{display:block;width:88%;aspect-ratio:3/4;object-fit:cover;}
.ta-about__figs img.small{position:absolute;right:0;bottom:-48px;width:52%;aspect-ratio:4/3;object-fit:cover;border:6px solid var(--bg);}
.ta-about__text{padding-top:8px;}
.ta-about__text p{font-size:17px;line-height:1.75;color:var(--muted-3);margin:0 0 24px;}
.ta-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:24px;}
.ta-stat{background:var(--bg);padding:24px;}
.ta-stat b{font-family:var(--serif);font-size:44px;font-weight:600;color:var(--ta);line-height:1;display:block;}
.ta-stat span{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:8px;display:block;}

/* =========================================================================
   Simple content pages (FAQ, Shipping, Payments, Contact)
   ========================================================================= */
.ta-page{margin:0 auto;padding:64px var(--gut) 120px;}
.ta-page--narrow{max-width:820px;}
.ta-page--mid{max-width:900px;}
.ta-page--wide{max-width:1180px;}
.ta-page h1{font-family:var(--serif);font-weight:600;font-size:clamp(40px,4.4vw,58px);margin:0 0 12px;}
.ta-page__lead{font-size:16px;line-height:1.7;color:var(--muted);margin:0 0 48px;max-width:60ch;}
.ta-faq{border-top:1px solid var(--line);}
.ta-faq details{border-bottom:1px solid var(--line);}
.ta-faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 2px;font-family:var(--serif);font-weight:600;font-size:23px;}
.ta-faq summary .sign{color:var(--ta);font-family:var(--mono);font-size:16px;}
.ta-faq details[open] summary .sign::after{content:"–";}
.ta-faq summary .sign::after{content:"+";}
.ta-faq p{margin:0;padding:0 2px 24px;font-size:15px;line-height:1.7;color:var(--muted-2);max-width:64ch;}

/* shipping table */
.ta-table{border:1px solid var(--line);}
.ta-table__head,.ta-table__row{display:grid;grid-template-columns:1.4fr 1fr .6fr .7fr;gap:16px;padding:16px 20px;align-items:baseline;}
.ta-table__head{background:var(--panel);font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:14px 20px;}
.ta-table__row{border-top:1px solid var(--line);font-size:14.5px;}
.ta-table__row b{font-weight:600;}
.ta-table__row .z{color:var(--muted);}
.ta-table__row .m{font-family:var(--mono);font-size:12.5px;}
.ta-notes{margin-top:28px;display:flex;flex-direction:column;gap:12px;}
.ta-note{display:flex;gap:12px;font-size:15px;line-height:1.6;color:var(--muted-3);}
.ta-note i{color:var(--ta);font-family:var(--mono);font-style:normal;}

/* payments sections + chips */
.ta-paysec{border-top:1px solid var(--line);}
.ta-paysec__row{border-bottom:1px solid var(--line);padding:26px 2px;display:grid;grid-template-columns:220px 1fr;gap:24px;}
.ta-paysec__row h3{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;padding-top:3px;font-weight:400;}
.ta-paysec__row p{margin:0;font-size:15px;line-height:1.7;color:var(--muted-3);}
.ta-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px;}
.ta-chip{border:1px solid var(--line);padding:8px 14px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;}

/* contact */
.ta-contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start;}
.ta-contact__list{display:flex;flex-direction:column;}
.ta-contact__row{border-top:1px solid var(--line);padding:18px 2px;display:grid;grid-template-columns:120px 1fr;gap:16px;font-size:14.5px;}
.ta-contact__row:last-child{border-bottom:1px solid var(--line);}
.ta-contact__row span.k{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:2px;}
.ta-formbox{border:1px solid var(--line);padding:34px;}

/* generic form fields */
.ta-field{width:100%;border:1px solid var(--field-border);background:var(--field);padding:14px 15px;font-size:14.5px;margin-bottom:10px;}
.ta-field:focus{border-color:var(--ta);outline:none;}
textarea.ta-field{resize:vertical;}
.ta-sent{font-family:var(--serif);font-size:24px;line-height:1.4;margin:0;}

/* feedback page */
.ta-fb{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start;}
.ta-fb__side{position:sticky;top:100px;}
.ta-fb__score{border:1px solid var(--line);padding:34px;margin-bottom:28px;}
.ta-fb__score b{font-family:var(--serif);font-size:64px;font-weight:600;line-height:1;}
.ta-fb__score b span{font-size:28px;color:var(--sand);}
.ta-fb__score .st{color:var(--ta);letter-spacing:3px;font-size:15px;margin:12px 0 8px;}
.ta-fb__form{border:1px solid var(--line);padding:34px;}
.ta-stars{display:flex;gap:6px;margin-bottom:14px;}
.ta-stars button{background:none;border:1px solid var(--line);width:40px;height:40px;font-size:18px;color:var(--heat-off);}
.ta-stars button.on{color:var(--ta);}
.ta-fb__wall{display:flex;flex-direction:column;gap:20px;}

/* =========================================================================
   Cart
   ========================================================================= */
.ta-cart{max-width:920px;margin:0 auto;padding:64px var(--gut) 96px;}
.ta-cart h1{font-family:var(--serif);font-weight:600;font-size:clamp(40px,4.4vw,58px);margin:0 0 34px;}
.ta-freebar{border:1px solid var(--line);padding:20px 24px;margin-bottom:28px;}
.ta-freebar__row{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;}
.ta-freebar__row span:last-child{color:var(--muted);}
.ta-freebar__track{height:3px;background:#EDE5D8;}
.ta-freebar__fill{height:3px;background:var(--ta);transition:width .3s;}
.ta-empty{border:1px solid var(--line);padding:72px 32px;text-align:center;}
.ta-empty p{font-family:var(--serif);font-size:26px;margin:0 0 24px;}
.ta-cartlist{border-top:1px solid var(--line);}
.ta-cartitem{display:grid;grid-template-columns:88px 1fr auto auto;gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line);}
.ta-cartitem__media{width:88px;height:110px;background:var(--panel);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;}
.ta-cartitem__media img{max-width:82%;max-height:96%;object-fit:contain;}
.ta-cartitem__name{font-weight:800;font-size:16px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);}
.ta-cartitem__meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:5px;}
.ta-cartitem__rm{background:none;border:none;padding:8px 0 0;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--sand);display:inline-block;}
.ta-cartitem__rm:hover{color:var(--ta);text-decoration:none;}
.ta-cartitem__qty{display:flex;align-items:center;border:1px solid var(--line);}
.ta-cartitem__qty button,.ta-cartitem__qty a{background:none;border:none;width:36px;height:38px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--ink);}
.ta-cartitem__qty button:hover,.ta-cartitem__qty a:hover{background:#F0E9DE;}
.ta-cartitem__qty input{width:30px;text-align:center;font-weight:600;font-size:14px;border:none;background:none;}
.ta-cartitem__line{font-weight:600;text-align:right;min-width:74px;}
.ta-cart__totals{display:flex;justify-content:space-between;align-items:baseline;padding:26px 0 8px;}
.ta-cart__totals .k{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;}
.ta-cart__totals .v{font-family:var(--serif);font-size:34px;font-weight:600;}
.ta-cart__note{font-size:13px;color:var(--muted);margin-bottom:28px;}
.ta-cart__actions{display:flex;gap:14px;flex-wrap:wrap;}
.ta-cart__actions .ta-btn{flex:1;}

/* =========================================================================
   Checkout
   ========================================================================= */
.ta-checkout{max-width:1180px;margin:0 auto;padding:64px var(--gut) 96px;}
.ta-checkout h1{font-family:var(--serif);font-weight:600;font-size:clamp(40px,4.4vw,58px);margin:0 0 40px;}
.ta-checkout__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start;}
.ta-costep{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ta);margin:0 0 16px;}
.ta-costep--mt{margin-top:40px;}
.ta-summary{border:1px solid var(--line);padding:28px;position:sticky;top:100px;}
.ta-summary__t{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:20px;}
.ta-summary__row{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:14px;}
.ta-summary__row.total{border-top:1px solid var(--line);margin-top:10px;padding-top:16px;align-items:baseline;}
.ta-summary__row.total .k{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;}
.ta-summary__row.total .v{font-family:var(--serif);font-size:32px;font-weight:600;}

/* =========================================================================
   Order received / confirmation
   ========================================================================= */
.ta-confirm{max-width:640px;margin:0 auto;padding:96px var(--gut) 128px;text-align:center;}
.ta-confirm img{width:96px;height:96px;object-fit:contain;mix-blend-mode:multiply;transform:rotate(-8deg);margin-bottom:30px;}
.ta-confirm h1{font-family:var(--serif);font-weight:600;font-size:clamp(48px,5vw,68px);margin:0 0 14px;}
.ta-confirm__no{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ta);margin-bottom:22px;}
.ta-confirm p{font-size:16px;line-height:1.7;color:var(--muted-2);margin:0 0 10px;}
.ta-confirm p.small{font-size:14.5px;color:var(--muted);margin-bottom:40px;}

/* =========================================================================
   Footer
   ========================================================================= */
.ta-footer{border-top:1px solid var(--line);background:var(--panel-2);}
.ta-footer__inner{max-width:var(--max);margin:0 auto;padding:64px var(--gut) 28px;}
.ta-footer__cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:56px;}
.ta-footer__brand{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.ta-footer__brand img{width:48px;height:48px;object-fit:contain;mix-blend-mode:multiply;}
.ta-footer__brand b{font-weight:800;letter-spacing:.22em;font-size:16px;}
.ta-footer__blurb{margin:0;font-size:14px;line-height:1.65;color:var(--muted);max-width:34ch;}
.ta-footer__col{display:flex;flex-direction:column;gap:12px;align-items:flex-start;}
.ta-footer__col .h{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sand);margin-bottom:4px;}
.ta-footer__col a,.ta-footer__col button{background:none;border:none;padding:0;font-size:14px;color:var(--muted-3);text-decoration:none;text-align:left;}
.ta-footer__col a:hover,.ta-footer__col button:hover{color:var(--ta);text-decoration:none;}
.ta-footer__legal{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--sand);}

/* =========================================================================
   Toast
   ========================================================================= */
.ta-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:14px 24px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;z-index:100;animation:ta-toast .25s ease both;box-shadow:0 12px 30px rgba(27,21,18,.25);}
.ta-toast[hidden]{display:none;}

/* =========================================================================
   Animations
   ========================================================================= */
@keyframes ta-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes ta-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes ta-toast{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}
}

/* =========================================================================
   Responsive
   ========================================================================= */
@media (max-width:1024px){
  .ta-hero{grid-template-columns:1fr;gap:8px;min-height:0;}
  .ta-hero__copy{padding:56px 0 24px;}
  .ta-hero__art{padding:8px 0 48px;}
  .ta-grid--4{grid-template-columns:repeat(2,1fr);}
  .ta-crate{grid-template-columns:1fr;gap:40px;}
  .ta-checkout__grid{grid-template-columns:1fr;}
  .ta-summary{position:static;}
  .ta-contact,.ta-fb{grid-template-columns:1fr;}
  .ta-fb__side{position:static;}
  .ta-pdp__grid{grid-template-columns:1fr;gap:40px;}
  .ta-pdp__media{position:static;}
  .ta-about__body{grid-template-columns:1fr;gap:64px;}
  .ta-about__figs img.small{position:static;width:60%;margin-top:16px;border:0;}
}
@media (max-width:768px){
  :root{--gut:20px;}
  .ta-nav{display:none;}
  .ta-burger{display:flex;}
  .ta-header.is-open .ta-nav{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 20px 16px;margin:0;}
  .ta-header.is-open .ta-nav a,.ta-header.is-open .ta-nav button{padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;}
  .ta-sec,.ta-land,.ta-crate,.ta-reviews{padding-top:56px;padding-bottom:32px;}
  .ta-grid--3,.ta-reviews__grid,.ta-steps{grid-template-columns:1fr;}
  .ta-land__grid{grid-template-columns:1fr;}
  .ta-col-5,.ta-col-7{grid-column:auto;}
  .ta-paysec__row{grid-template-columns:1fr;gap:8px;}
  .ta-table__head{display:none;}
  .ta-table__row{grid-template-columns:1fr 1fr;gap:6px 16px;}
  .ta-cartitem{grid-template-columns:72px 1fr;grid-auto-rows:auto;gap:14px;}
  .ta-cartitem__qty,.ta-cartitem__line{grid-column:2;justify-self:start;}
  .ta-footer__cols{grid-template-columns:1fr 1fr;gap:32px;}
}
@media (max-width:520px){
  .ta-grid--4,.ta-grid--auto{grid-template-columns:1fr;}
  .ta-footer__cols{grid-template-columns:1fr;}
  .ta-hero__cta{flex-direction:column;}
  .ta-hero__cta .ta-btn{width:100%;}
}

/* =========================================================================
   Rich text (default pages / posts)
   ========================================================================= */
.ta-richtext h2{font-family:var(--serif);font-weight:600;font-size:clamp(28px,3vw,40px);margin:1.4em 0 .5em;}
.ta-richtext h3{font-family:var(--serif);font-weight:600;font-size:24px;margin:1.3em 0 .4em;}
.ta-richtext p,.ta-richtext li{font-size:16.5px;line-height:1.75;color:var(--muted-3);}
.ta-richtext ul,.ta-richtext ol{padding-left:1.2em;margin:0 0 1.2em;}
.ta-richtext img{height:auto;}
.ta-richtext blockquote{border-left:3px solid var(--ta);margin:1.4em 0;padding:.2em 0 .2em 1.2em;font-family:var(--serif);font-style:italic;font-size:22px;color:var(--ink);}
.ta-richtext a{text-decoration:underline;}
.ta-postlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:40px;}
.ta-postcard__media{display:block;overflow:hidden;background:var(--panel);aspect-ratio:16/10;margin-bottom:16px;}
.ta-postcard__media img{width:100%;height:100%;object-fit:cover;}
.ta-postcard__title{font-family:var(--serif);font-weight:600;font-size:26px;line-height:1.1;margin-bottom:8px;}
.ta-postcard__title a{color:var(--ink);text-decoration:none;}
.ta-postcard__title a:hover{color:var(--ta);}
.ta-postcard__meta{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;}
.ta-postcard__excerpt{color:var(--muted-2);line-height:1.6;margin-bottom:12px;}
.pagination,.woocommerce-pagination{margin-top:56px;font-family:var(--mono);font-size:13px;}
.pagination .page-numbers,.woocommerce-pagination .page-numbers{display:inline-block;padding:8px 12px;border:1px solid var(--line);margin:0 4px 4px 0;color:var(--ink);text-decoration:none;}
.pagination .page-numbers.current,.woocommerce-pagination .page-numbers.current{background:var(--ink);color:var(--bg);border-color:var(--ink);}

/* =========================================================================
   WooCommerce compatibility (cart, checkout, account, default archives)
   ========================================================================= */
.woocommerce-breadcrumb{display:none;}
.woocommerce .ta-main,.woocommerce-page .ta-main{}
.woocommerce-notices-wrapper:empty{margin:0;}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews,.woocommerce-store-notice{
  border:1px solid var(--line);border-left:3px solid var(--ta);background:var(--panel-2);
  padding:16px 20px;margin:0 0 24px;list-style:none;font-size:14.5px;color:var(--muted-3);
  display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
}
.woocommerce-error{border-left-color:#B23A24;}
.woocommerce-message a,.woocommerce-info a{}

/* buttons */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce .button,.woocommerce-page .button,.woocommerce a.button.alt,.woocommerce button.button.alt,
.woocommerce #place_order,.wc-block-components-button{
  background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:0;
  padding:15px 26px;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:500;line-height:1;transition:background .2s,border-color .2s,color .2s;cursor:pointer;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,.woocommerce .button:hover,.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,.woocommerce #place_order:hover{background:var(--ta);border-color:var(--ta);color:var(--bg);}
.woocommerce a.button.disabled,.woocommerce button.button:disabled,.woocommerce button.button.disabled{opacity:.4;}
.woocommerce .button.wc-backward{background:none;color:var(--ink);}
.woocommerce .button.wc-backward:hover{background:var(--ink);color:var(--bg);}

/* form fields */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
.woocommerce .quantity .qty,.woocommerce table.cart td.actions .coupon .input-text,
.woocommerce-page form .form-row input.input-text,input[type=text],input[type=email],
input[type=tel],input[type=password],input[type=search],input[type=number],textarea,select{
  border:1px solid var(--field-border);background:var(--field);border-radius:0;padding:13px 14px;
  font-size:14.5px;color:var(--ink);box-shadow:none;
}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus,
input:focus,textarea:focus,select:focus{border-color:var(--ta);outline:none;}
.woocommerce form .form-row label,.woocommerce-checkout label{font-size:13px;color:var(--muted-2);}
.select2-container--default .select2-selection--single{border:1px solid var(--field-border);border-radius:0;height:auto;padding:8px 6px;}

/* tables (cart, order, account) */
.woocommerce table.shop_table{border:1px solid var(--line);border-radius:0;border-collapse:collapse;}
.woocommerce table.shop_table th{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:16px 18px;}
.woocommerce table.shop_table td{padding:16px 18px;border-top:1px solid var(--line);}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cart_totals{border:1px solid var(--line);padding:8px 24px 20px;}
.woocommerce .cart-collaterals .cart_totals h2{font-family:var(--serif);font-weight:600;font-size:28px;margin:16px 0;}
.woocommerce-cart table.cart img{width:64px;}
.woocommerce a.remove{color:var(--ta)!important;border-radius:0;font-weight:400;}
.woocommerce a.remove:hover{background:var(--ta)!important;color:#fff!important;}

/* quantity stepper */
.woocommerce .quantity .qty{width:64px;text-align:center;}

/* prices, sale badge, stars */
.woocommerce .price,.woocommerce div.product p.price,.woocommerce ul.products li.product .price,.amount{color:var(--ink);font-weight:600;}
.woocommerce span.onsale{background:var(--ta);color:var(--bg);border-radius:0;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;min-height:auto;min-width:auto;padding:6px 10px;line-height:1;top:8px;left:8px;}
.woocommerce .star-rating span::before,.woocommerce p.stars a::before{color:var(--ta);}
.woocommerce .star-rating::before{color:var(--heat-off);}

/* checkout layout */
.woocommerce .col2-set,.woocommerce-page .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:28px;width:auto;float:none;}
.woocommerce-checkout .col2-set{grid-template-columns:1fr;}
.woocommerce form.checkout_coupon,.woocommerce .woocommerce-form-login{border:1px solid var(--line);border-radius:0;}
#order_review,#order_review_heading{margin-top:0;}
.woocommerce-checkout #payment{background:transparent;border-radius:0;}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--line);padding:0 0 16px;}
.woocommerce-checkout #payment div.payment_box{background:var(--panel);border-radius:0;}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--panel);}
.woocommerce #payment #place_order,.woocommerce-checkout #place_order{width:100%;padding:18px;font-size:13px;letter-spacing:.16em;}

/* account */
.woocommerce-account .woocommerce-MyAccount-navigation{width:30%;}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--line);}
.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line);}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:14px 18px;color:var(--ink);text-decoration:none;font-size:14px;}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{color:var(--ta);}
.woocommerce-account .woocommerce-MyAccount-content{width:66%;}

/* results/ordering (default archives) */
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{font-family:var(--mono);font-size:12px;color:var(--muted);}

@media (max-width:768px){
  .woocommerce .col2-set,.woocommerce-page .col2-set{grid-template-columns:1fr;}
  .woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none;}
}

/* =========================================================================
   Quantity steppers + PDP add-to-cart form + cart toolbar + loop grid
   ========================================================================= */
.ta-qty{display:inline-flex;align-items:center;border:1px solid var(--ink);background:#fff;}
.ta-qty button{background:none;border:none;width:44px;align-self:stretch;font-size:17px;line-height:1;color:var(--ink);}
.ta-qty button:hover{background:#F0E9DE;}
.ta-qty input.qty,.ta-qty input[type=number],.ta-qty input[type=text]{border:0!important;background:none!important;width:44px!important;min-height:38px;text-align:center;padding:0!important;font-weight:600;box-shadow:none!important;-moz-appearance:textfield;}
.ta-qty input.qty::-webkit-outer-spin-button,.ta-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.ta-qty--readonly{border:0;}

/* PDP add-to-cart form (uses WooCommerce markup) */
.ta-pdp form.cart{display:flex;gap:14px;align-items:stretch;margin:0 0 40px;flex-wrap:wrap;}
.ta-pdp form.cart .quantity{flex:0 0 auto;}
.ta-pdp form.cart .single_add_to_cart_button{flex:1;min-width:220px;padding:17px 28px;font-size:12px;}
.ta-pdp form.cart.grouped_form,.ta-pdp form.cart.variations_form{display:block;}
.ta-pdp .variations{margin-bottom:18px;width:100%;}
.ta-pdp .woocommerce-variation-add-to-cart{display:flex;gap:14px;align-items:stretch;flex-wrap:wrap;}
.ta-pdp .stock{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;}
.ta-pdp .woocommerce-variation-price{margin-bottom:14px;}

/* cart line item + toolbar */
.ta-cartitem__info{min-width:0;}
.ta-cartitem__media a{display:flex;width:100%;height:100%;align-items:flex-end;justify-content:center;}
.ta-cart__toolbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--line);}
.ta-cart__coupon{display:flex;gap:8px;}
.ta-cart__coupon .input-text{width:180px;}
.ta-cart__update{margin-left:auto;background:none;border:none;cursor:pointer;}

/* =========================================================================
   Editable page content — core blocks styled to match the design
   ========================================================================= */
.ta-richtext .wp-block-heading{font-family:var(--serif);font-weight:600;font-size:clamp(24px,2.6vw,32px);margin:1.4em 0 .4em;}
.ta-richtext>p{max-width:68ch;}

/* FAQ via core Details blocks */
.ta-faqpage .wp-block-details:first-of-type{border-top:1px solid var(--line);}
.ta-richtext .wp-block-details{border-bottom:1px solid var(--line);padding:0;}
.ta-richtext .wp-block-details>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 2px;cursor:pointer;font-family:var(--serif);font-weight:600;font-size:23px;list-style:none;}
.ta-richtext .wp-block-details>summary::-webkit-details-marker{display:none;}
.ta-richtext .wp-block-details>summary::after{content:"+";color:var(--ta);font-family:var(--mono);font-size:16px;}
.ta-richtext .wp-block-details[open]>summary::after{content:"–";}
.ta-richtext .wp-block-details p{margin:0;padding:0 2px 24px;font-size:15px;line-height:1.7;color:var(--muted-2);max-width:64ch;}

/* Shipping via core Table block */
.ta-richtext .wp-block-table{margin:24px 0;}
.ta-richtext .wp-block-table table{border-collapse:collapse;width:100%;border:1px solid var(--line);}
.ta-richtext .wp-block-table th{background:var(--panel);font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 18px;}
.ta-richtext .wp-block-table td{border-top:1px solid var(--line);padding:14px 18px;font-size:14.5px;}
.ta-richtext .wp-block-table td:first-child{font-weight:600;}

/* Contact: group of the two shortcodes → two columns */
.ta-contactpage .wp-block-group.ta-contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start;margin-top:8px;}
@media (max-width:768px){.ta-contactpage .wp-block-group.ta-contact{grid-template-columns:1fr;gap:32px;}}

/* product loop grid (shortcodes, related, up-sells) */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);list-style:none;margin:0 0 32px;padding:0;}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{margin:0;width:auto;padding:0;background:var(--bg);float:none;}
.woocommerce ul.products li.product::before{content:none;}
.woocommerce ul.products li.product .ta-card{padding:14px 14px 20px;}
.woocommerce .related.products>h2,.woocommerce .upsells.products>h2{font-family:var(--serif);font-weight:600;font-size:34px;margin:0 0 30px;}
