/* =====================================================================
   Tractor Group — restyling 2026
   ===================================================================== */
:root{
  --tg-green:#1f7a3d;
  --tg-green-d:#155f2e;
  --tg-green-l:#e8f3ec;
  --tg-amber:#f4a11e;
  --tg-amber-d:#d8860a;
  --tg-ink:#16241d;
  --tg-slate:#4a5a52;
  --tg-mute:#7b8a82;
  --tg-bg:#f4f6f4;
  --tg-card:#ffffff;
  --tg-line:#e3e9e4;
  --tg-line-2:#d3ddd6;
  --tg-shadow:0 1px 2px rgba(22,36,29,.06),0 8px 24px rgba(22,36,29,.06);
  --tg-shadow-lg:0 12px 40px rgba(22,36,29,.14);
  --tg-radius:14px;
  --tg-radius-sm:10px;
  --tg-font:'Segoe UI',system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif;
  --tg-maxw:1200px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--tg-font);color:var(--tg-ink);background:var(--tg-bg);
  line-height:1.6;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--tg-green);text-decoration:none;transition:color .15s}
a:hover{color:var(--tg-green-d)}
h1,h2,h3,h4{line-height:1.2;margin:0 0 .5em;font-weight:800;letter-spacing:-.01em}
p{margin:0 0 1em}
.tg-container{max-width:var(--tg-maxw);margin:0 auto;padding:0 20px;width:100%}
.tg-center{text-align:center}
.tg-skip{position:absolute;left:-9999px}
.tg-skip:focus{left:16px;top:16px;background:#fff;padding:10px 16px;z-index:9999;border-radius:8px;box-shadow:var(--tg-shadow)}

/* ---------- Buttons ---------- */
.tg-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  background:var(--tg-green);color:#fff;font-weight:700;font-size:.95rem;
  padding:.7em 1.3em;border-radius:999px;border:2px solid var(--tg-green);
  cursor:pointer;transition:.18s;line-height:1;text-align:center;
}
.tg-btn:hover{background:var(--tg-green-d);border-color:var(--tg-green-d);color:#fff;transform:translateY(-1px)}
.tg-btn-lg{padding:.95em 1.7em;font-size:1.02rem}
.tg-btn-block{display:flex;width:100%}
.tg-btn-outline{background:transparent;color:var(--tg-green)}
.tg-btn-outline:hover{background:var(--tg-green);color:#fff}
.tg-btn-ghost{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.7);color:#fff;backdrop-filter:blur(2px)}
.tg-btn-ghost:hover{background:#fff;color:var(--tg-green-d);border-color:#fff}
.tg-btn-loop{margin-top:.5rem;font-size:.85rem;padding:.6em 1em}

/* ---------- Topbar ---------- */
.tg-topbar{background:var(--tg-ink);color:#cfe0d6;font-size:.82rem}
.tg-topbar-in{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:40px;flex-wrap:wrap}
.tg-topbar-phones{display:flex;gap:18px;flex-wrap:wrap}
.tg-topbar a{color:#d7e6dc}
.tg-topbar a:hover{color:#fff}
.tg-topbar-phones b{color:#fff;font-weight:600}
.tg-ico-phone{display:inline-block;width:13px;height:13px;vertical-align:-1px;margin-right:2px;
  background:currentColor;-webkit-mask:center/contain no-repeat;mask:center/contain no-repeat;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.5 15.5 0 006.6 6.6l2.2-2.2a1 1 0 011-.24 11 11 0 003.5.56 1 1 0 011 1V20a1 1 0 01-1 1A17 17 0 013 4a1 1 0 011-1h3.5a1 1 0 011 1 11 11 0 00.56 3.5 1 1 0 01-.25 1z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.5 15.5 0 006.6 6.6l2.2-2.2a1 1 0 011-.24 11 11 0 003.5.56 1 1 0 011 1V20a1 1 0 01-1 1A17 17 0 013 4a1 1 0 011-1h3.5a1 1 0 011 1 11 11 0 00.56 3.5 1 1 0 01-.25 1z'/%3E%3C/svg%3E")}

/* ---------- Header ---------- */
.tg-header{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 1px 0 var(--tg-line),0 6px 20px rgba(22,36,29,.05)}
.tg-header-in{display:flex;align-items:center;gap:22px;padding:14px 20px;flex-wrap:wrap}
.tg-logo img,.tg-logo .custom-logo{max-height:62px;width:auto}
.tg-brand{flex:0 0 auto}
.tg-search{flex:1 1 320px;display:flex;background:var(--tg-bg);border:1px solid var(--tg-line-2);border-radius:999px;overflow:hidden;min-width:200px}
.tg-search input[type=search]{flex:1;border:0;background:transparent;padding:.7em 1.1em;font-size:.95rem;outline:none;color:var(--tg-ink)}
.tg-search button{border:0;background:var(--tg-green);color:#fff;padding:0 18px;cursor:pointer}
.tg-search button:hover{background:var(--tg-green-d)}
.tg-ico-search{display:block;width:18px;height:18px;background:currentColor;
  -webkit-mask:center/contain no-repeat;mask:center/contain no-repeat;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M10 4a6 6 0 104.9 9.5L20 18M15.5 10a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M10 4a6 6 0 104.9 9.5L20 18M15.5 10a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z'/%3E%3C/svg%3E")}
.tg-header-cta{flex:0 0 auto}
.tg-nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px;cursor:pointer;margin-left:auto}
.tg-nav-toggle span{width:26px;height:3px;background:var(--tg-ink);border-radius:2px;transition:.2s}

/* ---------- Nav ---------- */
.tg-nav{background:var(--tg-green);border-top:3px solid var(--tg-amber)}
.tg-menu{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.tg-menu>li{position:relative}
.tg-menu>li>a{display:block;color:#fff;font-weight:700;font-size:.92rem;padding:14px 18px;letter-spacing:.01em}
.tg-menu>li>a:hover{background:var(--tg-green-d);color:#fff}
.tg-menu .tg-sub,.tg-menu .sub-menu{
  position:absolute;left:0;top:100%;min-width:250px;background:#fff;list-style:none;margin:0;padding:8px;
  box-shadow:var(--tg-shadow-lg);border-radius:0 0 12px 12px;border-top:3px solid var(--tg-amber);
  opacity:0;visibility:hidden;transform:translateY(6px);transition:.16s;z-index:50;
}
.tg-menu li:hover>.tg-sub,.tg-menu li:hover>.sub-menu{opacity:1;visibility:visible;transform:none}
.tg-menu .tg-sub a,.tg-menu .sub-menu a{display:block;padding:9px 14px;color:var(--tg-slate);border-radius:8px;font-size:.9rem;font-weight:600}
.tg-menu .tg-sub a:hover,.tg-menu .sub-menu a:hover{background:var(--tg-green-l);color:var(--tg-green-d)}
.tg-has-sub>a::after,.menu-item-has-children>a::after{content:"";display:inline-block;width:.5em;height:.5em;margin-left:.5em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg)}

/* ---------- Hero ---------- */
.tg-hero{position:relative;color:#fff;overflow:hidden;background:#123}
.tg-hero-bg{position:absolute;inset:0;
  background:
    linear-gradient(115deg,rgba(18,40,26,.94) 0%,rgba(21,95,46,.86) 45%,rgba(31,122,61,.55) 100%),
    radial-gradient(120% 120% at 80% 0%,rgba(244,161,30,.35),transparent 50%),
    repeating-linear-gradient(135deg,#1b5a2e 0 40px,#17512a 40px 80px);
}
.tg-hero-in{position:relative;padding:74px 20px 84px}
.tg-hero-text{max-width:720px}
.tg-hero-kicker{display:inline-block;background:var(--tg-amber);color:#3a2600;font-weight:800;font-size:.75rem;
  text-transform:uppercase;letter-spacing:.08em;padding:.4em .9em;border-radius:999px;margin-bottom:18px}
.tg-hero h1{font-size:clamp(1.9rem,4.2vw,3.1rem);margin-bottom:.4em;text-shadow:0 2px 20px rgba(0,0,0,.25)}
.tg-hero p{font-size:1.1rem;color:#e7f2ea;max-width:640px}
.tg-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0 8px}
.tg-hero-badges{display:flex;gap:22px;flex-wrap:wrap;list-style:none;padding:0;margin:24px 0 0;font-size:.92rem}
.tg-hero-badges li{padding-left:26px;position:relative;color:#eaf5ee}
.tg-hero-badges li::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;
  background:var(--tg-amber);border-radius:50%;
  box-shadow:inset 0 0 0 2px #123;}
.tg-hero-badges li::after{content:"";position:absolute;left:5px;top:7px;width:8px;height:4px;border-left:2px solid #123;border-bottom:2px solid #123;transform:rotate(-45deg)}

/* ---------- Sections ---------- */
.tg-section{padding:64px 0}
.tg-section-alt{background:#fff}
.tg-section-head{text-align:center;max-width:640px;margin:0 auto 40px}
.tg-section-head h2{font-size:clamp(1.5rem,3vw,2.1rem)}
.tg-section-head h2::after{content:"";display:block;width:56px;height:4px;background:var(--tg-amber);border-radius:2px;margin:14px auto 0}
.tg-section-head p{color:var(--tg-mute);font-size:1.05rem;margin:0}

/* ---------- Category grid ---------- */
.tg-cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px}
.tg-cat-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;
  background:var(--tg-card);border:1px solid var(--tg-line);border-radius:var(--tg-radius);
  padding:30px 18px;box-shadow:var(--tg-shadow);transition:.18s}
.tg-cat-card:hover{transform:translateY(-4px);box-shadow:var(--tg-shadow-lg);border-color:var(--tg-green)}
.tg-cat-ico{display:grid;place-items:center;width:62px;height:62px;border-radius:16px;
  background:var(--tg-green-l);color:var(--tg-green);margin-bottom:6px}
.tg-cat-ico svg{width:32px;height:32px}
.tg-cat-name{font-weight:800;color:var(--tg-ink);font-size:1.02rem}
.tg-cat-count{font-size:.82rem;color:var(--tg-mute)}

/* ---------- Product grid (home + shop) ---------- */
.tg-products-grid,ul.products{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px}
.tg-product-card,ul.products li.product{
  background:var(--tg-card);border:1px solid var(--tg-line);border-radius:var(--tg-radius);
  overflow:hidden;box-shadow:var(--tg-shadow);transition:.18s;display:flex;flex-direction:column;margin:0;text-align:left}
.tg-product-card:hover,ul.products li.product:hover{transform:translateY(-4px);box-shadow:var(--tg-shadow-lg)}
.tg-card-media,ul.products li.product a img{width:100%}
.tg-card-media{display:block;aspect-ratio:4/3;overflow:hidden;background:#eef2ee}
.tg-card-media img,ul.products li.product>a img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.tg-product-card:hover .tg-card-media img{transform:scale(1.05)}
.tg-card-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
.tg-card-title{font-size:1rem;margin:0;line-height:1.35;font-weight:700}
.tg-card-title a{color:var(--tg-ink)}
.tg-card-title a:hover{color:var(--tg-green)}
.tg-card-price,.tg-price-req{font-weight:800;color:var(--tg-green-d);font-size:1.12rem}
.tg-price-req{color:var(--tg-amber-d);font-size:1rem}
.tg-card-body .tg-btn{margin-top:auto}

/* WooCommerce loop tweaks */
ul.products li.product .woocommerce-loop-product__title{padding:14px 16px 4px;font-size:1rem;color:var(--tg-ink)}
ul.products li.product .price{padding:0 16px;color:var(--tg-green-d);font-weight:800}
ul.products li.product .tg-btn-loop{margin:12px 16px 18px}
ul.products li.product a.woocommerce-LoopProduct-link{display:block}
.woocommerce ul.products li.product .price del{color:var(--tg-mute);font-weight:400}

/* ---------- Shop / archive layout ---------- */
.tg-shop{padding:34px 20px 60px}
.woocommerce .woocommerce-result-count{color:var(--tg-mute);font-size:.9rem}
.woocommerce .woocommerce-ordering select{padding:.5em;border-radius:8px;border:1px solid var(--tg-line-2)}
.woocommerce-products-header__title,.woocommerce .page-title{font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:.3em}
.term-description{color:var(--tg-slate)}
.woocommerce-breadcrumb{color:var(--tg-mute);font-size:.85rem;margin-bottom:18px}
.woocommerce-breadcrumb a{color:var(--tg-green)}

/* ---------- Single product ---------- */
.single-product div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:start}
.single-product .woocommerce-product-gallery{position:relative;border:1px solid var(--tg-line);border-radius:var(--tg-radius);overflow:hidden;background:#fff}
.single-product div.product .product_title{font-size:clamp(1.5rem,3vw,2.1rem)}
.single-product .price,.single-product .tg-price-req{font-size:1.5rem !important;color:var(--tg-green-d);font-weight:800}
.single-product .woocommerce-product-details__short-description{color:var(--tg-slate)}
.tg-single-cta{margin-top:22px;padding-top:22px;border-top:1px solid var(--tg-line)}
.tg-single-call{margin-top:12px;color:var(--tg-mute);font-size:.92rem}
.tg-single-call a{font-weight:700}
.single-product .product_meta{margin-top:18px;color:var(--tg-mute);font-size:.86rem}
.single-product .product_meta a{color:var(--tg-green)}
.woocommerce-tabs{grid-column:1/-1;margin-top:20px}
.woocommerce-tabs ul.tabs{list-style:none;padding:0;display:flex;gap:8px;border-bottom:2px solid var(--tg-line)}
.woocommerce-tabs ul.tabs li{margin:0}
.woocommerce-tabs ul.tabs li a{display:block;padding:12px 18px;font-weight:700;color:var(--tg-slate)}
.woocommerce-tabs ul.tabs li.active a{color:var(--tg-green-d);border-bottom:3px solid var(--tg-amber)}
.woocommerce-tabs .panel{padding:22px 0;color:var(--tg-slate)}
.related.products{grid-column:1/-1;margin-top:30px}
.related.products>h2{font-size:1.5rem;margin-bottom:20px}

/* ---------- Info request form ---------- */
.tg-inforequest{background:#fff;border:1px solid var(--tg-line);border-radius:var(--tg-radius);
  box-shadow:var(--tg-shadow);padding:34px;margin:40px 0;scroll-margin-top:120px}
.tg-inforequest-head h2{font-size:1.6rem}
.tg-inforequest-head p{color:var(--tg-mute);margin-bottom:20px}
.tg-form-product{background:var(--tg-green-l);color:var(--tg-green-d);border-radius:10px;padding:12px 16px;margin-bottom:18px;font-size:.95rem}
.tg-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tg-form label{display:block;font-weight:700;font-size:.86rem;color:var(--tg-slate);margin-bottom:14px}
.tg-form input,.tg-form textarea{width:100%;margin-top:6px;padding:.7em .9em;border:1px solid var(--tg-line-2);
  border-radius:10px;font-size:.98rem;font-family:inherit;font-weight:400;color:var(--tg-ink);background:#fbfcfb}
.tg-form input:focus,.tg-form textarea:focus{outline:none;border-color:var(--tg-green);box-shadow:0 0 0 3px var(--tg-green-l)}
.tg-form-full{grid-column:1/-1}
.tg-form-consent{display:flex;align-items:flex-start;gap:10px;font-weight:500;font-size:.86rem;color:var(--tg-slate)}
.tg-form-consent input{width:auto;margin-top:2px}
.tg-hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.tg-alert{padding:14px 18px;border-radius:10px;margin-bottom:20px;font-weight:600}
.tg-alert-ok{background:#e7f6ec;color:#176a34;border:1px solid #b6e2c4}
.tg-alert-err{background:#fdeceb;color:#a8271c;border:1px solid #f3c2bd}

/* ---------- Partners ---------- */
.tg-partners{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px}
.tg-partner{margin:0;background:#fff;border:1px solid var(--tg-line);border-radius:var(--tg-radius);overflow:hidden;box-shadow:var(--tg-shadow)}
.tg-partner img{aspect-ratio:4/5;object-fit:cover;width:100%}
.tg-partner figcaption{padding:12px;text-align:center;font-weight:700;color:var(--tg-ink);font-size:.92rem}

/* ---------- CTA ---------- */
.tg-cta{background:var(--tg-ink);color:#fff}
.tg-cta-in{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:44px 20px;flex-wrap:wrap}
.tg-cta h2{margin-bottom:.2em}
.tg-cta p{color:#bcd0c3;margin:0}
.tg-cta-phones{display:flex;gap:14px;flex-wrap:wrap}
.tg-cta-phone{display:flex;flex-direction:column;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
  border-radius:12px;padding:12px 20px;color:#fff}
.tg-cta-phone:hover{background:var(--tg-green);color:#fff}
.tg-cta-phone span{font-size:.78rem;color:#a9c6b4;text-transform:uppercase;letter-spacing:.05em}
.tg-cta-phone b{font-size:1.15rem}

/* ---------- Pages / rich text ---------- */
.tg-page-single{padding:44px 20px 64px;max-width:900px}
.tg-article-head h1{font-size:clamp(1.7rem,3.4vw,2.4rem);margin-bottom:.4em}
.tg-article-head h1::after{content:"";display:block;width:56px;height:4px;background:var(--tg-amber);border-radius:2px;margin-top:14px}
.tg-rich{font-size:1.03rem;color:var(--tg-slate)}
.tg-rich h2,.tg-rich h3{color:var(--tg-ink);margin-top:1.4em}
.tg-rich img{border-radius:12px;margin:1em 0}
.tg-rich ul{padding-left:1.2em}
.tg-404{text-align:center}

/* ---------- Footer ---------- */
.tg-footer{background:#101c15;color:#c4d4c9;margin-top:20px}
.tg-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:34px;padding:56px 20px 40px}
.tg-footer h4{color:#fff;font-size:1rem;margin-bottom:16px;position:relative;padding-bottom:10px}
.tg-footer h4::after{content:"";position:absolute;left:0;bottom:0;width:34px;height:3px;background:var(--tg-amber);border-radius:2px}
.tg-footer ul{list-style:none;margin:0;padding:0}
.tg-footer li{margin-bottom:9px}
.tg-footer a{color:#c4d4c9}
.tg-footer a:hover{color:#fff}
.tg-footer-logo{max-height:56px;margin-bottom:16px;filter:brightness(0) invert(1);opacity:.95}
.tg-footer-about p{font-size:.92rem;color:#9fb4a6;max-width:320px}
.tg-footer-contacts b{color:#fff;font-weight:600;margin-right:4px}
.tg-footer-bar{background:#0b140e;font-size:.8rem;color:#7f958a}
.tg-footer-bar-in{padding:16px 20px;color:#7f958a}

/* ---------- Pagination ---------- */
.woocommerce-pagination ul,.tg-pagination .page-numbers{display:flex;gap:8px;list-style:none;padding:0;justify-content:center;margin:36px 0 0}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;
  border:1px solid var(--tg-line-2);border-radius:10px;background:#fff;color:var(--tg-slate);font-weight:700}
.page-numbers.current{background:var(--tg-green);color:#fff;border-color:var(--tg-green)}
a.page-numbers:hover{border-color:var(--tg-green);color:var(--tg-green)}

/* ---------- Responsive ---------- */
@media(max-width:960px){
  .single-product div.product{grid-template-columns:1fr}
  .tg-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
  .tg-nav-toggle{display:flex}
  .tg-header-cta{display:none}
  .tg-nav{display:none}
  .tg-nav.is-open{display:block}
  .tg-menu{flex-direction:column}
  .tg-menu>li>a{padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.12)}
  .tg-menu .tg-sub,.tg-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;
    border-radius:0;border-top:0;background:var(--tg-green-d);padding:0}
  .tg-menu .tg-sub a,.tg-menu .sub-menu a{color:#dff0e6;padding:11px 34px}
  .tg-menu .tg-sub a:hover,.tg-menu .sub-menu a:hover{background:rgba(0,0,0,.15);color:#fff}
  .tg-has-sub>a::after,.menu-item-has-children>a::after{float:right}
}
@media(max-width:640px){
  .tg-form-row{grid-template-columns:1fr}
  .tg-footer-grid{grid-template-columns:1fr}
  .tg-topbar-right{display:none}
  .tg-hero-in{padding:54px 20px 60px}
  .tg-inforequest{padding:22px}
  .tg-cta-in{flex-direction:column;align-items:flex-start}
}

/* =====================================================================
   OVERRIDE — vincono sul CSS di default di WooCommerce (layout a float)
   ===================================================================== */

/* Logo: limita sempre l'altezza anche per il custom-logo di WordPress */
.tg-brand img,
.tg-logo img,
.tg-logo .custom-logo,
.custom-logo-link img{max-height:64px !important;width:auto !important;height:auto !important}

/* Griglia catalogo: disattiva i float di WooCommerce e usa CSS grid */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:22px;
  margin:0 !important;
  padding:0 !important;
  list-style:none;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce ul.products li.product::before,
.woocommerce ul.products li.product::after{display:none !important;content:none !important}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products li.product{
  width:auto !important;
  float:none !important;
  clear:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Contenuto card catalogo (loop WooCommerce standard) */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product > a:first-of-type{display:block}
.woocommerce ul.products li.product img{width:100% !important;height:auto;margin:0 0 0 0 !important;border-radius:0}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  padding:14px 16px 4px !important;font-size:1rem;font-weight:700;color:var(--tg-ink)}
.woocommerce ul.products li.product .price{padding:0 16px !important;margin:0}
.woocommerce ul.products li.product .tg-btn-loop{
  display:block;margin:12px 16px 18px;border-radius:999px;font-size:.85rem;white-space:nowrap}

/* Larghezza contenuto shop a piena pagina */
.tg-shop{width:100%;max-width:var(--tg-maxw);margin:0 auto}
.tg-shop-main{width:100%}
.woocommerce .woocommerce-result-count{float:none;display:inline-block}
.woocommerce .woocommerce-ordering{float:right;margin-bottom:16px}
.woocommerce-notices-wrapper:empty{display:none}

/* Header: consenti al logo di non spingere il layout su schermi piccoli */
@media(max-width:820px){
  .tg-brand img,.custom-logo-link img{max-height:52px !important}
}

/* Immagini card catalogo: rapporto uniforme (evita card di altezze diverse) */
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail{
  aspect-ratio:4/3 !important;object-fit:cover !important;height:auto !important;display:block}
/* Le card custom della home mantengono il proprio media box */
.tg-product-card .tg-card-media img{height:100% !important;aspect-ratio:auto !important}

/* Scheda prodotto: galleria e riepilogo riempiono le rispettive colonne del grid
   (WooCommerce li imposta a width:48% float, lasciando spazi vuoti) */
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary,
.single-product div.product .entry-summary{
  width:100% !important;float:none !important;margin:0 !important;clear:none !important}
.single-product div.product .woocommerce-product-gallery__wrapper{margin:0}
.single-product div.product .woocommerce-product-gallery img{width:100%}
/* Miniature galleria: griglia ordinata sotto l'immagine principale */
.single-product .flex-control-thumbs{display:grid !important;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px;padding:0;list-style:none}
.single-product .flex-control-thumbs li{margin:0}
.single-product .flex-control-thumbs img{border-radius:6px;opacity:.75;transition:.15s}
.single-product .flex-control-thumbs img:hover,.single-product .flex-control-thumbs img.flex-active{opacity:1}
