:root{--maroon:lab(23.3552% 37.0462 15.6865);--maroon-deep:lab(11.0301% 24.1581 9.5797);--gold:lab(64.1723% 9.44385 50.5523);--cream:lab(95.9808% 1.29697 6.77642);--cream-deep:lab(90.1709% 2.54068 9.67634);--ink:lab(9.41194% 4.55978 4.83504);--muted:lab(44.1816% 6.11213 6.93051);--line:lab(74.5129% 3.57991 13.1537);--space-xs:.25rem;--space-sm:.5rem;--space-md:.75rem;--space-lg:1rem;--space-xl:1.5rem;--space-2xl:2rem;--space-3xl:3rem;--space-4xl:4rem;--space-5xl:6rem;--display:"Iowan Old Style", "Baskerville", "Times New Roman", serif;--body:"Avenir Next", "Avenir", "Century Gothic", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--body);margin:0;font-size:1rem;line-height:1.65}a{color:inherit;text-decoration:none}img{object-fit:cover}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--maroon);outline-offset:4px}.announcement{background:var(--maroon);color:var(--cream);text-align:center;letter-spacing:.14em;text-transform:uppercase;padding:.45rem 1rem;font-size:.68rem}.site-header{min-height:88px;padding:var(--space-lg) clamp(1rem, 4vw, 4rem);border-bottom:1px solid var(--line);z-index:10;background:color-mix(in oklch, var(--cream) 95%, transparent);grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:relative}.brand{align-items:center;gap:var(--space-md);width:max-content;display:flex}.brand-mark{aspect-ratio:1;border:1px solid var(--gold);width:38px;color:var(--maroon);font-family:var(--display);place-items:center;font-size:.8rem;display:grid}.brand b{font-family:var(--display);font-size:1.35rem;font-weight:500;line-height:1;display:block}.brand small{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-top:.35rem;font-size:.58rem;display:block}nav{letter-spacing:.04em;gap:clamp(1.25rem,3vw,3rem);font-size:.78rem;display:flex}nav a,.footer-links a{position:relative}nav a:after,.footer-links a:after{content:"";background:var(--gold);height:1px;transition:right .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-.3rem;left:0;right:100%}nav a:hover:after,.footer-links a:hover:after{right:0}.header-enquire{border-bottom:1px solid var(--maroon);letter-spacing:.08em;text-transform:uppercase;justify-self:end;padding-bottom:.2rem;font-size:.75rem}h1,h2,h3{font-family:var(--display);letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:400;line-height:.98}h1{font-size:clamp(3rem,7vw,7.2rem)}h2{font-size:clamp(2.25rem,4.3vw,4.6rem)}h3{font-size:clamp(1.4rem,2vw,2rem)}p{margin:0}.eyebrow{color:var(--maroon);letter-spacing:.16em;text-transform:uppercase;font-size:.67rem;font-weight:600}.button-row{align-items:center;gap:var(--space-xl);flex-wrap:wrap;display:flex}.button{letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;min-height:48px;padding:.78rem 1.4rem;font-size:.72rem;font-weight:600;transition:transform .25s cubic-bezier(.22,1,.36,1),background .25s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--maroon);color:var(--cream)}.button.primary:hover{background:var(--maroon-deep)}.button.cream{background:var(--cream);color:var(--maroon)}.button.full{width:100%}.text-link{letter-spacing:.05em;border-bottom:1px solid var(--line);padding-bottom:.2rem;font-size:.77rem;font-weight:600}.section{padding:clamp(4rem,9vw,8rem) clamp(1rem,5vw,5rem)}.hero{border-bottom:1px solid var(--line);grid-template-columns:.9fr 1.1fr;min-height:min(760px,100svh - 116px);display:grid;position:relative}.hero-copy{justify-content:center;align-items:flex-start;gap:var(--space-xl);flex-direction:column;padding:clamp(3rem,7vw,7rem) clamp(1rem,5vw,5rem);display:flex}.hero-copy h1{color:var(--maroon-deep);max-width:8ch}.hero-copy>p:not(.eyebrow){max-width:52ch;color:var(--muted)}.hero-image{min-height:580px;position:relative;overflow:hidden}.hero-image img{filter:saturate(.88)contrast(1.03);transition:transform 1.2s cubic-bezier(.22,1,.36,1);transform:scale(1.13)}.hero:hover .hero-image img{transform:scale(1.155)}.hero-index{background:var(--cream);letter-spacing:.15em;text-transform:uppercase;padding:.45rem .8rem;font-size:.62rem;position:absolute;bottom:1.5rem;right:2rem}.trust-bar{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.trust-bar span{text-align:center;color:var(--maroon);font-family:var(--display);border-right:1px solid var(--line);padding:1.2rem;font-size:1rem}.trust-bar span:last-child{border:0}.intro{grid-template-columns:.6fr 1.35fr 1fr;align-items:start;gap:clamp(2rem,5vw,6rem);display:grid}.intro h2{color:var(--maroon-deep)}.intro>p:last-child{color:var(--muted);max-width:55ch;padding-top:.5rem}.section-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-2xl);margin-bottom:var(--space-3xl);display:flex}.section-heading .eyebrow{margin-bottom:var(--space-md)}.category-grid{gap:var(--space-lg);grid-template-rows:460px 460px;grid-template-columns:1.15fr .85fr;display:grid}.category-card{color:var(--cream);position:relative;overflow:hidden}.category-card:after{content:"";background:linear-gradient(#0000 35%,lab(5.08543% 7.09355 4.31298/.8));position:absolute;inset:0}.category-card img{transition:transform .8s cubic-bezier(.22,1,.36,1)}.category-card:hover img{transform:scale(1.035)}.category-card>div{z-index:1;position:absolute;bottom:clamp(1.25rem,3vw,2.5rem);left:clamp(1.25rem,3vw,2.5rem);right:clamp(1.25rem,3vw,2.5rem)}.category-card span{letter-spacing:.14em;margin-bottom:.5rem;font-size:.65rem;display:block}.category-card h3{font-size:clamp(2rem,3.5vw,3.8rem)}.category-card p{max-width:45ch;color:color-mix(in oklch, var(--cream) 85%, transparent);margin-top:.65rem;font-size:.82rem}.category-2,.category-3{margin:2.5rem 0}.products-section{background:color-mix(in oklch, var(--cream) 70%, var(--cream-deep))}.section-note{max-width:38ch;color:var(--muted);font-size:.82rem}.product-grid{gap:clamp(1rem,2.2vw,2rem);row-gap:var(--space-4xl);grid-template-columns:repeat(3,1fr);display:grid}.product-card{min-width:0}.product-image{aspect-ratio:4/5;background:var(--cream-deep);display:block;position:relative;overflow:hidden}.product-image img{transition:transform .65s cubic-bezier(.22,1,.36,1)}.product-image span{background:var(--cream);color:var(--maroon);letter-spacing:.1em;text-transform:uppercase;padding:.6rem .8rem;font-size:.63rem;transition:transform .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;right:0;transform:translateY(100%)}.product-image:hover img{transform:scale(1.025)}.product-image:hover span{transform:translateY(0)}.product-copy{padding-top:var(--space-lg)}.product-copy h3{margin:.35rem 0 .5rem;font-size:clamp(1.35rem,2vw,1.85rem)}.pending-price{color:var(--muted);font-size:.75rem;font-style:italic}.amazon-link,.amazon-pending{letter-spacing:.07em;text-transform:uppercase;margin-top:.55rem;font-size:.68rem;font-weight:600;display:inline-block}.amazon-link{color:var(--maroon);border-bottom:1px solid var(--gold)}.amazon-pending{color:var(--muted)}.visit-strip{background:var(--maroon);color:var(--cream);justify-content:space-between;align-items:flex-end;gap:var(--space-3xl);padding:clamp(3rem,7vw,6rem) clamp(1rem,5vw,5rem);display:flex}.visit-strip .eyebrow{color:var(--gold)}.visit-strip h2{margin:.75rem 0 1.25rem}.visit-strip p:last-child{color:color-mix(in oklch, var(--cream) 78%, transparent)}.page-shell{max-width:1440px;margin:auto;padding:clamp(3rem,8vw,7rem) clamp(1rem,5vw,5rem)}.page-intro{grid-template-columns:.5fr 1.5fr .75fr;align-items:start;gap:clamp(1.5rem,4vw,5rem);margin-bottom:clamp(4rem,8vw,7rem);display:grid}.page-intro h1{color:var(--maroon-deep);font-size:clamp(3rem,6vw,6.5rem)}.page-intro>p:last-child{color:var(--muted)}.page-intro.compact{margin-bottom:var(--space-3xl);grid-template-columns:.4fr 1.5fr .75fr}.collection-list{border-top:1px solid var(--line)}.collection-row{align-items:center;gap:var(--space-xl);border-bottom:1px solid var(--line);min-height:190px;padding:var(--space-xl) 0;grid-template-columns:70px 1fr 180px 30px;display:grid}.collection-row>span{letter-spacing:.15em;color:var(--gold);font-size:.68rem}.collection-row h2{font-size:clamp(2rem,3.6vw,4rem);transition:color .25s}.collection-row p{color:var(--muted);margin-top:.65rem;font-size:.82rem}.collection-thumb{height:140px;position:relative;overflow:hidden}.collection-row:hover h2{color:var(--maroon)}.filter-note{justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:var(--space-3xl);color:var(--muted);font-size:.72rem;display:flex}.filter-note b{color:var(--maroon);font-weight:500}.product-page{grid-template-columns:1.15fr .85fr;min-height:800px;display:grid}.gallery{background:var(--cream-deep);grid-template-columns:2fr 1fr;gap:2px;display:grid}.gallery-main,.gallery-secondary{min-height:780px;position:relative;overflow:hidden}.gallery-main img,.gallery-secondary img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.gallery-secondary{align-self:end;min-height:500px}.product-details{align-items:flex-start;gap:var(--space-xl);flex-direction:column;padding:clamp(3rem,6vw,6rem);display:flex}.product-details h1{color:var(--maroon-deep);font-size:clamp(3rem,5vw,5.7rem)}.product-description{color:var(--muted);max-width:58ch}.price-placeholder{border:1px solid var(--line);width:100%;padding:var(--space-xl);gap:.3rem;display:grid}.price-placeholder span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.65rem}.price-placeholder strong{font-family:var(--display);color:var(--maroon);font-size:1.6rem;font-weight:400}.price-placeholder p,.checkout-note{color:var(--muted);font-size:.74rem}.specs{width:100%;margin:var(--space-lg) 0 0;border-top:1px solid var(--line)}.specs div{gap:var(--space-md);border-bottom:1px solid var(--line);grid-template-columns:.7fr 1.3fr;padding:.8rem 0;display:grid}.specs dt{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.specs dd{margin:0;font-size:.82rem}.honesty-note{background:var(--cream-deep);padding:var(--space-lg);font-size:.76rem}.honesty-note b{color:var(--maroon);text-transform:uppercase;letter-spacing:.1em;font-size:.62rem}.honesty-note p{color:var(--muted);margin-top:.4rem}.button.disabled{background:var(--cream-deep);color:var(--muted);cursor:not-allowed}.admin-shell{background:#f7f3eb;min-height:75vh;padding:clamp(2rem,5vw,5rem)}.admin-login{border:1px solid var(--line);background:#fff;gap:1.25rem;max-width:520px;margin:5vh auto;padding:clamp(2rem,5vw,4rem);display:grid}.admin-login h1,.admin-heading h1{color:var(--maroon-deep);font-size:clamp(2.8rem,5vw,5rem)}.admin-login form,.admin-form{gap:1rem;display:grid}.admin-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem;display:flex}.admin-layout{grid-template-columns:minmax(240px,.65fr) 2fr;align-items:start;gap:1.5rem;display:grid}.admin-list{gap:.4rem;max-height:70vh;display:grid;overflow:auto}.admin-list button{text-align:left;border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;padding:1rem}.admin-list b,.admin-list span{display:block}.admin-list span{color:var(--muted);margin-top:.3rem;font-size:.7rem}.admin-form{border:1px solid var(--line);background:#fff;padding:clamp(1rem,3vw,2rem)}.admin-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.admin-grid label,.admin-login label{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;gap:.35rem;font-size:.68rem;display:grid}.admin-grid input,.admin-grid textarea,.admin-grid select,.admin-login input{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;text-transform:none;letter-spacing:normal;background:#fff;padding:.75rem}.admin-grid .wide{grid-column:1/-1}.admin-grid .check{grid-template-columns:auto 1fr;align-items:center;display:flex}.admin-grid .check input{width:auto}.admin-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.admin-actions p{color:var(--muted);font-size:.8rem}.story-hero{grid-template-columns:1fr 1fr;min-height:620px;display:grid}.story-hero>div:first-child{justify-content:center;gap:var(--space-xl);flex-direction:column;padding:clamp(3rem,7vw,7rem);display:flex}.story-hero h1{color:var(--maroon-deep)}.story-image{position:relative}.story-copy{gap:var(--space-2xl);max-width:820px;font-family:var(--display);margin:0 auto;padding:clamp(4rem,9vw,8rem) 1rem;font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.55;display:grid}.dropcap:first-letter{color:var(--maroon);float:left;padding:.1rem .6rem 0 0;font-size:5.5rem;line-height:.75}.story-copy aside{margin-top:var(--space-2xl);padding:var(--space-2xl);border:1px solid var(--gold);gap:.8rem;display:grid}.story-copy aside span{font-family:var(--body);letter-spacing:.15em;color:var(--maroon);text-transform:uppercase;font-size:.65rem}.story-copy aside strong{font-weight:400}.contact-page{grid-template-columns:1fr 1fr;min-height:700px;display:grid}.contact-page>section{padding:clamp(3rem,7vw,7rem)}.contact-page>section:first-child{background:var(--maroon);color:var(--cream);justify-content:center;align-items:flex-start;gap:var(--space-xl);flex-direction:column;display:flex}.contact-page>section:first-child .eyebrow{color:var(--gold)}.contact-page>section:first-child p:not(.eyebrow){color:color-mix(in oklch, var(--cream) 75%, transparent);max-width:55ch}.contact-page .button{background:var(--cream);color:var(--maroon)}.contact-details{align-content:center;gap:var(--space-2xl);display:grid}.contact-details>div{padding-bottom:var(--space-xl);border-bottom:1px solid var(--line)}.contact-details span{color:var(--maroon);letter-spacing:.13em;text-transform:uppercase;font-size:.65rem}.contact-details p{margin-top:.5rem}.map-placeholder{background:var(--cream-deep);padding:var(--space-xl)!important;border:0!important}.map-placeholder p{color:var(--muted);font-size:.8rem}.policy-page{max-width:760px;margin:auto;padding:clamp(4rem,9vw,8rem) 1rem}.policy-page h1{color:var(--maroon-deep);margin:var(--space-lg) 0 var(--space-xl)}.policy-summary{font-family:var(--display);color:var(--muted);font-size:1.5rem}.policy-status{margin:var(--space-2xl) 0;padding:var(--space-lg);background:var(--cream-deep);justify-content:space-between;gap:var(--space-md);font-size:.74rem;display:flex}.policy-status b{color:var(--maroon);text-transform:uppercase;letter-spacing:.1em}.policy-page>p:not(.eyebrow,.policy-summary,.policy-contact){margin-top:var(--space-xl)}.policy-contact{margin-top:var(--space-3xl);padding-top:var(--space-xl);border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}.empty-state{max-width:680px;margin:var(--space-5xl) auto;text-align:center;justify-items:center;gap:var(--space-xl);display:grid}.empty-state h1,.empty-state h2{color:var(--maroon-deep)}.not-found{align-content:center;min-height:50vh}.site-footer{gap:var(--space-3xl);background:var(--maroon-deep);color:var(--cream);padding:clamp(3rem, 7vw, 6rem) clamp(1rem, 5vw, 5rem) var(--space-2xl);grid-template-columns:1.7fr .6fr .6fr;display:grid}.site-footer .eyebrow{color:var(--gold)}.site-footer h2{margin:.65rem 0;font-size:clamp(2.2rem,4vw,4rem)}.site-footer p:not(.eyebrow){color:color-mix(in oklch, var(--cream) 70%, transparent);font-size:.78rem}.footer-links{align-items:flex-start;gap:var(--space-md);flex-direction:column;font-size:.8rem;display:flex}.footer-note{padding-top:var(--space-xl);border-top:1px solid lab(67.5875% 3.29903 15.3968/.3);grid-column:1/-1}@media (max-width:900px){.site-header{grid-template-columns:1fr auto;min-height:76px}.site-header nav{padding-top:var(--space-md);border-top:1px solid var(--line);margin-top:var(--space-md);order:3;grid-column:1/-1;justify-content:space-between}.header-enquire{display:none}.hero{grid-template-columns:1fr}.hero-copy{min-height:480px}.hero-image{min-height:60svh}.trust-bar{grid-template-columns:1fr 1fr}.trust-bar span:nth-child(2){border-right:0}.trust-bar span:nth-child(-n+2){border-bottom:1px solid var(--line)}.intro,.page-intro,.page-intro.compact{grid-template-columns:1fr}.category-grid{grid-template-rows:430px 380px 380px;grid-template-columns:1fr 1fr}.category-1{grid-column:1/-1}.category-2,.category-3{margin:0}.category-4{grid-column:1/-1}.product-grid{grid-template-columns:repeat(2,1fr)}.product-page{grid-template-columns:1fr}.gallery-main{min-height:70svh}.gallery-secondary{min-height:50svh}.story-hero,.contact-page{grid-template-columns:1fr}.story-image{min-height:60svh}.site-footer{grid-template-columns:1fr 1fr}.admin-layout{grid-template-columns:1fr}.site-footer>div:first-child,.footer-note{grid-column:1/-1}}@media (max-width:620px){.announcement{font-size:.57rem}.brand b{font-size:1.15rem}.hero-copy{min-height:auto;padding-top:4.5rem;padding-bottom:4.5rem}.hero-copy h1{font-size:clamp(3.4rem,16vw,5.2rem)}.hero-image{min-height:58svh}.hero-index{bottom:1rem;right:1rem}.intro{gap:var(--space-xl)}.section-heading,.visit-strip{flex-direction:column;align-items:flex-start}.category-grid{scroll-snap-type:x mandatory;margin-right:-1rem;padding-right:1rem;display:flex;overflow-x:auto}.category-card{scroll-snap-align:start;flex:0 0 85vw;height:480px}.product-grid{gap:.65rem;row-gap:var(--space-3xl)}.product-copy h3{font-size:1.25rem}.product-copy .eyebrow{font-size:.54rem}.collection-row{grid-template-columns:35px 1fr 25px;min-height:150px}.collection-thumb{display:none}.filter-note{flex-direction:column}.gallery{grid-template-columns:1fr}.gallery-main{min-height:65svh}.gallery-secondary{min-height:55svh}.product-details{padding:3rem 1rem}.product-details h1{font-size:3.3rem}.policy-status{flex-direction:column}.site-footer{gap:var(--space-2xl)}.admin-grid{grid-template-columns:1fr}.admin-grid .wide{grid-column:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
