
:root{--ink:#211b16;--cream:#f5f0e8;--paper:#fffdf9;--wood:#7c4b2b;--wood2:#4a2d1d;--sage:#66715d;--line:#ded4c7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}img{max-width:100%;display:block}a{color:inherit}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,253,249,.96);border-bottom:1px solid var(--line)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;font-family:Georgia,serif;font-size:1.35rem;font-weight:700}.brand small{display:block;font:600 .68rem Arial;letter-spacing:.18em;text-transform:uppercase;color:var(--sage)}.menu{display:flex;align-items:center;gap:24px}.menu a{text-decoration:none;font-weight:700;font-size:.92rem}.menu-toggle{display:none;border:0;background:transparent;font-size:1.6rem}.button{display:inline-block;background:var(--wood);color:#fff;text-decoration:none;padding:.8rem 1.15rem;border-radius:3px;font-weight:700;border:1px solid var(--wood)}.button:hover{background:var(--wood2)}.button.alt{background:transparent;color:var(--ink);border-color:var(--ink)}.hero{min-height:76vh;display:grid;align-items:end;background:linear-gradient(90deg,rgba(20,12,8,.78),rgba(20,12,8,.18)),url('../images/glass-douglas-fir-entry.webp') center 35%/cover no-repeat;color:#fff}.hero-content{padding:8rem 0 6rem;max-width:700px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:700;font-size:.76rem}.hero h1,.page-hero h1{font-family:Georgia,serif;font-size:clamp(2.6rem,7vw,5.7rem);line-height:.98;margin:.25em 0}.hero p{font-size:1.2rem;max-width:620px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}section{padding:76px 0}.section-head{max-width:760px;margin-bottom:34px}.section-head h2{font:700 clamp(2rem,4vw,3.2rem)/1.1 Georgia,serif;margin:.15em 0}.section-head p{font-size:1.08rem;color:#5b5148}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--cream);border:1px solid var(--line);padding:28px}.card h3{font-family:Georgia,serif;font-size:1.45rem;margin:.2rem 0}.feature-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.feature-grid img{width:100%;height:650px;object-fit:cover}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery figure{margin:0;background:#eee;overflow:hidden}.gallery img{width:100%;height:440px;object-fit:cover;transition:transform .3s}.gallery figure:hover img{transform:scale(1.025)}.gallery figcaption{padding:11px 13px;background:var(--paper);border:1px solid var(--line);border-top:0;font-size:.9rem}.band{background:var(--wood2);color:#fff}.band .section-head p{color:#eee}.process{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.process article{border-top:1px solid rgba(255,255,255,.45);padding-top:18px}.process article:before{counter-increment:step;content:"0" counter(step);font:700 2rem Georgia,serif;color:#d7b48f}.page-hero{padding:100px 0 65px;background:var(--cream);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.6rem,6vw,4.8rem)}.page-hero p{max-width:720px;font-size:1.15rem}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:50px}.checklist{padding-left:1.1rem}.checklist li{margin:.6rem 0}.contact-box{background:var(--cream);border:1px solid var(--line);padding:34px}.contact-box a{font-size:1.2rem;font-weight:700;color:var(--wood)}.site-footer{background:#17120f;color:#ddd;padding:48px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.site-footer a{color:#fff}.copyright{border-top:1px solid #46382f;margin-top:30px;padding-top:18px;font-size:.85rem}.note{font-size:.88rem;color:#6b625a}@media(max-width:850px){.menu-toggle{display:block}.menu{display:none;position:absolute;left:0;right:0;top:78px;background:var(--paper);padding:22px;flex-direction:column;border-bottom:1px solid var(--line)}.menu.open{display:flex}.cards,.gallery,.process{grid-template-columns:1fr 1fr}.feature-grid,.two-col,.footer-grid{grid-template-columns:1fr}.feature-grid img{height:520px}}@media(max-width:560px){.cards,.gallery,.process{grid-template-columns:1fr}.hero{min-height:70vh}.hero-content{padding:6rem 0 4rem}.gallery img{height:auto}.brand{font-size:1.05rem}section{padding:56px 0}}
