/*
Theme Name: Harth Seat
Description: A considered WooCommerce theme for everyday chairs.
Version: 1.0.10
Text Domain: harth-seat
Requires at least: 6.4
Requires PHP: 7.4
*/

@import url('assets/css/design-tokens.css');
*,*::before,*::after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-background);color:var(--color-text);font-family:var(--font-family-body);font-size:var(--font-size-base);line-height:var(--line-height-body)}body,button,input,select,textarea{font-family:var(--font-family-body)}img{display:block;max-width:100%;height:auto}a{color:var(--color-text);text-decoration:none}a:hover{color:var(--color-accent)}h1,h2,h3,h4{margin:0;color:var(--color-text);font-family:var(--font-family-heading);font-weight:500;line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--font-size-display)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-lg)}
button,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{display:inline-flex;min-height:2.8rem;align-items:center;justify-content:center;padding:.8rem 1.2rem;border:1px solid transparent;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-primary-contrast);font-size:var(--font-size-sm);font-weight:700;letter-spacing:.04em;line-height:1;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}button:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{background:var(--color-accent);color:var(--color-accent-contrast);transform:translateY(-2px)}:focus-visible{outline:.18rem solid var(--color-focus);outline-offset:.2rem}.skip-link{position:fixed;top:1rem;left:1rem;z-index:9999;padding:.7rem 1rem;border-radius:var(--radius-control);background:var(--color-surface);transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:relative;z-index:10;background:var(--color-primary);color:var(--color-primary-contrast)}.site-header__inner{width:min(100% - 3rem,var(--container-width));min-height:5.5rem;margin:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem}.site-brand,.site-brand a{color:var(--color-primary-contrast);font-family:var(--font-family-heading);font-size:1.65rem;letter-spacing:-.03em}.site-brand a::after{content:' / seating for living';display:block;color:var(--color-accent-soft);font-family:var(--font-family-ui);font-size:.62rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.site-nav__list,.footer-nav{display:flex;align-items:center;justify-content:center;gap:1.7rem;margin:0;padding:0;list-style:none}.site-nav a,.cart-link,.footer-nav a{color:inherit;font-size:.74rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.site-nav a:hover,.cart-link:hover,.footer-nav a:hover{color:var(--color-accent-soft)}.cart-link{display:inline-flex;align-items:center;gap:.55rem}.cart-count{display:inline-grid;min-width:1.5rem;height:1.5rem;place-items:center;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-contrast);font-size:.72rem}.menu-toggle{display:none;background:transparent;border-color:var(--color-accent-soft);color:var(--color-primary-contrast)}
.home-hero{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);min-height:clamp(37rem,calc(100vh - 5.5rem),52rem);background:var(--color-primary)}.home-hero__content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(3rem,7vw,7rem) max(1.5rem,calc((100vw - var(--container-width))/2));padding-right:clamp(2rem,7vw,7rem);color:var(--color-primary-contrast)}.home-hero h1{max-width:8ch;margin-bottom:1.5rem;color:var(--color-primary-contrast);font-size:clamp(3.6rem,7vw,7.8rem);line-height:.92}.home-hero__content>p:not(.eyebrow){max-width:28rem;margin:0 0 2rem;color:var(--color-accent-soft);font-size:1.08rem}.home-hero .eyebrow,.eyebrow{margin:0 0 .9rem;color:var(--color-accent);font-size:.68rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.home-hero__media{min-height:100%;margin:0;background:var(--color-surface-alt)}.home-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center}
.section-shell,.shop-shell,.single-product-shell,.woocommerce-shell,.page-shell{width:min(100% - 3rem,var(--container-width));margin-inline:auto;padding-block:clamp(4rem,8vw,8rem)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}.section-heading h2{max-width:14ch}.section-heading__note{max-width:25rem;color:var(--color-text-muted);font-size:.9rem}.home-product-grid,.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.home-product-card,.woocommerce ul.products li.product{overflow:hidden;margin:0;border:1px solid var(--color-border);background:var(--color-surface);transition:transform var(--transition-base),box-shadow var(--transition-base)}.home-product-card:hover,.woocommerce ul.products li.product:hover{box-shadow:var(--shadow-card);transform:translateY(-5px)}.home-product-card__image,.product-card__image{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--color-surface-alt)}.home-product-card__image img,.product-card__image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.home-product-card:hover img,.woocommerce li.product:hover img{transform:scale(1.03)}.home-product-card__body,.product-card__body{display:flex;flex-direction:column;gap:.45rem;padding:1.1rem 1.15rem 1.3rem}.home-product-card h3,.woocommerce ul.products li.product .woocommerce-loop-product__title{margin:0;font-size:1.2rem}.home-product-card h3 a,.product-card__title{color:var(--color-text)}.price,.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--color-accent);font-size:.9rem;font-weight:700}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important;content:none!important}
.home-selector{background:var(--color-surface-alt)}.selector-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:4rem;align-items:start}.selector-copy p{max-width:30rem;color:var(--color-text-muted)}.selector-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.selector-option{min-height:5.3rem;justify-content:space-between;border:1px solid var(--color-border);border-radius:0;background:var(--color-surface);color:var(--color-text);text-align:left}.selector-option:hover,.selector-option.is-active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-primary-contrast)}.selector-option span:last-child{font-size:.7rem;opacity:.6}
.home-story{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,6vw,6rem);align-items:center}.home-story__media{margin:0}.home-story__media img{width:100%;aspect-ratio:1/1;object-fit:cover}.home-story__copy p{max-width:32rem;color:var(--color-text-muted)}.story-list{display:grid;gap:1rem;margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--color-border)}.story-list div{display:flex;justify-content:space-between;gap:1rem;font-size:.85rem}.story-list strong{font-weight:700}.story-list span{color:var(--color-text-muted);text-align:right}
.newsletter{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;padding:clamp(2rem,5vw,4rem);background:var(--color-accent);color:var(--color-accent-contrast)}.newsletter h2{color:var(--color-accent-contrast);font-size:clamp(2rem,4vw,3.3rem)}.newsletter p{max-width:28rem}.newsletter form{display:flex;gap:.6rem}.newsletter input{flex:1;min-height:3rem;padding:.8rem 1rem;border:1px solid rgb(30 33 29 / 25%);border-radius:var(--radius-pill);background:rgb(255 255 255 / 35%);color:var(--color-accent-contrast)}.newsletter input::placeholder{color:rgb(30 33 29 / 65%)}.newsletter button{background:var(--color-primary);color:var(--color-primary-contrast)}
.shop-header,.page-header{margin-bottom:2.5rem}.shop-header h1,.page-header h1{max-width:12ch;font-size:clamp(3rem,7vw,6.3rem)}.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.shop-toolbar .woocommerce-result-count,.shop-toolbar .woocommerce-ordering{margin:0;color:var(--color-text-muted);font-size:.82rem}.shop-shell .products{margin:0;padding:0;list-style:none}.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important}.woocommerce ul.products li.product .button{width:100%;margin-top:.65rem;background:transparent;border-color:var(--color-primary);color:var(--color-primary)}.woocommerce ul.products li.product .button:hover{background:var(--color-primary);color:var(--color-primary-contrast)}
.single-product-shell>.product,.page-card,.woocommerce-shell>.woocommerce{padding:clamp(1.5rem,4vw,4rem);border:1px solid var(--color-border);background:var(--color-surface)}.product-main-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(20rem,.8fr);gap:clamp(2rem,6vw,6rem);align-items:start}.product-main-grid .summary{position:sticky;top:1.5rem}.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto;float:none;margin:0}.woocommerce-product-gallery__wrapper{margin:0}.woocommerce div.product div.images .woocommerce-product-gallery__image{overflow:hidden;background:var(--color-surface-alt)}.woocommerce div.product div.images .woocommerce-product-gallery__image img{width:100%;height:auto;object-fit:contain}.woocommerce div.product .product_title{font-size:clamp(2.5rem,5vw,5rem)}.product-after-summary{margin-top:5rem}section.related.products,section.upsells.products{display:block;width:100%;margin-top:4rem}section.related.products>ul.products,section.upsells.products>ul.products{display:grid;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none}section.related.products>ul.products>li.product,section.upsells.products>ul.products>li.product{width:auto!important;float:none!important;margin:0!important}
.entry-content{max-width:48rem}.entry-content p{color:var(--color-text-muted)}.entry-content h2{margin-top:2.5rem;margin-bottom:1rem;font-size:2rem}.entry-content ul{padding-left:1.2rem;color:var(--color-text-muted)}select,input[type=text],input[type=email],input[type=tel],input[type=number],input[type=password],textarea{min-height:2.8rem;padding:.7rem .85rem;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text)}
.site-footer{margin-top:0;background:var(--color-primary);color:var(--color-primary-contrast)}.site-footer__inner{width:min(100% - 3rem,var(--container-width));margin:auto;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem;padding-block:4rem}.site-footer strong{font-family:var(--font-family-heading);font-size:1.8rem}.site-footer p{color:var(--color-accent-soft);font-size:.84rem}.footer-nav{align-items:flex-start;flex-direction:column;gap:.7rem}.site-footer__inner>p{grid-column:1/-1;margin:1rem 0 0;padding-top:1.2rem;border-top:1px solid rgb(255 255 255 / 18%)}.cookie-notice{position:fixed;right:1.5rem;bottom:1.5rem;z-index:500;max-width:23rem;padding:1.2rem 1.3rem;border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-panel)}.cookie-notice[hidden]{display:none}.cookie-notice p{margin-top:0;font-size:.82rem}
@media(max-width:64rem){.home-product-grid,.woocommerce ul.products,section.related.products>ul.products,section.upsells.products>ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.product-main-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,.85fr)}}
@media(max-width:48rem){.site-header__inner{grid-template-columns:1fr auto auto;gap:1rem}.menu-toggle{display:inline-flex}.site-nav{display:none;grid-column:1/-1;padding-bottom:1rem}.site-nav.is-open{display:block}.site-nav__list{align-items:flex-start;flex-direction:column;gap:1rem}.home-hero{grid-template-columns:1fr;min-height:auto}.home-hero__content{min-height:32rem;padding:4rem 1.5rem}.home-hero__media{aspect-ratio:4/3;min-height:auto}.section-shell,.shop-shell,.single-product-shell,.woocommerce-shell,.page-shell,.site-header__inner,.site-footer__inner{width:min(100% - 2rem,var(--container-width))}.section-heading,.selector-grid,.home-story,.newsletter{grid-template-columns:1fr;display:grid}.section-heading{align-items:start}.selector-grid{gap:2rem}.newsletter form{flex-direction:column}.product-main-grid{grid-template-columns:1fr}.product-main-grid .summary{position:static}.single-product-shell>.product,.page-card,.woocommerce-shell>.woocommerce{padding:1.25rem}.site-footer__inner{grid-template-columns:1fr;gap:1.5rem}.site-footer__inner>p{grid-column:auto}.footer-nav{gap:.5rem}}
@media(max-width:32rem){.home-product-grid,.woocommerce ul.products,section.related.products>ul.products,section.upsells.products>ul.products,.selector-options{grid-template-columns:1fr}.cookie-notice{right:1rem;bottom:1rem;left:1rem}}
.selector-result{min-height:3.6rem;margin:1.25rem 0;color:var(--color-text)!important;font-size:.9rem}.product-information-panel{margin:1.5rem 0 2rem;padding:1.25rem;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.product-information-panel h2{font-size:1.55rem}.product-information-panel__intro{color:var(--color-text-muted);font-size:.86rem}.product-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0 0}.product-facts div{padding-top:.75rem;border-top:1px solid var(--color-border)}.product-facts dt{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.product-facts dd{margin:.35rem 0 0;color:var(--color-text-muted);font-size:.82rem}.about-intro{display:grid;grid-template-columns:minmax(16rem,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,5rem);align-items:start}.about-intro figure{margin:0}.about-intro figure img{width:100%;aspect-ratio:4/5;object-fit:cover}.about-intro figcaption{margin-top:.7rem;color:var(--color-text-muted);font-size:.78rem}.home-service{display:grid;grid-template-columns:1fr 1.4fr;gap:4rem;align-items:start}.service-grid{display:grid;gap:.7rem}.service-grid details{padding:1rem 0;border-top:1px solid var(--color-border)}.service-grid details:last-child{border-bottom:1px solid var(--color-border)}.service-grid summary{cursor:pointer;font-family:var(--font-family-heading);font-size:1.25rem}.service-grid p{max-width:34rem;color:var(--color-text-muted);font-size:.88rem}
@media(max-width:48rem){.about-intro,.home-service{grid-template-columns:1fr;gap:2rem}.product-facts{grid-template-columns:1fr}}
.home-selector.section-shell,.newsletter.section-shell{width:100%;max-width:none;margin-inline:0;padding-inline:max(1rem,calc((100vw - var(--container-width))/2))}
.product-main-grid{grid-template-columns:minmax(0,1.45fr) minmax(28rem,1fr);gap:clamp(2rem,5vw,5rem)}.product-main-grid>*,.product-main-grid .product-gallery-column,.product-main-grid .summary{min-width:0;width:100%;max-width:none;float:none}.product-main-grid .woocommerce-product-gallery,.product-main-grid .woocommerce-product-gallery.images,.product-main-grid .woocommerce-product-gallery__wrapper{width:100%!important;max-width:none;float:none;margin:0}.product-main-grid .woocommerce-product-gallery__image{height:auto!important;min-height:0;aspect-ratio:auto}.product-main-grid .woocommerce-product-gallery__image img{width:100%;height:auto;object-fit:contain}.product-main-grid .summary{position:sticky;top:1.5rem}.woocommerce div.product .product_title{max-width:none;font-size:clamp(2.5rem,4vw,4.5rem)}
@media(max-width:64rem){.product-main-grid{grid-template-columns:minmax(0,1fr) minmax(22rem,.9fr)}}
@media(max-width:48rem){.product-main-grid{grid-template-columns:1fr}.product-main-grid .summary{position:static}}
.single-product-shell>.product{width:100%;max-width:none;box-sizing:border-box}.single-product-shell>.product .product-main-grid{display:grid!important;width:100%!important;max-width:none!important;grid-template-columns:minmax(0,1.2fr) minmax(30rem,1fr)!important;gap:clamp(2rem,5vw,5rem)}.single-product-shell>.product .product-main-grid .summary,.single-product-shell>.product .product-main-grid .product-gallery-column{width:100%!important;max-width:none!important;min-width:0!important;float:none!important;grid-column:auto!important}.single-product-shell>.product .product-main-grid .summary>*{max-width:none}
@media(max-width:64rem){.single-product-shell>.product .product-main-grid{grid-template-columns:minmax(0,1fr) minmax(24rem,1fr)!important}}
@media(max-width:48rem){.single-product-shell>.product .product-main-grid{grid-template-columns:1fr!important}}
body.single-product .product-main-grid{display:grid!important;width:100%!important;max-width:none!important;grid-template-columns:minmax(0,1.15fr) minmax(30rem,1fr)!important;gap:clamp(2rem,5vw,5rem);align-items:start}body.single-product .product-main-grid>.product-gallery-column,body.single-product .product-main-grid>.summary{width:100%!important;max-width:none!important;min-width:0!important;float:none!important;margin:0!important;grid-column:auto!important}body.single-product .product-main-grid>.summary>*{max-width:none}
@media(max-width:64rem){body.single-product .product-main-grid{grid-template-columns:minmax(0,1fr) minmax(24rem,1fr)!important}}
@media(max-width:48rem){body.single-product .product-main-grid{grid-template-columns:1fr!important}body.single-product .product-main-grid>.summary{position:static}}
.woocommerce-shop ul.products li.product .product-card__image>a,.post-type-archive-product ul.products li.product .product-card__image>a{display:block;width:100%;height:100%}.woocommerce-shop ul.products li.product .product-card__image img,.post-type-archive-product ul.products li.product .product-card__image img{display:block;width:100%!important;height:100%!important;max-width:none;object-fit:cover}
.woocommerce-shop ul.products li.product .product-card__image,.post-type-archive-product ul.products li.product .product-card__image{position:relative;height:auto;aspect-ratio:4/5}.woocommerce-shop ul.products li.product .product-card__image img,.post-type-archive-product ul.products li.product .product-card__image img{position:absolute;inset:0}
body.single-product section.related.products ul.products li.product .product-card__image,body.single-product section.upsells.products ul.products li.product .product-card__image{position:relative;display:block;width:100%;height:auto;aspect-ratio:4/5;overflow:hidden;background:var(--color-surface-alt)}body.single-product section.related.products ul.products li.product .product-card__image img,body.single-product section.upsells.products ul.products li.product .product-card__image img{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;max-width:none;object-fit:cover}
.harth-contact-form{display:grid;gap:1rem;margin:2rem 0}.harth-contact-form p{display:grid;gap:.35rem;margin:0}.harth-contact-form label{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text)}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
