:root{--ink:#0c1510;--green:#173d2a;--sage:#dce8df;--paper:#fbfaf6;--line:rgba(12,21,16,.14);--muted:#68716b;--shadow:0 24px 60px rgba(20,42,29,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body.no-scroll{overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.section-shell{width:min(1280px,calc(100% - 48px));margin-inline:auto}.section{padding:96px 0}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;width:min(1400px,calc(100% - 48px));margin:auto;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{font-family:Georgia,"Times New Roman",serif;font-size:27px;font-weight:700;letter-spacing:.18em;display:flex;align-items:center}.brand img{height:30px;width:auto;display:block}.footer-brand img{height:24px;filter:brightness(0) invert(1)}.desktop-nav{display:flex;gap:34px;font-size:14px}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--ink);transition:.25s}.desktop-nav a:hover:after{right:0}.header-actions{display:flex;align-items:center;gap:8px}.icon-button{border:0;background:transparent;color:var(--ink);height:42px;width:42px;display:grid;place-items:center}.icon-button svg,.search-box svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6}.menu-button{display:none}
.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:700;color:var(--green);display:block;margin-bottom:16px}.section-heading h2,.enquiry-banner h2,.product-info h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:.98;margin:0}.button{min-height:52px;padding:0 25px;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;font-weight:650;font-size:14px;transition:.25s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--green);color:white}.button-light{background:white;color:var(--green)}
.home-banner{display:block;width:100%;overflow:hidden;background:#0c1510}.home-banner img{width:100%;height:auto;display:block;transition:transform .5s}.home-banner:hover img{transform:scale(1.015)}
.section-heading{margin-bottom:32px}.split-heading{display:flex;align-items:end;justify-content:space-between;gap:32px}.section-heading h2{font-size:clamp(38px,4vw,62px);letter-spacing:-.035em}.split-heading>p{max-width:380px;color:var(--muted);line-height:1.65;margin:0}.category-section{overflow:hidden}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.category-card{--cat-accent:var(--green);min-height:300px;border-radius:22px;overflow:hidden;position:relative;background:var(--sage);isolation:isolate;border:1px solid var(--line);border-top:3px solid var(--cat-accent);display:block;transition:border-color .3s,box-shadow .3s,transform .3s}.category-card.cat-perfume{--cat-accent:#8a5a2b}.category-card.cat-deodorant{--cat-accent:#2c5f8a}.category-card.cat-grooming{--cat-accent:#2e6b46}.category-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(251,250,246,.08) 0%,rgba(5,19,12,.72) 100%);z-index:2;pointer-events:none}.category-card:hover{border-color:var(--cat-accent);box-shadow:var(--shadow);transform:translateY(-4px)}.category-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;transition:transform .45s}.category-card:hover img{transform:scale(1.04)}.category-copy{position:absolute;z-index:3;left:22px;right:22px;bottom:22px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:nowrap}.category-copy h3{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(22px,2.4vw,34px);font-weight:500;line-height:1.05;letter-spacing:-.02em;white-space:nowrap;min-width:0}.category-arrow{flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:#fff;color:var(--cat-accent);display:grid;place-items:center;transition:transform .3s,background .3s,color .3s}.category-arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.category-card:hover .category-arrow{transform:scale(1.06);background:var(--cat-accent);color:#fff}
.product-section{overflow:hidden}.carousel-controls{display:flex;gap:8px}.carousel-controls button{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:transparent;font-size:18px}.product-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}.product-track::-webkit-scrollbar{display:none}
.product-card{--accent:var(--green);background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:20px;padding:0 0 12px;transition:.3s;display:flex;flex-direction:column;min-width:0;overflow:hidden}.product-track .product-card{flex:0 0 calc((100% - 48px)/4);min-width:250px;scroll-snap-align:start}.product-grid .product-card{width:100%;min-width:0}.product-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-4px)}.product-card.cat-perfume{--accent:#8a5a2b}.product-card.cat-deodorant{--accent:#2c5f8a}.product-card.cat-grooming{--accent:#2e6b46}
.product-image-wrap{display:block;aspect-ratio:1/1;background:var(--sage);overflow:hidden;position:relative}.product-image-wrap img{width:100%;height:100%;object-fit:contain;transition:.35s}.product-card:hover .product-image-wrap img{transform:scale(1.035)}
.card-content{padding:12px 14px 0;display:flex;flex-direction:column;flex:1;min-width:0}.card-category{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);font-weight:650}.card-title{display:block;font-family:Georgia,"Times New Roman",serif;font-size:20px;line-height:1.25;margin:7px 0 12px}.card-actions{display:flex;gap:8px;margin-top:auto}.card-actions a,.card-actions button{flex:1;min-height:42px;border-radius:999px;border:1px solid var(--line);background:transparent;font-size:12px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;text-align:center;transition:.25s}.card-actions .view-small:hover{border-color:var(--accent);color:var(--accent)}.card-actions .enquire-small{background:var(--accent);color:white;border-color:var(--accent)}.card-actions .enquire-small:hover{filter:brightness(1.08);transform:translateY(-1px)}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:36px}.filter-chip{border:1px solid var(--line);background:transparent;padding:11px 20px;border-radius:999px;font-size:13px;font-weight:650;color:var(--ink)}.filter-chip.active{background:var(--green);border-color:var(--green);color:white}.collection-count{color:var(--muted);font-size:13px;margin:-14px 0 30px}
.enquiry-banner{margin-top:40px;margin-bottom:80px;background:linear-gradient(120deg,#214d37,#0c2619);color:white;border-radius:30px;padding:56px 64px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:40px}.enquiry-banner .eyebrow{color:#b9d4c0}.enquiry-banner h2{font-size:46px}.enquiry-banner p{color:rgba(255,255,255,.7);line-height:1.65;margin:0}.footer{background:#0c1510;color:white;padding:68px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-brand{display:inline-block;margin-bottom:18px}.footer-grid>div:first-child p{max-width:360px;color:rgba(255,255,255,.55);line-height:1.65}.footer h4{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#a8b9ad;margin:0 0 18px}.footer a,.footer button,.footer span{display:block;color:rgba(255,255,255,.7);font-size:13px;margin:0 0 12px}.footer button{background:transparent;border:0;padding:0;text-align:left}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:50px;padding-top:22px;display:flex;justify-content:space-between}.footer-bottom span{font-size:11px;color:rgba(255,255,255,.45)}
.overlay,.search-panel,.modal{position:fixed;inset:0;z-index:100;visibility:hidden;opacity:0;transition:.25s}.overlay.open,.search-panel.open,.modal.open{visibility:visible;opacity:1}.overlay{background:var(--green);color:white;display:grid;place-items:center}.overlay-close{position:absolute;right:30px;top:22px;background:transparent;border:0;color:white;font-size:38px}.mobile-nav{display:grid;text-align:center;gap:22px}.mobile-nav a{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,8vw,74px)}.search-panel{background:var(--paper);padding:30px max(24px,calc((100vw - 1180px)/2))}.search-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.15em;text-transform:uppercase}.search-top button{border:0;background:transparent;font-size:30px}.search-box{display:flex;align-items:center;border-bottom:1px solid var(--ink);gap:14px;margin:48px 0 24px;padding-bottom:14px}.search-box input{border:0;outline:0;background:transparent;width:100%;font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,4vw,52px);color:var(--ink)}.search-results{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:65vh;overflow:auto}.search-result{display:grid;grid-template-columns:78px 1fr auto;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:10px 0}.search-result img{width:78px;height:78px;object-fit:contain;background:#f1f1ec;border-radius:12px;padding:8px}.search-result strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:18px;font-weight:500}.search-result span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.search-empty{color:var(--muted);padding:30px 0}
.modal{display:grid;place-items:center;padding:18px}.modal-backdrop{position:absolute;inset:0;background:rgba(4,11,7,.62)}.modal-card{position:relative;background:var(--paper);width:min(720px,100%);max-height:94vh;overflow:auto;border-radius:26px;padding:44px;box-shadow:var(--shadow)}.modal-close{position:absolute;right:22px;top:18px;border:0;background:transparent;font-size:30px}.modal-card h2{font-family:Georgia,"Times New Roman",serif;font-size:42px;font-weight:500;margin:0}.modal-intro{color:var(--muted);margin:10px 0 24px}.selected-product{background:var(--sage);padding:14px 16px;border-radius:14px;font-size:13px;margin-bottom:18px;font-weight:650}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:grid;gap:7px;margin-bottom:14px}label span{font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:700;color:var(--muted)}input,textarea{width:100%;border:1px solid var(--line);background:white;border-radius:12px;padding:14px 15px;outline:0}textarea{resize:vertical}.form-submit{width:100%;margin-top:4px}.form-note{font-size:11px;color:var(--muted);line-height:1.5}.form-error{font-size:13px;color:#9b2c2c;margin:8px 0 0}.form-success{text-align:center;padding:36px 10px}.success-icon{width:62px;height:62px;border-radius:50%;background:var(--sage);display:grid;place-items:center;margin:0 auto 18px;font-size:30px;color:var(--green)}.form-success h3{font-family:Georgia,"Times New Roman",serif;font-size:36px;margin:0}.form-success p{color:var(--muted)}
.product-header{width:min(1400px,calc(100% - 48px))}.product-page{padding-top:56px;padding-bottom:90px;width:min(1280px,calc(100% - 48px));margin-inline:auto}.product-detail{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:start}.product-gallery{position:sticky;top:28px;min-width:0}.main-product-image{background:#f0f0ea;border-radius:26px;aspect-ratio:1/1;display:grid;place-items:center;overflow:hidden;max-height:min(72vh,640px)}.main-product-image img{width:100%;height:100%;object-fit:contain}.product-info{min-width:0;padding-top:42px}.thumb-track{display:flex;gap:10px;overflow-x:auto;margin-top:12px;scrollbar-width:none}.thumb-track button{width:84px;height:84px;flex:0 0 84px;background:#f0f0ea;border:1px solid transparent;border-radius:13px;padding:8px}.thumb-track button.active{border-color:var(--green)}.thumb-track img{width:100%;height:100%;object-fit:contain}.product-info h1{font-size:clamp(44px,5vw,70px);letter-spacing:-.04em}.button-wide{width:100%;height:58px;margin-top:40px}.info-callout{display:grid;gap:6px;background:var(--sage);padding:18px;border-radius:16px;margin-top:16px}.info-callout strong{font-size:13px}.info-callout span{font-size:12px;color:#56645b;line-height:1.55}.product-description{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.product-description h3{font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:500}.product-description p{color:var(--muted);line-height:1.75;font-size:14px;white-space:pre-line}.related-products{padding-top:100px}.product-not-found{text-align:center;padding:140px 20px}.product-not-found h1{font-family:Georgia,"Times New Roman",serif;font-size:54px;font-weight:500;margin:0 0 15px}.product-not-found p{color:var(--muted)}
@media (max-width:1000px){.desktop-nav{display:none}.menu-button{display:grid}.category-grid{grid-template-columns:repeat(2,1fr);gap:14px}.category-card{min-height:320px}.product-track .product-card{flex-basis:calc((100% - 16px)/2)}.product-grid{grid-template-columns:repeat(3,1fr)}.enquiry-banner{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.product-detail{grid-template-columns:1fr;gap:32px}.product-gallery{position:static}.product-info{padding-top:12px}.main-product-image{max-height:min(68vh,560px);margin-inline:auto;width:100%}.related-products{padding-top:64px;overflow:hidden}.search-results{grid-template-columns:1fr}}
@media (max-width:680px){.section-shell,.site-header,.product-header{width:min(100% - 30px,1280px)}.site-header{height:72px}.section{padding:68px 0}.split-heading{align-items:start}.section-heading h2{font-size:42px}.category-section .category-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:10px;-webkit-overflow-scrolling:touch}.category-section .category-grid::-webkit-scrollbar{display:none}.category-section .category-card{flex:0 0 calc((100% - 12px)/2.1);min-width:calc((100% - 12px)/2.1);scroll-snap-align:start;min-height:180px;border-radius:18px}.category-section .category-copy{left:12px;right:12px;bottom:14px;flex-wrap:nowrap;gap:8px}.category-section .category-copy h3{font-size:18px;white-space:nowrap}.category-section .category-arrow{width:32px;height:32px}.category-section .category-arrow svg{width:14px;height:14px}.product-track .product-card{flex-basis:82%;min-width:250px}.product-grid{grid-template-columns:repeat(2,1fr);gap:12px}.filter-bar{gap:8px}.filter-chip{padding:9px 16px;font-size:12px}.enquiry-banner{padding:36px 26px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:grid;gap:8px}.form-grid{grid-template-columns:1fr}.modal-card{padding:36px 22px}.modal-card h2{font-size:34px}.product-page{padding-top:26px;padding-bottom:56px;width:min(100% - 30px,1280px)}.product-info h1{font-size:clamp(32px,9vw,44px)}.main-product-image{border-radius:18px;max-height:none;aspect-ratio:1/1.02}.thumb-track button{width:68px;height:68px;flex:0 0 68px;padding:6px;border-radius:11px}.related-products{padding-top:40px}.related-products .section-heading{margin-bottom:20px}.related-products .section-heading h2{font-size:32px}.product-not-found{padding:72px 16px}.product-not-found h1{font-size:clamp(32px,8vw,42px)}.product-description{margin-top:24px;padding-top:20px}.info-callout{padding:14px}.search-panel{padding-top:22px}.search-box{margin-top:38px}.search-result{grid-template-columns:60px 1fr auto}.search-result img{width:60px;height:60px}}
