:root{--ink:#292d2b;--soft:#414844;--muted:#747b74;--sage:#879486;--sage-dark:#657565;--gold:#c5a878;--cream:#f6f3ed;--paper:#fbfaf7;--line:#e5e0d6;--white:#fff;--serif:Georgia,"Times New Roman",serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}.site-header{min-height:88px;padding:18px clamp(24px,7vw,110px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid #292d2b14}.wordmark{font-size:27px;font-weight:800;letter-spacing:.075em;text-decoration:none}.wordmark span{color:var(--gold)}nav{display:flex;align-items:center;gap:clamp(16px,2.5vw,38px)}nav a{text-decoration:none;font-size:12px;font-weight:600;color:var(--soft)}nav a:hover{color:var(--sage-dark)}nav .nav-cta{border:1px solid var(--gold);padding:10px 19px}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.12}h1 em,h2 em{color:var(--sage-dark);font-weight:400}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.19em;line-height:1.6;color:var(--sage-dark);margin:0 0 22px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:var(--cream)}.hero-copy{padding:clamp(65px,9vw,125px) clamp(28px,7vw,105px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{font-size:clamp(43px,5.1vw,70px);margin:0 0 25px}.lead{max-width:550px;color:var(--muted);font-size:15px;line-height:1.9;margin:0 0 30px}.button{display:inline-flex;align-items:center;gap:20px;background:var(--ink);color:white;padding:16px 23px;text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.13em}.button:hover{background:var(--sage-dark)}.button span,.text-link span{color:var(--gold);font-size:17px}.micro{font-size:9px;letter-spacing:.16em;color:var(--muted);margin:28px 0 0}.hero-photo-wrap{min-height:540px;overflow:hidden;background:#d7d2c8}.hero-photo{width:100%;height:100%;min-height:540px;display:block;object-fit:cover}.section-pad{padding:100px clamp(26px,8vw,120px)}.services{background:var(--paper)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:50px}.section-heading h2,.audience h2,.about h2,.contact h2{font-size:clamp(38px,4.4vw,58px);margin:0}.section-heading>p{max-width:420px;color:var(--muted);font-size:14px;line-height:1.9;margin:0 0 5px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}.service-card{background:#fff;border:1px solid var(--line);padding:30px 25px;min-height:100%;display:flex;align-items:flex-start}.service-copy{width:100%;max-width:680px}.service-card h3{font:400 22px/1.3 var(--serif);margin:0 0 12px;min-height:2.6em}.service-card p{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 14px;min-height:3.5em}.service-card ul,.project-option ul{padding-left:18px;margin:0;color:var(--muted);font-size:12px;line-height:1.9}.service-card li,.project-option li{padding-left:2px}.service-note,.plan-note{font-size:11px;line-height:1.8;color:var(--muted);max-width:900px;margin:28px 0 0}.plans{background:var(--cream)}.plan-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.plan-card{background:var(--paper);border:1px solid var(--line);padding:25px 18px;min-height:235px}.plan-featured{border-color:var(--gold);background:#fdfbf7}.plan-name,.project-label{font-size:9px;font-weight:700;letter-spacing:.16em;color:var(--sage-dark)}.plan-card h3{font:400 30px var(--serif);margin:17px 0 4px;white-space:nowrap}.plan-card h3 span{font:10px var(--sans);color:var(--muted);margin-left:4px}.plan-hours{font-size:9px;font-weight:700;letter-spacing:.12em;color:var(--gold);margin:0 0 16px}.plan-card>p:last-child{font-size:12px;line-height:1.75;color:var(--muted);margin:0}.project-band{display:grid;grid-template-columns:1.05fr 1fr 1fr;gap:35px;margin-top:58px;padding:38px;background:var(--ink);color:white}.project-intro .eyebrow{color:var(--gold);margin-bottom:12px}.project-intro h3{font:400 30px var(--serif);margin:0 0 10px}.project-intro>p:last-child,.project-option>p{font-size:12px;line-height:1.8;color:#c2c7c0}.project-option{border-left:1px solid #ffffff2e;padding-left:27px}.project-option .project-label{color:var(--gold)}.project-option h4{font:400 20px var(--serif);margin:13px 0 10px}.project-option ul{color:#c2c7c0;font-size:11px}.project-option .project-price{color:var(--gold);font-size:12px;font-weight:600;margin:18px 0 0}.audience{padding:95px clamp(26px,8vw,120px);display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#e9ece6}.audience>div:first-child>p:not(.eyebrow){max-width:470px;color:var(--muted);font-size:14px;line-height:1.9}.text-link{display:inline-flex;gap:18px;align-items:center;margin-top:15px;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.08em}.industry-list{align-self:center;border-top:1px solid #292d2b33}.industry-list div{padding:18px 0;border-bottom:1px solid #292d2b33;font:20px var(--serif);color:var(--soft)}.about{background:var(--paper)}.about-bottom{display:grid;grid-template-columns:1.3fr .7fr;gap:85px;margin-top:40px}.about-bottom>p{max-width:640px;color:var(--muted);font-size:15px;line-height:2;margin:0}.promise{border-left:2px solid var(--gold);padding:4px 0 4px 24px}.promise span,.contact-panel>span{display:block;font-size:9px;font-weight:700;letter-spacing:.17em;color:var(--sage-dark);margin-bottom:15px}.promise strong{font:20px/1.6 var(--serif)}.contact{padding:88px clamp(26px,8vw,120px);display:grid;grid-template-columns:1.2fr .8fr;gap:75px;align-items:center;background:var(--sage-dark);color:white}.contact .eyebrow{color:#e0c99f}.contact h2 em{color:#e0c99f}.contact>div:first-child>p:last-child{max-width:560px;color:#e0e5df;font-size:13px;line-height:1.9}.contact-panel{padding:32px;background:#ffffff14;border:1px solid #ffffff38}.contact-panel>span{color:#e0c99f}.contact-panel>p{font:21px/1.4 var(--serif);margin:0 0 22px}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#e9e2d5}footer{padding:27px clamp(24px,7vw,110px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--ink);color:#d7dbd5}footer .wordmark{color:white;font-size:22px}footer p,footer>span{font-size:9px;letter-spacing:.13em;color:#b7bdb6;margin:0}@media(max-width:1050px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card:last-child{grid-column:1/-1;max-width:calc(50% - 9px);width:100%;justify-self:center}.plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-band{grid-template-columns:1fr 1fr}.project-intro{grid-column:1/-1}.project-option:first-of-type{border-left:0;padding-left:0}}@media(max-width:760px){.site-header{align-items:flex-start;flex-direction:column;gap:14px;padding:17px 22px}nav{width:100%;gap:16px;overflow-x:auto;padding-bottom:3px}nav a{white-space:nowrap;font-size:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:65px 25px 45px}.hero-photo-wrap,.hero-photo{height:320px;min-height:320px}.section-pad{padding:70px 24px}.section-heading{display:block;margin-bottom:34px}.section-heading>p{margin-top:18px}.service-grid{grid-template-columns:1fr;gap:14px}.service-card,.service-card:last-child{grid-column:auto;max-width:none;padding:25px 22px}.service-card h3{font-size:21px;min-height:0}.service-card p{min-height:0}.plan-grid{grid-template-columns:1fr 1fr;gap:9px}.plan-card{padding:21px 14px;min-height:215px}.plan-card h3{font-size:26px}.project-band{grid-template-columns:1fr;padding:27px 22px;gap:25px}.project-intro{grid-column:auto}.project-option,.project-option:first-of-type{border-left:0;border-top:1px solid #ffffff2e;padding:23px 0 0}.audience{padding:70px 24px;grid-template-columns:1fr;gap:35px}.industry-list div{font-size:18px}.about-bottom{grid-template-columns:1fr;gap:32px;margin-top:28px}.contact{padding:70px 24px;grid-template-columns:1fr;gap:32px}footer{padding:25px 22px;flex-wrap:wrap}footer p{order:3;width:100%}}@media(max-width:390px){.plan-grid{grid-template-columns:1fr}.plan-card{min-height:0}.hero h1{font-size:40px}}
.intake-section{background:var(--paper)}
.intake-form{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--line);padding:clamp(22px,4vw,42px)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--soft)}
.form-grid .full{grid-column:1/-1}
.form-grid input,.form-grid textarea,.form-grid select{width:100%;border:1px solid var(--line);border-radius:0;background:var(--paper);padding:13px 14px;font:13px var(--sans);color:var(--ink);outline-color:var(--sage)}
.form-grid textarea{resize:vertical;line-height:1.6}
.intake-submit{border:0;margin-top:26px;cursor:pointer;font-family:var(--sans)}
.form-note,.form-status{font-size:11px;color:var(--muted);line-height:1.7;margin:12px 0 0}
.form-status{color:var(--sage-dark);font-weight:600}
@media(max-width:600px){.form-grid{grid-template-columns:1fr;gap:17px}.form-grid .full{grid-column:auto}.intake-form{padding:22px 18px}}

