.brand-site{--paper:#fbf3e7;--ink:#2b1b17;--hot:#c1440e;--gold:#e8b84b;--line:#dfcdbb;background:var(--paper);color:var(--ink);font:500 16px/1.58 Nunito,sans-serif;container-type:inline-size}
.brand-site *{box-sizing:border-box}
.brand-site h1,.brand-site h2,.brand-site h3,.brand-site p,.brand-site figure{margin:0}
.brand-site h1,.brand-site h2,.brand-site h3,.brand-site summary{font-family:Nunito,sans-serif;line-height:1.03;letter-spacing:-.045em;color:inherit}
.brand-site a{color:inherit;text-underline-offset:4px}
.brand-site a:focus-visible,.brand-site button:focus-visible,.brand-site summary:focus-visible{outline:2px solid var(--hot);outline-offset:4px}
.brand-site [hidden]{display:none!important}
.brand-site .shell{width:min(100%,1100px);margin-inline:auto;padding-inline:clamp(16px,5cqw,55px)}
.brand-site .mast{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px;padding-block:9px}
.brand-site .wordmark{display:inline-flex;flex:none;flex-direction:column;align-items:stretch;line-height:.86;text-decoration:none;white-space:nowrap}
.brand-site .wordmark strong{font:950 24px/.82 Nunito,sans-serif;letter-spacing:-.065em}
.brand-site .wordmark span{color:var(--hot);font:400 19px/.99 Montserrat,sans-serif;letter-spacing:.05em}
.brand-site .menu{display:flex;align-items:center;justify-content:safe end;flex-wrap:nowrap;min-width:0;gap:clamp(7px,2.1cqw,26px);overflow-x:auto}
.brand-site .menu a{min-height:44px;display:inline-flex;flex:none;align-items:center;font-weight:750;text-decoration:none;white-space:nowrap;position:relative}
.brand-site .menu a:focus-visible{outline-offset:-2px}
.brand-site .menu a::after{content:"";position:absolute;inset:auto 0 7px;height:2px;background:var(--hot);transform:scaleX(0);transform-origin:left;transition:transform .23s ease}
.brand-site .menu a:hover::after,.brand-site .menu a[aria-current]::after{transform:scaleX(1)}
.brand-site .hero{display:grid;background:var(--ink);color:var(--paper);overflow:hidden}
.brand-site .hero-copy{padding:clamp(24px,5.4cqw,60px) clamp(16px,5cqw,55px);align-self:center}
.brand-site .eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--hot);margin-bottom:12px}
.brand-site .hero .eyebrow{color:var(--gold)}
.brand-site h1{font-size:clamp(35px,7.2cqw,75px);font-weight:950}
.brand-site .hero h1 span{display:block;margin-top:.07em;color:var(--gold);font-family:Montserrat,sans-serif;font-weight:900}
.brand-site .hero-copy .dek{max-width:39ch;margin-top:18px;color:#f4e0cc}
.brand-site .action-row{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;margin-top:22px}
.brand-site .action{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:10px 13px;border:0;background:var(--hot);color:white;font:800 12px/1.35 Montserrat,sans-serif;text-decoration:none;cursor:pointer}
.brand-site .action:hover{background:#a73808}
.brand-site .hero .action{background:var(--gold);color:var(--ink)}
.brand-site .hero .action:hover{background:#f1c66a}
.brand-site .text-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:12px;font-weight:800}
.brand-site .hero-image{position:relative;min-width:0;min-height:248px;aspect-ratio:1.35;background:#826352}
.brand-site .hero-image img,.brand-site .portrait img{display:block;width:100%;height:100%;object-fit:cover}
.brand-site .hero-image img{position:absolute;inset:0;object-position:50% 12%}
.brand-site .photo-label{position:absolute;bottom:12px;right:12px;padding:4px 8px;background:var(--hot);color:white;font-size:11px;font-weight:700}
.brand-site .award{display:flex;flex-wrap:wrap;gap:10px 17px;align-items:center;padding:13px clamp(16px,5cqw,55px);background:#40251d;color:var(--paper);border-top:1px solid #69463b}
.brand-site .award-marks{display:flex;align-items:center;gap:9px}
.brand-site .award-marks img{display:block;width:66px;height:27px;object-fit:contain}
.brand-site .award-marks img+img{width:59px;border-left:1px solid #8a6757;padding-left:9px}
.brand-site .award-text{font-size:11px;line-height:1.5}
.brand-site .award-text strong{color:var(--gold);font-weight:800;display:block;font-size:13px}
.brand-site .award>a{font-size:11px;min-height:44px;display:inline-flex;align-items:center;font-weight:750}
.brand-site .chapter{padding-block:clamp(32px,6.8cqw,72px);scroll-margin-top:14px}
.brand-site h2{font-size:clamp(31px,6cqw,57px);font-weight:950}
.brand-site h2 mark,.brand-site .page-heading mark{display:block;width:fit-content;max-width:100%;margin-top:.17em;padding:.035em .16em .09em;background:var(--hot);color:white;line-height:1.14;text-wrap:balance}
.brand-site .lead{margin-top:11px;color:#574038;max-width:56ch}
.brand-site .service-list{display:grid;gap:9px;margin-top:22px}
.brand-site .service{border:1px solid var(--line);background:#fff8ee}
.brand-site .service[open]{border-left:3px solid var(--hot)}
.brand-site .service summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:24px 1fr 24px;gap:9px;align-items:center;padding:13px;min-height:76px}
.brand-site summary::-webkit-details-marker{display:none}
.brand-site .service summary strong{display:block;font-size:clamp(17px,2.5cqw,24px);font-weight:900}
.brand-site .service summary small{display:block;color:#60493f;font:550 12px/1.45 Montserrat,sans-serif;letter-spacing:0;margin-top:4px}
.brand-site .number,.brand-site .plus{color:var(--hot);font:850 14px/1 Nunito,sans-serif}
.brand-site .plus{font-size:24px;text-align:center;transition:transform .22s ease}
.brand-site .service[open] .plus{transform:rotate(45deg)}
.brand-site .service-body{padding:0 13px 15px 46px}
.brand-site .service-body p{max-width:60ch;font-size:13px;margin-bottom:11px}
.brand-site .service[open] .service-body{animation:tn-open .23s ease-out}
@keyframes tn-open{from{transform:translateY(-4px);opacity:.6}}
.brand-site .about{background:#f0e0ce}
.brand-site .about-grid{display:grid;gap:20px;align-items:center}
.brand-site .portrait{aspect-ratio:1.35;overflow:hidden;background:#cab09b}
.brand-site .portrait img{object-position:50% 27%}
@container (width < 640px){
 .brand-site #tn-about .portrait{aspect-ratio:5 / 4}
 .brand-site #tn-about .portrait img{object-position:50% 4%}
}
.brand-site .about p:not(.eyebrow){margin-top:11px;max-width:55ch}
.brand-site .about .text-link{color:#90350f;margin-top:10px}
.brand-site .resources{display:grid;gap:12px;margin-top:20px}
.brand-site .resources a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border:1px solid var(--line);text-decoration:none;font-weight:800;font-size:13px;min-height:50px}
.brand-site .resources span{color:var(--hot)}
.brand-site .end{background:var(--ink);color:var(--paper);padding-block:23px}
.brand-site .end .shell{display:flex;flex-wrap:wrap;gap:7px 18px;justify-content:space-between;align-items:center}
.brand-site .end .text-link{color:var(--gold)}
@container (min-width:640px){
 .brand-site .hero{grid-template-columns:1.13fr .87fr}
 .brand-site .hero-image{aspect-ratio:auto;min-height:clamp(460px,27vw,780px)}
 .brand-site .award>a{margin-left:auto}
 .brand-site .about-grid{grid-template-columns:.85fr 1.15fr;gap:clamp(20px,5cqw,55px)}
 .brand-site .portrait{aspect-ratio:1.15}
 .brand-site .resources{grid-template-columns:repeat(3,1fr)}
}
@media(prefers-reduced-motion:reduce){.brand-site *,.brand-site *::after{animation:none!important;transition:none!important}}
html{scroll-behavior:smooth;scroll-padding-top:16px}
.brand-site .mast{border-bottom:1px solid var(--line)}
.brand-site .menu a{font-family:Nunito,sans-serif;font-size:clamp(13px,1.7cqw,16px)}
.brand-site .action{font:850 15px/1.3 Nunito,sans-serif}
.brand-site .text-link{font:850 15px/1.35 Nunito,sans-serif}
.brand-site .service summary small{font:650 14px/1.35 Nunito,sans-serif}
.brand-site .service-body p{font-size:15px}
.brand-site .service{scroll-margin-top:16px}
.brand-site .all-services{margin-top:10px}
.brand-site .page-heading h1{max-width:15ch}
.brand-site .about-intro h1{max-width:none}
.brand-site .about-intro .portrait{aspect-ratio:5 / 4}
.brand-site .about-intro .portrait img{object-position:50% 4%}
.brand-site .page-heading h1,.brand-site h2{line-height:1.12}
.brand-site .editorial article{margin-top:24px;border-top:1px solid var(--line);padding-top:19px;max-width:70ch}
.brand-site .editorial article h2{font-size:clamp(25px,4.2cqw,40px)}
.brand-site .editorial article h3{font-size:clamp(22px,3.5cqw,32px)}
.brand-site .editorial article p{margin-top:9px}
.brand-site .editorial article a{display:inline-flex;align-items:center;min-height:44px;margin-right:18px;color:#90350f;font-weight:850}
.brand-site .end nav{display:flex;flex-wrap:wrap;gap:0 15px}
.brand-site .end a{min-height:44px;display:inline-flex;align-items:center}
.brand-site .wordmark{min-height:44px;justify-content:center}
.brand-site .menu a[aria-current="page"]{color:var(--ink)}
@media(max-width:630px){
 .links-mast .mast{align-items:flex-start;flex-direction:column;gap:0}
 .links-mast .menu{justify-content:flex-start;flex-wrap:wrap;overflow:visible;column-gap:clamp(10px,3vw,18px);row-gap:0}
}
.brand-site .dialog-head .eyebrow{margin-bottom:5px}
.brand-site .service-body .action{max-width:100%;overflow-wrap:anywhere}
#lead .step h3{margin:0}
#lead .note{line-height:1.45}
.contact-layout{display:grid;align-items:start;gap:clamp(1.3rem,4vw,3rem);margin-top:1.7rem}
.brand-site .contact-layout > article{margin-top:0}
.contact-inline{background:var(--paper,#fffaf3);border:1px solid var(--line);padding:clamp(1rem,4vw,1.7rem)}
.contact-inline .step{padding-block:1rem;border-bottom:1px solid var(--line)}
.contact-inline .form-actions{justify-content:flex-start}
.contact-inline .contact-new{margin-top:1rem}
@media(min-width:760px){.contact-layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}
@media(max-width:500px){
 .brand-site .mast{gap:9px;min-height:58px;padding:6px clamp(10px,3cqw,15px)}
 .brand-site .wordmark strong{font-size:clamp(17px,4.5cqw,21px)}
 .brand-site .wordmark span{font-size:clamp(13.5px,3.5cqw,16.5px)}
 .brand-site .menu{gap:clamp(6px,1.75cqw,12px)}
 .brand-site .menu a{font-size:clamp(12px,3.15cqw,14px)}
 .brand-site .service-body{padding-left:13px}
 .brand-site .hero-copy .dek{margin-top:13px}
}
@media(max-width:350px){
 .brand-site .mast{gap:6px;padding-inline:8px}
 .brand-site .wordmark strong{font-size:16px}
 .brand-site .wordmark span{font-size:12.5px}
 .brand-site .menu{gap:5px}
 .brand-site .menu a{letter-spacing:-.025em}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(prefers-reduced-motion:no-preference){
 .brand-site .action [aria-hidden="true"],.brand-site .resources a [aria-hidden="true"]{transition:transform .18s ease-out}
 .brand-site .action:is(:hover,:focus-visible) [aria-hidden="true"],.brand-site .resources a:is(:hover,:focus-visible) [aria-hidden="true"]{transform:translate(2px,-2px)}
 .brand-site .hero .action:is(:hover,:focus-visible) [aria-hidden="true"]{transform:translateY(2px)}
 @supports(animation-timeline:scroll()){
  html:has(> body.brand-site)::before{content:"";position:fixed;inset:0 0 auto;height:2px;z-index:6;pointer-events:none;background:linear-gradient(90deg,#c1440e,#e8b84b);transform-origin:left;animation:tn-progress linear both;animation-timeline:scroll(root block)}
 }
}
@keyframes tn-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
