:root{--bg:#101110;--ink:#e6e3dc;--muted:#a7a79f;--line:#343530;--accent:#b8b093}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);}a{color:inherit;text-decoration:none}button{color:inherit}a:focus-visible,summary:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.review{background:#27251f;color:#c9c2ae;padding:6px 5%;}header{display:flex;justify-content:space-between;align-items:center;padding:20px 5%;border-bottom:1px solid var(--line);gap:20px}.logo{width:175px;display:block}.logo img{width:100%;display:block}nav{display:flex;gap:25px;align-items:center;}nav a[aria-current]{border-bottom:0}main{overflow:hidden}.wrap{max-width:1440px;margin:auto;padding:0 5%}.intro{text-align:center;padding:74px 0 40px;max-width:1000px;margin:auto}.eyebrow{text-transform:uppercase;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{margin:21px 0 28px}h2{}h3{margin:10px 0 15px}.intro p{color:var(--muted);max-width:820px;margin:0 auto;}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px;padding:40px 0 60px}.service{border-top:1px solid var(--line);padding-top:24px;display:flex;flex-direction:column}.num{color:var(--accent);}.service p{color:var(--muted);margin:0 0 24px;}.mini{color:var(--accent);margin:5px 0 12px}.service .text-link{margin-top:auto}.text-link{display:inline-flex;justify-content:space-between;gap:35px;border-bottom:1px solid #717367;padding:9px 0;align-self:start}.text-link:hover{color:var(--accent)}.hero{margin:0 0 65px}.hero img{width:100%;aspect-ratio:2.35;object-fit:cover;display:block}.hero figcaption{color:var(--muted);margin-top:10px}.section{padding:60px 0;border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1.75fr;gap:8%}.split .lead{}.muted{color:var(--muted)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:630px}th,td{padding:18px 16px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--accent)}thead th{color:var(--ink)}.note{color:var(--muted);margin:20px 0 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.steps b{color:var(--accent);}.steps h3{}.steps p{color:var(--muted)}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project-pair img{width:100%;aspect-ratio:1.5;object-fit:cover}.project-pair span{display:block;margin-top:12px;}.cta{display:flex;justify-content:space-between;align-items:end;gap:35px}.cta h2{max-width:650px;margin-bottom:16px}.button{display:inline-block;border:1px solid #77786e;padding:14px 23px;white-space:nowrap}.button:hover{background:var(--ink);color:var(--bg)}footer{border-top:1px solid var(--line);padding:28px 5%;display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;color:var(--muted)}.detail-intro{padding:50px 0 35px;max-width:900px}.detail-intro h1{margin-top:30px}.detail-intro p{color:var(--muted);max-width:720px}.deliverable{border-top:1px solid var(--line);padding:20px 0}.deliverable h3{margin:0 0 8px}.deliverable p{color:var(--muted);margin:0}.prepare{padding:28px;background:#1b1d19}.prepare ul{padding-left:20px;margin-bottom:0}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;}details p{color:var(--muted);padding-top:15px;max-width:800px}.back{color:var(--muted)}@media(max-width:850px){nav{gap:12px}.service-grid{gap:25px}.split{gap:5%}.steps{grid-template-columns:1fr 1fr}.logo{width:145px}.hero img{aspect-ratio:1.7}}@media(max-width:600px){header{align-items:start;padding-top:15px}nav{max-width:205px;justify-content:end;flex-wrap:wrap;gap:7px 13px;}.logo{width:110px}.intro{padding-top:42px}.intro p{}.service-grid{grid-template-columns:1fr;gap:32px;padding-top:25px}.service{padding-top:20px}.service h3{}.service p{margin-bottom:16px}.num{}.split{grid-template-columns:1fr;gap:18px}.section{padding:38px 0}.project-pair{grid-template-columns:1fr}.cta{display:block}.cta .button{margin-top:15px}.hero{margin-bottom:35px}.hero img{aspect-ratio:1.3}.steps{gap:18px}.detail-intro{padding-top:30px}.detail-intro p{}h1{}}

.logo img{height:auto;aspect-ratio:3772/1251}.logo{flex-shrink:0}img{max-width:100%}.price{color:var(--ink);margin:0 0 3px}.price-tax{color:var(--muted);margin:0 0 20px}.pricing-note{color:var(--muted);max-width:850px;margin:0 0 35px}.detail-intro .price{margin:20px 0 0}
/* Match the quieter type scale used across the IDA website. */
body{}
h1{margin:20px 0 24px}
h2{}
h3,.deliverable h3{}
.service h3{}
.intro{padding-top:58px}.intro p,.detail-intro p{}
.detail-intro .pricing-note{}
.num{}.price,.detail-intro .price{}
.price-tax,.note,.hero figcaption,.back{}
.pricing-note{}
.eyebrow,.mini{}
.split .lead{}.deliverable p{}
.steps h3{}.steps p,details p{}
.text-link,.button{}table{}
nav{}.service p{}
@media(max-width:600px){
h1{}h2{}.service h3{}
.intro p,.detail-intro p,.deliverable p,.service p{}
.split .lead{}.num{}.price,.detail-intro .price{}
nav{}.intro{padding-top:38px}.prepare{padding:22px}
}

/* Approved three-size typography: 32 / 22 / 15 px at every breakpoint. */
body,body *{}
body h1{}
body h2,body h3,body .num,body .price{}
body nav{gap:20px}body .review{}
@media(max-width:600px){body nav{gap:6px 12px;max-width:205px}body .logo{width:100px}body header{gap:12px}body .eyebrow,body .mini{}}

/* Neutral service palette, as approved. Shared typography is unchanged. */
body{--accent:#b8b093}main .eyebrow,main .mini,main .num,main .steps b{color:#b8b093}.header nav a[aria-current]{border-bottom:0}

/* Approved spacing and smallest shared size for service fees. */
.service-grid .service h3:not(.price){line-height:1.8;margin:10px 0 18px}.service-grid.service-list .service .price,.detail-intro.page-intro .price{font-size:var(--type-small);line-height:1.85;font-weight:400;margin:14px 0 8px}.service .price-tax{margin-bottom:24px;line-height:1.85}

.service-grid.service-list .service .price-tax,.detail-intro.page-intro .price-tax{font-size:var(--type-small);line-height:1.85}
