/* Tahara Comercial — WooCommerce / Elementor */
:root {
  --tahara-blue: #123C63;
  --tahara-blue-dark: #0B2945;
  --tahara-blue-light: #EAF2F8;
  --tahara-red: #F21D2B;
  --tahara-gold: #E8A23A;
  --tahara-ink: #263445;
  --tahara-muted: #667383;
  --tahara-line: #E3E8ED;
  --tahara-bg: #F7F9FB;
}
.tahara-home { color:var(--tahara-ink); font-family:inherit; }
.tahara-home * { box-sizing:border-box; }
.tahara-home a { text-decoration:none; }
.tahara-hero { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(250px,.8fr); gap:28px; padding:clamp(28px,5vw,64px); border-radius:18px; overflow:hidden; color:#fff; background:linear-gradient(115deg,var(--tahara-blue-dark),var(--tahara-blue) 62%,#21557e); position:relative; }
.tahara-hero:after { content:""; position:absolute; width:360px; height:360px; border:50px solid rgba(255,255,255,.055); border-radius:50%; right:20%; bottom:-220px; pointer-events:none; }
.tahara-hero-copy,.tahara-hero-side { position:relative; z-index:1; }
.tahara-eyebrow { display:block; font-size:11px; letter-spacing:.14em; font-weight:800; text-transform:uppercase; margin-bottom:14px; color:var(--tahara-gold); }
.tahara-hero h1 { color:#fff; font-size:clamp(32px,4.3vw,58px); line-height:1.04; letter-spacing:-.035em; max-width:720px; margin:0 0 18px; font-weight:800; }
.tahara-hero p { color:rgba(255,255,255,.86); max-width:610px; font-size:17px; line-height:1.65; }
.tahara-hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:26px; }
.tahara-button, .tahara-home a.tahara-button { display:inline-flex; justify-content:center; align-items:center; gap:8px; padding:14px 20px; border:1px solid var(--tahara-red); border-radius:7px; background:var(--tahara-red); color:#fff!important; font-size:12px; font-weight:800; letter-spacing:.04em; line-height:1.2; transition:transform .18s ease,filter .18s ease; }
.tahara-button:hover { transform:translateY(-2px); filter:brightness(.96); color:#fff!important; }
.tahara-button-outline, .tahara-home a.tahara-button-outline { background:transparent; border-color:rgba(255,255,255,.55); }
.tahara-hero-side { display:flex; flex-direction:column; justify-content:center; gap:0; }
.tahara-hero-feature { display:flex; align-items:flex-start; gap:15px; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.18); }
.tahara-hero-feature:last-child { border-bottom:0; }
.tahara-hero-feature>span { display:grid; place-items:center; width:38px; height:38px; flex:0 0 38px; border-radius:50%; color:#fff; background:var(--tahara-red); font-size:12px; font-weight:800; }
.tahara-hero-feature strong,.tahara-hero-feature small { display:block; }
.tahara-hero-feature strong { color:#fff; font-size:14px; margin:1px 0 5px; }
.tahara-hero-feature small { color:rgba(255,255,255,.75); font-size:12px; line-height:1.5; }
.tahara-categories,.tahara-featured { padding:54px 0 12px; }
.tahara-section-heading { text-align:center; margin:0 auto 28px; }
.tahara-section-heading h2 { margin:0 0 8px; color:var(--tahara-blue-dark); font-size:clamp(25px,3vw,36px); font-weight:800; letter-spacing:-.025em; }
.tahara-section-heading p { margin:0; color:var(--tahara-muted); font-size:15px; }
.tahara-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.tahara-category-card { display:flex; flex-direction:column; align-items:center; text-align:center; padding:20px 12px; border:1px solid var(--tahara-line); border-radius:12px; background:#fff; color:var(--tahara-ink)!important; transition:box-shadow .2s ease,transform .2s ease; }
.tahara-category-card:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(11,41,69,.09); }
.tahara-category-image { display:flex; align-items:center; justify-content:center; width:100%; max-width:138px; aspect-ratio:1; overflow:hidden; border-radius:50%; background:var(--tahara-blue-light); margin-bottom:14px; }
.tahara-category-image img { width:100%; height:100%; object-fit:cover; }
.tahara-category-placeholder { color:var(--tahara-blue); font-size:46px; font-weight:900; }
.tahara-category-card strong { font-size:14px; line-height:1.35; }
.tahara-category-card small { color:var(--tahara-red); font-size:11px; font-weight:800; margin-top:9px; text-transform:uppercase; }
.tahara-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.tahara-product-card { display:flex; flex-direction:column; overflow:hidden; height:100%; border:1px solid var(--tahara-line); border-radius:12px; background:#fff; transition:box-shadow .2s ease,transform .2s ease; }
.tahara-product-card:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(11,41,69,.09); }
.tahara-product-image { display:flex; align-items:center; justify-content:center; aspect-ratio:1/1; padding:14px; background:#fff; }
.tahara-product-image img { width:100%; height:100%; object-fit:contain; }
.tahara-product-info { display:flex; flex-direction:column; align-items:flex-start; flex:1; padding:16px; }
.tahara-product-info h3 { width:100%; min-height:42px; margin:0 0 12px; font-size:14px; line-height:1.45; font-weight:700; }
.tahara-product-info h3 a { color:var(--tahara-ink); }
.tahara-product-price { margin:0 0 15px; color:var(--tahara-blue); font-size:20px; font-weight:800; }
.tahara-product-price del { color:#8a929b; font-size:13px; font-weight:500; }
.tahara-product-price ins { text-decoration:none; }
.tahara-product-button { margin-top:auto; width:100%; padding:12px 10px!important; }
.tahara-promo-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:36px 0; }
.tahara-promo { min-height:250px; padding:clamp(24px,3vw,40px); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; border-radius:14px; overflow:hidden; }
.tahara-promo h2 { max-width:440px; margin:0 0 10px; color:#fff; font-size:clamp(26px,3vw,38px); font-weight:800; line-height:1.08; }
.tahara-promo p { max-width:430px; color:rgba(255,255,255,.85); font-size:14px; line-height:1.6; }
.tahara-promo .tahara-eyebrow { color:#ffd18c; }
.tahara-promo-osb { background:linear-gradient(120deg,rgba(11,41,69,.96),rgba(18,60,99,.86)), repeating-linear-gradient(45deg,#bd8a54,#bd8a54 12px,#d8b58b 12px,#d8b58b 24px); }
.tahara-promo-shingle { background:linear-gradient(120deg,rgba(11,41,69,.95),rgba(11,41,69,.65)), repeating-linear-gradient(135deg,#343b43,#343b43 15px,#454d56 15px,#454d56 30px); }
.tahara-bulk { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:12px 0 28px; padding:clamp(24px,4vw,42px); border-radius:14px; background:var(--tahara-blue-light); }
.tahara-bulk h2 { margin:0 0 8px; color:var(--tahara-blue-dark); font-size:clamp(24px,3vw,34px); font-weight:800; }
.tahara-bulk p { max-width:700px; margin:0; color:var(--tahara-muted); line-height:1.6; }
.tahara-bulk .tahara-eyebrow { color:var(--tahara-red); }
.tahara-trust { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:24px 0 50px; }
.tahara-trust>div { padding:18px; border:1px solid var(--tahara-line); border-radius:10px; background:#fff; }
.tahara-trust strong,.tahara-trust span { display:block; }
.tahara-trust strong { color:var(--tahara-blue-dark); font-size:13px; margin-bottom:6px; }
.tahara-trust span { color:var(--tahara-muted); font-size:12px; line-height:1.5; }
.tahara-empty,.tahara-notice { padding:18px; border:1px solid var(--tahara-line); border-radius:10px; background:var(--tahara-bg); }
.tahara-product-help { display:flex; flex-direction:column; gap:4px; margin-top:18px; padding:14px 16px; border-left:3px solid var(--tahara-red); background:var(--tahara-blue-light); font-size:13px; }
.tahara-product-help strong { color:var(--tahara-blue-dark); }
.tahara-product-help span { color:var(--tahara-muted); }
/* WooCommerce archive and single product styling */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { padding:12px; border:1px solid var(--tahara-line); border-radius:12px; background:#fff; overflow:hidden; }
.woocommerce ul.products li.product a img { border-radius:8px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:var(--tahara-ink); font-size:14px; line-height:1.45; font-weight:700; }
.woocommerce ul.products li.product .price { color:var(--tahara-blue); font-size:18px; font-weight:800; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce a.added_to_cart { border-radius:6px; background:var(--tahara-red); color:#fff; font-weight:800; text-transform:uppercase; font-size:11px; padding:13px 15px; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { background:var(--tahara-blue); color:#fff; }
.woocommerce div.product .product_title { color:var(--tahara-blue-dark); font-weight:800; letter-spacing:-.025em; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color:var(--tahara-blue); font-size:27px; font-weight:800; }
.woocommerce div.product .woocommerce-product-details__short-description { color:var(--tahara-ink); line-height:1.7; }
.woocommerce div.product form.cart .quantity .qty { min-height:44px; border:1px solid var(--tahara-line); border-radius:6px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border-radius:7px 7px 0 0; }
.woocommerce span.onsale { min-height:auto; min-width:auto; padding:7px 10px; border-radius:5px; background:var(--tahara-red); line-height:1.2; }
.woocommerce .woocommerce-breadcrumb { color:var(--tahara-muted); font-size:12px; }
.woocommerce .woocommerce-breadcrumb a { color:var(--tahara-blue); }
@media(max-width:900px) {
 .tahara-hero { grid-template-columns:1fr; }
 .tahara-hero-side { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
 .tahara-hero-feature { border:1px solid rgba(255,255,255,.16); border-radius:9px; padding:12px; flex-direction:column; }
 .tahara-category-grid,.tahara-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .tahara-category-image { max-width:110px; }
}
@media(max-width:600px) {
 .tahara-hero { padding:26px 20px; border-radius:10px; }
 .tahara-hero h1 { font-size:34px; }
 .tahara-hero p { font-size:14px; }
 .tahara-hero-actions { flex-direction:column; align-items:stretch; }
 .tahara-hero-side { grid-template-columns:1fr; }
 .tahara-hero-feature { flex-direction:row; }
 .tahara-categories,.tahara-featured { padding-top:36px; }
 .tahara-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .tahara-category-card { padding:14px 8px; }
 .tahara-category-image { max-width:100px; }
 .tahara-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .tahara-product-info { padding:11px; }
 .tahara-product-info h3 { font-size:12px; min-height:50px; }
 .tahara-product-price { font-size:17px; }
 .tahara-product-button { font-size:10px!important; padding:11px 6px!important; }
 .tahara-promo-grid { grid-template-columns:1fr; gap:12px; padding:26px 0; }
 .tahara-promo { min-height:220px; padding:24px; }
 .tahara-bulk { align-items:flex-start; flex-direction:column; }
 .tahara-trust { grid-template-columns:1fr; padding-bottom:30px; }
}


/* =========================================
   TAHARA COMERCIAL - VITRINE DE PRODUTOS
   ========================================= */

.tahara-featured {
    padding: 48px 20px;
}

.tahara-featured .tahara-section-heading {
    margin-bottom: 28px;
}

.tahara-featured .tahara-products,
.tahara-featured ul.products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

.tahara-featured .tahara-product,
.tahara-featured ul.products li.product {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-width: 0;
    padding: 12px;
    border: 1px solid #DCE5ED;
    border-radius: 12px;
    background: #FFFFFF;
    box-sizing: border-box;
    transition: box-shadow .2s ease, transform .2s ease;
}

.tahara-featured .tahara-product:hover,
.tahara-featured ul.products li.product:hover {
    box-shadow: 0 8px 24px rgba(18, 60, 99, .12);
    transform: translateY(-3px);
}

.tahara-featured .tahara-product img,
.tahara-featured ul.products li.product img {
    width: 100%;
    height: 190px;
    object-fit: contain;
    object-position: center;
    margin: 0 0 14px;
    border-radius: 8px;
    background: #FFFFFF;
}

.tahara-featured .tahara-product h3,
.tahara-featured .tahara-product .woocommerce-loop-product__title,
.tahara-featured ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px;
    line-height: 1.45;
    font-weight: 600;
    color: #123C63;
    min-height: 46px;
    margin: 0 0 12px;
}

.tahara-featured .price,
.tahara-featured ul.products li.product .price {
    color: #F21D2B !important;
    font-size: 19px;
    font-weight: 800;
    margin-top: auto;
    padding: 8px 0 14px;
}

.tahara-featured .button,
.tahara-featured ul.products li.product .button {
    width: 100%;
    text-align: center;
    justify-content: center;
    border-radius: 7px;
    background: #F21D2B;
    color: #FFFFFF;
    font-weight: 700;
    padding: 13px 10px;
    margin-top: auto;
}

.tahara-featured .button:hover,
.tahara-featured ul.products li.product .button:hover {
    background: #123C63;
    color: #FFFFFF;
}

@media (max-width: 1024px) {
    .tahara-featured .tahara-products,
    .tahara-featured ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .tahara-featured .tahara-product img,
    .tahara-featured ul.products li.product img {
        height: 170px;
    }
}

@media (max-width: 480px) {
    .tahara-featured {
        padding: 32px 12px;
    }

    .tahara-featured .tahara-products,
    .tahara-featured ul.products {
        gap: 10px;
    }

    .tahara-featured .tahara-product,
    .tahara-featured ul.products li.product {
        padding: 8px;
    }

    .tahara-featured .tahara-product img,
    .tahara-featured ul.products li.product img {
        height: 125px;
    }

    .tahara-featured .tahara-product h3,
    .tahara-featured .tahara-product .woocommerce-loop-product__title,
    .tahara-featured ul.products li.product .woocommerce-loop-product__title {
        font-size: 13px;
        min-height: 0;
    }

    .tahara-featured .price,
    .tahara-featured ul.products li.product .price {
        font-size: 16px;
    }

    .tahara-featured .button,
    .tahara-featured ul.products li.product .button {
        font-size: 12px;
        padding: 10px 6px;
    }
}

