/*
Theme Name: Demo Tienda
Theme URI: https://example.com/demo-tienda
Author: Chairel Studio
Author URI: https://chairelestudio.com/
Description: Tema minimalista para WooCommerce enfocado en una tienda de tazas, vasos y botellas. Incluye portada, categorías, acerca de nosotros, soporte y estilos para WooCommerce.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.0
Text Domain: demo-tienda
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root{
  --dt-bg:#f6f2ea;
  --dt-bg-soft:#fbf8f2;
  --dt-card:#efe9de;
  --dt-ink:#282a28;
  --dt-muted:#6f706b;
  --dt-olive:#70715d;
  --dt-olive-dark:#565846;
  --dt-line:#ddd6ca;
  --dt-dark:#2d2e2c;
  --dt-white:#fffdf8;
  --dt-radius:2px;
  --dt-shadow:0 10px 30px rgba(37,34,29,.06);
  --dt-serif: Georgia, 'Times New Roman', serif;
  --dt-sans: -apple-system,BlinkMacSystemFont,'Segoe UI',Inter,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--dt-bg-soft);color:var(--dt-ink);font-family:var(--dt-sans);font-size:16px;line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button,input,textarea,select{font:inherit}
.dt-container{width:min(1240px,calc(100% - 48px));margin:0 auto}
.dt-eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.28em;font-weight:600;color:var(--dt-muted);margin:0 0 14px}
.dt-title{font-family:var(--dt-serif);font-weight:400;font-size:clamp(2.5rem,5vw,5.1rem);line-height:.98;letter-spacing:-.035em;margin:0 0 20px}
.dt-section-title{font-family:var(--dt-serif);font-size:clamp(2rem,3vw,3rem);font-weight:400;line-height:1.05;margin:0}
.dt-btn,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-flex!important;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:0 26px;border:1px solid var(--dt-olive)!important;background:var(--dt-olive)!important;color:#fff!important;border-radius:var(--dt-radius)!important;font-weight:500!important;transition:.2s ease;box-shadow:none!important}
.dt-btn:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--dt-olive-dark)!important;border-color:var(--dt-olive-dark)!important;color:#fff!important}
.dt-btn--ghost{background:transparent!important;color:var(--dt-ink)!important;border-color:var(--dt-ink)!important}
.dt-btn--ghost:hover{background:var(--dt-ink)!important;color:#fff!important}
.dt-arrow{font-size:1.15em}

/* Announcement + header */
.dt-announcement{height:34px;background:var(--dt-dark);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.82rem;letter-spacing:.01em;text-align:center;padding:0 18px}
.dt-site-header{background:rgba(255,253,248,.96);border-bottom:1px solid rgba(221,214,202,.7);position:sticky;top:0;z-index:50;backdrop-filter:blur(8px)}
.admin-bar .dt-site-header{top:32px}
.dt-header-row{min-height:74px;display:flex;align-items:center;gap:44px}
.dt-brand{font-size:1rem;letter-spacing:.34em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.custom-logo{max-height:42px;width:auto}
.dt-main-nav{display:flex;align-items:center;gap:38px;flex:1}
.dt-main-nav a{font-size:.92rem;position:relative;padding:26px 0}
.dt-main-nav a:hover:after,.dt-main-nav .current-menu-item>a:after{content:'';position:absolute;left:0;right:0;bottom:18px;height:1px;background:var(--dt-ink)}
.dt-header-actions{display:flex;align-items:center;gap:20px}
.dt-icon-btn{border:0;background:none;padding:4px;cursor:pointer;color:var(--dt-ink);display:grid;place-items:center}
.dt-icon-btn svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.6}
.dt-cart{position:relative}
.dt-cart-count{position:absolute;right:-8px;top:-7px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--dt-dark);color:#fff;font-size:.68rem;display:grid;place-items:center}
.dt-menu-toggle{display:none}
.dt-search-panel{display:none;background:var(--dt-white);border-top:1px solid var(--dt-line);padding:18px 0}
.dt-search-panel.is-open{display:block}
.dt-search-form{display:flex;max-width:680px;margin:0 auto;border-bottom:1px solid var(--dt-ink)}
.dt-search-form input{width:100%;border:0;background:transparent;padding:12px 4px;outline:none}
.dt-search-form button{border:0;background:none;padding:0 6px;cursor:pointer}

