:root{
  --iron:#181B1A; --ivory:#F2EEE5; --teal:#2B6F70; --steel:#92989A; --olive:#535C4A;
  --line:rgba(24,27,26,.18); --max:1240px; --pad:clamp(22px,4vw,64px);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--ivory);color:var(--iron);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.45}
img{max-width:100%;display:block} a{color:inherit} button,input,textarea{font:inherit}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;z-index:99;background:#fff;padding:10px}
.section-shell{width:min(var(--max),calc(100% - (var(--pad)*2)));margin-inline:auto}
.site-header{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);position:sticky;top:0;background:rgba(242,238,229,.94);backdrop-filter:blur(10px);z-index:20}.brand{width:260px}.brand img{width:100%;height:auto}.site-nav{display:flex;gap:28px;align-items:center;font-size:14px}.site-nav a{text-decoration:none}.nav-cta{border:1px solid var(--iron);padding:11px 16px}.menu-button{display:none;background:none;border:0;text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;color:var(--teal);margin:0 0 18px}.hero{display:grid;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);gap:clamp(40px,6vw,90px);align-items:center;padding-block:clamp(70px,9vw,130px)}.hero h1,.section-intro h2,.process-copy h2,.record-copy h2,.audience-inner h2,.about-section h2,.faq-section h2,.contact-section h2{font-size:clamp(40px,5.1vw,78px);line-height:.98;letter-spacing:-.045em;margin:0 0 26px;font-weight:650}.lede{font-size:clamp(18px,1.7vw,23px);max-width:660px;color:rgba(24,27,26,.82)}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid var(--iron);padding:14px 20px;font-weight:700;font-size:14px;cursor:pointer}.button-primary{background:var(--iron);color:var(--ivory)}.text-link{text-decoration:none;font-weight:700;font-size:14px}.service-area{font-size:13px;text-transform:uppercase;letter-spacing:.12em;margin-top:30px;color:rgba(24,27,26,.62)}.hero-media{margin:0;position:relative}.hero-media:before{content:"";position:absolute;right:-18px;top:-18px;width:18%;height:48%;background:var(--teal);z-index:-1}.hero-media img{aspect-ratio:1.22/1;object-fit:cover;width:100%}.hero-media figcaption{font-size:11px;text-transform:uppercase;letter-spacing:.13em;margin-top:12px;color:rgba(24,27,26,.58)}
.statement-band{background:var(--iron);color:var(--ivory)}.statement-inner{display:grid;grid-template-columns:repeat(4,1fr);padding-block:28px}.statement-inner p{margin:0;font-size:clamp(18px,2vw,28px);letter-spacing:.02em;border-right:1px solid rgba(242,238,229,.22);padding-left:24px}.statement-inner p:first-child{padding-left:0}.statement-inner p:last-child{border:0}
.split-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(55px,8vw,120px);padding-block:clamp(90px,10vw,150px)}.section-intro h2,.process-copy h2,.record-copy h2,.audience-inner h2,.about-section h2,.faq-section h2,.contact-section h2{font-size:clamp(34px,4vw,58px)}.section-intro>p:last-child{font-size:18px;max-width:540px;color:rgba(24,27,26,.74)}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:54px 1fr;gap:20px;padding:27px 0;border-bottom:1px solid var(--line)}.service-list span{color:var(--teal);font-size:12px;font-weight:700;letter-spacing:.15em}.service-list h3{font-size:24px;margin:0 0 8px}.service-list p{margin:0;max-width:650px;color:rgba(24,27,26,.72)}
.process-section{background:#e8e4da}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,7vw,100px);padding-block:clamp(80px,9vw,130px);align-items:center}.process-photo-wrap{position:relative}.process-photo-wrap:after{content:"";position:absolute;left:-14px;bottom:-14px;width:46%;height:14px;background:var(--teal)}.process-photo-wrap img{width:100%;aspect-ratio:1.25/1;object-fit:cover}.process-steps{margin-top:36px;border-top:1px solid var(--line)}.process-steps>div{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:19px 0;border-bottom:1px solid var(--line)}.process-steps b{text-transform:uppercase;letter-spacing:.12em;font-size:12px}.process-steps p{margin:0;color:rgba(24,27,26,.72)}
.record-section{display:grid;grid-template-columns:1fr .9fr;gap:clamp(60px,8vw,120px);padding-block:clamp(90px,10vw,150px);align-items:center}.record-copy .quiet{font-size:14px;color:rgba(24,27,26,.56);max-width:620px}.service-record{background:#f8f4eb;border:1px solid rgba(24,27,26,.24);padding:30px;box-shadow:0 20px 50px rgba(24,27,26,.08)}.record-head,.record-meta,.record-foot{display:flex;justify-content:space-between;gap:20px}.record-head img{width:190px}.record-head>div,.record-meta>div,.record-foot{display:grid;gap:4px}.service-record small{font-size:9px;letter-spacing:.13em}.service-record strong{font-size:13px}.record-meta{border-block:1px solid var(--line);padding:22px 0;margin:22px 0}.record-checks{display:grid;grid-template-columns:1fr 1fr;gap:11px;color:var(--teal);font-size:13px;font-weight:700}.record-notes{margin:24px 0;padding-top:20px;border-top:1px solid var(--line)}.record-notes p{font-size:13px;margin:6px 0 0}.record-foot{border-top:1px solid var(--line);padding-top:16px}
.audience-section{background:var(--teal);color:var(--ivory)}.audience-inner{padding-block:70px}.audience-inner .eyebrow{color:var(--ivory);opacity:.7}.audience-inner h2{max-width:1000px;margin-bottom:14px}.audience-inner p:last-child{font-size:18px;margin:0;opacity:.82}
.about-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(60px,9vw,140px);padding-block:clamp(90px,10vw,150px);border-bottom:1px solid var(--line)}.about-copy{font-size:19px;color:rgba(24,27,26,.78)}.about-copy p{margin-top:0;margin-bottom:24px}
.faq-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(60px,8vw,120px);padding-block:clamp(90px,10vw,140px)}.compact-intro h2{max-width:500px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0}summary{list-style:none;cursor:pointer;font-size:19px;font-weight:700;padding:23px 34px 23px 0;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:0;font-size:25px;font-weight:400;top:17px}details[open] summary:after{content:"–"}.faq-list p{margin:0 0 24px;max-width:720px;color:rgba(24,27,26,.72)}
.contact-section{background:var(--iron);color:var(--ivory)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(60px,9vw,140px);padding-block:clamp(80px,9vw,120px)}.contact-section .eyebrow.light{color:#83b9b5}.contact-section p{color:rgba(242,238,229,.72);max-width:560px}.service-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.service-form label{display:grid;gap:7px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.service-form label:last-of-type{grid-column:1/-1}.service-form input,.service-form textarea{background:transparent;color:var(--ivory);border:0;border-bottom:1px solid rgba(242,238,229,.38);padding:11px 0;outline:0;text-transform:none;letter-spacing:0}.service-form input:focus,.service-form textarea:focus{border-color:#83b9b5}.button-light{background:var(--ivory);color:var(--iron);border-color:var(--ivory);justify-self:start}.form-note{grid-column:1/-1;font-size:11px!important;margin:0}.form-note code{color:#b9d9d6}
.site-footer{border-top:1px solid rgba(24,27,26,.18);padding:35px 0 48px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:40px;align-items:center}.footer-grid>img{width:260px}.footer-grid>div{display:grid;gap:5px;font-size:13px}.footer-grid span{color:rgba(24,27,26,.62)}.footer-contact{justify-self:end;text-align:right}.footer-contact a{text-decoration:none}
@media(max-width:900px){.site-header{height:72px}.brand{width:210px}.menu-button{display:block}.site-nav{position:absolute;left:0;right:0;top:72px;background:var(--ivory);border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:stretch;padding:22px var(--pad);gap:0}.site-nav.open{display:flex}.site-nav a{padding:14px 0;border-bottom:1px solid var(--line)}.nav-cta{border:0}.hero{grid-template-columns:1fr;padding-top:60px}.hero-media img{aspect-ratio:1.6/1}.statement-inner{grid-template-columns:1fr 1fr;gap:0}.statement-inner p{padding:16px 10px;border-right:0;border-bottom:1px solid rgba(242,238,229,.18)}.split-section,.process-grid,.record-section,.about-section,.faq-section,.contact-grid{grid-template-columns:1fr}.service-form{grid-template-columns:1fr}.service-form label:last-of-type{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-contact{justify-self:start;text-align:left}}
@media(max-width:560px){:root{--pad:20px}.brand{width:180px}.hero{gap:35px}.hero h1{font-size:44px}.hero-media:before{display:none}.statement-inner{grid-template-columns:1fr}.statement-inner p{font-size:20px;padding:12px 0}.process-steps>div{grid-template-columns:80px 1fr}.record-checks{grid-template-columns:1fr}.record-head{align-items:flex-start}.record-head img{width:150px}.service-record{padding:22px}.footer-grid>img{width:220px}}

.service-form select{
  background:transparent;
  color:var(--ivory);
  border:0;
  border-bottom:1px solid rgba(242,238,229,.38);
  padding:11px 0;
  outline:0;
  font:inherit;
  text-transform:none;
  letter-spacing:0;
}
.service-form select:focus{border-color:#83b9b5}
.service-form select option{color:var(--iron);background:var(--ivory)}
.service-form .optional{
  text-transform:none;
  letter-spacing:0;
  opacity:.62;
  font-weight:400;
}
.service-form .full-field{grid-column:1/-1}
.form-actions{
  display:flex;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
}
.contact-direct{
  color:var(--ivory);
  text-decoration:none;
  font-weight:700;
}
.form-note a{color:#b9d9d6}
.footer-contact a{line-height:1.5}
@media(max-width:900px){
  .service-form .full-field{grid-column:auto}
}

/* Real-photo crop tuning. Source files are unaltered user photos. */
.hero-media img{object-position:50% 45%;}
.process-photo-wrap img{object-position:50% 52%;}
@media(max-width:900px){
  .hero-media img{aspect-ratio:1.35/1;object-position:50% 46%;}
  .process-photo-wrap img{aspect-ratio:1.35/1;object-position:50% 52%;}
}
