
:root{--green:#173f35;--green2:#2f6555;--cream:#f8f3e8;--white:#fff;--ink:#1f2925;--gold:#c9a96e}
*{box-sizing:border-box} body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
a{text-decoration:none;color:inherit}.wrap{width:min(1120px,92%);margin:auto}
header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e8e2d7}.nav{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:24px}
.brand{font-family:Georgia,serif;font-weight:700;color:var(--green);font-size:24px}.brand small{display:block;font:10px Arial;letter-spacing:3px;text-transform:uppercase}
nav{display:flex;gap:22px;align-items:center}.dropdown{position:relative}.dropbtn{border:0;background:none;font:inherit;cursor:pointer;padding:24px 0}
.menu{display:none;position:absolute;top:62px;left:-18px;background:#fff;min-width:270px;padding:10px;border-radius:10px;box-shadow:0 14px 35px #0002}.menu a{display:block;padding:10px 12px;border-radius:7px}.menu a:hover{background:var(--cream)}
.dropdown:hover .menu,.dropdown:focus-within .menu{display:block}.btn{display:inline-block;background:var(--green);color:#fff;padding:12px 20px;border-radius:999px;font-weight:700;border:0;cursor:pointer}.btn.alt{background:transparent;border:1px solid var(--green);color:var(--green)}
.hero{min-height:640px;display:grid;place-items:center;background:linear-gradient(90deg,#173f35e8,#173f3577),url('https://images.unsplash.com/photo-1581578731548-c64695cc6952?auto=format&fit=crop&w=1800&q=85') center/cover;color:#fff}
.hero .content{max-width:760px;padding:80px 0}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:12px;font-weight:700}.hero h1{font:700 clamp(44px,7vw,78px)/1.03 Georgia,serif;margin:14px 0}.hero p{font-size:20px;max-width:650px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero .btn.alt{border-color:#fff;color:#fff}
section{padding:80px 0}.center{text-align:center}.section-title{font:700 clamp(34px,5vw,52px)/1.1 Georgia,serif;color:var(--green);margin:8px 0 16px}.lead{max-width:760px;margin:0 auto 38px;color:#53615b}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #183f3510;border:1px solid #e8e2d7}.card .pad{padding:25px}.card h3{font:700 24px Georgia,serif;color:var(--green);margin:0 0 10px}.card p{color:#5c6762}.card a.more{color:var(--green2);font-weight:700}
.band{background:var(--green);color:#fff}.band .section-title{color:#fff}.band .lead{color:#e4eee9}
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.photo{min-height:430px;border-radius:24px;background:url('https://images.unsplash.com/photo-1527515637462-cff94eecc1ac?auto=format&fit=crop&w=1000&q=85') center/cover}
.checks{padding:0;list-style:none}.checks li{padding:8px 0}.checks li:before{content:"✓";font-weight:bold;color:var(--green2);margin-right:10px}
.quote{background:#fff;border-radius:22px;padding:34px;box-shadow:0 10px 35px #0001}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}
label{display:block;font-size:13px;font-weight:700;margin-bottom:5px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #d8d2c8;border-radius:9px;background:#fff;font:inherit}textarea{min-height:120px}
.notice{font-size:12px;color:#6c756f;margin-top:12px}.success{display:none;margin-top:16px;padding:12px;border-radius:9px;background:#edf7f2;color:var(--green)}
footer{background:#102d26;color:#dce8e3;padding:45px 0}.foot{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.foot strong{color:#fff}
.page-hero{padding:110px 0 70px;background:var(--green);color:#fff}.page-hero h1{font:700 clamp(42px,6vw,68px) Georgia,serif;margin:0 0 12px}
.service-body{max-width:850px}.service-body h2{font:700 32px Georgia,serif;color:var(--green)}
@media(max-width:800px){nav>a:not(.btn),.dropdown{display:none}.grid,.split,.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.hero{min-height:560px}.hero h1{font-size:48px}section{padding:58px 0}}


/* --- October mobile polish --- */
@media (max-width:800px){
  header{position:sticky;top:0}
  .nav{min-height:68px;gap:12px}
  .brand{font-size:clamp(20px,6vw,27px);line-height:1.05}
  .brand small{font-size:9px;letter-spacing:2.5px;margin-top:6px}
  nav{margin-left:auto}
  nav .btn{padding:11px 17px;font-size:14px;white-space:nowrap}

  .hero{min-height:540px}
  .hero .content{padding:64px 0 58px}
  .hero h1{font-size:clamp(42px,12vw,58px);line-height:1.02;margin:12px 0 18px}
  .hero p{font-size:18px;line-height:1.55}
  .hero .actions{gap:10px}
  .hero .btn{padding:12px 17px}

  section{padding:52px 0}
  .section-title{font-size:clamp(34px,9vw,44px)}
  .lead{font-size:17px;line-height:1.55;margin-bottom:28px}

  .grid{gap:14px}
  .card{border-radius:16px}
  .card .pad{padding:24px 22px}
  .card h3{font-size:clamp(25px,7vw,31px);line-height:1.12;margin-bottom:9px}
  .card p{margin:0 0 16px;line-height:1.5}
  .card a.more{display:inline-block}

  .page-hero{padding:62px 0 42px}
  .page-hero h1{font-size:clamp(38px,10vw,52px);line-height:1.04}
  .page-hero p{font-size:18px}
  .service-body h2{font-size:clamp(32px,8vw,40px);line-height:1.12;margin-top:0}
  .service-body .checks{margin:22px 0}
  .service-body .checks li{padding:7px 0}
  .service-body .actions{display:grid;grid-template-columns:1fr;gap:10px}
  .service-body .actions .btn{text-align:center;width:100%;padding:12px 16px}

  .split{gap:32px}
  .photo{min-height:330px}
  .quote{padding:24px 20px}
  footer{padding:36px 0}
}

/* --- Enhanced quote form --- */
.conditional-fields[hidden]{display:none}.conditional-box{padding:20px;border:1px solid #e1dbd0;border-radius:14px;background:var(--cream)}.conditional-box h3{font:700 22px Georgia,serif;color:var(--green);margin:0 0 14px}.quote button.btn{font-size:16px}.quote input:focus,.quote select:focus,.quote textarea:focus{outline:2px solid #2f655544;border-color:var(--green2)}

/* --- Our Work gallery framework --- */
.work-section{background:#fff}.work-grid{max-width:900px;margin:0 auto}.work-placeholder{overflow:hidden;border:1px solid #e8e2d7;border-radius:22px;background:var(--cream)}.work-pair{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ddd5c8}.work-slot{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#f8f3e8,#eee7da);color:#6b746f;text-align:center;padding:30px}.work-slot span{font-size:11px;font-weight:800;letter-spacing:3px;color:var(--green2)}.work-slot strong{font:700 25px Georgia,serif;color:var(--green)}.work-copy{padding:26px 28px;background:#fff}.work-copy h3{font:700 27px Georgia,serif;color:var(--green);margin:0 0 8px}.work-copy p{margin:0;color:#5c6762}.work-cta{margin-top:30px}.work-cta p{font:700 24px Georgia,serif;color:var(--green);margin:0 0 15px}@media(max-width:800px){.work-pair{grid-template-columns:1fr 1fr}.work-slot{min-height:190px;padding:18px 10px}.work-slot strong{font-size:18px}.work-copy{padding:22px}.work-copy h3{font-size:25px}}

/* Gallery anchor/mobile heading polish */
#our-work{scroll-margin-top:96px}
@media(max-width:800px){#our-work{scroll-margin-top:82px}.work-section>.wrap>.center:first-child{padding-top:8px}.work-section .section-title{margin-top:10px}}
