/* UltraPath Home Co. — storefront brand layer
   The kit ships no assets/ directory; without this file enqueue_brand_assets() returns
   silently and the store renders unstyled while every option read still looks correct. */

:root{
  --up-ink:#1e2a3a;
  --up-ink-soft:#3d4a5c;
  --up-brass:#b08d57;
  --up-brass-dk:#8f7043;
  --up-cream:#f5f0e8;
  --up-cream-dp:#ece4d8;
  --up-paper:#fffdfa;
  --up-line:#e2d9cb;
  --up-muted:#7a7266;
  --up-radius:3px;
  --up-serif:"Fraunces",Georgia,"Times New Roman",serif;
  --up-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

body{background:var(--up-paper);color:var(--up-ink);font-family:var(--up-sans);
     font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.site-title{font-family:var(--up-serif);color:var(--up-ink);
     font-weight:600;letter-spacing:-.01em;line-height:1.2}
h1{font-size:clamp(2rem,4.4vw,3.1rem)}
h2{font-size:clamp(1.55rem,3vw,2.25rem)}
a{color:var(--up-ink);text-decoration-color:var(--up-brass);text-underline-offset:3px}
a:hover{color:var(--up-brass-dk)}

/* ── header ─────────────────────────────────────────────── */
.site-header,.ast-primary-header-bar{background:var(--up-cream)!important;
     border-bottom:1px solid var(--up-line)!important}
.main-header-menu .menu-link,.ast-header-break-point .main-header-menu .menu-link{
     font-family:var(--up-sans);font-size:.82rem;letter-spacing:.13em;
     text-transform:uppercase;color:var(--up-ink)!important;font-weight:500}
.main-header-menu .menu-link:hover{color:var(--up-brass-dk)!important}
.custom-logo-link img,.site-logo-img img{max-height:58px;width:auto}
/* the logo image already carries the wordmark - Astra prints the site title again beside it.
   Hidden visually only: the brand name staying in the source is wanted on the storefront
   (SEO + schema). The CHECKOUT is the opposite case and strips it at source. */
.ast-site-title-wrap{display:none!important}

/* footer brand line */
.up-foot-brand{font-family:var(--up-serif);font-size:1.05rem;color:var(--up-ink);
     letter-spacing:.02em;display:inline-block;margin-bottom:.15rem}
.ast-small-footer .ast-footer-copyright,.site-below-footer-wrap .ast-footer-copyright{
     font-size:.86rem;line-height:1.9;color:var(--up-muted)}
.site-below-footer-wrap{padding:2.2rem 1rem!important}

/* ── buttons ────────────────────────────────────────────── */
.ast-button,.button,button,input[type=submit],
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce ul.products li.product .button{
     background:var(--up-ink)!important;border:1px solid var(--up-ink)!important;
     color:#fff!important;border-radius:var(--up-radius)!important;
     font-family:var(--up-sans)!important;font-size:.78rem!important;
     letter-spacing:.12em!important;text-transform:uppercase!important;
     font-weight:500!important;padding:.85em 1.9em!important;
     transition:background .18s ease,border-color .18s ease}
.ast-button:hover,.button:hover,button:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce ul.products li.product .button:hover{
     background:var(--up-brass-dk)!important;border-color:var(--up-brass-dk)!important;
     color:#fff!important}
.woocommerce #respond input#submit.alt,.woocommerce a.button.alt,
.woocommerce button.button.alt{background:var(--up-ink)!important}

/* ── shop grid ──────────────────────────────────────────── */
.woocommerce ul.products{gap:2.4rem 1.6rem}
.woocommerce ul.products li.product{
     background:var(--up-paper);border:1px solid var(--up-line);
     border-radius:var(--up-radius);padding:0 0 1.4rem;overflow:hidden;
     transition:border-color .2s ease,box-shadow .2s ease;text-align:center}
.woocommerce ul.products li.product:hover{
     border-color:var(--up-brass);box-shadow:0 10px 30px -18px rgba(30,42,58,.42)}
.woocommerce ul.products li.product img{margin-bottom:1.1rem;background:var(--up-cream)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
     font-family:var(--up-serif)!important;font-size:1.02rem!important;
     font-weight:500!important;color:var(--up-ink)!important;
     padding:0 1rem!important;margin-bottom:.35rem!important;line-height:1.35}
.woocommerce ul.products li.product .price{
     color:var(--up-muted)!important;font-family:var(--up-sans);font-size:.92rem!important;
     display:block;margin-bottom:1rem}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:var(--up-ink)!important}

/* single product */
.woocommerce div.product .product_title{font-family:var(--up-serif);font-weight:600}
.woocommerce div.product p.price{color:var(--up-ink);font-size:1.4rem;font-weight:500}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
     font-family:var(--up-sans);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}
.woocommerce-product-gallery{opacity:1!important}

/* ── notices / forms ────────────────────────────────────── */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
     border-top-color:var(--up-brass)!important;background:var(--up-cream);
     border-radius:var(--up-radius)}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
