.hhp-site a:focus-visible,.hhp-site button:focus-visible,.hhp-site select:focus-visible{outline:2px solid var(--hh-accent);outline-offset:4px}
.hhp-site .hhp-site-footer{background:var(--hh-soft);color:var(--hh-ink);border-top:1px solid var(--hh-edge);margin-top:clamp(1rem,4vw,3rem)}
.hhp-site-footer-inner{width:min(1180px,92%);margin:auto;padding:2.75rem 0;display:grid;grid-template-columns:1.2fr .85fr .85fr 1fr;gap:1.5rem}
.hhp-site-footer-inner nav{display:grid;align-content:start;gap:.35rem}
.hhp-site-footer-inner p{margin:.75rem 0 0}
.hhp-site-footer-inner a{color:var(--hh-accent);overflow-wrap:anywhere}
.hhp-editorial #content>.ast-container{display:block;max-width:1250px}
.hhp-reading{width:100%;padding:1.5rem 0 2rem;color:var(--hh-ink)}
.hhp-reading-crumbs{display:flex;gap:.65rem;flex-wrap:wrap;font-size:.9rem;color:var(--hh-muted);margin-bottom:1.25rem}
.hhp-reading a:not(.hhp-action){color:var(--hh-accent)}
.hhp-reading-hero{background:var(--hh-soft);border:1px solid var(--hh-edge);border-radius:1.1rem;padding:clamp(1.4rem,5vw,3.75rem);display:grid;align-items:center;gap:clamp(1.1rem,4vw,3rem)}
.hhp-reading-hero-image{grid-template-columns:1.15fr .85fr}
.hhp-reading-hero .hhp-reading-label{color:var(--hh-deep);font-weight:700;font-size:.81rem;text-transform:uppercase;letter-spacing:.11em;margin:0 0 .65rem}
.hhp-reading-hero h1{font-size:clamp(2rem,4.6vw,3.65rem);font-weight:750;letter-spacing:-.045em;line-height:1.06;margin:0;color:var(--hh-ink);overflow-wrap:anywhere}
.hhp-reading-summary{font-size:clamp(1.05rem,2vw,1.22rem);color:var(--hh-muted);max-width:57ch;margin:1rem 0 0;line-height:1.55}
.hhp-reading-hero-photo{width:100%;height:auto;aspect-ratio:1.38;object-fit:cover;border-radius:.75rem}
.hhp-byline,.hhp-read-actions{margin:1.15rem 0 0}
.hhp-reading-section{margin:clamp(1.8rem,5vw,3.35rem) 0}
.hhp-reading-section h2,.hhp-quote-panel h2{color:var(--hh-ink);font-size:clamp(1.35rem,3vw,2rem);line-height:1.2;margin-bottom:1rem;font-weight:720;letter-spacing:-.025em}
.hhp-reading-prose,.hhp-product-copy>p,.hhp-product-copy>ul{max-width:72ch}
.hhp-reading-prose{font-size:1.0625rem;line-height:1.72}
.hhp-reading-prose h2:not(:first-child){margin-top:1.6em}
.hhp-reading-prose a,.hhp-product-copy a,.hhp-shop-intro a,.hhp-missing-links a{text-decoration:underline;text-underline-offset:.2em}
.hhp-reading-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:1rem}
.hhp-reading-card{background:var(--hh-white);border:1px solid var(--hh-edge);padding:1rem;border-radius:.85rem;min-width:0;transition:box-shadow .15s ease}
.hhp-reading-card:hover,.hhp-reading-card:focus-within{box-shadow:0 6px 22px var(--hh-shadow)}
.hhp-reading-card img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;border-radius:.5rem;background:var(--hh-soft)}
.hhp-reading-card h3{font-size:1.17rem;color:var(--hh-accent);margin:.75rem 0 .35rem;line-height:1.25}
.hhp-reading-card a:hover h3{text-decoration:underline;text-underline-offset:.2em}
.hhp-reading-card p{margin:0;color:var(--hh-muted);line-height:1.48}
.hhp-quote-panel{background:var(--hh-soft);border:1px solid var(--hh-edge);border-radius:.85rem;padding:clamp(1.2rem,4vw,2.25rem);display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}
.hhp-quote-panel h2{margin:0 0 .4rem}
.hhp-quote-panel p{margin:0}
.hhp-action{display:inline-block;background:var(--hh-accent);color:var(--hh-white);border-radius:.45rem;padding:.8rem 1.1rem;line-height:1.2;font-weight:700;text-decoration:none}
.hhp-action:hover,.hhp-action:focus{background:var(--hh-accent-hover);color:var(--hh-white)}
.hhp-product-reading{clear:both;padding:1rem 0 0}
.hhp-product-copy{background:var(--hh-soft);border:1px solid var(--hh-edge);padding:clamp(1rem,4vw,2.5rem);border-radius:.9rem}
.hhp-product-copy h3{font-size:1.2rem;font-weight:700;color:var(--hh-accent);margin:.9rem 0 .6rem}
.hhp-product-copy ul{margin-left:1.3rem}
.hhp-shop-intro{max-width:72ch;margin:0 0 1rem}
.hhp-shop-intro p{margin:0 0 .5rem}
.hhp-catalog-native .hhp-quote-actions{background:var(--hh-soft);padding:1rem;border-radius:.65rem;margin-top:.55rem}
.hhp-catalog-native .woocommerce ul.products li.product .astra-shop-summary-wrap{padding:.85rem 1rem 1rem}
.hhp-project-gallery ul{list-style:none;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:.85rem;padding:0}
.hhp-project-gallery li a{display:block;border-radius:.5rem;overflow:hidden}
.hhp-project-gallery img{width:100%;height:auto;aspect-ratio:1.3;object-fit:cover;background:var(--hh-soft)}
@media(max-width:780px){
    .hhp-site-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
    .hhp-reading-hero-image{grid-template-columns:1fr}
    .hhp-reading-hero-photo{max-height:310px}
}
@media(max-width:430px){.hhp-site-footer-inner{grid-template-columns:1fr}}
.hhp-site #page{background:var(--hh-paper)}
.hhp-nav-wrap{width:min(1220px,calc(100% - 48px));margin:auto}
.hhp-topbar{background:var(--hh-deep);color:var(--hh-white);font:.84rem/1.4 var(--hh-copy)}
.hhp-topbar .hhp-nav-wrap{display:flex;justify-content:space-between;gap:.75rem;padding-block:.48rem}
.hhp-topbar a,.hh .hhp-topbar a{color:var(--hh-white)}
.hhp-site-header{background:var(--hh-paper);border-bottom:1px solid var(--hh-edge);color:var(--hh-ink);font:500 1rem/1.5 var(--hh-copy)}
.hhp-site-header .hhp-nav-wrap{display:flex;justify-content:space-between;align-items:center;min-height:76px;gap:1rem}
.hhp-brand{width:300px;flex-shrink:0}
.hhp-brand img {
    width: 300px;
    max-width: 100%;
    height: auto;
    display: block;
    margin-left: -39px;
}
.hhp-desktop-nav{display:flex;align-items:center;gap:clamp(.8rem,1.5vw,1.5rem)}
.hhp-site-header nav a{color:var(--hh-ink)}
.hhp-site-header nav a:hover,.hhp-topbar a:hover{text-decoration:underline;text-underline-offset:.22em}
.hhp-site-header nav .hhp-nav-quote{background:var(--hh-accent);color:var(--hh-white);padding:.8rem 1rem;border-radius:.4rem;white-space:nowrap;font-weight:700}
.hhp-mobile-nav{display:none}
.hhp-site #content a:not(.button):not(.hhp-action):not(.page-numbers){--ast-global-color-0:var(--hh-accent);--ast-global-color-1:var(--hh-accent-hover)}
.hhp-site .woocommerce :is(a,button).button{background:var(--hh-accent);color:var(--hh-white)}
.hhp-site .woocommerce :is(a,button).button:hover{background:var(--hh-accent-hover);color:var(--hh-white)}
.hhp-site .woocommerce ul.products li.product .woocommerce-loop-product__title{font-weight:700}
.hhp-site form.woocommerce-ordering select{max-width:100%}
@media(max-width:1060px){
    .hhp-desktop-nav{display:none}
    .hhp-mobile-nav{display:block}
    .hhp-site-header .hhp-nav-wrap{position:relative;flex-wrap:wrap;padding-block:.6rem}
    .hhp-mobile-nav summary{cursor:pointer;border:1px solid var(--hh-edge);border-radius:.4rem;padding:.6rem .9rem;background:var(--hh-white)}
    .hhp-mobile-nav[open]{width:100%}
    .hhp-mobile-nav[open] summary{width:max-content}
    .hhp-mobile-nav nav{display:grid;gap:.4rem;padding:1rem 0}
    .hhp-mobile-nav nav a{padding:.5rem 0}
    .hhp-mobile-nav nav .hhp-nav-quote{justify-self:start}
}
@media(max-width:460px){
    .hhp-nav-wrap{width:calc(100% - 32px)}
    .hhp-brand{max-width:calc(100% - 7rem)}
    .hhp-topbar{font-size:.74rem}
}
.hhp-catalog-native .hhp-quote-actions a.button,.hhp-catalog-native .woocommerce ul.products li.product a.button,.hhp-filters button.button{background:var(--hh-accent);color:var(--hh-white);border-radius:.4rem}
.hhp-catalog-native .hhp-quote-actions a.button:hover,.hhp-catalog-native .woocommerce ul.products li.product a.button:hover,.hhp-filters button.button:hover{background:var(--hh-accent-hover);color:var(--hh-white)}
.hhp-catalog-native .woocommerce-product-gallery__image img{width:100%;object-fit:contain;background:var(--hh-soft);border-radius:.55rem}
.hhp-catalog-native .woocommerce ul.products li.product .ast-on-card-button{display:none}
.hhp-catalog-native .product_title{font-size:clamp(1.8rem,3.7vw,3.1rem);font-weight:750;line-height:1.12;letter-spacing:-.035em}
.hhp-catalog-native .hhp-quote-actions a:not(.button){text-decoration:underline;text-underline-offset:.2em}
.hhp-catalog-native.woocommerce div.product div.images .woocommerce-product-gallery__image img{height:clamp(340px,39vw,525px)}
@media(max-width:560px){
  .hhp-catalog-native.woocommerce div.product div.images .woocommerce-product-gallery__image img{height:clamp(200px,72vw,340px)}
}
