/* ArchitecturalBlueprint reconstruction. */
*,*::before,*::after{box-sizing:border-box}body{margin:0;background:#f9f7f4;color:#38352f;font:17px/1.67 Lora,Georgia,serif}img{display:block;max-width:100%;height:auto}a{color:#725825;text-underline-offset:.16em}button{font:inherit;cursor:pointer}
h1,h2,h3,.ab-brand-name{font-family:Archivo,system-ui,sans-serif;line-height:1.2;overflow-wrap:anywhere}h1{font-size:clamp(1.9rem,4.65vw,3.4rem);margin:0 0 .45em}
.ab-masthead-inner,.ab-page-wrap,.ab-footer-widgets{width:min(1190px,calc(100% - 42px));margin-inline:auto}.ab-masthead{background:#2c2b29;color:#f9f7f4;border-bottom:3px solid #c7a252}.ab-masthead-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.ab-brand{display:flex;gap:10px;align-items:center;color:inherit;text-decoration:none}.ab-brand-logo,.ab-brand-logo svg{width:46px;height:46px;flex:none}.ab-brand-text{display:grid}.ab-brand-name{font-weight:750}.ab-brand-tagline{font-size:.85rem;color:#e5d4b4}
.ab-nav-primary ul{list-style:none;padding:0;margin:0;display:flex;gap:13px;flex-wrap:wrap}.ab-nav-primary a,.ab-footer a{color:#f2d69d}.ab-nav-primary a{text-decoration:none;font-family:Archivo,sans-serif}.ab-nav-toggle{display:none;background:transparent;color:#fff;border:1px solid #c7a252;padding:5px 9px}
.ab-page-wrap{padding:23px 0 44px}.ab-layout-sidebar{display:grid;grid-template-columns:minmax(0,1fr) minmax(185px,246px);gap:24px;align-items:start}.ab-content-area{min-width:0}.ab-content-area>article{background:#fffdf8;border:1px solid #e3dacc;padding:clamp(15px,3.7vw,36px)}
.ab-breadcrumbs,.ab-article-meta{font:.83rem/1.55 "IBM Plex Mono",monospace;overflow-wrap:anywhere}.ab-breadcrumbs-sep{margin:0 .32em}.ab-article-thumb:empty{display:none}.ab-article-content{overflow-wrap:anywhere}
.ab-article-content table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}.ab-article-content :is(th,td){padding:6px 9px;border:1px solid #e3dacc;text-align:left}.ab-sidebar-area .widget{background:#f0eade;padding:14px}.ab-sidebar-area input{max-width:100%}.ab-sidebar-area ul,.ab-footer ul{list-style:none;padding:0}
.ab-footer{background:#2c2b29;color:#f9f7f4}.ab-footer-widgets{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px;padding:20px 0}.ab-footer-bottom{text-align:center;border-top:1px solid #776f61;padding:11px}
.ab-cookie-notice{position:fixed;z-index:5;inset:auto 11px 11px;padding:10px 13px;background:#2c2b29;color:#fff;border:1px solid #c7a252;font-size:.9rem}.ab-cookie-notice[hidden]{display:none}.ab-cookie-accept{background:#e5cc91;color:#2c2b29;border:0;padding:4px 9px}
@media(max-width:760px){.ab-masthead-inner{flex-wrap:wrap;padding:8px 0}.ab-nav-toggle{display:block}.ab-nav-primary{display:none;flex-basis:100%}.ab-nav-primary.is-open{display:block}.ab-nav-primary ul{display:grid;gap:6px}.ab-layout-sidebar{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.ab-masthead-inner,.ab-page-wrap,.ab-footer-widgets{width:calc(100% - 26px)}.ab-footer-widgets{grid-template-columns:1fr}}
.ab-hero-section{background:#ede6d6;border-bottom:1px solid #c7a252}.ab-hero-inner{width:min(1190px,calc(100% - 26px));margin:auto;padding:clamp(30px,7vw,82px) 0}.ab-hero-label,.ab-card-meta{font:.84rem/1.55 "IBM Plex Mono",monospace}.ab-hero-label{color:#725825;text-transform:uppercase;letter-spacing:.1em}.ab-hero-desc{max-width:64ch}
.ab-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:15px}.ab-content-area>.ab-card-grid .ab-entry-card{overflow:hidden;background:#fffdf8;border:1px solid #e3dacc}.ab-card-body{padding:14px 17px}.ab-card-thumb img{width:100%;aspect-ratio:16/9;object-fit:cover}.ab-card-title{margin:.25em 0}.ab-card-more{font-family:Archivo,sans-serif;font-weight:700}
.ab-pagination{text-align:center;margin:22px auto}.ab-pagination a,.ab-pagination span{display:inline-block;padding:4px 7px}.ab-theme-blocks{display:flex;gap:12px;flex-wrap:wrap}.ab-theme-block{display:flex;align-items:center;gap:7px;padding:9px 13px;background:#f0eade}.ab-theme-block-icon svg{width:24px;height:24px}.ab-bottom-block{background:#ede6d6;border-left:4px solid #c7a252;padding:14px 17px}
