﻿/*
Theme Name: Mirror Mesa
Author: Mirror Mesa
Description: An original, lightweight WooCommerce storefront for statement cowboy hats.
Version: 1.1.4
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: mirror-mesa
*/
:root{--paper:#faf8f3;--ink:#2d1638;--accent:#2647da;--line:#ddd9d1;--muted:#665d6a;--white:#fff;--radius:8px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--accent)}img{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip{position:absolute;left:12px;top:-100px;background:white;padding:12px;z-index:99}.skip:focus{top:12px}.wrap{max-width:1280px;margin:auto;padding:0 28px}.announcement{text-align:center;background:var(--ink);color:white;padding:8px 16px;font-size:12px;letter-spacing:1px}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{display:flex;gap:32px;align-items:center;min-height:96px}.logo{font-family:Georgia,serif;font-size:30px;font-weight:bold;text-decoration:none;letter-spacing:-1.5px}.logo small{display:block;font:10px Arial,sans-serif;letter-spacing:3px;text-transform:uppercase;margin-top:-5px}.nav{display:flex;gap:25px;flex:1;justify-content:center}.nav a{font-size:14px;text-decoration:none}.header-actions{display:flex;gap:16px;font-size:14px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px;align-items:center;gap:65px;padding:60px 0}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2px;font-weight:700;color:var(--accent);margin:0 0 18px}h1,h2,h3{font-family:Georgia,serif;line-height:1.1;font-weight:400;letter-spacing:-1px}h1{font-size:clamp(42px,5.7vw,78px);margin:0 0 24px}h2{font-size:clamp(30px,3.6vw,48px);margin:0 0 20px}h3{font-size:25px;margin:0 0 13px}.hero p{max-width:470px}.lead{font-size:18px;color:var(--muted)}.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:white;border:0;border-radius:3px;padding:15px 24px;text-decoration:none;font-size:14px;font-weight:600;cursor:pointer}.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--ink);color:white}.button.secondary{background:transparent;color:var(--ink);border:1px solid var(--ink)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.hero-art{background:#e9e8f2;border-radius:160px 160px 8px 8px;position:relative;overflow:hidden;min-height:510px;display:flex;align-items:center;justify-content:center}.hero-art svg{width:95%;height:auto}.hero-art--editorial{border-radius:160px 160px 8px 8px;background:#1a1424}.hero-art--editorial img{width:100%;height:100%;min-height:510px;object-fit:cover;object-position:center}.hero-art--editorial .art-caption{color:#fff;background:rgba(20,10,28,.72);padding:7px 10px;border-radius:2px}.art-caption{position:absolute;bottom:20px;left:24px;font-size:10px;letter-spacing:1px;text-transform:uppercase}.benefits{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);padding:23px 0;gap:24px;font-size:13px}.benefits strong{display:block;font-size:15px}.section{padding:82px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}.section-heading p{max-width:420px;color:var(--muted);margin:0}.collections{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.collection{padding:32px 24px;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;min-height:185px;display:flex;flex-direction:column;justify-content:space-between}.collection span{font-size:12px;color:var(--muted)}.collection:hover{border-color:var(--accent)}.collection:nth-child(2){background:#eee9f0}.collection:nth-child(3){background:#e9ede9}.collection:nth-child(4){background:#e9eaf4}.editorial{background:var(--ink);color:white;padding:80px 0}.editorial-inner{display:grid;grid-template-columns:1fr 1fr;gap:75px}.editorial p{color:#d7cddd}.editorial .eyebrow{color:#b9c4ff}.editorial a{color:white}.feature-list{display:grid;gap:22px}.feature-list article{border-bottom:1px solid #604969;padding:0 0 22px}.feature-list h3{font-size:23px}.feature-list p{font-size:14px;margin:0}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.guide-card{border-top:2px solid var(--ink);padding-top:22px}.guide-card p{color:var(--muted);font-size:14px}.guide-card a{font-size:13px}.faq{max-width:850px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:600}.faq p{color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:58px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.footer-grid h3{font:600 12px Arial;letter-spacing:1px;text-transform:uppercase}.footer-grid a{display:block;font-size:14px;margin:10px 0;text-decoration:none}.footer-grid p{font-size:14px;max-width:340px;color:var(--muted)}.footer-bottom{margin-top:40px;border-top:1px solid var(--line);padding-top:18px;font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.page-main{padding-top:45px;padding-bottom:70px;min-height:60vh}.content{max-width:840px;margin:auto}.content h1{font-size:48px}.content h2{font-size:32px;margin-top:40px}.content h3{font-size:25px;margin-top:28px}.content li{margin-bottom:8px}.post-meta{font-size:13px;color:var(--muted)}.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--muted);margin-bottom:25px}.woocommerce-products-header h1{font-size:48px}.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin:30px 0}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none;width:auto;margin:0;padding:0}.woocommerce ul.products li.product a img{border-radius:var(--radius);background:white;aspect-ratio:1;object-fit:contain}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Arial,sans-serif;font-size:15px;line-height:1.4;letter-spacing:0;font-weight:600}.woocommerce ul.products li.product .price{color:var(--ink);font-size:15px}.woocommerce div.product .product_title{font-size:42px}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-size:24px}.woocommerce .quantity .qty{padding:10px;min-height:48px}.woocommerce .single_add_to_cart_button{min-height:48px}.woocommerce div.product form.cart .variations select{padding:12px;background:white;border:1px solid var(--line)}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--paper);border-color:var(--line)}.woocommerce-message,.woocommerce-info{border-top-color:var(--accent)}.woocommerce-message:before,.woocommerce-info:before{color:var(--accent)}.woocommerce input.input-text,.woocommerce textarea,.woocommerce select{border:1px solid #b7afb9;padding:12px;border-radius:3px;background:white}.woocommerce table.shop_table{border-color:var(--line)}.woocommerce span.onsale{background:var(--accent)}.woocommerce .related{clear:both;padding-top:45px}.woocommerce div.product .woocommerce-tabs .panel h2{font-size:28px}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.archive-grid article{padding:25px;border:1px solid var(--line)}.search-form{display:flex;gap:10px}.search-field{padding:12px;border:1px solid var(--line);flex:1;min-width:0}.empty-state{padding:40px;border:1px dashed var(--line);color:var(--muted)}
.mm-intro-price{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.35em}.mm-price-label{font-size:.68em;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.mm-standard-price{font-size:.68em;color:var(--muted);white-space:nowrap}.mm-delivery-note{font-size:13px;line-height:1.45;color:var(--muted);margin:.55em 0 1em}.woocommerce ul.products .mm-delivery-note{margin:.35em 0 .8em}.woocommerce ul.products .mm-delivery-note strong{display:block;color:var(--ink)}
.wc-block-components-product-price .mm-standard-price-block{text-decoration:none;color:var(--muted);margin-right:.45em}.wc-block-components-product-price .mm-intro-price-block{text-decoration:none;color:var(--ink)}
@media(max-width:1000px){.nav{gap:15px}.header-inner{gap:20px}.hero{gap:30px}.hero-art{min-height:420px}.hero-art--editorial img{min-height:420px}.collections{grid-template-columns:repeat(2,1fr)}.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.wrap{padding:0 20px}.announcement{font-size:10px}.header-inner{min-height:80px;flex-wrap:wrap;gap:15px;padding-top:15px;padding-bottom:15px}.logo{font-size:25px}.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:7px 11px;margin-left:auto}.header-actions{font-size:12px}.nav{display:none;order:4;flex-basis:100%;justify-content:start;flex-wrap:wrap}.nav.is-open{display:flex}.hero{grid-template-columns:1fr;gap:30px;padding:40px 0}.hero-art{min-height:350px}.hero-art--editorial img{min-height:350px}.hero h1{font-size:52px}.benefits{grid-template-columns:1fr;gap:15px}.section{padding:55px 0}.section-heading{display:block}.section-heading p{margin-top:18px}.collections{gap:12px}.collection{padding:23px 18px;min-height:155px}.collection h3{font-size:23px}.editorial-inner{grid-template-columns:1fr;gap:35px}.guide-grid,.archive-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:16px}.woocommerce div.product .product_title{font-size:34px}.woocommerce-products-header h1,.content h1{font-size:38px}.woocommerce ul.products li.product .button{font-size:12px;padding:10px}.hero-actions .button{padding:13px 18px}.page-main{padding-top:30px}}

