/* V30: single scoped homepage design. Replaces V29 CSS; existing catalog and admin stay untouched. */
:root{--brand-ink:#17251f;--brand-text:#28352e;--brand-muted:#4d5c53;--brand-cream:#f5f2eb;--brand-gold:#805b39}
html,body{max-width:100%;overflow-x:clip}
body{font-size:16px;color:var(--brand-text)}
.topline{font-size:12px;letter-spacing:.1em;padding:11px 12px;background:#1e2c25;color:#fff}
.header{background:#fff}
.header-inner{height:94px}
.logo{font-size:26px;color:#1c2d23}
.logo span{color:#8b6442}
.logo small{font-size:11px;color:#4d5b50;letter-spacing:.11em}
.nav{gap:26px;font-size:15px}
.nav a:not(.nav-cta){color:#25362a}
.nav-cta{background:#21372a;color:#fff;padding:15px 22px;border-radius:4px}
.v29-hero{background:#f4f1e9;overflow:hidden}
.v29-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);min-height:630px;align-items:stretch}
.v29-hero-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:78px 52px 70px 0}
.v29-eyebrow{font-size:13px;letter-spacing:.11em;font-weight:800;color:#795432}
.v29-hero h1{font:800 clamp(49px,5.1vw,78px)/1.11 Manrope,Arial,sans-serif;letter-spacing:-.055em;color:#1b2c21;margin:24px 0;max-width:770px;text-wrap:balance}
.v29-hero h1 em{font-style:normal;color:#795432}
.v29-hero-content>p{max-width:550px;font-size:19px;line-height:1.7;color:#394a40;margin:0 0 33px}
.v29-primary,.v29-cta-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;text-decoration:none;font-size:16px;font-weight:800;letter-spacing:0;padding:19px 27px;border-radius:5px;transition:background .2s ease}
.v29-primary{background:#20392a;color:#fff}
.v29-primary:hover{background:#355b41}
.v29-hero-meta{font-size:13px;letter-spacing:.08em;color:#526155;margin-top:38px;font-weight:700}
.v29-hero-meta span{margin:0 8px}
.v29-hero-visual{min-height:570px;background:#e5e0d6;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.v29-hero-visual:before{content:'';position:absolute;inset:22px;border:1px solid rgba(255,255,255,.7);pointer-events:none}
.v29-hero-visual img{display:block;width:100%;height:100%;max-height:630px;object-fit:contain;object-position:center;padding:26px}
.v29-photo-placeholder{font:800 clamp(48px,6vw,90px)/1 Manrope,Arial,sans-serif;letter-spacing:-.07em;color:#334638;text-align:center}
.v29-photo-placeholder span{color:#805b39}
/* Categories: generous, readable and not oversized */
.v11-categories{padding-top:85px!important;padding-bottom:93px!important}
.v11-head{margin-bottom:33px!important;align-items:end}
.v11-head .kicker{font-size:13px!important;color:#805b39}
.v11-head h2{font:800 clamp(34px,3.6vw,52px)/1.16 Manrope,Arial,sans-serif!important;letter-spacing:-.045em!important;color:#1c2d22;margin:12px 0 0!important}
.v11-head>a{font-size:16px!important;font-weight:700;color:#26392b;text-underline-offset:6px}
.v11-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important}
.v11-category{background:#faf9f6!important;border:1px solid #e1dfd8!important;border-radius:8px!important;box-shadow:none!important;transform:none!important;overflow:hidden}
.v11-category:hover{box-shadow:0 13px 25px rgba(20,35,25,.09)!important}
.v11-category-photo{aspect-ratio:5/3.6!important;background:#f3f0e9!important;overflow:hidden!important}
.v11-category-photo img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;padding:14px!important;transform:none!important}
.v11-category-caption{min-height:95px!important;padding:20px!important}
.v11-category-caption strong{font-size:19px!important;line-height:1.4;color:#1d3024}
.v11-category-caption small{font-size:14px!important;line-height:1.5;color:#566259;margin-top:5px}
.v11-category-caption span{top:18px!important;right:18px!important;font-size:22px;color:#304d39}
.v29-cta{background:#20352a;color:#fff;padding:77px 0}
.v29-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:42px}
.v29-cta .v29-eyebrow{color:#e1c09a;font-size:13px}
.v29-cta h2{color:#fff;font:800 clamp(32px,3.3vw,48px)/1.2 Manrope,Arial,sans-serif;letter-spacing:-.045em;max-width:710px;margin:14px 0}
.v29-cta p{font-size:17px;line-height:1.7;color:#e0e8e0;margin:0}
.v29-cta-button{flex:none;background:#fff;color:#20352a;white-space:nowrap}
.v29-cta-button:hover{background:#efe5d6}
footer{background:#17251d}
.footer-main b{font-size:19px}
.footer-main a,.footer-main p{font-size:15px;color:#d2dcd2}
.footnote{font-size:13px;color:#d0d8d0}
@media(max-width:1050px){.v29-hero-grid{min-height:560px}.v29-hero-content{padding:62px 30px 62px 0}.v29-hero h1{font-size:clamp(45px,5.4vw,65px)}.v11-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.v11-category-caption strong{font-size:17px!important}}
@media(max-width:760px){
 .topline{font-size:10px}
 .header-inner{height:76px}
 .logo{font-size:21px}.logo small{font-size:9px}
 .menu{display:block;color:#20352a}
 .v29-hero-grid{grid-template-columns:minmax(0,1fr);min-height:0}
 .v29-hero-content{padding:57px 0 42px}
 .v29-eyebrow{font-size:12px}
 .v29-hero h1{font-size:clamp(42px,9.4vw,62px);line-height:1.13;margin:19px 0 20px}
 .v29-hero-content>p{font-size:17px;line-height:1.65;margin-bottom:25px}
 .v29-primary{font-size:15px;padding:17px 20px}
 .v29-hero-meta{font-size:11px;margin-top:26px}
 .v29-hero-visual{min-height:360px;max-height:490px}
 .v29-hero-visual img{height:400px;max-height:490px;padding:16px}
 .v11-categories{padding-top:63px!important;padding-bottom:65px!important}
 .v11-head{margin-bottom:25px!important}
 .v11-head h2{font-size:clamp(31px,7vw,42px)!important}
 .v11-head>a{font-size:15px!important}
 .v11-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px!important}
 .v11-category-photo{aspect-ratio:1.1!important}
 .v11-category-photo img{padding:8px!important}
 .v11-category-caption{padding:14px!important;min-height:84px!important}
 .v11-category-caption strong{font-size:15px!important;padding-right:18px}
 .v11-category-caption small{font-size:12px!important}
 .v11-category-caption span{top:12px!important;right:10px!important;font-size:18px}
 .v29-cta{padding:58px 0}
 .v29-cta-inner{display:block}
 .v29-cta h2{font-size:clamp(30px,7vw,42px)}
 .v29-cta p{font-size:16px}
 .v29-cta-button{width:100%;margin-top:28px;white-space:normal;text-align:center}
 .footer-main a,.footer-main p{font-size:14px}
}
@media(max-width:370px){.v11-grid{grid-template-columns:1fr!important}.v11-category-photo{aspect-ratio:1.6!important}.v29-hero h1{font-size:41px}}
@media(prefers-reduced-motion:reduce){.v29-primary,.v29-cta-button{transition:none}}

/* V31 - warm editorial brand system, deliberately stronger contrast and colour */
:root{--brand-ink:#192c26;--brand-text:#24382f;--brand-muted:#48584e;--brand-cream:#eee5d7;--brand-gold:#bd8a54}
body{background:#f4f0e8!important;color:#20352a}
.topline{background:#17372d!important;color:#f9ebd8!important;letter-spacing:.15em}
.header{background:#f8f5ee!important;border-bottom:1px solid #d6cbbb}
.logo,.nav a:not(.nav-cta){color:#19382c!important}
.nav-cta{background:#ac7345!important;color:#fff!important}
.v29-hero{background:#e6d6bf!important}
.v29-hero-grid{min-height:650px}
.v29-hero-content{padding-top:75px;padding-bottom:75px}
.v29-hero h1{color:#173a2c!important}
.v29-hero h1 em{color:#98592e!important}
.v29-hero-content>p{color:#2c4034!important}
.v29-eyebrow{color:#86522b!important}
.v29-primary{background:#183d2d!important;color:#fff!important}
.v29-hero-visual{background:#c8b29a!important}
.v29-hero-visual:before{border-color:rgba(255,255,255,.65)}
.v11-categories{background:#f8f5ef!important;padding-top:86px!important;padding-bottom:92px!important}
.v11-head h2{color:#1b3b2d!important}
.v11-head .kicker{color:#965c33!important}
.v11-category{background:#eee7dc!important;border-color:#d5c9b8!important}
.v11-category-photo{background:#e6d9c8!important}
.v11-category-photo img{background:#e6d9c8!important}
.v11-category-caption{background:#f5eee4!important}
.v11-category-caption strong{color:#1a3529!important}
.v11-category-caption small{color:#4c5c50!important}
.v31-overline{display:block;color:#ae7849;font-size:12px;font-weight:800;letter-spacing:.16em;line-height:1.5}
.v31-about{background:#203d32;color:#fff;padding:92px 0}
.v31-about-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(40px,7vw,115px);align-items:center}
.v31-about-side{min-height:350px;border:1px solid #668072;background:#294b3c;padding:32px;display:flex;flex-direction:column;justify-content:space-between}
.v31-about-side .v31-overline{color:#f1cba3}
.v31-monogram{font-size:clamp(100px,15vw,200px);font-weight:900;line-height:1;letter-spacing:-.12em;color:#fff;white-space:nowrap}
.v31-monogram span{color:#d9ac7d}
.v31-about-side>p{font-size:17px;color:#f0ede5;line-height:1.55;margin:0}
.v31-about-copy .v31-overline{color:#e2b789}
.v31-about-copy h2{font-size:clamp(38px,4.2vw,58px);line-height:1.12;letter-spacing:-.05em;color:#fff;margin:16px 0 28px}
.v31-about-copy p{font-size:17px;line-height:1.85;color:#e4e9e2;margin:0 0 18px}
.v31-text-link{display:inline-block;margin-top:14px;font-size:16px;font-weight:800;color:#f3c99d;text-decoration:none;border-bottom:1px solid #f3c99d;padding-bottom:7px}
.v31-contact-band{background:#e7d6c0;padding:70px 0;color:#233a2e}
.v31-contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:start}
.v31-contact-band h2{font-size:clamp(36px,4vw,54px);letter-spacing:-.05em;line-height:1.1;margin:12px 0 17px;color:#1d3b2c}
.v31-contact-band p{font-size:17px;line-height:1.8;max-width:600px;color:#374d3d}
.v31-contact-info{display:grid;gap:19px;border-left:1px solid #bca68d;padding-left:34px}
.v31-contact-info>div{display:grid;gap:4px}
.v31-contact-info span,.v31-info-line span{font-size:12px;font-weight:800;letter-spacing:.13em;color:#80552e}
.v31-contact-info strong,.v31-contact-info a{font-size:17px;color:#18392a;overflow-wrap:anywhere}
.v29-cta{background:#a96d41!important;padding:74px 0}
.v29-cta .v29-eyebrow{color:#fff0d8!important}
.v29-cta h2,.v29-cta p{color:#fff!important}
.v29-cta-button{background:#1c3c2c!important;color:#fff!important}
footer{background:#172e24!important}
.footer-main p,.footer-main a{color:#e6e8df!important}
.v31-inner-head{background:#e6d6bf;padding:90px 0 85px}
.v31-inner-head h1{font-size:clamp(45px,5vw,72px);line-height:1.12;letter-spacing:-.055em;color:#183a2a;margin:17px 0 21px;max-width:860px}
.v31-inner-head p{font-size:19px;line-height:1.7;color:#364c3d;max-width:800px}
.v31-inner-content{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;padding-top:85px;padding-bottom:100px}
.v31-inner-content h2{font-size:clamp(33px,3.4vw,48px);line-height:1.18;color:#19392b;letter-spacing:-.04em;margin-top:18px}
.v31-inner-content p{font-size:17px;line-height:1.9;color:#394c3f;margin-top:0;margin-bottom:23px}
.v31-action{display:inline-flex;padding:17px 25px;background:#1c3d2d;color:#fff!important;font-size:16px;font-weight:800;text-decoration:none;border-radius:4px;margin-top:12px}
.v31-contact-page{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:75px;padding-bottom:90px}
.v31-contact-panel{background:#fffaf2;border:1px solid #d5c6b3;padding:42px;min-width:0}
.v31-contact-panel h2{font-size:clamp(31px,3.2vw,45px);color:#1b392c;letter-spacing:-.04em;line-height:1.2;margin:15px 0 30px}
.v31-info-line{display:grid;gap:6px;border-top:1px solid #e4d8c7;padding:20px 0}
.v31-info-line strong,.v31-info-line a{font-size:18px;color:#1e402f;overflow-wrap:anywhere}
.v31-contact-dark{background:#214132;color:#fff;border-color:#214132}
.v31-contact-dark .v31-overline{color:#e2b78b}
.v31-contact-dark h2{color:#fff}
.v31-contact-dark p{font-size:17px;line-height:1.85;color:#e3e9df}
.v31-action-light{background:#f0d0a7;color:#193a2a!important}
.v31-wa-float{position:fixed;right:24px;bottom:24px;z-index:90;display:flex;align-items:center;gap:10px;padding:13px 17px;background:#147b49;color:#fff!important;border-radius:50px;box-shadow:0 8px 26px rgba(0,0,0,.24);text-decoration:none;font-size:15px;font-weight:800;line-height:1;transition:transform .2s}
.v31-wa-float:hover{transform:translateY(-3px);background:#10673d}
.v31-wa-float svg{flex:none}
@media(max-width:800px){.v31-about-grid,.v31-contact-grid,.v31-inner-content,.v31-contact-page{grid-template-columns:1fr;gap:28px}.v31-about{padding:65px 0}.v31-about-side{min-height:240px}.v31-monogram{font-size:110px}.v31-contact-band{padding:58px 0}.v31-contact-info{border-left:0;border-top:1px solid #bca68d;padding:23px 0 0}.v31-inner-head{padding:60px 0}.v31-inner-content{padding-top:55px;padding-bottom:65px}.v31-contact-page{padding-top:45px;padding-bottom:65px}.v31-contact-panel{padding:27px}.v29-hero-grid{min-height:0}.v29-hero-content{padding-top:58px;padding-bottom:42px}}
@media(max-width:600px){.v31-about-copy h2{font-size:37px}.v31-about-copy p,.v31-contact-band p,.v31-inner-content p,.v31-contact-dark p{font-size:16px}.v31-wa-float{right:14px;bottom:14px;padding:12px;border-radius:50%;width:55px;height:55px;justify-content:center}.v31-wa-float span{display:none}.v31-wa-float svg{width:29px;height:29px}.v11-categories{padding-top:60px!important;padding-bottom:62px!important}}
@media(prefers-reduced-motion:reduce){.v31-wa-float{transition:none}}