input[type=text],input[type=email],input[type=tel],input[type=password],select,textarea{
     border:1px solid var(--up-line)!important;border-radius:var(--up-radius)!important;
     background:var(--up-paper)!important;padding:.72em .9em!important;
     font-family:var(--up-sans)!important;color:var(--up-ink)!important}
.woocommerce form .form-row input.input-text:focus,
input:focus,select:focus,textarea:focus{
     border-color:var(--up-brass)!important;outline:none!important;
     box-shadow:0 0 0 3px rgba(176,141,87,.16)!important}

/* ── homepage sections ──────────────────────────────────── */
.up-hero{background:var(--up-cream);padding:clamp(3.5rem,8vw,6.5rem) 1.5rem;text-align:center}
.up-hero h1{margin:0 0 1rem}
.up-hero p{max-width:36rem;margin:0 auto 2rem;color:var(--up-ink-soft);font-size:1.06rem}
.up-kicker{font-family:var(--up-sans);font-size:.74rem;letter-spacing:.24em;
     text-transform:uppercase;color:var(--up-brass-dk);margin-bottom:.9rem;display:block}
.up-section{padding:clamp(2.8rem,6vw,4.6rem) 1.5rem;max-width:1180px;margin:0 auto}
.up-section-head{text-align:center;margin-bottom:2.6rem}
.up-section-head p{color:var(--up-muted);max-width:34rem;margin:.6rem auto 0}
.up-grid{display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.up-card{border:1px solid var(--up-line);border-radius:var(--up-radius);
     padding:2rem 1.6rem;background:var(--up-paper);text-align:center}
.up-card h3{font-size:1.08rem;margin:0 0 .5rem}
.up-card p{color:var(--up-muted);font-size:.94rem;margin:0}
.up-rule{height:1px;background:var(--up-line);border:0;margin:0}
.up-band{background:var(--up-ink);color:var(--up-cream);text-align:center;
     padding:clamp(2.6rem,5vw,4rem) 1.5rem}
.up-band h2{color:var(--up-cream)}
.up-band p{color:#c9d0da;max-width:34rem;margin:.8rem auto 0}

/* ── footer ─────────────────────────────────────────────── */
.site-footer,.ast-small-footer{background:var(--up-cream)!important;
     border-top:1px solid var(--up-line)!important;color:var(--up-muted)!important}
.site-footer a,.ast-small-footer a{color:var(--up-ink)!important}

/* ── Astra loop overlap belts (price/button absolutely positioned) ──────── */
.woocommerce ul.products li.product{display:flex!important;flex-direction:column!important}
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
     position:static!important;float:none!important;transform:none!important}
.ast-on-card-button,.ast-card-action-tooltip,.ast-select-options-trigger{display:none!important}
.astra-shop-summary-wrap{display:flex;flex-direction:column}

@media (max-width:782px){
  .up-hero{padding:2.6rem 1.1rem}
  .woocommerce ul.products{gap:1.5rem 1rem}
}

/* front page: the hero already provides the H1; Astra's page title would make two */
body.home .entry-header,
body.home header.entry-header,
body.home .ast-archive-description{display:none!important}
body.home .site-content .ast-container>article>.entry-content{margin-top:0}
