:root{--pine:#173d32;--pine2:#285a49;--cream:#f6f0e4;--paper:#fffdf8;--gold:#c48d52;--ink:#23302b;--muted:#69736e;--line:#dcd7ca}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 "DM Sans",sans-serif}h1,h2,h3{font-family:"Libre Caslon Display",serif;font-weight:400;line-height:1.08;margin:0}h1{font-size:clamp(3.4rem,7.8vw,7.2rem);letter-spacing:-.035em}h2{font-size:clamp(2.3rem,4.5vw,4.6rem);letter-spacing:-.025em}h3{font-size:2rem}p{margin:0 0 1rem}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}.site-header{height:86px;padding:0 clamp(22px,5vw,78px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--pine);border-radius:50%;font:18px "Libre Caslon Display",serif}.brand strong,.brand small{display:block}.brand strong{font-family:"Libre Caslon Display",serif;font-size:19px}.brand small{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}nav{display:flex;gap:32px;font-size:13px;font-weight:600}nav a{border-bottom:1px solid transparent}nav a:hover{border-color:var(--gold)}.nav-toggle{display:none;background:none;border:0;font:600 14px inherit}.hero{min-height:calc(100vh - 86px);position:relative;display:flex;align-items:center;color:#fff;background:url("images/mill-creek-lake-sunset.webp") center/cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,38,31,.88) 0%,rgba(13,38,31,.53) 45%,rgba(13,38,31,.1) 78%)}.hero-content{position:relative;width:min(890px,90%);padding:70px clamp(24px,7vw,110px)}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:700;color:var(--gold);margin-bottom:20px}.hero-content>p:not(.eyebrow){font-size:clamp(17px,2vw,21px);max-width:630px;margin:25px 0 34px;color:#eef2ee}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 24px;border:1px solid;border-radius:2px;text-transform:uppercase;letter-spacing:.1em;font:700 11px "DM Sans",sans-serif;cursor:pointer}.button.primary{background:var(--gold);border-color:var(--gold);color:#fff}.button.primary:hover{background:#a9743f}.button.ghost{border-color:rgba(255,255,255,.55);color:#fff}.hero-note{position:absolute;right:0;bottom:0;background:var(--paper);color:var(--ink);padding:22px 35px;display:flex;gap:28px;font-size:12px;font-weight:600}.hero-note span+span{padding-left:28px;border-left:1px solid var(--line)}.section{padding:clamp(80px,10vw,145px) clamp(24px,7vw,110px)}.intro{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:end}.intro>p{font-size:18px;color:var(--muted);max-width:610px}.cabins{background:var(--cream)}.section-heading{max-width:750px;margin-bottom:55px}.section-heading>p:last-child{color:var(--muted);font-size:17px;margin-top:16px}.cabin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cabin-card{background:var(--paper);min-height:440px;overflow:hidden}.cabin-card img{height:285px;transition:transform .5s ease}.cabin-card:hover img{transform:scale(1.025)}.card-copy{padding:23px 24px 28px}.card-copy p{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0}.card-copy h3{margin:7px 0 12px}.card-copy span{font-size:13px;color:var(--pine2)}.cabin-card.coming{display:grid;place-items:center;text-align:center;border:1px dashed #bcb5a6;background:transparent;padding:40px}.coming p:last-child{color:var(--muted);max-width:300px}.experience{display:grid;grid-template-columns:1fr 1fr;min-height:720px}.experience-image{background:url("images/cafe-porch-common-area.webp") center/cover}.experience-copy{background:var(--pine);color:#fff;padding:clamp(65px,9vw,135px);display:flex;flex-direction:column;justify-content:center}.experience-copy>p:not(.eyebrow){color:#cedbd5;margin:28px 0}.experience-copy ul{list-style:none;padding:0;margin:0;border-top:1px solid rgba(255,255,255,.17)}.experience-copy li{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.17)}.trade{background:url("https://images.unsplash.com/photo-1488459716781-31db52582fe9?auto=format&fit=crop&w=2000&q=82") center/cover;min-height:650px;display:flex;align-items:center}.trade-card{background:rgba(255,253,248,.96);padding:clamp(38px,6vw,78px);max-width:680px}.trade-card p:not(.eyebrow){font-size:18px;color:var(--muted);margin:25px 0}.text-link{font-weight:700;color:var(--pine2)}.contact{background:var(--paper)}.contact-panel{display:grid;grid-template-columns:.72fr 1.28fr;border-top:1px solid var(--line);padding-top:48px;gap:8vw}.contact-line{display:grid;grid-template-columns:80px 1fr;margin:16px 0}.contact-line span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.fine{font-size:12px;color:var(--muted)}form{display:grid;gap:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:grid;gap:7px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;padding:13px 14px;font:15px "DM Sans",sans-serif;color:var(--ink);border-radius:0}textarea{resize:vertical}form .button{justify-self:start}footer{background:#102e26;color:#fff;padding:38px clamp(24px,7vw,110px);display:flex;justify-content:space-between;align-items:center}footer .brand-mark{border-color:#fff}footer .brand small{color:#aebdb7}footer>p{margin:0;font-size:12px;color:#aebdb7}.reveal{opacity:0;transform:translateY(20px);transition:.75s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.nav-toggle{display:block}nav{display:none;position:absolute;top:86px;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 12px 25px #0002;flex-direction:column}nav.open{display:flex}.hero-note{display:none}.intro,.experience,.contact-panel{grid-template-columns:1fr}.cabin-grid{grid-template-columns:1fr 1fr}.experience-image{min-height:480px}.contact-panel{gap:45px}}@media(max-width:600px){h1{font-size:3.55rem}.site-header{height:72px}.brand strong{font-size:17px}.hero{min-height:calc(100svh - 72px)}.hero-content{padding:55px 24px}.button{width:100%}.section{padding:75px 22px}.intro{gap:35px}.cabin-grid{grid-template-columns:1fr}.cabin-card{min-height:0}.experience{display:flex;flex-direction:column}.experience-image{min-height:400px}.experience-copy{padding:70px 25px}.trade{min-height:560px;padding:24px}.form-row{grid-template-columns:1fr}footer{align-items:flex-start;gap:25px;flex-direction:column}}
