/*
Theme Name: KBH Construction & Interiors
Description: Complete theme for Quick Construction & KBH Interior & Renovation. All texts and images editable from Appearance > Theme Texts / Theme Images / Theme Settings. Works with the "KBH Orders" plugin.
Author: KBH
Version: 2.4.0
Requires PHP: 7.4
Requires at least: 5.8
Text Domain: kbh
*/
:root{--pri:#1f2f28;--acc:#8a5d1f;--bg:#faf8f4;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;font-family:var(--sans);color:#2a2a2a;background:var(--bg);line-height:1.6}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--serif);font-weight:500;color:#1c1c1c;line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(2rem,5vw,3.4rem)}h2{font-size:clamp(1.5rem,3vw,2.2rem)}h3{font-size:1.15rem}p{margin:0 0 1em}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}.narrow{max-width:820px}
.btn{display:inline-flex;gap:8px;align-items:center;padding:11px 20px;border-radius:3px;font-weight:600;font-size:.9rem;border:1px solid transparent;cursor:pointer;transition:filter .2s;font-family:var(--sans)}
.btn:hover{filter:brightness(1.12)}.btn-dark{background:var(--pri);color:#fff}.btn-gold{background:var(--acc);color:#fff}.btn-light{background:#fff;color:#222;border-color:#ccc}.btn-line{background:transparent;border-color:currentColor;color:inherit}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.site-h{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 #eee}.hd{display:flex;align-items:center;gap:24px;min-height:68px}
.logo{display:flex;align-items:center;gap:14px}.logo-img{height:44px;width:auto}.sep{width:1px;height:34px;background:#ccc;display:inline-block;margin:0 10px}
.lg{display:inline-flex;flex-direction:column;line-height:1}.lg b{font-family:var(--serif);font-size:1.5rem;letter-spacing:.06em;color:var(--pri)}.lg small{font-size:.58rem;letter-spacing:.14em;color:#555}
.nav{display:flex;gap:22px;margin:0 auto;font-size:.85rem}.nav a{padding:6px 0;border-bottom:2px solid transparent}.nav a.on,.nav a:hover{border-color:var(--acc)}
.burger{display:none;background:none;border:0;font-size:1.6rem;margin-left:auto;cursor:pointer}
.hero{position:relative;background:#f3eee6;min-height:360px;display:flex;align-items:center;overflow:hidden}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f7f3ec 0,rgba(247,243,236,.92) 32%,rgba(247,243,236,0) 62%)}
.hero-in{position:relative;z-index:2;padding-top:56px;padding-bottom:56px}.hero-in>*{max-width:560px}.hero .lead{color:#333}
.eyebrow{font-size:.72rem;letter-spacing:.18em;font-weight:600;color:#444;margin-bottom:10px}.lead{color:#555;font-size:1.02rem}
.sec{padding:56px 0}.sec.alt{background:#f3efe8}.sec-head{margin-bottom:26px}.head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.head-row .btns{margin:0 0 26px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.split.flip .split-img{order:2}.split-img img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:3px}
.ticks{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;margin:14px 0}.ticks li:before{content:"✓";color:var(--acc);font-weight:700;margin-right:8px}
.grid{display:grid;gap:18px}.c2{grid-template-columns:repeat(2,1fr)}.c3{grid-template-columns:repeat(3,1fr)}.c4{grid-template-columns:repeat(4,1fr)}.c5{grid-template-columns:repeat(5,1fr)}.c6{grid-template-columns:repeat(6,1fr)}
.card{background:#fff;border:1px solid #eee;display:block;border-radius:3px;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}a.card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.08)}
.card img{width:100%;aspect-ratio:16/10;object-fit:cover}.card-b{padding:12px 14px}.card-b h3{margin:0 0 4px;font-size:1rem}.card-b p{margin:0;font-size:.85rem;color:#666}.small .card img{aspect-ratio:3/2}.arr{color:var(--acc)}
.dual{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dcard{display:grid;grid-template-columns:42% 1fr;background:#f6f1e9;border-radius:3px;overflow:hidden}.dcard img{width:100%;height:100%;object-fit:cover;min-height:200px}.dcard>div{padding:22px}.dcard p{font-size:.92rem;color:#555}
.clist{list-style:none;padding:0;margin:0 0 14px}
.feats .feat{text-align:left;padding:6px 14px;border-left:1px solid #ddd}.feats .feat:first-child{border:0}.ico{display:block;width:44px;height:44px;border-radius:50%;background:var(--acc);margin-bottom:12px;opacity:.9}.feat p{font-size:.88rem;color:#666}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px}.step b{display:inline-flex;width:42px;height:42px;border:1px solid var(--acc);border-radius:50%;align-items:center;justify-content:center;color:var(--acc);margin-bottom:10px}.step p{font-size:.88rem;color:#666}
.faqw{display:grid;grid-template-columns:1fr 1.6fr;gap:40px}.faq details{background:#fff;border:1px solid #e6e1d8;padding:12px 16px;margin-bottom:6px}.faq summary{cursor:pointer;font-weight:600;font-size:.92rem}.faq p{margin:8px 0 0;font-size:.88rem;color:#666}
.cta{position:relative;background:var(--pri);color:#fff;overflow:hidden}.cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22}.cta-in{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:46px;padding-bottom:46px}.cta h2{color:#fff;margin:0}.cta p{margin:6px 0 0;color:#ddd}.cta .btns{margin:0}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.chip{background:#fff;border:1px solid #ccc;padding:8px 16px;cursor:pointer;font-size:.85rem}.chip.on{background:var(--acc);color:#fff;border-color:var(--acc)}
.tile{position:relative;display:block;overflow:hidden;border-radius:3px;aspect-ratio:3/2;background:#ddd}.tile img{width:100%;height:100%;object-fit:cover}.tile span{position:absolute;left:0;right:0;bottom:0;padding:26px 12px 10px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.65));font-size:.9rem}
.formgrid{display:grid;grid-template-columns:1.5fr 1fr;gap:30px}.formside img{width:100%;height:340px;object-fit:cover}.noteb{background:var(--pri);color:#fff;padding:18px}.noteb h3{color:#fff}.noteb.light{background:#f1ebe0;color:#333}.noteb.light h3{color:#222}
.svc .pick{cursor:pointer;display:grid;grid-template-columns:40% 1fr}.svc .pick img{height:100%;aspect-ratio:auto}.radio{position:absolute;right:12px;top:12px;width:20px;height:20px;border:2px solid #999;border-radius:50%;background:#fff}.pick.on{border-color:var(--acc)}.pick.on .radio{background:var(--acc);box-shadow:inset 0 0 0 3px #fff}
.legal{display:grid;grid-template-columns:1.8fr 1fr;gap:40px}.lg{}.legal .lgl{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid #e6e1d8}.legal .lgl b{flex:none;width:42px;height:42px;border:1px solid var(--acc);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--acc)}.legal aside img{margin-bottom:16px;border-radius:3px}
.site-f{background:var(--pri);color:#dde;padding-top:40px;font-size:.88rem}.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1.3fr .8fr;gap:30px}.fgrid h4{color:#fff;margin:0 0 10px}.fgrid a{display:block;padding:2px 0;color:#cfd8d2}.fgrid .lg b,.fgrid .lg small{color:#fff}.fgrid .logo-img{height:46px}.ftag{margin-top:12px;color:#bcc7c0}.soc{display:flex;gap:10px}.soc a{width:32px;height:32px;border:1px solid #6b7a72;border-radius:50%;display:flex;align-items:center;justify-content:center}
.fbot{display:flex;justify-content:space-between;padding-top:22px;padding-bottom:22px;margin-top:26px;border-top:1px solid #3b4a43;font-size:.8rem;color:#a9b5ae}
/* order plugin */
.kbh-form label{display:block;font-weight:600;font-size:.85rem;margin:12px 0 4px}.kbh-form input[type=text],.kbh-form input[type=tel],.kbh-form input[type=number],.kbh-form select,.kbh-form textarea{width:100%;padding:10px;border:1px solid #cfc9bd;background:#fff;font:inherit;border-radius:3px}.kbh-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.kbh-form .radios label{display:inline-flex;gap:6px;font-weight:400;margin-right:18px}.kbh-msg{margin-top:12px;padding:10px;border-radius:3px;display:none}.kbh-msg.ok{display:block;background:#e5f3e8;color:#1b5e2b}.kbh-msg.err{display:block;background:#fbe9e7;color:#a12}.kbh-hp{position:absolute;left:-9999px}
@media(max-width:900px){.nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;flex-direction:column;padding:14px 20px;gap:10px;box-shadow:0 8px 14px rgba(0,0,0,.08)}body.navopen .nav{display:flex}.burger{display:block}.hd-cta{display:none}.split,.dual,.faqw,.formgrid,.legal,.fgrid{grid-template-columns:1fr}.split.flip .split-img{order:0}.c4,.c5,.c6{grid-template-columns:repeat(2,1fr)}.c3{grid-template-columns:repeat(2,1fr)}.dcard{grid-template-columns:1fr}.hero:after{background:linear-gradient(90deg,rgba(247,243,236,.95),rgba(247,243,236,.6))}.ticks,.kbh-form .row{grid-template-columns:1fr}.svc .pick{grid-template-columns:1fr}}
@media(max-width:560px){.c2,.c3,.c4,.c5,.c6{grid-template-columns:1fr}.small.c5,.small.c4,.small.c6{grid-template-columns:repeat(2,1fr)}}

/* projects mosaic, featured, light CTA */
.chip{background:#fff;border:1px solid #cfc9bd;padding:10px 26px;font-size:.82rem;font-family:var(--sans);color:#222;border-radius:2px}
.mosaic{display:flex;flex-direction:column;gap:8px}.mrow{display:flex;gap:8px}.mrow .tile{aspect-ratio:auto;height:100%;border-radius:0}
.mrow.r0{height:calc(min(100vw,1180px)*.196)}.mrow.r1{height:calc(min(100vw,1180px)*.172)}.mrow.r2{height:calc(min(100vw,1180px)*.162)}.mrow.rx{height:calc(min(100vw,1180px)*.17)}
.tile span{display:flex;justify-content:space-between;align-items:flex-end;font-size:.85rem;padding:30px 12px 9px}.tile span em{font-style:normal;font-weight:500}.tile span b{font-weight:400}
.feat-sec{padding-top:30px}.featbox{display:grid;grid-template-columns:1.45fr 1fr;background:#f4f0e8}.featbox img{width:100%;height:100%;min-height:260px;object-fit:cover}.featp{padding:22px 24px}.featp h4{font-family:var(--serif);font-size:.95rem;margin:0 0 2px;color:#1c1c1c}.featp p{font-size:.82rem;color:#444;margin:0 0 14px}
.cta-light{background:#efe9de;color:#222}.cta-light>img{left:auto;right:0;width:60%;opacity:.55;mask-image:linear-gradient(90deg,transparent,#000 55%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 55%)}
.cta-light h2{color:#1c1c1c;font-size:clamp(1.8rem,4vw,2.6rem)}.cta-light p{color:#333}.cta-light .btn{padding:16px 30px}
@media(max-width:700px){.mrow{flex-wrap:wrap;height:auto!important}.mrow .tile{flex:1 1 45%!important;height:150px}.featbox{grid-template-columns:1fr}}

/* KBH home mockup */
.faq summary{list-style:none;position:relative;padding-left:20px}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;border-radius:50%;background:var(--acc)}.faq summary:after{content:"+";float:right;font-weight:400}.faq details[open] summary:after{content:"\2212"}
.about{display:grid;grid-template-columns:52.3fr 42fr;gap:2.6%;padding:5px 0 5px 5.1%;background:#fff;align-items:stretch}.about-img img{width:100%;height:100%;min-height:240px;object-fit:cover}.about-tx{padding:12px 5% 12px 0;align-self:center}.about-tx .eyebrow{font-size:.62rem}
.icons{display:grid;grid-template-columns:repeat(4,1fr);margin-top:22px}.icons>div{padding:0 10px;border-left:1px solid #ddd;font-size:.8rem}.icons>div:first-child{border:0;padding-left:0}.ico2{display:block;width:26px;height:26px;border:2px solid var(--acc);border-radius:6px;margin-bottom:8px}
.card-b.sq{display:flex;justify-content:space-between;gap:10px;align-items:flex-end}.sqa{font-style:normal;flex:none;width:30px;height:30px;border:1px solid #bbb;display:flex;align-items:center;justify-content:center;font-size:.85rem}
.card-b.capr{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px}.card-b.capr h3{margin:0;font-size:.82rem}.card-b.capr i{font-style:normal;font-size:.62rem;color:#777;border:1px solid #ddd;padding:3px 8px;white-space:nowrap}
.ap{background:#fff}.ap-top{width:100%;aspect-ratio:3.1/1;object-fit:cover}.ap-b{display:flex;gap:10px;padding:8px;background:#f6f1e9;align-items:center}.ap-th{width:52px;height:46px;object-fit:cover;flex:none}.ap-b h3{font-size:.85rem;margin:0 0 2px}.ap-b p{font-size:.72rem;margin:0;color:#666}
.ba{display:grid;grid-template-columns:44.5fr 55.5fr;background:#f6f2ea;align-items:center}.ba-tx{padding:24px 5%}.ba-img{position:relative;display:grid;grid-template-columns:1fr 1.18fr}.ba-p{position:relative;aspect-ratio:2.24/1}.ba-p img{width:100%;height:100%;object-fit:cover}.ba-p em{position:absolute;left:8px;bottom:8px;background:rgba(0,0,0,.6);color:#fff;font-style:normal;font-size:.7rem;padding:3px 9px}.ba-h{position:absolute;left:46%;top:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid #ccc;display:flex;align-items:center;justify-content:center;font-size:.7rem;letter-spacing:2px}
@media(max-width:900px){.about,.ba{grid-template-columns:1fr;padding-left:0}.about-tx{padding:20px}.icons{grid-template-columns:repeat(2,1fr);gap:14px}.ba-img{grid-template-columns:1fr 1fr}}

/* Home mockup */
.sec-head.ctr{text-align:center}.sec-head.ctr .lead{margin-left:auto;margin-right:auto}
.dual.half .dcard{grid-template-columns:1fr 1fr}.dual.half .dcard>div{display:flex;flex-direction:column;justify-content:center}.dual.half .dcard img{min-height:150px}
.card.flat{background:transparent;border:0;border-radius:0}.card.flat .card-b{padding:8px 4px}.card.flat .card-b h3{font-size:.9rem}.card.flat .card-b p{font-size:.72rem;color:#777}.card.flat img{aspect-ratio:233/117}
.groups{display:grid;grid-template-columns:1fr 1fr;gap:0}.grp{padding:0 20px}.grp+.grp{border-left:1px solid #ddd}.glabel{font-size:.7rem;letter-spacing:.14em;font-weight:600;display:flex;align-items:center;gap:10px;margin:8px 0 14px}.glabel i{display:inline-block;width:22px;height:2px;background:var(--acc)}
.gth{gap:10px}.gi img{width:100%;aspect-ratio:108/103;object-fit:cover}.gi span{display:block;font-family:var(--serif);font-size:.78rem;padding:6px 0}.ctr-btn{text-align:center}.ctr-btn .btns{justify-content:center}
.feats.inl .feat{display:flex;gap:14px;align-items:flex-start;padding:0 14px}.feats.inl .feat:first-child{border-left:0}.feats.inl .feat div{flex:1}.feats.inl h3{font-size:.95rem;margin-bottom:4px}.ico-s{display:flex;align-items:center;justify-content:center;flex:none;width:52px;height:52px;margin:0;background:#7a5420}.ico3{width:26px;height:26px}
.band{display:grid;grid-template-columns:54fr 46fr;background:linear-gradient(120deg,#f6f2ea,#ece5d8);align-items:center}.band-img img{width:100%;height:100%;min-height:200px;object-fit:cover;display:block}.band-tx{padding:24px 6%}
.steps.inl{grid-template-columns:repeat(4,1fr)}.steps.inl .step{display:flex;gap:12px;align-items:flex-start;position:relative}.steps.inl .step b{flex:none;margin:0}.steps.inl .step:not(:last-child):after{content:"›";position:absolute;right:-10px;top:8px;font-size:1.6rem;color:#aaa}.steps.inl h3{font-size:.95rem;margin-bottom:3px}
.cta-c .cta-in{flex-direction:column;justify-content:center;text-align:center}.cta-c .btns{justify-content:center}.cta-c>img{opacity:.85}
@media(max-width:900px){.groups,.band{grid-template-columns:1fr}.grp+.grp{border-left:0;border-top:1px solid #ddd;margin-top:16px;padding-top:16px}.steps.inl{grid-template-columns:1fr 1fr}.steps.inl .step:after{display:none}}

/* QC home mockup */
.split.wide{grid-template-columns:49fr 51fr}.split.wide .split-img img{aspect-ratio:500/175}
.ilist{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin-top:16px}.ilist>div{display:flex;gap:10px;align-items:center;font-size:.88rem}.ilist svg{width:26px;height:26px;display:block}
.feats.boxed{gap:14px}.feats.boxed .feat{background:#fff;border:0;padding:16px 14px;display:flex;gap:14px;align-items:flex-start}.feats.boxed .ico-s{background:transparent;width:44px;height:44px}.feats.boxed .ico3{width:36px;height:36px}.feats.boxed h3{font-size:.95rem;margin-bottom:4px}.feats.boxed .feat div{flex:1}
.steps.inl{grid-template-columns:repeat(var(--n,4),1fr)}.steps.inl .step b{width:48px;height:48px;font-size:1.05rem}
@media(max-width:900px){.steps.inl{grid-template-columns:1fr 1fr}.split.wide{grid-template-columns:1fr}.feats.boxed{grid-template-columns:1fr 1fr}}

/* Privacy mockup */
.hero-half .hero-img{left:auto;right:0;width:52%}.hero-half:after{background:linear-gradient(90deg,#f7f3ec 0,#f7f3ec 46%,rgba(247,243,236,0) 66%)}.hero .upd{margin-top:14px;font-size:.9rem;color:#222}.hero-half .hero-in>*{max-width:520px}
.legal-sec .legal{grid-template-columns:1.9fr 1fr;gap:44px;align-items:start}.lgl{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid #e6e1d8}.lgl:last-child{border:0}.lgl:first-child{padding-top:6px}
.lgl b{flex:none;width:44px;height:44px;border:1px solid var(--acc);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--acc);font-family:var(--sans);font-weight:500;font-size:1.05rem}
.lgl h2{font-size:1.3rem;margin:0 0 6px}.lgl p{font-size:.86rem;color:#555;margin:0 0 8px}.lbox{background:#f4f0e8;border-radius:4px;padding:14px 20px;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:8px 0 12px}.lbox ul,.lbul{margin:0;padding:0;list-style:none;font-size:.82rem;color:#555}.lbox li,.lbul li{position:relative;padding-left:16px;margin:5px 0}.lbox li:before,.lbul li:before{content:"";position:absolute;left:2px;top:.6em;width:5px;height:5px;border-radius:50%;background:var(--acc)}.lbul{margin-bottom:6px}
.legal aside img{width:100%;aspect-ratio:285/437;object-fit:cover;border-radius:2px;margin-bottom:18px}.noteb.light{padding:22px}.noteb.light h3{display:flex;align-items:center;gap:12px;font-size:1.05rem}.noteb.light h3 svg{width:30px;height:30px}.noteb.light p{font-size:.85rem;color:#555;margin:0}
.cta-full>img{width:100%!important;left:0!important;right:auto;opacity:1!important;mask-image:none!important;-webkit-mask-image:none!important}.cta-full h2{font-size:clamp(1.6rem,3vw,2.1rem)}.cta-full .cta-in{padding-top:30px;padding-bottom:30px}.cta-full .btn{padding:12px 28px}
@media(max-width:900px){.legal-sec .legal{grid-template-columns:1fr}.lbox{grid-template-columns:1fr}.hero-half .hero-img{width:100%}.hero-half:after{background:rgba(247,243,236,.85)}}

/* Privacy page - final polish (matches mockup) */
.hero-half .hero-in{width:100%}
.cta-full .cta-in{padding-top:14px;padding-bottom:14px;gap:6px}
.cta-full h2{font-size:clamp(1.3rem,2.3vw,1.65rem);margin:0}
.cta-full p{font-size:.85rem;margin:2px 0 0}
.cta-full .btns{margin-top:8px}
.cta-full .btn{padding:7px 24px;font-size:.8rem}
.cta-full>img{object-fit:cover;object-position:center}

/* Header: keep menu on one line on smaller desktops (same header on every page) */
.nav a{white-space:nowrap}
@media(min-width:901px) and (max-width:1180px){.hd{gap:14px}.nav{gap:14px;font-size:.78rem}.hd-cta{padding:9px 14px;font-size:.8rem;white-space:nowrap}.logo-img{height:38px}}
.fbot{flex-wrap:wrap;gap:8px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--acc);outline-offset:2px}

/* v2.2.0 - single project page */
.pd-hero{min-height:300px}.pd-meta{display:flex;gap:34px;flex-wrap:wrap;margin-top:18px}.pd-meta>div{display:flex;gap:10px;align-items:center}.pd-meta i{display:flex;width:34px;height:34px}.pd-meta svg{width:100%;height:100%}.pd-meta span{font-size:.85rem;color:#222}.pd-meta small{display:block;font-size:.72rem;color:#666}
.pd-box{background:#f3efe8;padding:30px 32px;border-radius:3px}.pd-ticks{grid-template-columns:1fr}
.pd-gal{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pd-gal .tile{aspect-ratio:4/3;border-radius:0}.pd-gal .tile.big{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.pd-out{display:flex;gap:18px;align-items:flex-start}.pd-out>i{display:flex;width:48px;height:48px;flex:none}.pd-out svg{width:100%;height:100%}
@media(max-width:700px){.pd-gal{grid-template-columns:1fr 1fr}.pd-box{padding:20px}}


/* ===== v2.3.0 ===== */
/* 1) Hero banners (all pages): text always on the LEFT, aligned with the logo / page content */
.hero .hero-in{width:100%;margin-left:auto;margin-right:auto;text-align:left}
.hero .hero-in>*{margin-left:0;margin-right:0}
.hero .btns{justify-content:flex-start}
/* 2) "Every Detail Has a Purpose": no white boxes under shorter cards - the beige panel fills the whole card */
.ap{display:flex;flex-direction:column;background:#f6f1e9}
.ap-top{flex:none}
.ap-b{flex:1 1 auto;align-items:center}
/* 3) UI polish (look is unchanged, only smoother / more refined) */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:var(--acc);color:#fff}
.site-h{backdrop-filter:saturate(1.2) blur(6px);background:rgba(255,255,255,.96)}
.nav a{transition:border-color .2s,color .2s}.nav a:hover{color:var(--acc)}
.btn{transition:transform .18s ease,box-shadow .18s ease,filter .2s}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.14);filter:brightness(1.06)}
.btn:active{transform:translateY(0);box-shadow:none}
.card,.dcard,.feat,.gi,.tile,.ap{transition:transform .25s ease,box-shadow .25s ease}
a.card:hover,.gi:hover,.tile:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.10)}
.gi img,.tile img,.card img{transition:transform .5s ease}
.gi:hover img,.tile:hover img,a.card:hover img{transform:scale(1.03)}
.gi,.tile,.card{overflow:hidden}
.fgrid a{transition:color .2s,padding-left .2s}.fgrid a:hover{color:#fff;padding-left:3px}
.soc a{transition:background .2s,transform .2s}.soc a:hover{transform:translateY(-2px)}
details.faq summary,.faq summary{transition:color .2s}
input,select,textarea{transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(138,93,31,.15);outline:none}
@media(max-width:600px){.hero-in{padding-top:40px;padding-bottom:40px}.sec{padding:40px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
/* Home hero slider (v2.4.0) */
.hero-slides{position:absolute;inset:0}
.hero-slider .hero-slide{opacity:0;transition:opacity .9s ease}.hero-slider .hero-slide.on{opacity:1}
.hs-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.88);color:#1c1c1c;font-size:16px;line-height:1;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.18);transition:background .2s}
.hs-arrow:hover{background:#fff}.hs-prev{left:16px}.hs-next{right:16px}
.hs-dots{position:absolute;left:0;right:0;bottom:16px;z-index:4;display:flex;justify-content:center;gap:9px}
.hs-dot{width:11px;height:11px;padding:0;border-radius:50%;border:2px solid #fff;background:rgba(255,255,255,.45);cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.25)}.hs-dot.on{background:var(--acc);border-color:#fff}
@media(max-width:600px){.hs-arrow{width:36px;height:36px;font-size:13px}.hs-prev{left:8px}.hs-next{right:8px}}
@media(prefers-reduced-motion:reduce){.hero-slider .hero-slide{transition:none}}
