/*
Theme Name: Beauty Chest
Template: storefront
Description: Bright, kid-focused Entertainer-style design for toychest.co.uk
Version: 2.0
*/

/* ============ Tokens ============ */
:root{
  --tc-red:#E64980; --tc-red2:#C2255C;
  --tc-blue:#9C36B5; --tc-blue2:#7B2CBF; --tc-purple:#5F3DC4;
  --tc-yellow:#E6B422; --tc-orange:#F76707; --tc-green:#3FB95F;
  --tc-pink:#F783AC; --tc-teal:#12B8A6;
  --tc-ink:#2B2233; --tc-cream:#FFF0F6; --tc-line:#F3ECF5;
}

/* ============ Base / compact ============ */
html{ font-size:14px; }
body{ font-family:'Nunito',-apple-system,'Segoe UI',Roboto,sans-serif; color:var(--tc-ink); background:#fff; overflow-x:hidden; }
h1,h2,h3,h4,.product_title,.entry-title,.tc-h2,.widget-title{ font-family:'Fredoka',sans-serif !important; font-weight:600; }
a{ color:var(--tc-blue); } a:hover{ color:var(--tc-red); }
.col-full{ max-width:1200px; }
.tc-wrap{ max-width:1200px; margin:0 auto; padding:0 16px; }
.site-main{ margin-bottom:1.2em; }
.hentry{ margin:0 0 1em; padding:0; border:0; }
.hentry .entry-header{ margin:0 0 .6em; padding:0; border:0; }
.hentry .entry-header h1{ font-size:1.5rem; }
@media (prefers-reduced-motion: reduce){ *{ animation:none !important; transition:none !important; } }

/* Buttons */
.button,button,input[type=submit],.added_to_cart{
  background:var(--tc-blue) !important; color:#fff !important; border-radius:999px !important;
  font-family:'Fredoka',sans-serif !important; font-weight:600 !important; border:none !important;
  box-shadow:0 2px 0 rgba(0,0,0,.14);
}
.button:hover,button:hover,input[type=submit]:hover,.added_to_cart:hover{ background:var(--tc-red) !important; }
.single_add_to_cart_button,.add_to_cart_button{ background:var(--tc-orange) !important; }
.single_add_to_cart_button:hover,.add_to_cart_button:hover{ background:var(--tc-red) !important; }

/* ============ Header ============ */
.site-header{ padding:0 !important; margin:0 !important; background:#fff !important; border:0 !important; }
.site-header .col-full{ max-width:none; padding:0; margin:0; }
.tc-promo,.tc-navband,.tc-catbar{ margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.tc-promo{ background:var(--tc-yellow); color:var(--tc-ink); text-align:center; font-family:'Fredoka'; font-size:.86rem; padding:5px 12px; }
.tc-promo a{ color:var(--tc-ink); text-decoration:underline; font-weight:700; }
.tc-navband{ background:linear-gradient(120deg,var(--tc-blue) 0%,var(--tc-blue2) 55%,var(--tc-purple) 100%); }
.tc-nav-row{ display:flex; align-items:center; gap:16px; padding:9px 16px; }
.tc-logo img{ max-height:46px !important; width:auto; background:#fff; border-radius:12px; padding:3px 8px; box-shadow:0 2px 8px rgba(0,0,0,.18); }
.tc-logo .custom-logo-link{ display:inline-block; line-height:0; }
.tc-brandtext{ font-family:'Fredoka'; font-size:1.5rem; color:#fff; font-weight:700; text-decoration:none; }
.tc-search{ flex:1 1 auto; display:flex; max-width:540px; margin:0 auto; border-radius:999px; box-shadow:0 3px 12px rgba(0,0,0,.18); }
.tc-search input[type=search]{ flex:1; min-width:0; border:0; border-radius:999px 0 0 999px; padding:.62em 1.15em; font-size:.95rem; background:#fff; }
.tc-search input[type=search]:focus{ outline:2px solid var(--tc-yellow); outline-offset:-2px; }
.tc-search button{ border-radius:0 999px 999px 0 !important; padding:.62em 1.25em !important; background:var(--tc-orange) !important; box-shadow:none !important; font-size:.92rem !important; }
.tc-search button:hover{ background:var(--tc-red) !important; }
.tc-nav-actions{ margin-left:auto; display:flex; align-items:center; gap:14px; }
.tc-account{ font-family:'Fredoka'; color:#fff !important; text-decoration:none; font-weight:600; display:flex; align-items:center; gap:5px; white-space:nowrap; font-size:.95rem; }
.tc-account:hover{ color:var(--tc-yellow) !important; }
/* Basket pill */
.tc-cart{ display:flex; align-items:center; gap:7px; background:rgba(255,255,255,.16); border:1.5px solid rgba(255,255,255,.35); border-radius:999px; padding:.38em .95em; color:#fff !important; font-family:'Fredoka'; font-weight:600; text-decoration:none !important; white-space:nowrap; font-size:.95rem; }
.tc-cart:hover{ background:rgba(255,255,255,.28); }
.tc-cart .tc-cart-n{ background:var(--tc-yellow); color:var(--tc-ink); border-radius:999px; min-width:1.5em; text-align:center; padding:1px 6px; font-size:.85em; line-height:1.4; }
.tc-cart .tc-cart-t,.tc-cart .tc-cart-t .amount{ color:#fff; font-size:.9em; }
.tc-nav-actions .site-header-cart{ display:none !important; }
/* Category bar */
.tc-catbar{ background:linear-gradient(90deg,var(--tc-red),var(--tc-red2)); }
.tc-catbar nav{ overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.tc-catbar nav::-webkit-scrollbar{ display:none; }
ul.tc-menu{ display:flex; flex-wrap:nowrap; gap:2px; list-style:none; margin:0; padding:4px 0; justify-content:center; min-width:max-content; }
ul.tc-menu li{ margin:0; }
ul.tc-menu li a{ font-family:'Fredoka'; font-weight:500; color:#fff; padding:.38em .85em; border-radius:999px; text-decoration:none; display:block; font-size:.9rem; white-space:nowrap; }
ul.tc-menu li a:hover,ul.tc-menu li.current-menu-item>a{ background:rgba(255,255,255,.22); color:#fff; }

/* ============ Hero ============ */
.home .entry-header{ display:none; }
.tc-hero{ position:relative; background:linear-gradient(120deg,var(--tc-purple) 0%,var(--tc-blue) 50%,var(--tc-teal) 100%); border-radius:22px; margin:14px 0 8px; padding:30px 26px; color:#fff; overflow:hidden; }
.tc-hero-grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:18px; align-items:center; position:relative; z-index:2; }
.tc-hero-copy h1{ color:#fff !important; font-size:2.3rem; line-height:1.08; margin:.25em 0 .2em; text-shadow:0 3px 0 rgba(0,0,0,.14); }
.tc-hero-copy p{ font-size:1.02rem; margin:0 0 .9em; opacity:.96; max-width:34em; }
.tc-burst{ display:inline-block; background:var(--tc-yellow); color:var(--tc-ink); font-family:'Fredoka'; font-weight:700; border-radius:14px; padding:.3em .8em; transform:rotate(-3deg); box-shadow:0 4px 0 rgba(0,0,0,.15); font-size:1rem; }
.tc-burst b{ font-size:1.15em; }
.tc-hero-ctas{ margin:0; }
.tc-hero-btn{ background:var(--tc-yellow) !important; color:var(--tc-ink) !important; font-size:1.02rem; padding:.65em 1.5em !important; }
.tc-hero-btn:hover{ background:#fff !important; }
.tc-hero-art{ position:relative; min-height:210px; }
.tc-hero-card{ position:absolute; background:#fff; border-radius:16px; padding:10px; width:44%; box-shadow:0 10px 24px rgba(0,0,0,.25); transition:transform .15s ease; }
.tc-hero-card img{ width:100%; height:auto; border-radius:10px; display:block; }
.tc-hero-card.hc1{ left:0; top:6%; transform:rotate(-7deg); z-index:3; }
.tc-hero-card.hc2{ left:31%; top:16%; transform:rotate(3deg); z-index:2; }
.tc-hero-card.hc3{ right:0; top:2%; transform:rotate(8deg); z-index:1; }
.tc-hero-card:hover{ transform:rotate(0deg) scale(1.05); z-index:9; }
@keyframes tcfloat{ 0%,100%{ transform:translateY(0) rotate(-4deg); } 50%{ transform:translateY(-13px) rotate(5deg); } }
.tc-float{ position:absolute; font-size:2rem; opacity:.8; animation:tcfloat 5.5s ease-in-out infinite; pointer-events:none; z-index:1; text-shadow:0 4px 10px rgba(0,0,0,.2); }
.tc-float.f1{ left:3%; top:14%; } .tc-float.f2{ right:5%; top:10%; animation-delay:1.1s; }
.tc-float.f3{ left:8%; bottom:10%; animation-delay:2.2s; } .tc-float.f4{ right:10%; bottom:12%; animation-delay:.6s; font-size:2.5rem; }

/* ============ Section titles & colour bands ============ */
.tc-h2{ font-size:1.4rem; text-align:center; margin:1.1em 0 .55em; }
.tc-band{ margin:18px calc(50% - 50vw) 0; padding:16px 0 20px; }
.tc-band-inner{ max-width:1200px; margin:0 auto; padding:0 16px; }
.tc-band-red{ background:#FFF1E8; }
.tc-band-blue{ background:#EDF7FF; }
.tc-band .tc-h2{ margin-top:.2em; }

/* ============ Category tiles ============ */
.tc-cats{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; margin:10px 0 4px; }
.tc-tile{ border-radius:18px; padding:16px 10px 13px; text-align:center; color:#fff !important; text-decoration:none !important; transition:transform .13s ease,box-shadow .13s ease; box-shadow:0 3px 0 rgba(0,0,0,.12); }
.tc-tile:hover{ transform:translateY(-4px) rotate(-1.2deg); box-shadow:0 10px 20px rgba(0,0,0,.18); }
.tc-tile .em{ font-size:2.1rem; display:block; margin-bottom:4px; filter:drop-shadow(0 2px 0 rgba(0,0,0,.18)); }
.tc-tile b{ font-family:'Fredoka'; font-size:.95rem; line-height:1.15; display:block; }
.tc-tile small{ opacity:.92; font-size:.78rem; }
.tc-c1{ background:linear-gradient(135deg,#E64980,#F76707); }
.tc-c2{ background:linear-gradient(135deg,#9C36B5,#5F3DC4); }
.tc-c3{ background:linear-gradient(135deg,#12B8A6,#9C36B5); }
.tc-c4{ background:linear-gradient(135deg,#F783AC,#E64980); }
.tc-c5{ background:linear-gradient(135deg,#F76707,#E6B422); }
.tc-c6{ background:linear-gradient(135deg,#5F3DC4,#F783AC); }

/* ============ Brand strip ============ */
.tc-brandstrip{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin:6px 0 10px; }
.tc-brandpill{ background:#fff; border:2px solid var(--tc-blue); color:var(--tc-blue) !important; font-family:'Fredoka'; font-weight:600; border-radius:999px; padding:.4em 1.1em; text-decoration:none !important; font-size:.95rem; transition:all .12s ease; }
.tc-brandpill:hover{ background:var(--tc-blue); color:#fff !important; transform:translateY(-2px); }
.tc-brandstrip .tc-brandpill:nth-child(4n+2){ border-color:var(--tc-red); color:var(--tc-red) !important; }
.tc-brandstrip .tc-brandpill:nth-child(4n+2):hover{ background:var(--tc-red); color:#fff !important; }
.tc-brandstrip .tc-brandpill:nth-child(4n+3){ border-color:var(--tc-green); color:var(--tc-green) !important; }
.tc-brandstrip .tc-brandpill:nth-child(4n+3):hover{ background:var(--tc-green); color:#fff !important; }
.tc-brandstrip .tc-brandpill:nth-child(4n+4){ border-color:var(--tc-orange); color:var(--tc-orange) !important; }
.tc-brandstrip .tc-brandpill:nth-child(4n+4):hover{ background:var(--tc-orange); color:#fff !important; }

/* ============ Product grid: uniform boxes ============ */
ul.products{ display:grid !important; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:14px; margin:0 0 1.2em !important; }
ul.products::before,ul.products::after{ display:none !important; }
ul.products li.product{ float:none !important; width:auto !important; margin:0 !important; display:flex !important; flex-direction:column; background:#fff; border:1px solid var(--tc-line); border-radius:16px; padding:12px !important; text-align:center; transition:transform .12s ease,box-shadow .12s ease; position:relative; }
ul.products li.product:hover{ transform:translateY(-3px); box-shadow:0 10px 22px rgba(0,0,0,.1); }
ul.products li.product img{ width:100% !important; aspect-ratio:1/1; object-fit:contain; border-radius:10px; margin:0 0 .55em !important; background:#fff; }
ul.products li.product .woocommerce-loop-product__title{ font-size:.9rem; line-height:1.3; padding:0 !important; min-height:2.6em; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
ul.products li.product .price{ font-family:'Fredoka'; margin:.25em 0 .55em; min-height:1.5em; font-size:.98rem; }
ul.products li.product .button,ul.products li.product .added_to_cart{ margin-top:auto; font-size:.9rem; }
ul.products li.product .onsale{ position:absolute; top:10px; left:10px; margin:0 !important; background:var(--tc-red) !important; border-radius:999px; font-family:'Fredoka'; transform:rotate(-6deg); padding:.35em .7em; min-height:0; min-width:0; line-height:1; z-index:2; }
/* Category tiles inside product grids (shop page) */
ul.products li.product-category{ border:none !important; background:transparent !important; box-shadow:none !important; }
ul.products li.product-category img{ border:3px solid var(--tc-yellow); aspect-ratio:1/1; object-fit:cover; }
ul.products li.product-category .woocommerce-loop-category__title{ min-height:auto; -webkit-line-clamp:1; }

/* Price colours */
.price ins{ color:var(--tc-red); font-weight:700; text-decoration:none; }
.price del{ color:#9aa5ab; font-size:.88em; }
.tc-save{ display:inline-block; background:var(--tc-red); color:#fff; border-radius:999px; padding:.14em .5em; font-family:'Fredoka'; font-weight:600; font-size:.78em; vertical-align:middle; }

/* ============ Shop/category chrome (compact) ============ */
.woocommerce-products-header{ margin:0 0 .5em; padding:0; }
.woocommerce-products-header__title.page-title{ font-size:1.35rem !important; text-align:left; margin:0 0 .3em; }
.term-description{ font-size:.92em; color:#5c6b73; margin:0 0 .8em; }
.woocommerce-breadcrumb{ font-size:.8em; color:#7a8891; margin:8px 0 .6em !important; padding:0 !important; }
.storefront-sorting{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:0 0 .8em; font-size:.85em; }
.woocommerce-result-count{ margin:0; color:#7a8891; }
.tc-brandbar{ display:inline-block; margin:0; }
.tc-brandbar select,.woocommerce-ordering select{ font-family:'Fredoka'; border:2px solid var(--tc-line); border-radius:999px; padding:.4em .9em; background:#fff; color:var(--tc-ink); cursor:pointer; font-size:.95em; }
.woocommerce-ordering{ margin:0; }

/* ============ Product page ============ */
.product_title.entry-title{ font-size:1.45rem !important; line-height:1.2; margin:0 0 .3em !important; }
.tc-meta{ margin:.1em 0 .65em; font-size:.88em; color:#5c6b73; display:flex; gap:1em; flex-wrap:wrap; }
.tc-meta .tc-brand strong{ color:var(--tc-blue); }
.tc-delivery{ background:var(--tc-cream); border:1.5px dashed var(--tc-yellow); border-radius:12px; padding:8px 12px; font-size:.88em; margin:.9em 0; }
.single-product div.product .summary .price{ font-size:1.5em; font-family:'Fredoka'; }
.single-product div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--tc-red); }
.related.products>h2,.up-sells>h2{ font-size:1.3rem; font-family:'Fredoka' !important; }

/* ============ Trust tiles (bottom, site-wide) ============ */
.tc-trust{ margin:22px calc(50% - 50vw) 0; padding:18px 0; background:#fff; }
.tc-trust-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:12px; }
.tc-trust-tile{ border-radius:16px; padding:14px 12px; color:#fff; text-align:center; }
.tc-trust-tile span{ font-size:1.7rem; display:block; margin-bottom:2px; }
.tc-trust-tile b{ font-family:'Fredoka'; display:block; font-size:.98rem; }
.tc-trust-tile small{ opacity:.92; font-size:.8rem; }
.tt1{ background:linear-gradient(135deg,var(--tc-blue),var(--tc-blue2)); }
.tt2{ background:linear-gradient(135deg,var(--tc-green),#2E9E4C); }
.tt3{ background:linear-gradient(135deg,var(--tc-purple),#5B35B0); }
.tt4{ background:linear-gradient(135deg,var(--tc-orange),var(--tc-red)); }

/* ============ Footer (contrast fixed) ============ */
.site-footer{ background:var(--tc-ink) !important; color:#C9D6DE !important; padding:20px 0 14px !important; margin-top:10px; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.site-footer .col-full{ max-width:none; margin:0; padding:0; }
.tc-footwrap{ max-width:1080px; margin:0 auto; padding:0 16px; }
.site-footer a{ color:#FFD66B !important; }
.site-footer a:hover{ color:#fff !important; }
.site-footer ul{ list-style:none !important; margin:0; padding:0; }
.tc-footwrap{ text-align:center; }
.tc-footer-menu{ display:flex; flex-wrap:wrap; gap:6px 22px; justify-content:center; margin:0 0 12px !important; }
.tc-footer-menu li{ margin:0 !important; }
.tc-footer-menu a{ font-family:'Fredoka'; text-decoration:none; font-size:.95rem; }
.tc-pay{ display:flex; flex-wrap:wrap; gap:7px; align-items:center; justify-content:center; margin:0 0 10px; color:#8fa3af; font-size:.85em; }
.tc-pay .tc-card{ background:#fff; color:var(--tc-ink); border-radius:6px; padding:2px 8px; font-size:.8em; font-weight:800; }
.tc-pay .tc-secure{ color:#8fd19e; margin-left:6px; }
.tc-credit{ text-align:center; opacity:.75; font-size:.85em; }

/* ============ Layout: no sidebar ============ */
.tc-full #primary.content-area,.tc-full .content-area{ width:100% !important; float:none !important; margin:0 !important; }
.tc-full #secondary{ display:none !important; }

/* ============ Brands dropdown (catbar) ============ */
.site-header{ overflow:visible !important; position:relative; z-index:80; }
.tc-catbar{ position:relative; z-index:90; }
.tc-catbar nav{ overflow:visible; }
.tc-brands-li{ margin:0; position:relative; }
.tc-brands-dd summary{ list-style:none; cursor:pointer; font-family:'Fredoka'; font-weight:500; color:#fff; padding:.38em .85em; border-radius:999px; font-size:.9rem; white-space:nowrap; }
.tc-brands-dd summary::-webkit-details-marker{ display:none; }
.tc-brands-dd[open] summary,.tc-brands-dd summary:hover{ background:rgba(255,255,255,.22); }
.tc-brands-panel{ position:absolute; right:0; top:calc(100% + 8px); background:#fff; border-radius:14px; box-shadow:0 14px 34px rgba(0,0,0,.28); padding:12px; display:grid; grid-template-columns:repeat(3,minmax(140px,1fr)); gap:2px; z-index:99; min-width:480px; }
.tc-brands-panel a{ font-family:'Fredoka'; color:var(--tc-ink) !important; text-decoration:none !important; padding:.38em .6em; border-radius:8px; font-size:.9rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; max-width:100%; }
.tc-brands-panel a:hover{ background:var(--tc-cream); color:var(--tc-red) !important; }
.tc-brands-panel a small{ color:#9aa5ab; }
.tc-dd-narrow .tc-brands-panel{ grid-template-columns:1fr; min-width:230px; }
.tc-dd-wide .tc-brands-panel{ grid-template-columns:repeat(2,minmax(250px,1fr)); min-width:540px; }
.tc-brands-li + .tc-brands-li{ margin-left:2px; }

/* ============ Sticky add-to-cart (mobile product pages) ============ */
.tc-sticky-atc{ display:none; }

/* ============ FAQs ============ */
.tc-faqs{ max-width:760px; margin:0 auto; }
.tc-faq{ background:#fff; border:1.5px solid var(--tc-line); border-radius:14px; margin:0 0 10px; overflow:hidden; }
.tc-faq summary{ cursor:pointer; font-family:'Fredoka'; font-weight:600; padding:12px 16px; list-style:none; position:relative; padding-right:2.4em; }
.tc-faq summary::-webkit-details-marker{ display:none; }
.tc-faq summary:after{ content:"+"; position:absolute; right:14px; top:50%; transform:translateY(-50%); font-size:1.3em; color:var(--tc-orange); font-weight:700; }
.tc-faq[open] summary:after{ content:"–"; color:var(--tc-red); }
.tc-faq[open] summary{ background:var(--tc-cream); }
.tc-faq p{ padding:10px 16px 14px; margin:0; color:#41525c; }

/* ============ Payment logos ============ */
.tc-pay .tc-card{ display:inline-flex; align-items:center; padding:4px 8px; }
.tc-pay .tc-card svg{ display:block; }

/* ============ Mobile ============ */
@media (max-width:782px){
  .tc-nav-row{ flex-wrap:wrap; gap:10px; }
  .tc-search{ order:3; max-width:100%; flex-basis:100%; }
  .tc-nav-actions{ margin-left:auto; }
  .tc-hero{ padding:22px 16px; }
  .tc-hero-grid{ grid-template-columns:1fr; }
  .tc-hero-copy h1{ font-size:1.65rem; }
  .tc-hero-art{ min-height:150px; margin-top:4px; }
  .tc-cats{ grid-template-columns:repeat(auto-fill,minmax(105px,1fr)); gap:8px; }
  .tc-tile .em{ font-size:1.7rem; }
  ul.products{ grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:10px; }
  ul.tc-menu{ justify-content:flex-start; }
  .tc-catbar nav{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .tc-brands-panel{ position:fixed; left:8px; right:8px; top:auto; min-width:0; grid-template-columns:repeat(2,1fr); }
  .tc-sticky-atc{ display:flex; position:fixed; left:0; right:0; bottom:0; z-index:998; background:#fff; box-shadow:0 -4px 16px rgba(0,0,0,.16); padding:8px 12px; align-items:center; gap:10px; justify-content:space-between; }
  .tc-sticky-price{ font-family:'Fredoka'; font-size:1rem; }
  .tc-sticky-price del,.tc-sticky-price .tc-save{ display:none; }
  .tc-sticky-btn{ background:var(--tc-orange) !important; padding:.6em 1.3em !important; }
  body.single-product .storefront-handheld-footer-bar{ display:none; }
  body.single-product{ padding-bottom:64px; }
}

/* ---- One-line trust strip (replaces the 4 trust tiles) ---- */
.tc-trust-strip{ background:var(--tc-ink); color:#fff; width:100vw; margin-left:calc(50% - 50vw);
  display:flex; flex-wrap:wrap; justify-content:center; gap:6px 34px; padding:12px 18px;
  font-family:'Fredoka'; font-size:.95rem; }
.tc-trust-strip span{ white-space:nowrap; }
.tc-trust-strip b{ font-weight:600; }
.tc-trust-strip small{ color:#9fb3bf; font-family:'Nunito'; font-size:.85em; }
.tc-trust,.tc-trust-grid,.tc-trust-tile{ display:none !important; } /* retire old tiles if cached markup lingers */

/* ---- Newsletter band ---- */
.tc-news{ background:var(--tc-yellow); width:100vw; margin-left:calc(50% - 50vw); padding:20px 18px; }
.tc-news .tc-wrap{ display:flex; align-items:center; gap:18px 26px; flex-wrap:wrap; justify-content:center; }
.tc-news-copy{ display:flex; flex-direction:column; }
.tc-news-copy b{ font-family:'Fredoka'; font-size:1.15rem; color:var(--tc-ink); }
.tc-news-copy span{ color:#5b4a12; font-size:.92rem; }
.tc-news-form{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.tc-news-form input[type=text]:not(.tc-hp),.tc-news-form input[type=email]{
  border:2px solid #e3aa00; border-radius:999px; padding:.6em 1.1em; font-size:.95rem; min-width:170px; background:#fff; }
.tc-news-form input:focus{ outline:none; border-color:var(--tc-ink); }
.tc-news-form button{ background:var(--tc-ink) !important; color:#fff !important; border:none; border-radius:999px !important;
  padding:.65em 1.5em !important; font-family:'Fredoka' !important; font-weight:600; cursor:pointer; box-shadow:none; }
.tc-news-form button:hover{ background:var(--tc-red) !important; }
.tc-news-msg{ font-family:'Fredoka'; color:var(--tc-ink); min-width:120px; }
.tc-hp{ position:absolute !important; left:-5000px !important; width:1px; height:1px; opacity:0; }
@media(max-width:700px){ .tc-news-form input{ min-width:130px; } }

/* ---- Order-received page: compact + product thumbs ---- */
.woocommerce-checkout .entry-header,.woocommerce-order-received .entry-header{ margin:0 0 .3em !important; }
.woocommerce-checkout .entry-title{ text-align:left; font-size:1.6rem; margin:.2em 0 .3em !important; }
.woocommerce-order p.woocommerce-thankyou-order-received{ margin:.2em 0 .9em; font-family:'Fredoka'; font-size:1.05rem; color:var(--tc-green); }
ul.woocommerce-thankyou-order-details.order_details{ margin:0 0 1.2em !important; padding:14px 16px !important; }
ul.order_details li{ margin-bottom:.35em; padding:.15em 1.2em .15em 0 !important; }
.woocommerce-order section.woocommerce-order-details,.woocommerce-order section.woocommerce-customer-details{ margin:0 0 1.1em !important; }
.woocommerce-order h2{ font-size:1.25rem; margin:.6em 0 .45em; }
.woocommerce-table--order-details{ margin-bottom:.8em; }
.woocommerce-table--order-details td,.woocommerce-table--order-details th{ padding:.5em .7em; }
.woocommerce-customer-details address{ line-height:1.5; font-style:normal; border:1px solid var(--tc-line); border-radius:12px; padding:12px 14px; }
/* product thumbnails in order tables */
.tc-order-thumb{ width:44px; height:44px; object-fit:contain; border-radius:8px; border:1px solid var(--tc-line); background:#fff; margin-right:9px; vertical-align:middle; }
.woocommerce-table--order-details .product-name a{ font-weight:700; }

/* ---- Page headers: kill the dead space, left-align titles ---- */
.page .entry-header,.woocommerce-account .entry-header,.archive .page-header{ margin:0 0 .3em !important; padding:0 !important; min-height:0 !important; }
.page h1.entry-title,.woocommerce-account h1.entry-title,.archive .page-title{ text-align:left !important; font-size:1.5rem !important; margin:.15em 0 .5em !important; }
.page .site-main,.woocommerce-account .site-main{ padding-top:0 !important; }
/* Breadcrumb: a touch bigger + breathing room */
.woocommerce-breadcrumb{ font-size:.98rem !important; margin:12px 0 8px !important; }

/* ---- FiboSearch styled into the navbar pill ---- */
.tc-search-fibo{ flex:1 1 auto; max-width:540px; margin:0 auto; }
.tc-search-fibo .dgwt-wcas-search-wrapp{ max-width:none !important; margin:0 !important; }
.tc-search-fibo .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input{
  border-radius:999px !important; border:0 !important; padding:.62em 3em .62em 1.15em !important;
  font-size:.95rem !important; box-shadow:0 3px 12px rgba(0,0,0,.18) !important; }
.tc-search-fibo .dgwt-wcas-search-submit{ background:transparent !important; }
.dgwt-wcas-suggestions-wrapp{ border-radius:14px !important; box-shadow:0 14px 34px rgba(0,0,0,.25) !important; border:0 !important; }

/* ---- Mobile pass ---- */
@media (max-width: 820px){
  .tc-nav-row{ flex-wrap:wrap; gap:8px; padding:8px 10px; }
  .tc-search,.tc-search-fibo{ order:3; flex-basis:100%; max-width:100%; }
  .tc-logo img{ max-height:38px !important; }
  .tc-account span{ display:none; }
  .tc-cart .tc-cart-t{ display:none; }
  .tc-hero-grid{ grid-template-columns:1fr; }
  .tc-hero-art{ display:none; }
  .tc-hero-copy h1{ font-size:1.7rem; }
  .tc-hero{ padding:22px 18px; }
  ul.tc-menu li a{ padding:.5em 1em; }
  ul.products{ grid-template-columns:repeat(2,1fr) !important; }
  .site-main ul.products li.product{ width:100% !important; margin:0 0 10px !important; float:none !important; }
  ul.products{ display:grid !important; gap:10px; }
  .tc-trust-strip{ gap:4px 16px; font-size:.85rem; padding:10px 12px; }
  .tc-news .tc-wrap{ flex-direction:column; align-items:stretch; text-align:center; }
  .tc-news-form{ justify-content:center; }
  .tc-news-form input{ min-width:0; flex:1; }
  .woocommerce-table--order-details,.woocommerce-orders-table{ display:block; overflow-x:auto; }
  .tc-band{ padding:12px 0 14px; }
  .woocommerce-MyAccount-navigation{ float:none !important; width:100% !important; }
  .woocommerce-MyAccount-content{ float:none !important; width:100% !important; }
}
/* back-in-stock form */
.tc-stock-form{ background:var(--tc-cream); border:1px dashed var(--tc-orange); border-radius:14px; padding:12px 14px; margin:1em 0; }
.tc-stock-title{ margin:0 0 .5em; }
.tc-stock-row{ display:flex; gap:8px; flex-wrap:wrap; }
.tc-stock-row input[type=email]{ flex:1; min-width:180px; border:2px solid var(--tc-line); border-radius:999px; padding:.55em 1em; }
.tc-stock-msg{ font-family:'Fredoka'; color:var(--tc-green); }