/* Hero */
.dt-hero{background:#e9e0d3;overflow:hidden}
.dt-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;min-height:520px}
.dt-hero-copy{padding:74px 36px 68px max(24px,calc((100vw - 1240px)/2));display:flex;flex-direction:column;justify-content:center;background:linear-gradient(115deg,#e7ded1 0%,#efe7dc 65%,#eee5d8 100%)}
.dt-hero-copy p:not(.dt-eyebrow){max-width:570px;font-size:1.08rem;color:#4e504b;margin:0 0 28px}
.dt-hero-media{min-height:520px;background:url('assets/images/hero.jpg') center/cover no-repeat}

/* Generic sections */
.dt-section{padding:58px 0}
.dt-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.dt-link{font-size:.9rem;border-bottom:1px solid transparent}
.dt-link:hover{border-color:currentColor}
.dt-categories{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.dt-category-card{position:relative;min-height:260px;overflow:hidden;background:var(--dt-card)}
.dt-category-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.dt-category-card:hover img{transform:scale(1.025)}
.dt-category-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,242,234,.92),rgba(246,242,234,.26) 65%,transparent);padding:34px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.dt-category-overlay h3{font-family:var(--dt-serif);font-size:2rem;font-weight:400;margin:0 0 4px}
.dt-category-overlay p{max-width:220px;color:#4f504c;margin:0 0 18px}
.dt-category-overlay a{font-size:.92rem;border-bottom:1px solid var(--dt-ink);padding-bottom:3px}

/* Product cards / fallbacks */
.dt-products{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.dt-product-card{min-width:0}
.dt-product-media{aspect-ratio:1.15/1;background:#eee7dc;overflow:hidden;margin-bottom:14px}
.dt-product-media img{width:100%;height:100%;object-fit:cover}
.dt-product-card h3{font-size:.98rem;font-weight:500;margin:0 0 4px}
.dt-price{font-size:1rem;margin-bottom:10px}
.dt-swatches{display:flex;gap:7px;margin:10px 0}
.dt-swatch{width:13px;height:13px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}
.dt-swatch:nth-child(1){background:#78806b}.dt-swatch:nth-child(2){background:#ddd0bc}.dt-swatch:nth-child(3){background:#c6b09c}.dt-swatch:nth-child(4){background:#303433}
.dt-stars{font-size:.78rem;letter-spacing:.08em}

/* About strip */
.dt-about-strip{display:grid;grid-template-columns:1fr 1fr;background:#ebe4d9}
.dt-about-image{min-height:390px;background:url('assets/images/taza.jpg') center/cover no-repeat}
.dt-about-copy{padding:58px 64px;display:flex;flex-direction:column;justify-content:center}
.dt-about-copy p{max-width:620px;color:#4e504b}
.dt-values{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.dt-value{padding-top:18px;border-top:1px solid #cfc5b7;font-size:.9rem}
.dt-value strong{display:block;font-family:var(--dt-serif);font-size:1.15rem;font-weight:400;margin-bottom:5px}

/* Footer */
.dt-site-footer{border-top:1px solid var(--dt-line);background:var(--dt-white);padding:30px 0}
.dt-footer-row{display:grid;grid-template-columns:1.15fr 2fr 1fr;align-items:center;gap:30px}
.dt-footer-brand strong{display:block;font-size:.95rem;letter-spacing:.32em;text-transform:uppercase}
.dt-footer-brand span{font-size:.8rem;color:var(--dt-muted)}
.dt-footer-links{display:flex;justify-content:center;gap:30px;font-size:.84rem}
.dt-footer-right{display:flex;justify-content:flex-end;align-items:center;gap:16px;font-size:.8rem;color:var(--dt-muted)}
.dt-socials{display:flex;gap:12px}
.dt-socials a{font-weight:700;color:var(--dt-ink)}

/* Internal hero */
.dt-page-hero{background:#ece4d8;min-height:330px;position:relative;overflow:hidden}
.dt-page-hero-grid{min-height:330px;display:grid;grid-template-columns:1fr 1fr}
.dt-page-hero-copy{padding:60px 20px 60px 0;display:flex;justify-content:center;flex-direction:column}
.dt-page-hero-media{background:url('assets/images/hero.jpg') center/cover no-repeat}
.dt-page-hero .dt-title{font-size:clamp(3.2rem,6vw,5.6rem)}
.dt-page-hero p{max-width:520px;margin:0;color:#50514c}

/* Categories page */
.dt-category-grid-page{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dt-category-feature{background:#efe8dd;min-height:430px;position:relative;overflow:hidden;display:flex;align-items:flex-end}
.dt-category-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dt-category-feature:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(247,243,235,.96),rgba(247,243,235,.12) 70%)}
.dt-category-feature-copy{position:relative;z-index:2;padding:30px;width:100%}
.dt-category-feature h2{font-family:var(--dt-serif);font-weight:400;font-size:2.3rem;margin:0 0 8px}
.dt-category-feature p{max-width:290px}
.dt-category-feature .dt-btn{margin-top:8px}
.dt-icon-values{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid var(--dt-line);padding-top:28px;margin-top:28px}
.dt-icon-values article{text-align:center;padding:10px}
.dt-icon-values strong{display:block;font-family:var(--dt-serif);font-weight:400;font-size:1.25rem}

/* About page */
.dt-about-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.dt-about-page-photo{min-height:580px;background:url('assets/images/taza.jpg') center/cover no-repeat}
.dt-about-page-copy p{font-size:1.05rem;color:#4f504c}
.dt-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;padding-top:28px;border-top:1px solid var(--dt-line)}
.dt-stat-row strong{font-family:var(--dt-serif);font-size:2rem;font-weight:400;display:block}
.dt-stat-row span{font-size:.85rem;color:var(--dt-muted)}

/* Support */
.dt-support-contact-bar{background:#f1ebe1;border-bottom:1px solid var(--dt-line)}
.dt-support-contact-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:28px 0}
.dt-contact-item{padding:0 26px;border-right:1px solid #d9d0c3}
.dt-contact-item:first-child{padding-left:0}.dt-contact-item:last-child{border:0}
.dt-contact-item strong{font-family:var(--dt-serif);font-weight:400;font-size:1.25rem;display:block}
.dt-contact-item span,.dt-contact-item a{font-size:.88rem;color:#5a5b56}
.dt-support-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:58px;align-items:start}
.dt-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dt-field{margin-bottom:14px}
.dt-field.dt-full{grid-column:1/-1}
.dt-field label{display:block;font-size:.82rem;margin-bottom:6px;font-weight:600}
.dt-field input,.dt-field textarea{width:100%;border:1px solid #d9d0c4;background:rgba(255,255,255,.55);padding:14px;outline:none;border-radius:0}
.dt-field input:focus,.dt-field textarea:focus{border-color:var(--dt-olive)}
.dt-field textarea{min-height:145px;resize:vertical}
.dt-help-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dt-help-card{background:#f0e9df;padding:24px;min-height:150px}
.dt-help-card h3{font-family:var(--dt-serif);font-size:1.25rem;font-weight:400;margin:0 0 6px}
.dt-help-card p{font-size:.88rem;color:#5b5c57;margin:0}
.dt-notice{padding:14px 16px;margin-bottom:20px;border-left:3px solid var(--dt-olive);background:#eef0e8}

/* WordPress content */
.dt-content{padding:56px 0}
.dt-content h1,.dt-content h2,.dt-content h3{font-family:var(--dt-serif);font-weight:400}

/* WooCommerce */
.woocommerce .woocommerce-breadcrumb{margin:0 0 22px;color:var(--dt-muted);font-size:.82rem}
.woocommerce-products-header{display:none}
.woocommerce .woocommerce-result-count{font-size:.84rem;color:var(--dt-muted)}
.woocommerce .woocommerce-ordering select{border:1px solid var(--dt-line);background:#fff;padding:10px 36px 10px 12px}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 20px;margin:26px 0 0!important}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important}
.woocommerce ul.products li.product a img{aspect-ratio:1.1/1;object-fit:cover;background:#eee7dc;margin:0 0 14px!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.98rem!important;padding:0!important;color:var(--dt-ink)}
.woocommerce ul.products li.product .price{color:var(--dt-ink)!important;font-size:.98rem!important}
.woocommerce ul.products li.product .button{margin-top:10px!important;font-size:.82rem!important;padding:0 16px!important;min-height:40px}
.woocommerce span.onsale{background:var(--dt-olive)!important;min-height:auto!important;line-height:1!important;border-radius:0!important;padding:9px 12px!important;margin:0!important}
.woocommerce nav.woocommerce-pagination ul{border:0!important}
.woocommerce nav.woocommerce-pagination ul li{border:0!important;margin:0 4px!important}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:40px;min-height:40px;display:grid!important;place-items:center;border:1px solid var(--dt-line);background:transparent!important}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--dt-olive)!important;color:#fff!important}
.woocommerce div.product{padding:54px 0}
.woocommerce div.product .product_title{font-family:var(--dt-serif);font-size:3rem;font-weight:400}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--dt-ink)!important}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--dt-olive)!important;background:#f2ece2}
.woocommerce-message:before,.woocommerce-info:before{color:var(--dt-olive)!important}
.woocommerce table.shop_table{border-radius:0!important;border-color:var(--dt-line)!important}
.woocommerce-cart table.cart img{width:90px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.select2-container--default .select2-selection--single{border:1px solid var(--dt-line);border-radius:0;background:#fff;padding:12px;min-height:46px}

/* Responsive */
@media(max-width:980px){
  .dt-container{width:min(100% - 32px,1240px)}
  .dt-main-nav{position:absolute;left:0;right:0;top:74px;background:var(--dt-white);padding:16px 24px 24px;display:none;flex-direction:column;align-items:flex-start;gap:0;border-top:1px solid var(--dt-line);box-shadow:var(--dt-shadow)}
  .dt-main-nav.is-open{display:flex}.dt-main-nav a{padding:12px 0;width:100%}.dt-main-nav a:after{display:none!important}
  .dt-menu-toggle{display:grid}.dt-header-row{gap:18px}.dt-header-actions{margin-left:auto}.dt-brand{font-size:.88rem}
  .dt-hero-grid,.dt-page-hero-grid,.dt-about-strip,.dt-about-page-grid,.dt-support-grid{grid-template-columns:1fr}
  .dt-hero-copy{padding:54px 24px}.dt-hero-media{min-height:380px}.dt-page-hero-copy{padding:48px 0}.dt-page-hero-media{min-height:300px}
  .dt-products,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dt-categories,.dt-category-grid-page{grid-template-columns:1fr}.dt-category-card{min-height:230px}
  .dt-footer-row{grid-template-columns:1fr;text-align:center}.dt-footer-links,.dt-footer-right{justify-content:center;flex-wrap:wrap}
  .dt-support-contact-grid{grid-template-columns:1fr 1fr;gap:22px}.dt-contact-item{border:0!important;padding:0!important}
}
@media(max-width:620px){
  .dt-announcement{font-size:.72rem}.dt-header-row{min-height:64px}.dt-main-nav{top:64px}.dt-header-actions{gap:12px}
  .dt-hero-grid{min-height:0}.dt-hero-copy{padding:44px 20px}.dt-hero-media{min-height:300px}
  .dt-title{font-size:2.75rem}.dt-section{padding:42px 0}.dt-section-head{align-items:flex-start;flex-direction:column}
  .dt-products,.woocommerce ul.products{grid-template-columns:1fr!important}.dt-values,.dt-icon-values,.dt-stat-row{grid-template-columns:1fr}
  .dt-about-copy{padding:42px 24px}.dt-support-contact-grid{grid-template-columns:1fr}.dt-form-grid,.dt-help-cards{grid-template-columns:1fr}
  .dt-footer-links{gap:14px}.dt-footer-right{flex-direction:column}.dt-page-hero .dt-title{font-size:3rem}
}
