:root{--ink:#1E1A16;--indigo:#1E1A16;--indigo-50:#F7F2E8;--madras:#3D6B35;--turmeric:#B8860B;--line:#DDD5C4;--muted:#5A5248;--bg:#FDFAF5;--dark:#18140F;
--display:"Playfair Display",Georgia,serif;--body:"Inter",system-ui,sans-serif;--r:6px;--wrap:1200px}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1rem/1.6 var(--body);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--indigo)}a:hover{color:var(--madras)}
:focus-visible{outline:3px solid var(--turmeric);outline-offset:2px}
h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.1;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2.2rem,5vw,3.8rem)}h2{font-size:clamp(1.5rem,2.6vw,2.1rem)}h3{font-size:1.2rem}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.block{padding:56px 20px}.prose{max-width:760px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:99}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}

/* header */
.site-head{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:50}
.head-row{display:flex;align-items:center;gap:24px;min-height:68px}
.brand{display:flex;align-items:baseline;gap:6px;text-decoration:none;color:var(--ink);margin:0}
.brand img{max-height:44px;width:auto}
.brand-word{font:600 1.6rem/1 var(--display);color:var(--ink);letter-spacing:.04em}
.brand-sub{font:500 1rem/1 var(--display);color:var(--turmeric)}
.nav{display:flex;align-items:center;gap:20px;flex:1}
.nav .menu{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.nav .menu a{color:var(--ink);text-decoration:none;font-weight:500}
.nav .menu a:hover,.nav .current-menu-item>a{color:var(--madras)}
.nav .woocommerce-product-search{margin-left:auto;display:flex}
.nav .woocommerce-product-search input[type=search]{border:1px solid var(--line);border-radius:var(--r) 0 0 var(--r);padding:8px 10px;font:inherit;width:190px}
.nav .woocommerce-product-search button{border:0;background:var(--indigo);color:#fff;padding:0 12px;border-radius:0 var(--r) var(--r) 0;font:inherit;cursor:pointer}
.head-tools{display:flex;gap:16px;font-weight:500}.head-tools a{text-decoration:none;color:var(--ink)}
.cart-count{display:inline-block;min-width:22px;padding:0 6px;border-radius:11px;background:var(--turmeric);color:#fff;text-align:center;font-size:.8rem}
.nav-toggle{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:var(--r);padding:8px 12px;font:inherit}
@media(max-width:960px){.nav-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:68px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:16px 20px}
.nav.open{display:flex}.nav .menu{flex-direction:column;gap:12px}.nav .woocommerce-product-search{margin:0}.nav .woocommerce-product-search input[type=search]{flex:1;width:auto}.head-tools{gap:10px}.head-tools a:first-child{display:none}}

/* buttons */
.btn,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt{
display:inline-block;background:var(--indigo);color:#fff;border:2px solid var(--indigo);border-radius:var(--r);padding:12px 22px;font:600 1rem/1.2 var(--body);text-decoration:none;cursor:pointer}
.btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.btn-line{background:#fff;color:var(--indigo)}.btn-line:hover{background:var(--indigo);color:#fff}

/* hero: kolam at the threshold */
.hero{background:var(--indigo-50) radial-gradient(circle,rgba(184,134,11,.2) 1.4px,transparent 1.6px) 0 0/28px 28px;border-bottom:6px solid var(--indigo)}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;padding:64px 20px}
.lede{font-size:1.2rem;max-width:34em;color:var(--muted)}
.doors{margin-top:28px;display:grid;gap:10px;max-width:560px}
.door{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 16px;background:#fff;border:1px solid var(--line);border-bottom:4px solid var(--indigo);border-radius:var(--r) var(--r) 0 0;padding:14px 18px;text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s}
.door strong{font:600 1.2rem/1.2 var(--display)}.door span{grid-column:1;color:var(--muted);font-size:.95rem}
.door::after{content:"";grid-column:2;grid-row:1/3;width:12px;height:12px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}
.door:hover{border-bottom-color:var(--madras);transform:translateY(-2px);color:var(--ink)}
.kolam{width:100%;max-width:420px;justify-self:center}
.kolam .dots circle{fill:var(--madras)}
.kolam .line *{fill:none;stroke:var(--indigo);stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 2.4s ease-out forwards}
.kolam .line *:nth-child(2){animation-delay:.3s}.kolam .line *:nth-child(3){animation-delay:.6s;stroke:var(--turmeric)}.kolam .line *:nth-child(4){animation-delay:.9s}
@keyframes draw{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.kolam .line *{animation:none;stroke-dashoffset:0}.door{transition:none}}
.hero-sub .wrap{padding-top:56px;padding-bottom:56px}.hero-sub h1{max-width:18em}
@media(max-width:860px){.hero-grid{grid-template-columns:1fr;padding:40px 20px}.kolam{max-width:200px;grid-row:1;justify-self:start}}

/* sections */
.block-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.cat{position:relative;display:block;border-radius:var(--r);overflow:hidden;background:var(--indigo-50);text-decoration:none;color:var(--ink);aspect-ratio:1}
.cat img{width:100%;height:100%;object-fit:cover}
.cat span{position:absolute;left:0;right:0;bottom:0;background:#fff;padding:10px 14px;font:700 1.05rem/1.2 var(--display);border-top:3px solid var(--turmeric)}
.cat small{display:block;font:400 .85rem var(--body);color:var(--muted)}
.guide{background:var(--dark);color:#fff;padding:64px 0}
.guide h2{color:#fff}
.guide-list{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 48px;margin:28px 0 0}
.guide-list dt{font:500 1.2rem/1.3 var(--display);color:var(--turmeric);margin-bottom:6px}
.guide-list dd{margin:0;color:#DDD5C4;max-width:38em}
@media(max-width:700px){.guide-list{grid-template-columns:1fr}}
.trade{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.trade>div{border-left:4px solid var(--madras);padding-left:24px}
@media(max-width:700px){.trade{grid-template-columns:1fr}}
.steps{list-style:none;counter-reset:s;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.steps li{counter-increment:s;border-top:4px solid var(--indigo);padding-top:12px;font-weight:500}
.steps li::before{content:counter(s);display:block;font:700 2rem/1 var(--display);color:var(--madras);margin-bottom:8px}
.faq{padding:24px 20px 72px;max-width:860px}
.faq details{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{cursor:pointer;font:600 1.1rem/1.4 var(--display);list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";font-size:1.4rem;color:var(--indigo)}
.faq details[open] summary::after{content:"–"}
.faq p{margin:10px 0 0;color:var(--muted);max-width:44em}

/* enquiry form */
.quote{background:var(--indigo-50);border-radius:var(--r);max-width:860px;margin:0 auto 40px}
.rfq{display:grid;gap:14px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:600px){.grid2{grid-template-columns:1fr}}
.rfq label span{display:block;font-weight:600;font-size:.92rem;margin-bottom:4px}
.rfq input,.rfq select,.rfq textarea,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{
width:100%;border:1px solid #B9BED6;border-radius:var(--r);padding:11px 12px;font:inherit;background:#fff;color:var(--ink)}
.rfq .btn{justify-self:start}.hp{position:absolute;left:-9999px}
.note{padding:12px 16px;border-radius:var(--r);font-weight:600}.note.ok{background:#E3F4E8;color:#1D5B31}.note.err{background:#FBE7E5;color:var(--madras)}

/* WooCommerce */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.chips a{border:1px solid var(--line);border-radius:20px;padding:6px 14px;text-decoration:none;color:var(--ink);font-size:.95rem}
.chips a[aria-current]{background:var(--indigo);border-color:var(--indigo);color:#fff}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 20px;margin:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;position:relative}
@media(max-width:1000px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:20px 12px}}
.woocommerce ul.products li.product a img{border-radius:var(--r);background:var(--indigo-50);aspect-ratio:1;object-fit:cover;margin-bottom:10px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font:600 1rem/1.35 var(--body)!important;color:var(--ink);padding:0!important}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-weight:600}
.woocommerce .price del{color:var(--muted);font-weight:400;opacity:1}.woocommerce .price ins{text-decoration:none}
.woocommerce ul.products li.product .button{padding:9px 14px;font-size:.9rem;margin-top:8px}
.woocommerce span.onsale{background:var(--madras);color:#fff;border-radius:4px;min-height:0;min-width:0;line-height:1;padding:6px 8px;font-size:.8rem;top:8px;left:8px;right:auto;margin:0}
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
@media(max-width:860px){.woocommerce div.product{grid-template-columns:1fr;gap:24px}}
.woocommerce div.product .product_title{font-size:clamp(1.6rem,3vw,2.4rem)}
.woocommerce div.product p.price{font-size:1.6rem}
.rasi-taxnote{color:var(--muted);font-size:.9rem;margin-top:-8px}
.bulk-nudge{background:var(--indigo-50);border-left:4px solid var(--turmeric);padding:10px 14px;border-radius:0 var(--r) var(--r) 0}
.woocommerce div.product .woocommerce-product-details__short-description ul{padding-left:18px}
.woocommerce div.product form.cart .quantity .qty{padding:10px;border:1px solid #B9BED6;border-radius:var(--r);width:4.5em}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 20px;border-bottom:1px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none;border:0;border-radius:0;margin:0 20px 0 0;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:10px 0;font-weight:600;color:var(--muted)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:3px solid var(--indigo)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)}
.rasi-spec,.woocommerce table.shop_attributes{border-collapse:collapse;width:100%;max-width:640px;border:0}
.rasi-spec th,.rasi-spec td,.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);font-style:normal;background:none}
.rasi-spec th,.woocommerce table.shop_attributes th{width:40%;font-weight:600}
.trade-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.woocommerce .woocommerce-breadcrumb{font-size:.9rem;color:var(--muted)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--indigo)!important}

/* footer */
.site-foot{background:var(--dark);color:#C4BCB2;padding:56px 0 24px;margin-top:40px}
.site-foot a{color:#fff}.site-foot h2{font-size:1rem;color:#fff;font-family:var(--body);font-weight:600}
.site-foot .brand-word{color:#fff}.site-foot .brand-sub{color:var(--turmeric)}
.site-foot ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}.site-foot address{font-style:normal}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px}
@media(max-width:800px){.foot-grid{grid-template-columns:1fr 1fr}}
.creds{display:flex;flex-wrap:wrap;gap:8px 24px;border-top:1px solid #3A342C;margin-top:40px;padding-top:20px;font-size:.88rem}
.wa{position:fixed;right:16px;bottom:16px;background:#1E8E4A;color:#fff;border-radius:24px;padding:12px 18px;font-weight:600;text-decoration:none;z-index:60}
.wa:hover{color:#fff;background:#166B38}
