:root{--ink:#2b211b;--paper:#fffaf5;--muted:#67594d;--line:#e7ddd2;--accent:#995027}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b67738;outline-offset:4px}h1,h2,h3,p,ul{margin:0}ul{list-style:none;padding:0}h1,h2,h3{line-height:1.15}p+p{margin-top:1rem}[hidden]{display:none!important}
.container{width:min(1240px,100%);margin-inline:auto;padding-inline:24px}.section{padding-block:clamp(48px,7vw,88px)}.flex,.flex-between,.flex-between-md{display:flex}.flex-between,.flex-between-md{justify-content:space-between;align-items:center;gap:24px}.items-center{align-items:center}.flex-wrap{flex-wrap:wrap}.flex-col{display:flex;flex-direction:column}.flex-center{display:grid;place-items:center}.gap-1{gap:12px}.gap-2{gap:24px}.text-center{text-align:center}.text-white{color:#fffaf5}.text-light{color:#eadac8}.skip-link{position:absolute;top:-100px;left:16px;z-index:200;background:white;padding:12px}.skip-link:focus{top:12px}
.top-bar{background:var(--ink);color:#eadac8;font-size:12px;padding:6px 0}.site-header{position:sticky;top:0;z-index:100;background:#fffaf5;border-bottom:1px solid var(--line)}.header-container{min-height:88px;position:relative;gap:20px}.brand-logo{display:flex;align-items:center;min-width:0}.brand-image{width:64px;height:64px;object-fit:contain;border-radius:4px;flex-shrink:0}.brand-name{font-size:21px;font-weight:800;line-height:1.2}.brand-accent{color:#986133;font-style:italic}.brand-tagline{display:block;font-size:9px;letter-spacing:.09em;color:#765235;margin-top:6px}.main-nav{display:none}.nav-link{font-size:14px;font-weight:600}.nav-link:hover,.footer-links a:hover{color:#b77940}.quick-call-badge{display:none;border:1px solid #d6b993;border-radius:30px;padding:10px 16px;background:#f3e8d6;color:#704625;font-weight:700;font-size:13px}
.mobile-menu{margin-left:auto;flex-shrink:0}.mobile-menu-button{display:grid;place-content:center;gap:5px;width:44px;height:44px;border:1px solid #ddc19f;border-radius:6px;background:#f3e8d6}.mobile-menu-button span{width:20px;height:2px;background:#704625;transition:transform .15s,opacity .15s}.mobile-menu-button[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}.mobile-menu-button[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu-panel{position:absolute;top:100%;left:16px;right:16px;display:grid;padding:8px;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 22px #2b211b20}.mobile-menu-panel a{padding:12px 16px;border-bottom:1px solid var(--line)}.mobile-menu-panel a:last-child{border:0}.mobile-menu-panel a:hover{background:#f3e8d6}
.hero-section{position:relative;background:#2b211b;color:var(--paper);padding-block:64px;overflow:hidden}.hero-media-wrapper{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,#241c17,#503923)}.hero-bg-overlay{position:absolute;inset:0;background:repeating-linear-gradient(100deg,transparent 0 68px,#d0a3720a 69px 71px,transparent 72px 130px)}.hero-container{position:relative;display:grid;gap:40px;align-items:center}.hero-container>*{min-width:0}.hero-title{font:500 clamp(38px,5vw,62px)/1.08 Georgia,serif;letter-spacing:-.035em;margin-bottom:24px}.highlight-cyan{color:#e2b77d}.hero-lead{font-size:18px;max-width:590px;color:#eadac8}.hero-features-list{margin:24px 0}.hero-actions{margin-bottom:28px}.hero-trust{border-top:1px solid #ffffff25;padding-top:18px;flex-wrap:wrap;font-size:13px;color:#eadac8}
.subheading-pill{display:inline-block;color:#79512d;background:#f3e8d6;padding:4px 10px;margin-bottom:16px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.subheading-pill.light{background:#ffffff10;color:#eadac8}.section-title{font:500 clamp(28px,3.3vw,42px)/1.16 Georgia,serif;margin-bottom:18px}.section-subtitle{max-width:640px;color:var(--muted)}.text-light.section-subtitle{color:#eadac8}.section-header{margin-bottom:32px}.text-center .section-subtitle{margin-inline:auto}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid transparent;border-radius:5px;font-weight:700;font-size:14px;text-align:center}.btn-accent,.btn-primary{background:var(--accent);color:white}.btn-accent:hover,.btn-primary:hover{background:#783b1b}.btn-outline-white{border-color:#ffffff60;color:white}.btn-outline-white:hover{background:#ffffff15}.btn-block{width:100%}
.glass-card{background:var(--paper);color:var(--ink);padding:clamp(20px,3vw,32px);border-radius:6px}.form-title{font:500 28px/1.2 Georgia,serif;margin-bottom:12px}.contact-details{display:grid;gap:6px;padding:14px;margin:16px 0;background:#f3e8d6;border-left:3px solid #b77940}.contact-details a{color:#704625;overflow-wrap:anywhere;font-size:15px;font-weight:600}.hero-contact form{display:grid;gap:14px}.hero-contact label{display:grid;gap:5px;font-weight:600;font-size:13px}input,textarea{width:100%;min-width:0;border:1px solid #d8c9ba;background:white;border-radius:4px;padding:11px;color:var(--ink);font-size:16px}textarea{resize:vertical}.form-note{font-size:12px;color:var(--muted)}
.intro-layout{display:grid;gap:24px}.intro-description{color:var(--muted)}.section-services,.advice-section{background:#f4eee8}.services-grid,.advice-grid{display:grid;gap:16px}.card,.advice-card{padding:26px;border:1px solid var(--line);background:var(--paper);border-radius:4px}.service-icon-box{font-size:24px;color:#985d30;margin-bottom:18px;width:42px;height:42px;background:#f3e8d6}.service-title,.advice-card h3{font:500 24px/1.2 Georgia,serif;margin-bottom:12px}.service-text,.advice-card p{font-size:15px;color:var(--muted)}.advice-number{display:block;font:24px Georgia,serif;color:#995027;margin-bottom:16px}.advice-section{border-top:1px solid var(--line)}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gallery-grid img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:4px}
.pre-footer-cta{background:#211812;padding:48px 0;color:var(--paper)}.pre-footer-container>div{max-width:780px}.pre-footer-container>.btn{flex-shrink:0}.site-footer{background:#30231b;color:#eadac8;padding-top:48px}.footer-container{display:grid;gap:32px;padding-bottom:40px}.footer-logo{display:flex;align-items:center;gap:16px;margin-bottom:16px}.footer-brand-title{font-size:24px;font-weight:700}.footer-col-title{font-size:18px;margin-bottom:16px}.footer-links li{margin:8px 0;overflow-wrap:anywhere}.footer-bottom-bar{border-top:1px solid #ffffff20;padding:20px 0 96px}.footer-bottom-container{display:flex;justify-content:space-between;gap:16px;font-size:12px;flex-wrap:wrap}
.floating-phone-btn{position:fixed;z-index:90;right:20px;bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 20px;border-radius:30px;background:#995027;color:white;box-shadow:0 6px 20px #21181240;font-size:14px;font-weight:700}.floating-phone-icon{font-size:20px;line-height:1}.floating-phone-btn:hover{background:#783b1b}
@media(min-width:768px){.intro-layout{grid-template-columns:1fr 1.3fr;gap:64px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.advice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.footer-container{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.main-nav,.quick-call-badge{display:block}.mobile-menu{display:none}.hero-container{grid-template-columns:1.2fr 1fr;gap:60px}.services-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:767px){.container{padding-inline:16px}.top-bar{display:none}.header-container{min-height:80px;gap:12px}.brand-image{width:54px;height:54px}.brand-name{font-size:18px}.brand-tagline{font-size:8px;max-width:200px}.hero-section{padding-block:40px}.hero-lead{font-size:16px}.flex-between-md{flex-direction:column;align-items:flex-start}.pre-footer-container{align-items:stretch;gap:20px}.pre-footer-container .btn{align-self:flex-start}.floating-phone-btn{left:16px;right:16px}.footer-bottom-container{flex-direction:column}.section-header{gap:12px}.hero-features-list{font-size:14px}}
@media(max-width:360px){.brand-name{font-size:16px}.brand-tagline{font-size:7px}.brand-logo{gap:8px}.hero-actions .btn{width:100%}.gallery-grid{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Contact control and section finishing */
.floating-phone-btn{gap:12px;min-height:64px;padding:8px 18px 8px 8px;border:1px solid #e3ae79;border-radius:18px;background:#8d4826;box-shadow:0 8px 26px #21181245;transition:background .2s,transform .2s,box-shadow .2s}
.floating-phone-btn:hover{background:#713819;transform:translateY(-3px);box-shadow:0 12px 28px #21181255}
.floating-phone-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:12px;background:#ffffff20}
.floating-phone-copy{display:grid;line-height:1.2;text-align:left}
.floating-phone-label{font-size:11px;font-weight:500;letter-spacing:.04em;color:#f3d6be}
.floating-phone-number{font-size:16px;font-weight:800;letter-spacing:.01em;color:#fff}
.mobile-menu-button{border-radius:10px;background:#eee0cf;transition:background .2s,box-shadow .2s}
.mobile-menu-button:hover,.mobile-menu-button[aria-expanded="true"]{background:#dec8ac;box-shadow:0 2px 9px #2b211b20}
.mobile-menu-panel{border-radius:0 0 12px 12px;padding:12px;box-shadow:0 18px 30px #2b211b26}
.mobile-menu-panel a{border-radius:6px;font-weight:650}
.section-intro{position:relative;background:linear-gradient(120deg,#fffaf5 60%,#f2e6d5)}
.section-intro::before{content:"";position:absolute;left:max(24px,calc((100% - 1192px)/2));top:0;width:68px;height:4px;background:#a66a39}
.intro-layout{align-items:center}
.intro-layout .section-title{max-width:470px}
.intro-layout>div:last-child{border-left:1px solid #ddc9b1;padding-left:clamp(20px,4vw,48px)}
.section-services{background:#eee4d8}
.section-services .section-header{margin-bottom:38px}
.service-card{position:relative;overflow:hidden;min-height:235px;transition:transform .2s,box-shadow .2s}
.service-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:#a66a39}
.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #2b211b14}
.service-icon-box{border-radius:8px}
.advice-section{background:#f7f1e9}
.advice-card{border-radius:8px}
.gallery-section{background:#fffaf5}
.gallery-section .section-header{padding-bottom:22px;border-bottom:1px solid #e3d4c1}
.gallery-grid img{border-radius:8px;transition:transform .2s,filter .2s}
.gallery-grid img:hover{transform:translateY(-3px);filter:saturate(1.08)}
@media(max-width:767px){.intro-layout>div:last-child{padding-left:20px}.floating-phone-btn{left:auto;right:16px;bottom:max(16px,env(safe-area-inset-bottom));min-height:58px;padding:7px 13px 7px 7px;border-radius:16px}.floating-phone-icon{width:42px;height:42px}.floating-phone-number{font-size:14px}.section-services .section-header{text-align:left}.service-card{min-height:0}}
@media(max-width:360px){.floating-phone-label{font-size:10px}.floating-phone-number{font-size:13px}}

/* A simple field guide, set like notes rather than feature cards */
.advice-section{background:#eee7dd;border-top:1px solid #d9c8b6;border-bottom:1px solid #d9c8b6}
.advice-section .section-header{text-align:left;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:64px;align-items:end;margin-bottom:44px;padding-bottom:30px;border-bottom:1px solid #cbb7a2}
.advice-section .section-header .subheading-pill{grid-column:1/-1;justify-self:start;margin-bottom:13px;background:none;padding:0;color:#8c5730}
.advice-section .section-title{max-width:590px;margin:0;font-size:clamp(31px,3.5vw,48px);letter-spacing:-.025em}
.advice-section .section-subtitle{font-size:16px;line-height:1.7;color:#62554b;max-width:360px;margin:0 0 4px}
.advice-grid{gap:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.advice-card{background:transparent;border:0;border-radius:0;padding:0 30px 6px 0;min-width:0}
.advice-card+.advice-card{border-left:1px solid #cbb7a2;padding-left:30px}
.advice-number{font:500 13px/1 system-ui,sans-serif;letter-spacing:.16em;color:#8c5730;margin:0 0 34px;display:flex;align-items:center;gap:14px}
.advice-number::after{content:"";width:34px;height:1px;background:#ae8968}
.advice-card h3{font:500 clamp(22px,2vw,29px)/1.15 Georgia,serif;letter-spacing:-.015em;color:#30251e;margin:0 0 16px}
.advice-card p{font-size:15px;line-height:1.75;color:#62554b;max-width:340px}
@media(max-width:767px){.advice-section .section-header{display:block;margin-bottom:8px;padding-bottom:20px}.advice-section .section-title{margin-bottom:15px}.advice-section .section-subtitle{max-width:560px}.advice-grid{display:block}.advice-card,.advice-card+.advice-card{border:0;border-bottom:1px solid #cbb7a2;padding:26px 0 30px}.advice-card:last-child{border-bottom:0;padding-bottom:0}.advice-number{margin-bottom:18px}.advice-card h3{margin-bottom:12px}.advice-card p{max-width:560px}}
