/* Fine editorial footer, dynamic blog cards and one shared 50/50 contact layout. */
.ia-footer.ia-footer-serious { padding-block:2rem 1.5rem; background:#131619; }
.ia-footer.ia-footer-serious .ia-footer-intro { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:0 0 1.5rem; border-top:0; border-bottom:1px solid #ffffff20; }
.ia-footer.ia-footer-serious .ia-footer-intro p { margin:0!important; color:#aeb4bb; }
.ia-footer.ia-footer-serious .ia-footer-intro a { color:#f5f5f3; text-decoration:none; border-bottom:1px solid #ff5a0a; padding-bottom:.3rem; }
.ia-footer.ia-footer-serious .ia-footer-directory { padding-block:2rem; gap:3rem; grid-template-columns:1fr 2fr; }
.ia-footer.ia-footer-serious .ia-footer-identity h3 { font-size:1.65rem; font-weight:650; letter-spacing:-.04em; }
.ia-footer.ia-footer-serious .ia-footer-identity p { margin-block:.35rem; color:#aeb4bb; }
.ia-footer.ia-footer-serious .ia-footer-identity .ia-footer-brand { margin-bottom:1rem; max-width:31ch; }
.ia-footer.ia-footer-serious .ia-footer-column h3 { font-weight:600; margin-bottom:.75rem; color:#f5f5f3; }
.ia-footer.ia-footer-serious .ia-footer-column p { margin-block:.3rem; }
.ia-footer.ia-footer-serious .ia-footer-bottom { border-color:#ffffff20; padding-top:1rem; color:#aeb4bb; }
.ia-contact-split { display:grid!important; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(2rem,5vw,5rem); align-items:start; width:100%; margin-top:2rem!important; }
.ia-contact-split > * { margin:0!important; min-width:0; }
.ia-contact-split .ia-contact-information { padding:1rem 0; }
.ia-contact-information h3 { max-width:23ch; font-size:clamp(1.75rem,2.7vw,2.6rem); line-height:1.2; letter-spacing:-.04em; }
.ia-contact-information p,.ia-contact-information a { font-size:1.075rem; line-height:1.75; }
.ia-contact-address { margin-block:2rem!important; border-left:2px solid #ff5a0a; padding-left:1.5rem; }
.ia-contact-address p { margin-block:.55rem; }
.ia-contact-information a { color:#282d35; text-decoration:none; overflow-wrap:anywhere; }
.ia-contact-information a:hover { text-decoration:underline; }
.ia-contact-split .ia-contact-form { width:auto!important; max-width:none!important; padding:clamp(1.25rem,2.5vw,2.25rem); background:#fff; border:1px solid #dce0e4; border-radius:8px; box-shadow:0 12px 40px #11131805; }
.ia-contact-section { background:#f4f4f1; padding-block:clamp(3rem,5vw,5rem); margin-block:0!important; }
.ia-contact-section h2 {   letter-spacing:-.045em; }
.ia-contact-split .ia-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ia-contact-split :is(input,textarea,select) { box-sizing:border-box; max-width:100%; }
.ia-contact-split :is(label,input,select,textarea,button,.wpcf7-list-item,.wpcf7-not-valid-tip,.wpcf7-response-output) { font-size:1.075rem; line-height:1.75; }
.ia-blog-catalogue { padding-block:clamp(3rem,5vw,5rem); background:#f5f5f2; }
.ia-blog-toolbar { display:grid; grid-template-columns:1.2fr 1fr; align-items:end; gap:3rem; margin-bottom:3rem!important; }
.ia-blog-toolbar > * { margin:0!important; min-width:0; }
.ia-blog-toolbar h2 {   letter-spacing:-.04em; max-width:24ch; margin-bottom:0; }
.ia-blog-search .wp-block-search__inside-wrapper { display:flex; gap:.5rem; border:1px solid #cbd0d6; border-radius:6px; padding:.4rem; background:#fff; }
.ia-blog-search .wp-block-search__input { min-width:0; width:100%; border:0; border-radius:0; background:#fff; color:#20252c; font-size:1.075rem; padding:.7rem; }
.ia-blog-search .wp-block-search__button { margin-left:0; padding:.7rem 1.1rem; background:#111318; color:#fff; border:0; border-radius:3px; font-size:1.075rem; }
.ia-blog-query .ia-blog-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:2rem; padding:0; list-style:none; }
.ia-blog-query .ia-blog-grid > li { margin:0!important; min-width:0; }
.ia-blog-card { height:100%; display:flex; flex-direction:column; background:#fff; border:1px solid #e0e3e7; border-radius:8px; overflow:hidden; transition:box-shadow .2s ease; }
.ia-blog-card:hover { box-shadow:0 10px 30px #11131810; }
.ia-blog-card-image { margin:0!important; overflow:hidden; background:#e9ecef; }
.ia-blog-card-image img { width:100%; aspect-ratio:16/10; object-fit:cover; display:block; }
.ia-blog-card .ia-blog-card-body { padding:1.5rem; margin:0!important; display:flex; flex-direction:column; flex:1; }
.ia-blog-card h2 {   letter-spacing:-.03em; margin-block:.75rem 1rem!important; }
.ia-blog-card h2 a { color:#111318; text-decoration:none; }
.ia-blog-card .ia-blog-card-date,.ia-blog-card p { font-size:1.075rem; line-height:1.75; color:#505762; }
.ia-blog-card .wp-block-post-excerpt { flex:1; display:flex; flex-direction:column; margin:0; }
.ia-blog-card .wp-block-post-excerpt__more-text { margin-top:auto; padding-top:1.5rem; }
.ia-blog-card .wp-block-post-excerpt__more-link { color:#ae3900; font-size:1.075rem; font-weight:600; text-decoration:none; }
.ia-blog-query .wp-block-query-pagination { margin-top:2.5rem; }
.ia-blog-results { padding-block:4rem; background:#f5f5f2; }
.ia-blog-results h1 { font-size:clamp(2rem,4vw,3.5rem); line-height:1.15; letter-spacing:-.04em; }
.ia-blog-results .ia-blog-search { max-width:650px; margin-block:2rem; }
.sa-blog-index .wp-site-blocks > header { position:sticky; top:0; }
.sa-blog-index.admin-bar .wp-site-blocks > header { top:32px; }
.sa-blog-index .ia-page-hero { min-height:58vh; padding-block:4.5rem; }
.sa-blog-index .ia-hero-copy h1 { max-width:24ch; font-size:clamp(2.8rem,5vw,5rem); }
.ia-blog-resources { padding-block:2rem; }
@media(min-width:1101px) { .sa-blog-index .ia-header-row { flex-wrap:nowrap; padding-block:0; } .sa-blog-index .ia-header .ia-navigation { order:0; width:auto; } }
@media(max-width:1000px) { .ia-blog-query .ia-blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .ia-blog-toolbar { grid-template-columns:1fr; gap:1.5rem; } }
@media(max-width:800px) { .ia-contact-split { grid-template-columns:1fr; gap:2rem; } .ia-footer.ia-footer-serious .ia-footer-directory { grid-template-columns:1fr; gap:2rem; } }
@media(max-width:600px) { .ia-blog-query .ia-blog-grid { grid-template-columns:1fr; } .ia-footer.ia-footer-serious .ia-footer-intro { flex-direction:column; align-items:start; } .ia-contact-split .ia-contact-information { padding:0; } .ia-contact-split .ia-form-grid { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .ia-blog-card { transition:none; } }