/* MM-WOO-LAYOUT: store pages sit inside the same container as the header */
.woo-main{padding-top:36px;padding-bottom:72px}
.woocommerce div.product .woocommerce-tabs{clear:both;padding-top:48px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0;margin-bottom:28px}
.woocommerce div.product .woocommerce-tabs .panel{max-width:820px;padding:0;margin:0}
.woocommerce-Tabs-panel--description>h2:first-child{display:none}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:24px;line-height:1.25;margin:36px 0 12px}
.woocommerce div.product .woocommerce-tabs .panel h2:first-of-type{margin-top:0}
.woocommerce div.product .woocommerce-tabs .panel p{font-size:17px;line-height:1.7;margin:0 0 16px}
.woocommerce div.product .woocommerce-tabs .panel ul,.woocommerce div.product .woocommerce-tabs .panel ol{padding-left:22px;line-height:1.7;margin:0 0 16px}
.woocommerce div.product .woocommerce-tabs .panel table{width:100%;max-width:640px;border-collapse:collapse;margin:8px 0 20px}
.woocommerce div.product .woocommerce-tabs .panel table th{width:38%;text-align:left;font-weight:600;padding:12px 16px 12px 0;border-bottom:1px solid var(--line);vertical-align:top}
.woocommerce div.product .woocommerce-tabs .panel table td{padding:12px 0;border-bottom:1px solid var(--line)}
@media (max-width:768px){.woo-main{padding-top:20px;padding-bottom:48px}.woocommerce div.product .product_title{font-size:30px}.woocommerce div.product .woocommerce-tabs{padding-top:32px}.woocommerce div.product .woocommerce-tabs .panel h2{font-size:22px}.woocommerce div.product .woocommerce-tabs .panel p{font-size:16px}.woocommerce div.product .woocommerce-tabs .panel table th{width:44%}}

/* MM-WOO-RELATED */
.woocommerce .related>h2,.woocommerce .upsells>h2{font-size:28px;line-height:1.25;margin:0 0 4px}
.woocommerce div.product .woocommerce-tabs .panel .faq summary{padding:10px 0}
.woocommerce div.product .woocommerce-tabs .panel .faq details{border-bottom:1px solid var(--line)}

/* MM-WOO-GRID */
.woocommerce ul.products li.product{min-width:0}
.woocommerce ul.products li.product a img{width:100%;height:auto}
@media (max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media (max-width:520px){.woocommerce ul.products{gap:16px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px}.woocommerce ul.products .mm-delivery-note{font-size:12px}.woocommerce ul.products li.product .button{width:100%;text-align:center}}

/* MM-WOO-CARDS: neutralise WooCommerce small-screen float widths inside the theme grid */
.woocommerce ul.products[class*=columns-] li.product,.woocommerce-page ul.products[class*=columns-] li.product{width:100%!important;float:none!important;margin:0!important;clear:none!important}