.contact-open{border:0;cursor:pointer;font-family:var(--sans)}
.contact-dialog{width:min(560px,calc(100% - 28px));max-width:560px;max-height:calc(100% - 28px);padding:0;border:1px solid var(--gold);background:var(--paper);color:var(--ink);box-shadow:0 24px 80px #0005}
.contact-dialog::backdrop{background:#202522b8;backdrop-filter:blur(3px)}
.dialog-inner{position:relative;padding:clamp(25px,5vw,44px)}
.dialog-close{position:absolute;top:12px;right:17px;border:0;background:transparent;color:var(--muted);font:32px/1 var(--sans);cursor:pointer}
.contact-dialog h2{font:400 clamp(34px,7vw,46px)/1.1 var(--serif);margin:0 35px 10px 0}
.contact-dialog h2 em{color:var(--sage-dark)}
.dialog-intro{font-size:13px;color:var(--muted);margin:0 0 23px}
#handled-contact-form{display:grid;gap:15px}
#handled-contact-form label{display:grid;gap:6px;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--soft)}
#handled-contact-form input,#handled-contact-form textarea{width:100%;border:1px solid var(--line);border-radius:0;background:#fff;padding:12px 13px;font:13px var(--sans);color:var(--ink);outline-color:var(--sage);resize:vertical}
#handled-contact-form input:focus,#handled-contact-form textarea:focus{border-color:var(--sage-dark)}
.optional{font-weight:400;color:var(--muted)}
.dialog-submit{border:0;justify-self:start;cursor:pointer;font-family:var(--sans)}
.dialog-submit:disabled{opacity:.65;cursor:wait}
.dialog-status{min-height:20px;margin:0;color:var(--sage-dark);font-size:12px;font-weight:600;line-height:1.6}
@media(max-width:600px){.dialog-inner{padding:30px 22px 24px}}
