:root{--paper:#f8f5ee;--ink:#192824;--green:#173c37;--gold:#e8d3ad;--muted:#53625a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}:focus-visible{outline:3px solid #ae7831;outline-offset:5px}.skip{position:absolute;left:12px;top:12px;background:white;transform:translateY(-180%);z-index:3}.skip:focus{transform:none}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.top{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;font-size:19px;letter-spacing:.12em;font-weight:750;line-height:1.1}.brand small{display:block;font-size:9px;letter-spacing:.25em;margin-top:5px}nav{display:flex;gap:34px;font-size:14px}.outline,.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:12px 18px;border:1px solid currentColor;font-size:14px;font-weight:650}.hero{position:relative;color:#fff;background:#1c302a;min-height:650px;display:grid;align-items:center;isolation:isolate}.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,21,19,.87),rgba(10,21,19,.53) 50%,rgba(10,21,19,.08)),url(hero.webp) center 54%/cover}.hero-inner{padding-block:85px 105px}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:750;color:var(--gold);display:flex;align-items:center;gap:12px}.eyebrow span{width:22px;height:1px;background:currentColor}.ink{color:#405950}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.04;margin:0;letter-spacing:-.04em}h1{font-size:clamp(55px,8vw,114px);margin:23px 0}h1 em{color:var(--gold);font-weight:400}.hero-inner>p:not(.eyebrow){max-width:410px;font-size:18px}.button{background:var(--gold);color:#182822;border-color:var(--gold);margin-top:14px;cursor:pointer}.button:hover{background:#f4e6ca}.concept{position:absolute;bottom:17px;right:22px;padding:3px 8px;background:#15231f;color:#f7f0e3;font-size:11px}.section{padding-block:90px}h2{font-size:clamp(43px,6vw,78px);margin:12px 0 24px}.intro{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:48px;margin-bottom:28px}.intro>p{max-width:350px;color:var(--muted);font-size:17px}.feature{margin:0;position:relative;background:#d6c8ad}.feature img{display:block;width:100%;height:clamp(350px,55vw,660px);object-fit:cover;object-position:center 40%}.feature figcaption{position:absolute;bottom:0;left:0;background:var(--paper);padding:20px 28px}.feature span{display:block;letter-spacing:.16em;font-size:10px}.feature strong{font:24px Georgia,serif}.services{background:var(--green);color:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:45px}.service-grid article{border-top:1px solid #a5ad95;padding-top:20px}.service-grid span{color:var(--gold);font-size:12px}.service-grid h3{font-size:31px;margin:17px 0 12px}.service-grid p{color:#e2e7db;max-width:32ch}.steps{padding-left:25px;margin:0}.steps li{padding:12px 0 8px 9px;border-top:1px solid #c2c9be}.steps p{margin:4px 0;color:var(--muted)}.plan{background:#e5e9de}.plan form{max-width:790px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.fields label{display:grid;gap:6px;font-size:14px;font-weight:650}.wide{grid-column:1/-1}input,select,textarea{border:1px solid #84938a;background:#fffdf8;color:var(--ink);padding:11px 12px;font:inherit;width:100%;border-radius:0}textarea{resize:vertical}.form-note,#status{font-size:13px;color:#42534a}footer{font-size:13px}footer p{color:var(--muted)}@media(max-width:740px){.wrap{width:calc(100% - 38px)}.top{flex-wrap:wrap;min-height:74px;padding-block:14px;gap:12px}nav{order:3;width:100%;gap:24px}.outline{padding:8px 10px;gap:8px}.brand{font-size:15px}.brand img{width:34px;height:34px}.hero{min-height:580px}.hero-inner{padding-block:62px 80px}.hero .eyebrow{font-size:9px;letter-spacing:.1em}.hero::before{background-position:58% center}.section{padding-block:58px}.intro,.service-grid,.fields{grid-template-columns:1fr;gap:15px}.intro{align-items:start}.intro h2{margin-bottom:0}.feature figcaption{padding:13px 16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand svg{display:block;width:116px;height:auto;margin-block:5px}
@media(max-width:740px){.brand svg{width:100px}}

.hero-lines{position:absolute;right:4%;bottom:13%;width:min(39vw,530px);pointer-events:none;color:#e8d3ad;opacity:.72;z-index:-1}
.drawing-guide{stroke:currentColor;stroke-width:.65;stroke-dasharray:3 7;opacity:.7}
.drawing-outline{stroke:currentColor;stroke-width:1.1;stroke-dasharray:1;animation:trace 2.7s ease-out both}
@keyframes trace{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.hero-inner{animation:arrive .65s ease-out both}
@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.button,.outline{transition:background-color .2s,color .2s}
.service-grid ul{padding-left:17px;margin:20px 0 0;color:var(--gold);font-size:14px}
.service-grid li+li{margin-top:7px}
.owner{background:#ebe6da;border-bottom:1px solid #d9d4c8}
.owner-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.owner-title{font-size:14px;font-weight:650;color:#405950}
.owner-copy{max-width:480px;color:var(--muted);font-size:17px}
.contact-links{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 35px}
.contact-links .button{margin:0;background:var(--green);border-color:var(--green);color:var(--paper)}
.contact-links .button:hover{background:#27544d}
.contact-links .outline:hover{background:#f8f5ee}
.planner{max-width:790px;border-top:1px solid #84938a;padding-top:15px}
.planner summary{cursor:pointer;font-weight:650}
@media(max-width:740px){
  .hero-lines{width:68vw;bottom:8%;right:3%;opacity:.35}
  .owner-grid{grid-template-columns:1fr;gap:10px}
}
@media(prefers-reduced-motion:reduce){
  .hero-inner,.drawing-outline{animation:none}
  .button,.outline{transition:none}
}

.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}
.project-card{margin:0;min-width:0}
.project-lead{grid-column:span 2}
.project-card a{display:block;overflow:hidden;background:#ded8c9}
.project-card img{display:block;width:100%;height:clamp(245px,32vw,450px);object-fit:cover;filter:brightness(1.035) contrast(1.025);transition:transform .35s ease}
.project-card a:hover img{transform:scale(1.025)}
.project-card figcaption{padding:13px 0 0}
.project-card h3{font-size:25px;letter-spacing:-.025em}
.project-card p{color:var(--muted);font-size:14px;margin:6px 0 0}
.project-details{margin-top:35px;border-top:1px solid #c8c6ba;padding-top:16px}
.project-details summary{cursor:pointer;font-weight:650}
.project-details .project-grid{margin-top:24px}
@media(max-width:740px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.project-card img{height:clamp(150px,44vw,300px)}.project-lead img{height:auto}.project-card h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.project-card img{transition:none}.project-card a:hover img{transform:none}}
