
/* No external CSS/fonts: offline friendly and fast. */
:root{--green:#254936;--green-dark:#183629;--olive:#5f7451;--gold:#ba8c49;--sand:#f7f2ea;--cream:#fffdfa;--ink:#282d28;--muted:#687169;--line:#e7e1d6;--shadow:0 18px 55px rgba(32,45,30,.095)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.7}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.18}h1{font-size:clamp(42px,5vw,75px);font-weight:500;letter-spacing:-1.5px}h2{font-size:clamp(28px,3.1vw,47px);font-weight:500}h3{font-size:24px;font-weight:500}.container{max-width:1180px;margin:auto;padding:0 28px}.topbar{background:var(--green-dark);color:#e7e6d7;font-size:11px;letter-spacing:.6px}.topbar .container{display:flex;justify-content:space-between;gap:18px;padding-top:9px;padding-bottom:9px}.topbar a{color:#d8dfd5}.topbar span{white-space:nowrap}.header{position:sticky;top:0;z-index:40;background:rgba(255,253,250,.98);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header .container{display:flex;align-items:center;gap:26px;min-height:92px}.brand{display:block;width:256px;flex-shrink:0}.brand img{width:100%}.nav{display:flex;align-items:center;gap:19px;margin-left:auto}.nav a{font-size:12px;font-weight:700;letter-spacing:.2px;white-space:nowrap;transition:color .2s}.nav a.active{color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--gold);border:1px solid var(--gold);color:white!important;font-weight:700;font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:14px 23px;transition:.2s}.btn:hover{background:#94703b;border-color:#94703b;transform:translateY(-2px)}.btn-outline{background:transparent;color:var(--green)!important;border-color:#a8ae99}.btn-outline:hover{background:var(--green);color:white!important}.menu-toggle{display:none;background:transparent;border:0;padding:10px;margin-left:auto}.menu-toggle span{display:block;width:24px;height:2px;background:var(--green);margin:5px 0}.hero{min-height:600px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(19,31,19,.82) 0%,rgba(19,31,19,.59) 38%,rgba(19,31,19,.02) 78%),url('/assets/images/hero.webp') center 47%/cover;color:white;position:relative}.hero .container{width:100%;position:relative}.hero .eyebrow{color:#e9c68b}.hero h1{max-width:650px;margin:15px 0 25px}.hero h1 em{color:#f1ca85;font-style:normal}.hero p{max-width:495px;font-size:17px;color:#f6f3e9;margin-bottom:30px}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;font-weight:700}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero .btn-outline{border-color:#ddd5c4;color:#fff!important}.hero .btn-outline:hover{background:#fff;color:var(--green)!important}.features{background:#f8f5ef;border-bottom:1px solid var(--line)}.features-inner{display:grid;grid-template-columns:repeat(4,1fr)}.feature{padding:29px 24px;text-align:center;border-right:1px solid #e6dfd1;line-height:1.45}.feature:last-child{border:0}.feature b{display:block;font-size:14px;color:var(--green);font-weight:700}.feature .symbol{font-size:26px;color:var(--gold);display:block;margin-bottom:7px}.section{padding:91px 0}.section.alt{background:var(--sand)}.section-head{text-align:center;max-width:740px;margin:0 auto 42px}.section-head h2{margin:9px 0 15px}.section-head p{color:var(--muted);max-width:620px;margin:auto}.divider-line{width:50px;height:2px;background:var(--gold);margin:17px auto}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.service-card,.blog-card{background:white;border:1px solid #ebe4d8;box-shadow:0 9px 25px rgba(42,44,31,.035);height:100%;overflow:hidden;transition:transform .3s,box-shadow .3s}.service-card:hover,.blog-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.cover{height:210px;overflow:hidden;background:#cfc7b5}.cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover img,.blog-card:hover img{transform:scale(1.05)}.service-card .body,.blog-card .body{padding:22px}.service-card h3,.blog-card h3{font-size:22px;margin:6px 0 12px}.card-sub{color:var(--gold);font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:1.8px}.service-card p,.blog-card p{font-size:13px;color:var(--muted)}.text-link{display:inline-block;color:var(--green);text-transform:uppercase;font-weight:700;font-size:11px;letter-spacing:1px;border-bottom:1px solid var(--gold);padding-bottom:4px}.split{display:grid;grid-template-columns:1fr 1fr;gap:67px;align-items:center}.split img{height:495px;width:100%;object-fit:cover}.split h2{margin:12px 0 22px}.split p{color:var(--muted)}.soft-box{padding:42px;background:var(--sand);border-left:3px solid var(--gold)}.price-preview{display:grid;grid-template-columns:repeat(2,1fr);gap:0 45px}.price-row{display:flex;justify-content:space-between;gap:24px;padding:17px 0;border-bottom:1px solid var(--line)}.price-row b{font-size:14px}.price-row span{white-space:nowrap;color:var(--gold);font-weight:700;font-size:13px}.note{font-size:12px!important;color:#777!important}.banner{padding:85px 0;background:linear-gradient(105deg,rgba(25,58,39,.96),rgba(33,79,48,.84)),url('/assets/images/interior.webp') center/cover;color:white}.banner .container{display:flex;align-items:center;justify-content:space-between;gap:35px}.banner h2{margin:10px 0;max-width:700px}.banner p{color:#e3e8db}.banner .eyebrow{color:#d6b77c}.footer{background:#1d382c;color:#d5e0d5}.footer-grid{padding-top:70px;padding-bottom:53px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px}.footer-logo{background:#fff;padding:9px 15px;display:block;max-width:235px;margin-bottom:22px}.footer p,.footer a{color:#c7d5ca;font-size:13px}.footer h4{font-size:15px;color:white;font-family:'Playfair Display',Georgia,serif;font-weight:500;margin:0 0 20px}.footer-links{display:grid;gap:9px}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding:18px 28px;text-align:center;font-size:11px}.page-hero{padding:85px 0 72px;background:linear-gradient(90deg,rgba(22,54,39,.97),rgba(26,56,42,.86)),url('/assets/images/hero.webp') center 45%/cover;color:white}.page-hero h1{font-size:clamp(36px,4.4vw,57px);margin:10px 0 12px}.page-hero p{color:#e7eae1;max-width:740px;margin:0}.breadcrumbs{font-size:11px;letter-spacing:.6px;color:#e2cba7}.breadcrumbs a{color:#f5e8cb}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:55px}.article-body{font-size:15px;line-height:1.95;color:#444c45}.article-body p{margin-bottom:21px}.article-body h2{margin-top:34px;font-size:29px}.article-body ul{padding-left:24px}.sidebar{background:#f8f5ee;padding:30px;height:fit-content;border:1px solid var(--line)}.sidebar h3{font-size:23px}.sidebar a{display:block;border-bottom:1px solid #e9e3d8;padding:11px 0;font-size:13px}.image-wide{width:100%;max-height:410px;object-fit:cover;margin:15px 0 29px}.service-detail{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:start}.service-detail>img{height:510px;width:100%;object-fit:cover}.tag{font-size:11px;letter-spacing:1.3px;color:var(--gold);font-weight:700}.pill-list{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.pill{padding:8px 11px;background:#f2eee4;font-size:12px;border:1px solid #e7decf;color:#385341}.mini-table{width:100%;border-collapse:collapse;margin:20px 0 25px}.mini-table td{padding:12px;border-bottom:1px solid var(--line);font-size:13px}.mini-table td:last-child{text-align:right;color:#9e7b45;font-weight:700;white-space:nowrap}.booking-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:50px}.contact-panel{background:var(--green);color:white;padding:45px}.contact-panel h2{font-size:37px}.contact-panel a,.contact-panel p{color:#e8e9dd}.contact-panel .eyebrow{color:#e4c189}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid .wide{grid-column:1/-1}label{display:block;color:#314234;font-size:12px;font-weight:700;margin-bottom:7px}input,select,textarea{border:1px solid #d9d9ce;padding:12px 13px;border-radius:0;background:white;color:#273c2b;width:100%;outline:none}input:focus,select:focus,textarea:focus{border-color:#a28a58}textarea{min-height:112px;resize:vertical}.faq{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;font-size:16px;font-weight:700;padding:18px 15px;color:var(--green);display:flex;justify-content:space-between}.faq summary:after{content:'+';font-size:22px;color:var(--gold)}.faq[open] summary:after{content:'−'}.faq .answer{padding:0 15px 18px;color:#62685d}.wide-links{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.wide-links a{padding:18px 20px;background:#f9f5ee;border-left:3px solid var(--gold);color:var(--green);font-weight:700;font-size:13px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery-grid img{height:260px;width:100%;object-fit:cover}.gallery-grid img:first-child{grid-column:span 2;height:330px}.notice{background:#fff7e6;border-left:3px solid var(--gold);padding:15px 20px;color:#61543c;font-size:13px}.nav-cta{margin-left:0}.mobile-cta{display:none}.callout-card{background:#f3ead8;padding:32px;border-left:3px solid var(--gold)}.callout-card strong{color:var(--green)}
@media(max-width:1100px){.brand{width:216px}.nav{gap:12px}.nav a{font-size:11px}.header .container{gap:15px}.nav-cta{padding:12px 14px}}@media(max-width:900px){.header .container{min-height:80px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:80px;left:0;right:0;background:#fff;padding:20px 28px 28px;box-shadow:0 18px 30px #0002;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:12px;border-bottom:1px solid var(--line);font-size:14px}.nav-cta{display:none}.features-inner,.grid.four{grid-template-columns:repeat(2,1fr)}.split,.service-detail,.booking-grid{grid-template-columns:1fr;gap:35px}.content-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}.hero{min-height:540px}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.container{padding:0 19px}.topbar .container{gap:8px}.topbar span:last-child{display:none}.brand{width:205px}.hero{min-height:550px;background-position:63% 45%}.hero h1{font-size:44px}.hero p{font-size:15px}.section{padding:64px 0}.page-hero{padding:65px 0}.grid,.grid.four,.price-preview,.footer-grid,.wide-links,.gallery-grid,.form-grid{grid-template-columns:1fr}.features-inner{grid-template-columns:repeat(2,1fr)}.feature{padding:22px 9px}.feature b{font-size:11px}.cover{height:235px}.split img,.service-detail>img{height:300px}.footer-grid{gap:24px}.banner .container{display:block}.banner .btn{margin-top:10px}.gallery-grid img,.gallery-grid img:first-child{height:240px;grid-column:auto}.form-grid .wide{grid-column:auto}.contact-panel{padding:30px}.content-grid{gap:25px}.hero-actions .btn{padding:13px 15px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
