/* Common shell. Page-specific layout rules remain inside the main content. */
.shared-header,.portfolio .shared-header{box-sizing:border-box;position:static;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.2rem;width:100%;max-width:1120px;margin:0 auto;padding:1.5rem 2rem;background:#f6f4ed;color:#18362e;border:0;border-bottom:1px solid #ccd5c9;box-shadow:none;border-radius:0;backdrop-filter:none}
.shared-header .brand,.portfolio .shared-header .brand{display:inline-flex;flex-direction:row;align-items:center;gap:.65rem;text-decoration:none;color:#18362e;font-size:1.05rem;font-weight:bold;white-space:normal;letter-spacing:normal}
.shared-header .brand-mark,.portfolio .shared-header .brand-mark{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#215b45;color:#fff;font-size:1.1rem;letter-spacing:normal}
.shared-header .site-name,.portfolio .shared-header .site-name{display:inline;font-size:1.05rem;font-weight:bold;letter-spacing:normal}
.shared-header nav,.portfolio .shared-header nav{display:flex;align-items:center;gap:.35rem 1rem;flex-wrap:wrap}
.shared-header nav a,.portfolio .shared-header nav a{display:inline-block;color:#18362e;font-size:.9rem;text-decoration:none;padding:.3rem 0;border-radius:0;background:none;box-shadow:none;white-space:normal}
.shared-header nav a:hover,.portfolio .shared-header nav a:hover{text-decoration:underline}
.shared-header nav a[aria-current=page],.portfolio .shared-header nav a[aria-current=page]{font-weight:bold;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.shared-header [hidden],.portfolio .shared-header [hidden]{display:none!important}
.shared-footer,.portfolio .shared-footer{box-sizing:border-box;display:block;max-width:1120px;width:100%;margin:2rem auto 0;padding:1.5rem 2rem;text-align:right;background:transparent;color:#4f665e;border:0;border-top:1px solid #ccd5c9;box-shadow:none;border-radius:0;font-size:.85rem;line-height:2}
.shared-footer .site-copyright,.shared-footer .site-tagline{display:block;margin:0}
.shared-footer .site-tagline{margin-top:.4rem}
.shared-footer .back-to-top{display:inline-block;margin-top:.7rem;color:#215b45}
.shared-header a:focus-visible,.shared-footer a:focus-visible{outline:3px solid #946c16;outline-offset:4px}
@media(max-width:750px){.shared-header,.portfolio .shared-header{flex-direction:column;align-items:flex-start;padding-block:1.1rem}.shared-header{padding-inline:1.3rem}.shared-header nav,.portfolio .shared-header nav{gap:.35rem .9rem}.shared-footer{padding-inline:1.3rem}}
