/*
Theme Name: Henbury
Description: Award-quality theme for Henbury Premium Blanks
Version: 5.0
Author: Danelian Designs
*/

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;1,300;1,400&family=Inconsolata:wght@300;400&display=swap');

:root{
  --c-ivory:#f8f6f2;--c-warm:#f0ece5;--c-stone:#e2ddd6;--c-mid:#8c8880;--c-dark:#2a2825;--c-black:#111110;--c-white:#ffffff;
  --border:rgba(42,40,37,.1);--border-dk:rgba(248,246,242,.1);
  --f-sans:"Plus Jakarta Sans",system-ui,sans-serif;--f-mono:"Inconsolata",monospace;
  --ease-out:cubic-bezier(.16,1,.3,1);--ease-io:cubic-bezier(.76,0,.24,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{background:var(--c-ivory);color:var(--c-black);font-family:var(--f-sans);font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}

[data-reveal]{transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}[data-reveal].is-visible{opacity:1;transform:none}
[data-reveal=d1]{transition-delay:.12s}[data-reveal=d2]{transition-delay:.24s}[data-reveal=d3]{transition-delay:.38s}[data-reveal=d4]{transition-delay:.52s}
[data-fade]{transition:opacity 1.1s ease}[data-fade].is-visible{opacity:1}
[data-scale]{transition:opacity 1.1s var(--ease-out),transform 1.1s var(--ease-out)}[data-scale].is-visible{opacity:1;transform:scale(1)}
[data-slide=left]{transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}
[data-slide=right]{transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}
[data-slide].is-visible{opacity:1;transform:none}

.cursor{position:fixed;width:8px;height:8px;background:var(--c-black);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .3s var(--ease-out),height .3s var(--ease-out),background .3s}
.cursor-ring{position:fixed;width:36px;height:36px;border:1px solid rgba(17,17,16,.25);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%)}
body.is-hovering .cursor{width:48px;height:48px;background:rgba(17,17,16,.06)}

.site-nav{position:fixed;top:0;left:0;right:0;z-index:500;display:flex;align-items:center;justify-content:space-between;padding:1.5rem 3rem;transition:padding .5s var(--ease-out),background .5s,border-color .5s;border-bottom:1px solid transparent}
.site-nav.is-scrolled{padding:1rem 3rem;background:rgba(248,246,242,.96);backdrop-filter:blur(24px);border-color:var(--border)}
.admin-bar .site-nav{top:32px!important}
@media screen and (max-width:782px){.admin-bar .site-nav{top:46px!important}}
.nav-logo{display:flex;align-items:center}.nav-logo img{height:30px;width:auto;display:block;transition:filter .4s}
.nav-dark .nav-logo img{filter:invert(1) brightness(10)}
.nav-links{display:flex;align-items:center;gap:2.5rem;list-style:none}
.nav-links a{font-size:.78rem;font-weight:400;letter-spacing:.04em;color:var(--c-dark);position:relative;transition:color .25s}
.nav-links a::after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:1px;background:var(--c-dark);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease-io)}
.nav-links a:hover::after{transform:scaleX(1);transform-origin:left}
.nav-dark .nav-links a{color:rgba(248,246,242,.8)}.nav-dark .nav-links a::after{background:rgba(248,246,242,.8)}
.nav-cta{font-size:.72rem!important;font-weight:500!important;color:var(--c-white)!important;background:var(--c-black);padding:.6rem 1.5rem;transition:background .25s!important}
.nav-cta::after{display:none!important}.nav-cta:hover{background:var(--c-dark)}
.nav-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:4px;z-index:501}
.nav-burger span{display:block;width:22px;height:1.5px;background:var(--c-black);transition:all .35s var(--ease-io)}
.nav-burger.is-open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav-burger.is-open span:nth-child(2){opacity:0}.nav-burger.is-open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.nav-dark .nav-burger span{background:var(--c-white)}
.mob-overlay{position:fixed;inset:0;background:rgba(17,17,16,.4);z-index:498;opacity:0;pointer-events:none;transition:opacity .4s}.mob-overlay.is-open{opacity:1;pointer-events:all}
.mob-drawer{position:fixed;top:0;right:-100%;width:min(360px,90vw);height:100dvh;background:var(--c-ivory);z-index:499;display:flex;flex-direction:column;border-left:1px solid var(--border);transition:right .45s var(--ease-out)}.mob-drawer.is-open{right:0}
.mob-head{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}
.mob-head img{height:24px;width:auto;display:block}.mob-x{background:none;border:none;font-size:1.25rem;font-weight:300;color:var(--c-dark);line-height:1;padding:0}
.mob-nav{flex:1;display:flex;flex-direction:column;padding:2rem 1.5rem}
.mob-nav a{font-size:1.15rem;font-weight:300;color:var(--c-black);padding:1rem 0;border-bottom:1px solid var(--border);letter-spacing:.01em;transition:color .2s}.mob-nav a:last-child{border:none}
.mob-footer{padding:1.5rem;border-top:1px solid var(--border)}
.u-label{font-family:var(--f-mono);font-size:.62rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--c-mid)}
.u-label-dk{color:rgba(248,246,242,.35)}
.btn{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:.9rem 2rem;transition:all .3s var(--ease-out)}
.btn-fill{background:var(--c-black);color:var(--c-ivory)}.btn-fill:hover{background:var(--c-dark);color:var(--c-ivory);transform:translateY(-2px)}
.btn-outline{border:1px solid var(--border);color:var(--c-dark)}.btn-outline:hover{border-color:var(--c-black);color:var(--c-black)}
.btn-ghost{color:var(--c-mid);font-size:.7rem;letter-spacing:.12em;padding:.5rem 0;border:none;background:none;position:relative;text-transform:uppercase;font-weight:400}
.btn-ghost::after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:currentColor}.btn-ghost:hover{color:var(--c-black)}
.hero-v2{display:grid;grid-template-columns:1fr 1fr;min-height:100svh;border-bottom:1px solid var(--border);position:relative;overflow:hidden}.hero-v2-img{position:relative;overflow:hidden;background:var(--c-stone);min-height:100svh}.hero-v2-img img.hero-v2-photo{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 15%;transition:transform 1.4s var(--ease-out);display:block}.hero-v2:hover .hero-v2-img img.hero-v2-photo{transform:scale(1.03)}.hero-v2-img-caption{position:absolute;bottom:2rem;left:2rem;display:flex;flex-direction:column;gap:.3rem;z-index:2}.hero-v2-caption-sku{font-family:var(--f-mono);font-size:.52rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.55)}.hero-v2-caption-name{font-family:var(--f-mono);font-size:.52rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.35)}.hero-v2-panel{background:var(--c-ivory);border-left:1px solid var(--border);display:flex;align-items:stretch}.hero-v2-panel-inner{display:flex;flex-direction:column;justify-content:space-between;padding:7rem 3.5rem 3rem;width:100%;gap:3rem}.hero-v2-top{display:flex;flex-direction:column;gap:.75rem}.hero-v2-logo{height:28px;width:auto;max-width:160px;display:block;object-fit:contain}.hero-v2-est{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--c-mid)}.hero-v2-mid{flex:1;display:flex;flex-direction:column;justify-content:center}.hero-v2-h1{font-size:clamp(2.8rem,5vw,5.5rem);font-weight:600;line-height:.95;letter-spacing:-.03em;color:var(--c-black);margin-bottom:1.75rem}.hero-v2-h1 em{font-style:italic;font-weight:300;color:var(--c-mid)}.hero-v2-sub{font-size:.95rem;font-weight:300;color:var(--c-mid);line-height:1.8;max-width:360px;margin-bottom:2.5rem}.hero-v2-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-v2-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border)}.hero-v2-stat{background:var(--c-warm);padding:1.25rem 1rem;text-align:center}.hero-v2-stat-n{display:block;font-size:1.5rem;font-weight:600;letter-spacing:-.03em;color:var(--c-black);line-height:1;margin-bottom:.25rem}.hero-v2-stat-l{font-family:var(--f-mono);font-size:.5rem;letter-spacing:.12em;text-transform:uppercase;color:var(--c-mid);opacity:.7}.hero-v2-scroll{position:absolute;bottom:2rem;left:2rem;display:flex;align-items:center;gap:.75rem;z-index:3}.hero-v2-scroll-line{width:40px;height:1px;background:rgba(255,255,255,.3);position:relative;overflow:hidden}.hero-v2-scroll-line::after{content:"";position:absolute;inset:0;background:var(--c-white);animation:scrollrun 2.4s var(--ease-io) infinite}@keyframes scrollrun{0%{transform:translateX(-100%)}50%{transform:translateX(0)}100%{transform:translateX(100%)}}.hero-v2-scroll span{font-family:var(--f-mono);font-size:.52rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5)}.btn{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:.9rem 2rem;transition:all .3s var(--ease-out)}.btn-fill{background:var(--c-black);color:var(--c-ivory)}.btn-fill:hover{background:var(--c-dark);color:var(--c-ivory);transform:translateY(-2px)}.btn-outline{border:1px solid var(--border);color:var(--c-dark)}.btn-outline:hover{border-color:var(--c-black);color:var(--c-black)}.btn-ghost{color:var(--c-mid);font-size:.7rem;letter-spacing:.12em;padding:.5rem 0;border:none;background:none;position:relative;text-transform:uppercase;font-weight:400}.btn-ghost::after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:currentColor}.btn-ghost:hover{color:var(--c-black)}.u-label{font-family:var(--f-mono);font-size:.62rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--c-mid)}.u-label-dk{color:rgba(248,246,242,.35)}.marquee{border-bottom:1px solid var(--border);overflow:hidden;position:relative;padding:.85rem 0;background:var(--c-ivory)}.marquee::before,.marquee::after{content:"";position:absolute;top:0;bottom:0;width:6rem;z-index:2;pointer-events:none}.marquee::before{left:0;background:linear-gradient(to right,var(--c-ivory),transparent)}.marquee::after{right:0;background:linear-gradient(to left,var(--c-ivory),transparent)}.marquee-track{display:inline-flex;white-space:nowrap;animation:mqscroll 45s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-track span{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--c-mid);padding:0 2.5rem}.marquee-track .sep{color:var(--c-black);padding:0 .4rem}@keyframes mqscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.sec{padding:7rem 3.5rem;border-bottom:1px solid var(--border);position:relative}.sec-inner{max-width:1400px;margin:0 auto}.sec-dark{background:var(--c-black);color:var(--c-ivory);border-color:rgba(248,246,242,.06)}.sec-warm{background:var(--c-warm)}.sec-title{font-size:clamp(2.2rem,4vw,4.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.0;color:var(--c-black)}.sec-title em{font-style:italic;font-weight:300}.sec-dark .sec-title{color:rgba(248,246,242,.9)}.sec-row-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:3rem;flex-wrap:wrap;gap:1.5rem}.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border);margin-top:4rem}.cat-card{background:var(--c-ivory);padding:3rem 2.5rem 4rem;display:block;position:relative;overflow:hidden;transition:background .35s var(--ease-out)}.cat-card:hover{background:var(--c-white)}.cat-top{position:absolute;top:0;left:0;right:0;height:2px;background:var(--c-black);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease-io)}.cat-card:hover .cat-top{transform:scaleX(1)}.cat-idx{font-family:var(--f-mono);font-size:.55rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c-mid);margin-bottom:2rem;opacity:.5}.cat-name{font-size:1.6rem;font-weight:600;letter-spacing:-.02em;color:var(--c-black);margin-bottom:.5rem}.cat-desc{font-size:.82rem;font-weight:300;color:var(--c-mid);margin-bottom:.5rem}.cat-count{font-family:var(--f-mono);font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:var(--c-mid);opacity:.6}.cat-arrow{position:absolute;bottom:2.5rem;right:2.5rem;width:36px;height:36px;border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--c-mid);transition:all .3s var(--ease-out)}.cat-card:hover .cat-arrow{background:var(--c-black);border-color:var(--c-black);color:var(--c-ivory);transform:rotate(-45deg)}
.editorial-split{display:grid;grid-template-columns:1fr 1fr;min-height:70vh;border-bottom:1px solid var(--border)}.ed-img{overflow:hidden;background:var(--c-warm);position:relative;min-height:70vh}.ed-img img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center top;transition:transform 1.1s var(--ease-out);display:block}.editorial-split:hover .ed-img img{transform:scale(1.04)}.ed-content{display:flex;flex-direction:column;justify-content:center;padding:5rem 4rem;border-left:1px solid var(--border);background:var(--c-ivory)}.ed-body{font-size:.95rem;font-weight:300;color:var(--c-mid);line-height:1.85;max-width:380px;margin-top:1.25rem;margin-bottom:2rem}.ed-swatches{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2.5rem}.fp-swatch{width:20px;height:20px;border-radius:50%;border:2px solid var(--c-ivory);box-shadow:0 0 0 1px var(--border);cursor:pointer;transition:transform .25s,box-shadow .25s}.fp-swatch:hover{transform:scale(1.2);box-shadow:0 0 0 1.5px var(--c-black)}.colours-layout{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.colours-chips{display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem 1rem}.col-chip{display:flex;flex-direction:column;align-items:center;gap:.6rem;cursor:default}.col-chip-dot{width:100%;aspect-ratio:1;border-radius:50%;box-shadow:0 2px 10px rgba(0,0,0,.1);transition:transform .3s var(--ease-out),box-shadow .3s}.col-chip:hover .col-chip-dot{transform:scale(1.12) translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.15)}.col-chip-name{font-family:var(--f-mono);font-size:.48rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-mid);text-align:center;opacity:.75}.story-section{padding:7rem 0;background:var(--c-ivory);border-bottom:1px solid var(--border);overflow:hidden}.story-header{padding:0 3.5rem;margin-bottom:5rem}.story-timeline{display:flex;padding:0 3.5rem 2rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;cursor:grab}.story-timeline::-webkit-scrollbar{display:none}.story-timeline:active{cursor:grabbing}.story-item{flex:0 0 420px;padding:0 3rem 0 0;scroll-snap-align:start;position:relative;padding-top:.5rem}.story-item::before{content:"";position:absolute;top:0;left:0;width:1px;height:100%;background:var(--border)}.story-dot{position:absolute;top:-4px;left:-4.5px;width:9px;height:9px;border-radius:50%;background:var(--c-black);border:2px solid var(--c-ivory);box-shadow:0 0 0 1px var(--c-black)}.story-year{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--c-mid);margin-bottom:1.25rem;padding-left:1.5rem;opacity:.7}.story-h{font-size:1.35rem;font-weight:600;letter-spacing:-.02em;line-height:1.15;color:var(--c-black);margin-bottom:.75rem;padding-left:1.5rem}.story-p{font-size:.88rem;font-weight:300;color:var(--c-mid);line-height:1.8;padding-left:1.5rem}.story-progress{height:1px;background:var(--border);margin:2.5rem 3.5rem 0;position:relative;overflow:hidden}.story-bar{position:absolute;left:0;top:0;bottom:0;background:var(--c-black);width:0%;transition:width .3s ease}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:1px!important;background:var(--border)!important;border:1px solid var(--border)!important;list-style:none!important;padding:0!important;margin:0!important}.woocommerce ul.products li.product{background:var(--c-ivory)!important;padding:0!important;margin:0!important;float:none!important;width:auto!important;position:relative!important;overflow:hidden!important;transition:background .3s!important}.woocommerce ul.products li.product:hover{background:var(--c-white)!important}.woocommerce ul.products li.product .button,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .star-rating,.woocommerce-loop-product__title,.woocommerce-breadcrumb,.woocommerce-notices-wrapper,.woocommerce-store-notice{display:none!important}.prod-thumb{aspect-ratio:3/4;background:var(--c-warm);overflow:hidden;position:relative}.prod-thumb img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform .8s var(--ease-out);display:block}.product:hover .prod-thumb img{transform:scale(1.05)}.prod-empty{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;background:var(--c-warm)}.prod-sku-big{font-size:1.8rem;font-weight:600;letter-spacing:-.02em;color:var(--c-stone)}.prod-swatches{position:absolute;bottom:.75rem;right:.75rem;display:flex;gap:.28rem;flex-wrap:wrap;justify-content:flex-end;max-width:80px;z-index:5}.prod-dot{width:13px;height:13px;border-radius:50%;border:1.5px solid rgba(248,246,242,.9);box-shadow:0 1px 4px rgba(0,0,0,.28);cursor:pointer;transition:transform .2s}.prod-dot:hover{transform:scale(1.25)}.prod-info{padding:1rem 1.25rem 1.5rem;border-top:1px solid var(--border)}.prod-info-sku{font-family:var(--f-mono);font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-mid);opacity:.65;margin-bottom:.3rem}.prod-info-name{font-size:.9rem;font-weight:500;letter-spacing:-.01em;color:var(--c-black);line-height:1.3;margin-bottom:.25rem}.prod-info-cat{font-family:var(--f-mono);font-size:.52rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-mid);opacity:.55}.woocommerce nav.woocommerce-pagination ul{display:flex!important;gap:.4rem!important;justify-content:center!important;list-style:none!important;padding:3rem 0!important;border:none!important}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{font-family:var(--f-mono)!important;font-size:.65rem!important;letter-spacing:.1em!important;padding:.55rem 1rem!important;border:1px solid var(--border)!important;color:var(--c-mid)!important;background:transparent!important;transition:all .25s!important;display:flex!important;align-items:center!important}.woocommerce nav.woocommerce-pagination ul li a:hover,.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--c-black)!important;border-color:var(--c-black)!important;color:var(--c-ivory)!important}.img-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.img-strip-item{overflow:hidden;aspect-ratio:3/4;background:var(--c-warm);position:relative}.img-strip-item img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 15%;transition:transform .9s var(--ease-out);display:block}.img-strip-item:hover img{transform:scale(1.05)}.values-section{padding:6rem 3.5rem;background:var(--c-black);border-bottom:1px solid rgba(248,246,242,.06)}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(248,246,242,.06);border:1px solid rgba(248,246,242,.06)}.value-card{background:rgba(0,0,0,.3);padding:2.5rem 2rem;transition:background .3s}.value-card:hover{background:rgba(248,246,242,.04)}.value-num{font-family:var(--f-mono);font-size:.55rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(248,246,242,.2);margin-bottom:1.75rem}.value-title{font-size:1.15rem;font-weight:600;letter-spacing:-.02em;color:rgba(248,246,242,.85);margin-bottom:.75rem}.value-body{font-size:.82rem;font-weight:300;color:rgba(248,246,242,.38);line-height:1.8}
.shop-header{padding:8rem 3.5rem 3rem;border-bottom:1px solid var(--border);background:var(--c-ivory)}.shop-header-inner{max-width:1400px;margin:0 auto;display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap}.shop-title{font-size:clamp(3rem,7vw,7rem);font-weight:600;letter-spacing:-.04em;line-height:.92}.shop-title em{font-style:italic;font-weight:300}.shop-meta{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--c-mid);padding-bottom:.5rem}.filter-bar{position:sticky;top:62px;z-index:100;background:rgba(248,246,242,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:.9rem 3.5rem}.filter-bar-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;overflow-x:auto;scrollbar-width:none}.filter-pill{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;padding:.4rem 1.1rem;border:1px solid var(--border);color:var(--c-mid);background:transparent;white-space:nowrap;transition:all .25s;display:inline-block;text-decoration:none}.filter-pill:hover,.filter-pill.active{background:var(--c-black);border-color:var(--c-black);color:var(--c-ivory)}.single-wrap{max-width:1400px;margin:0 auto;padding:7rem 3.5rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start}.single-gallery{position:sticky;top:6rem}.single-main-img{background:var(--c-warm);aspect-ratio:3/4;overflow:hidden;position:relative}.single-main-img img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform 1.2s var(--ease-out);display:block}.single-main-img:hover img{transform:scale(1.04)}.single-ph{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;background:var(--c-warm)}.single-ph span{font-size:5rem;font-weight:700;letter-spacing:-.03em;color:var(--c-stone)}.single-details{padding-top:.5rem}.single-sku{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--c-mid);margin-bottom:1.25rem}.single-name{font-size:clamp(1.8rem,2.5vw,3rem);font-weight:600;letter-spacing:-.03em;line-height:1.0;color:var(--c-black);margin-bottom:1.5rem}.single-desc{font-size:.9rem;font-weight:300;color:var(--c-mid);line-height:1.9;margin-bottom:2rem}.single-desc p{margin-bottom:.65rem}.single-hr{height:1px;background:var(--border);margin:2rem 0;border:none}.meta-row{display:flex;gap:1.5rem;margin-bottom:.9rem;align-items:flex-start}.meta-key{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-mid);min-width:120px;flex-shrink:0;padding-top:.15rem;opacity:.65}.meta-val{font-size:.88rem;font-weight:300;color:var(--c-dark);line-height:1.6}.colour-label{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-mid);margin-bottom:.85rem}.single-swatches{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:2.5rem}.s-swatch{width:22px;height:22px;border-radius:50%;border:2px solid var(--c-ivory);box-shadow:0 0 0 1px var(--border);cursor:pointer;transition:transform .25s,box-shadow .25s}.s-swatch:hover,.s-swatch.active{transform:scale(1.15);box-shadow:0 0 0 2px var(--c-black)}.single-enquire{display:inline-flex;align-items:center;gap:.6rem;background:var(--c-black);color:var(--c-ivory);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:1rem 2.5rem;transition:background .3s,transform .3s}.single-enquire:hover{background:var(--c-dark);transform:translateY(-2px);color:var(--c-ivory)}.trade-note{font-family:var(--f-mono);font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-mid);margin-top:1.25rem;opacity:.55}.page-hero{padding:9rem 3.5rem 5rem;border-bottom:1px solid var(--border)}.page-hero-inner{max-width:1400px;margin:0 auto}.page-title{font-size:clamp(3.5rem,8vw,8rem);font-weight:600;letter-spacing:-.04em;line-height:.92;margin-bottom:2rem}.page-title em{font-style:italic;font-weight:300}.page-sub{font-size:.95rem;font-weight:300;color:var(--c-mid);line-height:1.85;max-width:540px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start}.body-text p{font-size:.95rem;font-weight:300;color:var(--c-mid);line-height:1.85;margin-bottom:1.5rem}.stat-boxes{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);margin-top:3rem}.stat-box{background:var(--c-ivory);padding:2.5rem 2rem}.stat-n{font-size:3rem;font-weight:600;letter-spacing:-.04em;line-height:1;margin-bottom:.35rem}.stat-l{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-mid)}.contact-email-link{font-size:clamp(1.2rem,2.5vw,2.2rem);font-weight:300;font-style:italic;color:var(--c-black);display:block;margin:2.5rem 0;transition:opacity .25s}.contact-email-link:hover{opacity:.45}.contact-meta-block{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--c-mid);line-height:2.4;border-top:1px solid var(--border);padding-top:1.75rem;margin-top:1.75rem;opacity:.65}.hform{display:flex;flex-direction:column;gap:1rem}.hform-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.hform-field{display:flex;flex-direction:column;gap:.45rem}.hform-field label{font-family:var(--f-mono);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;color:var(--c-mid);opacity:.8}.hform-field input,.hform-field select,.hform-field textarea{background:var(--c-white);border:1px solid var(--border);padding:.9rem 1rem;font-family:var(--f-sans);font-size:.9rem;font-weight:300;color:var(--c-black);outline:none;resize:vertical;border-radius:0;-webkit-appearance:none;transition:border-color .25s}.hform-field input:focus,.hform-field select:focus,.hform-field textarea:focus{border-color:var(--c-black)}.hform-field input::placeholder,.hform-field textarea::placeholder{color:var(--c-mid);opacity:.5}.hform-submit{background:var(--c-black);color:var(--c-ivory);font-family:var(--f-sans);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:1.1rem 2.5rem;border:none;cursor:pointer;align-self:flex-start;transition:background .3s,transform .3s}.hform-submit:hover{background:var(--c-dark);transform:translateY(-2px)}
.site-footer{background:var(--c-black);color:rgba(248,246,242,.5);border-top:1px solid rgba(248,246,242,.06)}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:3rem;padding:4rem 3.5rem;border-bottom:1px solid rgba(248,246,242,.06);max-width:1400px;margin:0 auto}.footer-brand img{height:26px;width:auto;display:block;filter:invert(1) brightness(10);opacity:.65;margin-bottom:1.25rem}.footer-brand p{font-size:.82rem;font-weight:300;line-height:1.75;max-width:240px;color:rgba(248,246,242,.4)}.footer-col-title{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(248,246,242,.25);margin-bottom:1.25rem}.footer-links-list{display:flex;flex-direction:column;gap:.6rem;list-style:none}.footer-links-list a{font-size:.82rem;font-weight:300;color:rgba(248,246,242,.38);transition:color .2s}.footer-links-list a:hover{color:rgba(248,246,242,.85)}.footer-bottom{max-width:1400px;margin:0 auto;padding:1.25rem 3.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.footer-copy{font-family:var(--f-mono);font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(248,246,242,.15)}#h-chat-widget{position:fixed;bottom:1.75rem;right:1.75rem;z-index:9990;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem}.h-chat-tab{display:flex;align-items:center;gap:.65rem;background:var(--c-white);border:1px solid var(--border);border-radius:50px;padding:.7rem 1.1rem .7rem .7rem;box-shadow:0 4px 20px rgba(0,0,0,.1),0 1px 4px rgba(0,0,0,.06);cursor:pointer;transition:all .35s var(--ease-out);font-family:var(--f-sans)}.h-chat-tab:hover{box-shadow:0 8px 32px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.08);transform:translateY(-2px)}.h-chat-tab.is-open{opacity:0;pointer-events:none;transform:translateY(8px)}.h-chat-h{width:34px;height:34px;background:var(--c-black);color:var(--c-ivory);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:600;flex-shrink:0}.h-chat-label{font-size:.72rem;font-weight:500;letter-spacing:.04em;color:var(--c-dark);white-space:nowrap}.h-chat-panel{width:360px;background:var(--c-white);border:1px solid var(--border);border-radius:16px;box-shadow:0 12px 48px rgba(0,0,0,.12),0 4px 16px rgba(0,0,0,.06);display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(16px) scale(.97);pointer-events:none;transition:opacity .4s var(--ease-out),transform .4s var(--ease-out);max-height:520px}.h-chat-panel.is-open{opacity:1;transform:none;pointer-events:all}.h-chat-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--c-ivory);flex-shrink:0}.h-chat-header-l{display:flex;align-items:center;gap:.75rem}.h-chat-avatar{width:36px;height:36px;background:var(--c-black);color:var(--c-ivory);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:600;flex-shrink:0}.h-chat-name{font-size:.82rem;font-weight:500;color:var(--c-black);letter-spacing:.01em}.h-chat-status{display:flex;align-items:center;gap:.35rem;font-family:var(--f-mono);font-size:.52rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-mid)}.h-chat-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:pulse-dot 2s ease infinite}@keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.4}}.h-chat-close{background:none;border:none;font-size:1.15rem;color:var(--c-mid);cursor:pointer;padding:0;line-height:1;transition:color .2s}.h-chat-close:hover{color:var(--c-black)}.h-chat-body{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:.85rem;scroll-behavior:smooth;min-height:200px}.h-chat-msg{max-width:85%;padding:.75rem 1rem;border-radius:12px;font-size:.82rem;font-weight:300;line-height:1.65}.h-chat-msg p{margin-bottom:.25rem}.h-chat-msg p:last-child{margin-bottom:0}.h-chat-msg-ai{background:var(--c-ivory);border:1px solid var(--border);color:var(--c-dark);align-self:flex-start;border-radius:4px 12px 12px 12px}.h-chat-msg-user{background:var(--c-black);color:rgba(248,246,242,.9);align-self:flex-end;border-radius:12px 4px 12px 12px}.h-chat-typing{display:flex;gap:4px;align-items:center;padding:.75rem 1rem;background:var(--c-ivory);border:1px solid var(--border);border-radius:4px 12px 12px 12px;align-self:flex-start;width:52px}.h-chat-typing span{width:5px;height:5px;border-radius:50%;background:var(--c-mid);animation:typing-dot .9s ease infinite}.h-chat-typing span:nth-child(2){animation-delay:.15s}.h-chat-typing span:nth-child(3){animation-delay:.3s}@keyframes typing-dot{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.h-chat-suggestions{display:flex;flex-wrap:wrap;gap:.4rem;padding:.25rem 0}.h-chat-sug{font-family:var(--f-mono);font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;padding:.4rem .85rem;border:1px solid var(--border);color:var(--c-mid);background:transparent;border-radius:50px;cursor:pointer;transition:all .2s;white-space:nowrap}.h-chat-sug:hover{background:var(--c-black);border-color:var(--c-black);color:var(--c-ivory)}.h-chat-footer{display:flex;align-items:center;gap:.5rem;padding:.85rem 1.25rem;border-top:1px solid var(--border);background:var(--c-white);flex-shrink:0}.h-chat-input{flex:1;border:none;outline:none;font-family:var(--f-sans);font-size:.82rem;font-weight:300;color:var(--c-black);background:transparent;padding:.25rem 0}.h-chat-input::placeholder{color:var(--c-mid);opacity:.6}.h-chat-send{width:32px;height:32px;background:var(--c-black);color:var(--c-ivory);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .25s,transform .25s;flex-shrink:0}.h-chat-send:hover{background:var(--c-dark);transform:scale(1.08)}@media(max-width:480px){#h-chat-widget{bottom:1rem;right:1rem}.h-chat-panel{width:calc(100vw - 2rem)}}@media(max-width:1200px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr)!important}}@media(max-width:960px){.site-nav,.site-nav.is-scrolled{padding:1rem 1.5rem}.nav-links{display:none}.nav-burger{display:flex}.hero-v2{grid-template-columns:1fr;min-height:auto}.hero-v2-img{min-height:70vw}.hero-v2-panel-inner{padding:4rem 1.5rem 2rem}.hero-v2-stats{grid-template-columns:repeat(4,1fr)}.editorial-split{grid-template-columns:1fr;min-height:auto}.ed-img{min-height:60vw}.ed-content{padding:3rem 1.5rem;border-left:none;border-top:1px solid var(--border)}.colours-layout{grid-template-columns:1fr;gap:3rem}.img-strip{grid-template-columns:1fr 1fr}.img-strip-item:last-child{display:none}.values-section{padding:4rem 1.5rem}.values-grid{grid-template-columns:1fr 1fr}.sec{padding:4.5rem 1.5rem}.story-section{padding:4.5rem 0}.story-header{padding:0 1.5rem;margin-bottom:3rem}.story-timeline{padding:0 1.5rem 2rem}.story-item{flex:0 0 300px}.story-progress{margin:2.5rem 1.5rem 0}.cat-grid{grid-template-columns:1fr}.two-col{grid-template-columns:1fr;gap:3rem}.single-wrap{grid-template-columns:1fr;gap:3rem;padding:5rem 1.5rem}.single-gallery{position:static}.page-hero{padding:7rem 1.5rem 3rem}.shop-header{padding:6rem 1.5rem 2rem}.filter-bar{padding:.85rem 1.5rem;top:58px}.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}.footer-top{grid-template-columns:1fr;gap:2rem;padding:3rem 1.5rem}.footer-bottom{padding:1.25rem 1.5rem}.hform-row{grid-template-columns:1fr}.sec-row-head{flex-direction:column;align-items:flex-start}}@media(max-width:480px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}.hero-v2-stats{grid-template-columns:repeat(2,1fr)}.values-grid{grid-template-columns:1fr}}


/* Animation system - content visible by default, JS enhances with animation */
/* JS adds .js-ready to body, THEN hides elements for animation */
html.js-ready [data-reveal]{ opacity:0; transform:translateY(28px); }
html.js-ready [data-reveal].is-visible{ opacity:1; transform:none; }
html.js-ready [data-fade]{ opacity:0; }
html.js-ready [data-fade].is-visible{ opacity:1; }
html.js-ready [data-scale]{ opacity:0; transform:scale(1.04); }
html.js-ready [data-scale].is-visible{ opacity:1; transform:scale(1); }
html.js-ready [data-slide=left]{ opacity:0; transform:translateX(-40px); }
html.js-ready [data-slide=right]{ opacity:0; transform:translateX(40px); }
html.js-ready [data-slide].is-visible{ opacity:1; transform:none; }