/* Astelar Storefront 2026 — identidade clara, comercial e integrada ao WooCommerce. */
:root {
    --store-wine: #663b3d;
    --store-wine-dark: #4f2d30;
    --store-rose: #decfcd;
    --store-blush: #eee5e2;
    --store-paper: #fffdfc;
    --store-ink: #523436;
    --store-muted: #80686a;
}

body.tk-body { background: var(--store-paper); color: var(--store-ink); }
.ast-store-promo { height: 27px; padding: 5px 20px; overflow: hidden; background: var(--store-wine); color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .035em; text-align: center; white-space: nowrap; }
.tk-header { top: 0; background: #fff; border-bottom: 1px solid #eee8e6; box-shadow: none; }
.tk-header-inner { min-height: 102px; position: relative; z-index: 3; }
.tk-logo { color: var(--store-ink); min-width: 190px; }
.tk-logo-wordmark { color: inherit; font-size: 22px; font-weight: 800; letter-spacing: -.025em; }
.tk-header-inner > .tk-search--desktop, .tk-acct-links { display: none !important; }
.tk-header-actions { margin-left: auto; gap: 4px; position: relative; z-index: 4; }
.tk-icon-btn { color: var(--store-ink); border-radius: 50%; }
.tk-icon-btn:hover { color: var(--store-wine); background: var(--store-blush); }
.tk-search-toggle, .tk-acct-btn--mobile { display: inline-flex !important; }
.tk-cart-num, .tk-fav-num { background: var(--store-wine) !important; color: #fff !important; }
.tk-nav-desktop { position: absolute; z-index: 2; top: 27px; left: 0; right: 0; height: 102px; background: transparent; border: 0; pointer-events: none; }
.tk-nav-desktop .tk-container { height: 100%; max-width: 920px; padding: 0 190px; }
.tk-nav-list { height: 100%; justify-content: center; gap: 30px; }
.tk-nav-list > li { flex: 0 0 auto !important; pointer-events: auto; }
.tk-nav-list > li > a { height: 102px; padding: 0; color: var(--store-ink); font-size: 14px; font-weight: 700; white-space: nowrap; }
.tk-nav-list > li > a:hover, .tk-nav-list > li.is-promo > a { color: #a4474b; }
.tk-subnav { border-color: #eadfdd; box-shadow: 0 14px 35px rgba(80,45,48,.12); }
.tk-search-overlay { top: 129px; border-color: #eadfdd; }
.tk-search-overlay.is-open { display: block !important; }

.ast-store-hero { width: min(1440px, calc(100% - 44px)); min-height: 500px; margin: 0 auto; display: grid; grid-template-columns: 43% 57%; overflow: hidden; background: var(--store-rose); }
.ast-store-hero__copy { padding: 92px 6vw; align-self: center; position: relative; z-index: 2; }
.ast-store-hero__copy > span, .ast-store-wide-banner small { display: block; margin-bottom: 22px; font-size: 12px; letter-spacing: .18em; }
.ast-store-hero__copy h2 { max-width: 600px; margin: 0 0 20px; color: #fff; font-size: clamp(42px,5vw,74px); line-height: .98; letter-spacing: -.055em; }
.ast-store-hero__copy p { max-width: 470px; margin: 0 0 35px; color: var(--store-wine-dark); font-size: 17px; }
.ast-store-hero__copy a, .ast-store-wide-banner em { display: inline-block; color: var(--store-wine-dark); border-bottom: 1px solid currentColor; font-size: 12px; font-style: normal; font-weight: 800; letter-spacing: .12em; }
.ast-store-hero__products { position: relative; min-height: 500px; background: #f6efed; }
.ast-store-hero__products::after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 65%, rgba(102,59,61,.12), transparent 58%); }
.ast-store-hero__products img { position: absolute; z-index: 2; width: 42%; height: 72%; object-fit: contain; filter: drop-shadow(0 24px 19px rgba(68,38,40,.18)); }
.ast-store-hero__products .vase { left: 5%; bottom: 5%; }
.ast-store-hero__products .set { left: 30%; top: 3%; width: 48%; }
.ast-store-hero__products .toy { right: 0; bottom: 5%; width: 38%; }
.ast-store-hero__products i { position: absolute; z-index: 1; border-radius: 50%; background: var(--store-wine); opacity: .9; }
.ast-store-hero__products .p1 { width: 260px; height: 260px; left: 8%; bottom: 6%; }
.ast-store-hero__products .p2 { width: 320px; height: 320px; left: 34%; top: 4%; background: #ad8280; }
.ast-store-hero__products .p3 { width: 220px; height: 220px; right: 3%; bottom: 10%; background: #74474a; }

.ast-store-benefits { width: min(1320px, calc(100% - 44px)); margin: 0 auto; padding: 27px 0; display: grid; grid-template-columns: repeat(4,1fr); border-bottom: 1px solid #e9dfdc; }
.ast-store-benefits > div { padding: 0 28px; display: flex; align-items: center; justify-content: center; gap: 13px; border-right: 1px solid #e9dfdc; }
.ast-store-benefits > div:last-child { border-right: 0; }
.ast-store-benefits b { color: var(--store-wine); font-size: 26px; font-weight: 400; }
.ast-store-benefits span { display: grid; }
.ast-store-benefits strong { font-size: 13px; }
.ast-store-benefits small { margin-top: 2px; color: var(--store-muted); font-size: 11px; }

.ast-store-categories { padding: 76px 0 82px; background: #fff; }
.ast-store-categories h2, .ast-store-reviews h2 { margin: 0 0 46px; color: var(--store-ink); font-size: clamp(28px,3vw,38px); font-weight: 500; text-align: center; }
.ast-store-categories h2::after, .ast-store-reviews h2::after { content: ""; display: block; width: 40px; height: 1px; margin: 18px auto 0; background: #cbb9b6; }
.ast-store-categories__grid { max-width: 1050px; margin: auto; display: grid; grid-template-columns: repeat(3,1fr); gap: 70px; }
.ast-store-categories__grid a { color: var(--store-ink); text-align: center; transition: transform .25s ease; }
.ast-store-categories__grid a:hover { color: var(--store-wine); transform: translateY(-6px); }
.ast-store-categories__grid span { height: 280px; display: grid; place-items: center; }
.ast-store-categories__grid img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 16px 13px rgba(73,42,44,.14)); transition: transform .35s ease; }
.ast-store-categories__grid a:hover img { transform: scale(1.035); }
.ast-store-categories__grid strong { display: block; margin-top: 12px; font-size: 16px; }

.ast-product-section { padding-top: 76px; padding-bottom: 76px; background: #faf7f5; }
.ast-product-section:nth-of-type(even) { background: #fff; }
.ast-section-head h2 { color: var(--store-ink); font-weight: 500; }
.ast-section-head__eyebrow { color: var(--store-wine); }
.ast-section-head__link, .tk-card-title a { color: var(--store-ink); }
.tk-card-media { background: #f1e9e7; border-radius: 0; }
.tk-card-title { font-weight: 600; }
.tk-btn-buy, .single_add_to_cart_button, .checkout-button { background: var(--store-wine) !important; border-color: var(--store-wine) !important; color: #fff !important; }
.tk-btn-buy:hover, .single_add_to_cart_button:hover, .checkout-button:hover { background: var(--store-wine-dark) !important; }

.ast-store-wide-banner { width: min(1440px, calc(100% - 44px)); min-height: 370px; margin: 70px auto; padding: 48px 9%; display: grid; grid-template-columns: 1.3fr .7fr; align-items: center; overflow: hidden; background: var(--store-wine); color: #fff; }
.ast-store-wide-banner span { position: relative; z-index: 2; }
.ast-store-wide-banner strong { max-width: 780px; display: block; margin-bottom: 30px; color: #fff; font-size: clamp(34px,4.5vw,66px); line-height: 1; letter-spacing: -.045em; }
.ast-store-wide-banner em { color: #fff; }
.ast-store-wide-banner img { width: 100%; height: 300px; object-fit: contain; filter: drop-shadow(0 20px 16px rgba(25,8,10,.25)); }

.ast-store-reviews { padding: 75px 0 95px; background: #f7f1ef; }
.ast-store-reviews .tk-container > div { display: grid; grid-template-columns: repeat(4,1fr); gap: 22px; }
.ast-store-reviews figure { margin: 0; padding: 28px; background: #fff; }
.ast-store-reviews figure > span { color: #9c686a; letter-spacing: .12em; }
.ast-store-reviews blockquote { margin: 18px 0; color: var(--store-ink); font-size: 14px; line-height: 1.65; }
.ast-store-reviews figcaption { color: var(--store-muted); font-size: 12px; font-weight: 700; }

.tk-footer { background: #f7f3f1 !important; border-color: #e7dcda !important; }
.tk-footer-brand__logo { color: var(--store-ink) !important; font-size: 22px !important; letter-spacing: -.025em !important; }
.tk-footer-col h4, .tk-footer-col a, .tk-footer-col p, .tk-footer-copy p { color: var(--store-ink); }
.tk-footer-social a { border-color: #ccb9b6; color: var(--store-ink); }

@media (max-width: 1180px) {
    .tk-nav-list { gap: 17px; }
    .tk-nav-list > li > a { font-size: 12px; }
    .ast-store-hero { grid-template-columns: 48% 52%; }
    .ast-store-reviews .tk-container > div { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 980px) {
    .ast-store-promo { font-size: 10px; }
    .tk-header-inner { min-height: 76px; }
    .tk-nav-desktop { display: none !important; }
    .tk-menu-btn { display: flex; }
    .tk-logo { min-width: 0; }
    .tk-logo-wordmark { font-size: 18px; }
    .tk-search-overlay { top: 103px; }
    .ast-store-hero { width: 100%; grid-template-columns: 1fr; }
    .ast-store-hero__copy { padding: 65px 8vw; }
    .ast-store-hero__products { min-height: 410px; }
    .ast-store-benefits { grid-template-columns: repeat(2,1fr); }
    .ast-store-benefits > div { justify-content: flex-start; padding: 18px; }
    .ast-store-benefits > div:nth-child(2) { border-right: 0; }
    .ast-store-categories__grid { gap: 25px; }
    .ast-store-categories__grid span { height: 230px; }
}

@media (max-width: 620px) {
    .ast-store-promo { padding-inline: 8px; text-align: left; }
    .tk-header-actions { gap: 0; }
    .tk-header-actions .tk-fav-btn { display: none; }
    .ast-store-hero__copy h2 { font-size: 43px; }
    .ast-store-hero__products { min-height: 330px; }
    .ast-store-benefits { width: calc(100% - 28px); grid-template-columns: 1fr; }
    .ast-store-benefits > div { border-right: 0; border-bottom: 1px solid #e9dfdc; }
    .ast-store-benefits > div:last-child { border-bottom: 0; }
    .ast-store-categories { padding-block: 55px; }
    .ast-store-categories__grid { grid-template-columns: 1fr; gap: 42px; }
    .ast-store-categories__grid span { height: 260px; }
    .ast-store-categories__grid strong { font-size: 17px; }
    .ast-store-wide-banner { width: 100%; margin-block: 40px; padding: 52px 28px 20px; grid-template-columns: 1fr; }
    .ast-store-wide-banner img { height: 230px; }
    .ast-store-reviews .tk-container > div { grid-template-columns: 1fr; }
}
