/* tapeetea.net design system — light / sand / green. v1.0.0 */
:root{
	--tpn-cream:#faf6ec;
	--tpn-sand:#efe6d3;
	--tpn-sand-dk:#e3d5ba;
	--tpn-green:#3c6647;
	--tpn-green-dk:#24402e;
	--tpn-green-soft:#6f9576;
	--tpn-gold:#b98d2f;
	--tpn-ink:#2b2f28;
	--tpn-ink-soft:#5a6053;
	--tpn-serif:Georgia,'Times New Roman',serif;
}
body{background:var(--tpn-cream);color:var(--tpn-ink);}
h1,h2,h3,.tpn-serif{font-family:var(--tpn-serif);color:var(--tpn-green-dk);}

/* ---------- logo ---------- */
.custom-logo,.site-logo-img img{width:250px;max-width:60vw;height:auto;}
@media (max-width:768px){.custom-logo,.site-logo-img img{width:200px;}}

/* ---------- announcement bar ---------- */
.tpn-bar{display:flex;align-items:center;justify-content:center;gap:14px;background:linear-gradient(90deg,var(--tpn-green-dk),var(--tpn-green));color:#fff;font-size:13px;font-weight:600;letter-spacing:.02em;padding:8px 12px;text-align:center;}
.tpn-bar-div{width:1px;height:14px;background:rgba(255,255,255,.35);}
@media (max-width:768px){.tpn-bar-3{display:none;}.tpn-bar{font-size:12px;gap:10px;}}

/* ---------- buttons ---------- */
.tpn-btn{display:inline-flex;align-items:center;justify-content:center;gap:.3em;min-height:48px;padding:12px 28px;background:var(--tpn-green);color:#fff!important;border-radius:8px;font-weight:700;text-decoration:none!important;transition:background .15s;}
.tpn-btn:hover{background:var(--tpn-green-dk);color:#fff;}
.tpn-btn-ghost{background:transparent;color:var(--tpn-green)!important;border:2px solid var(--tpn-green);}
.tpn-btn-ghost:hover{background:var(--tpn-green);color:#fff!important;}

/* ---------- homepage full-bleed ---------- */
.tpn-home .site-content>.ast-container{max-width:100%;padding:0;}
.tpn-home #primary{margin:0;padding:0;}
.tpn-home .entry-content{margin:0;}
.tpn-wrap{overflow-x:hidden;}
.tpn-sec{max-width:1080px;margin:0 auto;padding:56px 20px;}
.tpn-sec h2{font-size:clamp(1.6rem,3.5vw,2.2rem);margin:0 0 14px;}
.tpn-center{text-align:center;margin-top:22px;}
.tpn-plain{color:var(--tpn-ink-soft);font-size:.95rem;}

/* hero */
.tpn-hero{background:linear-gradient(160deg,var(--tpn-sand) 0%,var(--tpn-cream) 65%),var(--tpn-sand);border-bottom:1px solid var(--tpn-sand-dk);}
.tpn-hero-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center;padding:64px 20px;}
.tpn-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;font-weight:700;color:var(--tpn-gold);margin:0 0 10px;}
.tpn-hero h1{font-size:clamp(2rem,4.5vw,3.1rem);line-height:1.12;margin:0 0 16px;}
.tpn-hero-sub{font-size:1.1rem;color:var(--tpn-ink-soft);max-width:34em;margin:0 0 22px;}
.tpn-hero-cta{margin:0 0 20px;}
.tpn-hero-points{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.9rem;color:var(--tpn-green-dk);font-weight:600;}
.tpn-hero-points li::before{content:"\2713\00a0";color:var(--tpn-gold);}
.tpn-hero-media{text-align:center;}
.tpn-hero-img{max-width:100%;height:auto;border-radius:14px;box-shadow:0 18px 44px rgba(36,64,46,.18);}
@media (max-width:768px){.tpn-hero-inner{grid-template-columns:1fr;padding:40px 20px;}.tpn-hero-media{order:-1;}.tpn-hero-img{max-width:70%;}}

/* botanicals grid */
.tpn-botanicals{background:#fff;border-radius:16px;margin-top:8px;margin-bottom:8px;}
.tpn-bot-grid{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
@media (min-width:768px){.tpn-bot-grid{grid-template-columns:repeat(3,1fr);}}
@media (min-width:1024px){.tpn-bot-grid{grid-template-columns:repeat(5,1fr);}}
.tpn-bot-grid li{background:var(--tpn-sand);border:1px solid var(--tpn-sand-dk);border-radius:10px;padding:12px 10px;text-align:center;font-size:.88rem;font-weight:600;color:var(--tpn-green-dk);}

/* size teaser (home) */
.tpn-teaser-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:20px;}
@media (min-width:768px){.tpn-teaser-grid{grid-template-columns:repeat(4,1fr);}}
.tpn-teaser-card{display:flex;flex-direction:column;align-items:center;gap:2px;background:#fff;border:2px solid var(--tpn-sand-dk);border-radius:14px;padding:20px 10px;text-decoration:none!important;transition:border-color .15s,transform .15s;}
.tpn-teaser-card:hover{border-color:var(--tpn-green);transform:translateY(-2px);}
.tpn-teaser-qty{font-family:var(--tpn-serif);font-size:2rem;font-weight:700;color:var(--tpn-green-dk);line-height:1;}
.tpn-teaser-lbl{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--tpn-ink-soft);}
.tpn-teaser-price{font-weight:800;color:var(--tpn-ink);margin-top:6px;}
.tpn-teaser-per{font-size:.8rem;color:var(--tpn-gold);font-weight:700;}

/* brew steps */
.tpn-brew-steps{list-style:none;counter-reset:brew;margin:20px 0 0;padding:0;display:grid;gap:12px;}
@media (min-width:768px){.tpn-brew-steps{grid-template-columns:repeat(4,1fr);}}
.tpn-brew-steps li{counter-increment:brew;background:#fff;border:1px solid var(--tpn-sand-dk);border-radius:12px;padding:18px 16px 16px;position:relative;font-size:.92rem;color:var(--tpn-ink-soft);}
.tpn-brew-steps li::before{content:counter(brew);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--tpn-green);color:#fff;font-weight:800;font-size:.9rem;margin-bottom:8px;}
.tpn-brew-steps li strong{display:block;color:var(--tpn-green-dk);}

/* why grid */
.tpn-why{background:var(--tpn-green-dk);border-radius:16px;color:#f2efe6;}
.tpn-why h2{color:#fff;}
.tpn-why-grid{display:grid;gap:20px;margin-top:20px;}
@media (min-width:768px){.tpn-why-grid{grid-template-columns:repeat(2,1fr);}}
.tpn-why-grid h3{color:var(--tpn-gold);font-size:1.05rem;margin:0 0 6px;}
.tpn-why-grid p{margin:0;color:#d8d9cd;font-size:.95rem;}

/* faq teaser */
.tpn-faq-teaser dl{margin:20px 0 0;}
.tpn-faq-teaser dt{font-weight:700;color:var(--tpn-green-dk);margin-top:14px;}
.tpn-faq-teaser dd{margin:4px 0 0;color:var(--tpn-ink-soft);}
.tpn-final-cta{text-align:center;background:var(--tpn-sand);border-radius:16px;margin-bottom:56px;}

/* ---------- PDP size cards ---------- */
form.cart .tpn-sizes{flex:1 1 100%;width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:14px 0 4px;}
@media (min-width:768px){form.cart .tpn-sizes{grid-template-columns:repeat(4,1fr);}}
.tpn-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:1px;background:#fff;border:2px solid var(--tpn-sand-dk);border-radius:12px;padding:16px 6px 12px;cursor:pointer;min-height:96px;text-transform:none;letter-spacing:normal;transition:border-color .12s;}
.tpn-card *{text-transform:none;letter-spacing:normal;}
.tpn-card:hover{border-color:var(--tpn-green-soft);}
.tpn-card-on,.tpn-card-on:hover,.tpn-card:focus{background:var(--tpn-green-dk);border-color:var(--tpn-green-dk);}
.tpn-card-on .tpn-card-qty,.tpn-card:focus .tpn-card-qty,.tpn-card-on .tpn-card-price,.tpn-card:focus .tpn-card-price{color:#fff;}
.tpn-card-on .tpn-card-lbl,.tpn-card:focus .tpn-card-lbl{color:#cfd3c4;}
.tpn-card-on .tpn-card-per,.tpn-card:focus .tpn-card-per{color:#e9c96a;}
.tpn-card-qty{font-family:var(--tpn-serif);font-size:1.5rem;font-weight:700;color:var(--tpn-green-dk);line-height:1.05;}
.tpn-card-lbl{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--tpn-ink-soft);}
.tpn-card-price{font-weight:800;margin-top:5px;}
.tpn-card-per{font-size:.75rem;color:var(--tpn-gold);font-weight:700;}
.tpn-badge{position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:var(--tpn-green);color:#fff;font-size:10px;font-weight:800;padding:2px 9px;border-radius:999px;white-space:nowrap;}
.tpn-badge-bv{background:var(--tpn-gold);color:#fff;}
.tpn-card-more{display:none;}
.tpn-card-more.tpn-card-shown{display:flex;}
.tpn-show-all{flex:1 1 100%;display:block;width:100%;background:none;border:none;color:var(--tpn-green);font-weight:700;text-decoration:underline;cursor:pointer;padding:6px 0;margin:0 0 10px;text-align:left;}
.single-product div.product form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.single-product div.product form.cart .single_add_to_cart_button{flex:1 1 auto;}
/* keep the native select accessible but visually hidden (a11y: keeps its label/name) */
.tpn-native-vars{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);}

/* trust strip + delivery */
.tpn-trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0 6px;font-size:.85rem;font-weight:700;color:var(--tpn-green-dk);}
.tpn-delivery{font-size:.85rem;color:var(--tpn-ink-soft);margin:2px 0 0;}

/* PDP buttons / touch targets */
.single-product form.cart .single_add_to_cart_button{min-height:52px;width:100%;background:var(--tpn-green);border-radius:8px;font-weight:800;font-size:1.05rem;}
.single-product form.cart .single_add_to_cart_button:hover{background:var(--tpn-green-dk);}
.single-product form.cart .qty{min-height:48px;}
@media (max-width:768px){.woocommerce a.button,.woocommerce button.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;}}

/* ---------- footer ---------- */
.tpn-footer{background:var(--tpn-green-dk);color:#cfd3c4;}
.site-footer,.ast-footer-copyright,.site-below-footer-wrap{background:var(--tpn-green-dk)!important;color:#cfd3c4;}
.tpn-footer-cols{max-width:1080px;margin:0 auto;display:grid;gap:28px;padding:44px 20px 20px;}
@media (min-width:768px){.tpn-footer-cols{grid-template-columns:2fr 1fr 1fr 1.4fr;}}
.tpn-footer h4{color:#fff;font-family:var(--tpn-serif);margin:0 0 10px;font-size:1.05rem;}
.tpn-footer ul{list-style:none;margin:0;padding:0;}
.tpn-footer li{margin:0 0 7px;font-size:.9rem;}
.tpn-footer a{color:#e8e4d5;text-decoration:none;}
.tpn-footer a:hover{color:var(--tpn-gold);}
.tpn-footer p{font-size:.9rem;margin:0 0 8px;}
.tpn-footer-legal{max-width:1080px;margin:0 auto;padding:16px 20px 34px;border-top:1px solid rgba(255,255,255,.14);}
.tpn-footer-legal p{font-size:.78rem;color:#a9ae9c;margin:0 0 6px;}
@media (max-width:768px){.tpn-footer-cols,.tpn-footer-legal{text-align:center;}}

/* Astra prose guard: scope to direct children only (portfolio lesson) */
.entry-content>p{color:var(--tpn-ink);}
