:root{--bg:#faf6f0;--ink:#2b2420;--mute:#6f645b;--accent:#b5683f;--line:#e8ddd0;--card:#fffdf9;--serif:"Fraunces",Georgia,serif;--sans:"Inter",system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.7 var(--sans);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}.wrap{max-width:1180px;margin:0 auto;padding:0 28px}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.01em;line-height:1.1;margin:0 0 .5em}h1{font-size:clamp(2.6rem,6vw,4.6rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:1.5rem}.eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:600;margin:0 0 1.2rem}section,section.wrap{padding-top:96px;padding-bottom:96px}section.hero{padding-top:56px;padding-bottom:32px}section#building{padding-bottom:48px}section.quote{padding-top:72px;padding-bottom:72px}.nav{display:flex;justify-content:space-between;align-items:center;padding-top:28px;padding-bottom:28px}.brand{text-decoration:none;display:flex;align-items:center}.brand img{height:36px;width:auto;display:block}.nav nav{display:flex;gap:28px;align-items:center;font-size:.92rem}.nav nav a{text-decoration:none;color:var(--mute)}.nav nav a:hover{color:var(--ink)}.hamburger{display:none;background:none;border:none;width:44px;height:44px;flex-direction:column;justify-content:center;gap:6px;padding:10px;cursor:pointer}.hamburger span{display:block;width:24px;height:2px;background:var(--ink);transition:all .3s}.hamburger[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger[aria-expanded=true] span:nth-child(2){opacity:0}.hamburger[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu{display:none;position:fixed;inset:76px 0 0;background:var(--bg);flex-direction:column;padding:20px;z-index:100}.mobile-menu[aria-hidden=false]{display:flex}.mobile-menu a{display:block;padding:16px 20px;font-size:1.2rem;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line);min-height:48px;display:flex;align-items:center}.mobile-menu a:hover{background:#b5683f1a}.pill{border:1px solid var(--ink);padding:8px 18px;border-radius:99px;color:var(--ink)!important}.hero h1{text-wrap:balance}.accent-text{color:var(--accent)}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:center;padding-top:50px}.lead{font-size:1.2rem;color:var(--mute);max-width:36em}.actions{display:flex;gap:28px;align-items:center;margin-top:2rem;flex-wrap:wrap}.btn{background:var(--ink);color:var(--bg);padding:14px 28px;border-radius:99px;text-decoration:none;font-weight:500;transition:transform .2s,background .2s}.btn:hover{background:var(--accent);transform:translateY(-2px)}.link{text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:2px}.link:hover{border-color:var(--accent)}.hero-img{margin:0;position:relative}.hero-img:before{content:"";position:absolute;inset:24px -24px -24px 24px;border:1px solid var(--accent);border-radius:220px 220px 16px 16px;opacity:.5}.hero-credit{position:absolute;left:0;top:100%;margin-top:34px;font-size:11.5px;color:var(--muted,#9a948c);opacity:.8;letter-spacing:.02em}.hero-credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}.hero-img img{position:relative;border-radius:220px 220px 16px 16px;aspect-ratio:4/5;object-fit:cover;width:100%}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.about img{border-radius:16px;aspect-ratio:4/5;object-fit:cover}.about p:not(.eyebrow){color:var(--mute)}.band{background:var(--ink);color:var(--bg)}.band .eyebrow{color:#e9b48f}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.svc{border-top:1px solid #4a3f38;padding-top:28px}.svc p{color:#cbbfb3}.num{font-family:var(--serif);font-style:italic;color:#e9b48f;font-size:1.1rem;display:block;margin-bottom:12px}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:48px}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:36px;text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex;flex-direction:column}.card:hover{transform:translateY(-6px);box-shadow:0 24px 50px -24px #2b24204d;border-color:var(--accent)}.card .logo{height:72px;display:flex;align-items:center;margin-bottom:24px}.card .logo img{max-height:64px;max-width:170px;object-fit:contain}.card h3 span{color:var(--accent);font-family:var(--sans);font-size:1rem;transition:transform .3s;display:inline-block}.card:hover h3 span{transform:translate(3px,-3px)}.card p{color:var(--mute);margin:0 0 1rem;flex:1}.card small{color:var(--accent);letter-spacing:.04em}.quote{text-align:center;padding:60px 28px}blockquote{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.8rem,3.6vw,2.8rem);line-height:1.3;max-width:900px;margin:0 auto}.contact{background:#f1e8dc;text-align:center}.contact-links{display:flex;flex-direction:column;gap:6px;font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.2rem)}.contact-links a{text-decoration:none}.contact-links a:hover{color:var(--accent)}.socials{list-style:none;padding:0;margin:40px 0 0;display:flex;gap:14px;justify-content:center}.socials a{width:48px;height:48px;border-radius:50%;border:1px solid var(--ink);display:grid;place-items:center;transition:all .25s}.socials svg{width:20px;height:20px;fill:currentColor}.socials a:hover{background:var(--ink);color:var(--bg);transform:translateY(-3px)}.foot{display:flex;justify-content:space-between;padding-top:32px;padding-bottom:32px;font-size:.88rem;color:var(--mute)}.foot a{text-decoration:none}.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}.reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}@media(max-width:860px){body{font-size:19px}section,section.wrap{padding-top:64px;padding-bottom:64px}section.hero{padding-top:16px;padding-bottom:16px}section#building{padding-bottom:32px}section.quote{padding-top:56px;padding-bottom:56px}.nav nav{display:none}.hamburger{display:flex}.brand img{height:38px}.hero,.about{grid-template-columns:1fr;gap:48px}.hero{padding-top:10px}.hero-img{max-width:420px;margin:0 auto 0 0;width:88%}.grid3,.cards{grid-template-columns:1fr}.card{padding:28px}}@media(max-width:640px){.hero h1{font-size:2.1rem;line-height:1.12;margin-top:0;margin-bottom:.4em}h2{font-size:1.7rem}}
