
:root{--paper:#eef6f5;--ink:#0f2d39;--accent:#137b75;--accent-text:#0f2d39;--soft:#c8e3df;--deep:#09232d;--display:Franklin Gothic Medium, Arial Narrow, sans-serif;--body:Helvetica Neue, Helvetica, Arial, sans-serif;--utility:ui-monospace, SFMono-Regular, Menlo, monospace;--content:1180px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--body);text-rendering:optimizeLegibility}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.2em}a:hover{text-decoration-color:var(--accent)}img,svg{max-width:100%}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}:focus-visible{outline:3px solid var(--accent)}.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:.6rem 1rem;z-index:99}.skip:focus{left:8px}.site-header{max-width:var(--content);margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand-link{display:block;flex:0 1 330px}.brand-link img{display:block;width:min(100%,330px);height:62px;object-fit:contain;object-position:left center}.site-nav{display:flex;align-items:center;gap:22px;font:700 .78rem/1.2 var(--utility);letter-spacing:.04em}.site-nav a{text-decoration:none}.site-nav a[aria-current=page]{color:var(--accent-text)}.page{min-height:70vh}.wrap{width:min(var(--content),calc(100% - 48px));margin-inline:auto}.hero{position:relative;padding:72px 0 62px;border-block:1px solid var(--soft)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(230px,.6fr);gap:56px;align-items:end}.kicker,.eyebrow{font:700 .76rem/1.2 var(--utility);letter-spacing:.13em;text-transform:uppercase;color:var(--accent-text)}h1,h2,h3{font-family:var(--display);line-height:1.04;margin:0}h1{font-size:clamp(3rem,7vw,6.8rem);letter-spacing:-.055em;max-width:980px}h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.035em}.hero .lede{font-size:clamp(1.1rem,2vw,1.45rem);max-width:680px;margin:24px 0 0}.hero-note{border-left:5px solid var(--accent);padding:8px 0 8px 20px;font-size:.95rem}.hero-actions{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border:2px solid var(--ink);background:var(--ink);color:var(--paper);font-weight:750;text-decoration:none}.button.secondary{background:transparent;color:var(--ink)}.section{padding:64px 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.section-head p{max-width:570px;margin:0}.category-strip{display:flex;flex-wrap:wrap;gap:10px;padding:2px 2px 14px}.category-strip a{white-space:nowrap;border:1px solid var(--ink);padding:8px 13px;text-decoration:none;font:700 .78rem var(--utility)}.category-strip a:hover{background:var(--accent);color:var(--paper);border-color:var(--accent)}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.result-card{position:relative;border:1px solid color-mix(in srgb,var(--ink) 32%,transparent);padding:22px;min-height:240px;display:flex;flex-direction:column;background:color-mix(in srgb,var(--paper) 93%,white);overflow:hidden}.result-card h2,.result-card h3{font-size:1.5rem;letter-spacing:-.025em}.result-card .summary{margin:14px 0 20px}.result-card .card-link{margin-top:auto;font-weight:800}.result-card .category{font:700 .7rem var(--utility);text-transform:uppercase;letter-spacing:.08em;color:var(--accent-text);margin-bottom:12px}.location{font-size:.9rem;font-weight:700}.meta-line{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;font-size:.84rem}.search-panel{border-block:1px solid var(--ink);padding:24px 0;margin-bottom:34px}.directory-form{display:grid;grid-template-columns:minmax(210px,2fr) repeat(2,minmax(150px,1fr)) auto;gap:12px;align-items:end}.field{display:grid;gap:6px}.field label{font:700 .72rem var(--utility);letter-spacing:.05em;text-transform:uppercase}.field input,.field select{width:100%;min-height:48px;border:1px solid var(--ink);border-radius:0;background:var(--paper);color:var(--ink);padding:10px 12px}.reset{min-height:48px;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:8px 16px;font-weight:750;cursor:pointer}.reset:hover{background:var(--ink);color:var(--paper)}.search-status{min-height:1.5rem;margin:14px 0 0;font-size:.9rem}.empty{border:1px dashed var(--ink);padding:30px;margin-block:20px}.pagination{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:32px;padding-top:22px;border-top:1px solid var(--soft)}.pagination a{font-weight:800}.pagination [aria-current=page]{color:var(--accent-text)}.load-more{display:none}.breadcrumbs{font:700 .74rem var(--utility);letter-spacing:.04em;margin:22px 0}.breadcrumbs ol{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0;gap:8px}.breadcrumbs li+li:before{content:'/' ;margin-right:8px;color:var(--accent-text)}.profile{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr);gap:52px;padding:36px 0 72px}.profile h1{font-size:clamp(2.8rem,6vw,5.6rem)}.profile-summary{font-size:1.22rem;max-width:760px}.fact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:34px}.fact{border-top:2px solid var(--ink);padding-top:10px}.fact dt{font:700 .7rem var(--utility);letter-spacing:.07em;text-transform:uppercase;color:var(--accent-text)}.fact dd{margin:6px 0 0}.profile-aside{border-left:1px solid var(--soft);padding-left:28px}.source-list{padding-left:1.2rem;overflow-wrap:anywhere}.tag-list{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}.tag-list li{padding:6px 10px;background:var(--soft);font-size:.86rem}.questions{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}.question{border-top:4px solid var(--accent);padding:18px;background:color-mix(in srgb,var(--paper) 85%,white)}.prose{max-width:790px}.prose p,.prose li{font-size:1.04rem}.prose h2{margin:44px 0 16px}.contact-state{padding:24px;border:2px solid var(--ink);margin-top:24px}.footer{border-top:1px solid var(--ink);padding:34px 0 42px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer nav{display:flex;gap:16px;justify-content:flex-end;flex-wrap:wrap}.footer small{display:block;margin-top:24px}.template-card{display:none}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Casebook: open horizontal records, ruled masthead. */
.layout-casebook .site-header{border-bottom:7px double var(--ink)}.layout-casebook .hero{border:0}.layout-casebook .hero-grid{grid-template-columns:2fr 1fr}.layout-casebook .hero:after{content:'CASEBOOK';position:absolute;right:4vw;top:24px;font:900 clamp(4rem,14vw,12rem)/1 var(--utility);color:var(--soft);z-index:-1}.layout-casebook .result-grid{grid-template-columns:1fr}.layout-casebook .result-card{min-height:0;display:grid;grid-template-columns:180px minmax(0,1fr) 160px;gap:12px 22px;align-items:start;border-width:1px 0 0;padding:24px 0;background:none}.layout-casebook .result-card .category{grid-column:1;grid-row:1/5}.layout-casebook .result-card h2,.layout-casebook .result-card h3{grid-column:2;grid-row:1}.layout-casebook .result-card .summary{grid-column:2;grid-row:2;margin:0}.layout-casebook .result-card .location{grid-column:2;grid-row:3;margin:0}.layout-casebook .result-card .meta-line{grid-column:2;grid-row:4;margin:0}.layout-casebook .result-card .card-link{grid-column:3;grid-row:1/5;text-align:right;align-self:center}

/* Catalogue: compact square product system. */
.layout-catalog .site-header{background:var(--deep);color:white;max-width:none;padding-inline:max(28px,calc((100% - var(--content))/2 + 28px))}.layout-catalog .brand-link img{filter:brightness(0) invert(1)}.layout-catalog .hero{background:var(--accent);color:white;border:0}.layout-catalog .hero-note{border:2px solid white;padding:20px}.layout-catalog .result-grid{grid-template-columns:repeat(4,1fr)}.layout-catalog .result-card{aspect-ratio:1/1;border:2px solid var(--ink);box-shadow:6px 6px 0 var(--soft)}.layout-catalog .result-card:nth-child(3n){background:var(--soft)}.layout-catalog .category-strip a{background:white}

/* Journal: centered masthead and feature split. */
.layout-journal .site-header{display:grid;justify-items:center}.layout-journal .brand-link{width:340px}.layout-journal .brand-link img{object-position:center}.layout-journal .site-nav{border-block:1px solid var(--ink);width:min(700px,100%);justify-content:center;padding:10px}.layout-journal .hero{padding-top:90px}.layout-journal .hero-grid{grid-template-columns:1fr 1fr}.layout-journal .hero-grid:after{content:'';min-height:400px;background:repeating-linear-gradient(135deg,var(--soft) 0 18px,var(--paper) 18px 36px);border-radius:50% 50% 8px 8px;grid-column:2;grid-row:1}.layout-journal .hero-copy{grid-column:1;grid-row:1;align-self:center;z-index:1}.layout-journal .hero-note{grid-column:2;grid-row:1;align-self:end;background:var(--deep);color:white;padding:20px;z-index:1}.layout-journal .result-card{border:0;border-top:1px solid var(--ink);background:transparent}.layout-journal .result-card:nth-child(1){grid-column:span 2;min-height:320px}

/* Workspace: persistent workflow shelf. */
.layout-workspace .hero-grid{grid-template-columns:1fr}.layout-workspace .hero-note{max-width:600px}.layout-workspace .result-grid{grid-template-columns:repeat(2,1fr)}.layout-workspace .result-card{border:0;border-left:12px solid var(--accent);box-shadow:0 8px 0 var(--soft)}

/* Technical grid: spec-sheet rhythm. */
.layout-grid{background-image:linear-gradient(var(--soft) 1px,transparent 1px),linear-gradient(90deg,var(--soft) 1px,transparent 1px);background-size:32px 32px}.layout-grid .site-header,.layout-grid .hero,.layout-grid .section,.layout-grid .footer{background:color-mix(in srgb,var(--paper) 92%,transparent)}.layout-grid .site-header{border:1px solid var(--ink);margin-top:18px}.layout-grid h1{text-transform:uppercase;font-stretch:condensed}.layout-grid .result-grid{grid-template-columns:1fr 1fr}.layout-grid .result-card{min-height:190px;display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px 14px;border-color:var(--accent);background:var(--paper)}.layout-grid .result-card .category{grid-column:1;grid-row:1/6;border-right:1px solid var(--accent);padding-right:14px}.layout-grid .result-card h2,.layout-grid .result-card h3{grid-column:2;grid-row:1}.layout-grid .result-card .summary{grid-column:2;grid-row:2;margin:0}.layout-grid .result-card .location{grid-column:2;grid-row:3;margin:0}.layout-grid .result-card .meta-line{grid-column:2;grid-row:4;margin:0}.layout-grid .result-card .card-link{grid-column:2;grid-row:5;margin-top:0}

/* Search-first: oversized prompt and wide answers. */
.layout-search .site-header{background:var(--accent);max-width:none;padding-inline:max(28px,calc((100% - var(--content))/2 + 28px))}.layout-search .brand-link img{filter:brightness(0)}.layout-search .hero{background:var(--accent);border:0;padding:92px 0}.layout-search h1{font-size:clamp(4rem,10vw,9rem);max-width:1080px}.layout-search .hero-note{background:var(--paper);padding:22px;border:0}.layout-search .search-panel{background:var(--deep);color:white;border:0;padding:32px}.layout-search .search-panel .field input,.layout-search .search-panel .field select{background:white;color:var(--ink)}.layout-search .search-panel .reset{border-color:white;color:white}.layout-search .result-grid{grid-template-columns:1fr}.layout-search .result-card{min-height:0;border:2px solid var(--ink);display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:10px 22px;align-items:start}.layout-search .result-card .category{grid-column:1;grid-row:1/5}.layout-search .result-card h2,.layout-search .result-card h3{grid-column:2;grid-row:1}.layout-search .result-card .summary{grid-column:2;grid-row:2;margin:0}.layout-search .result-card .location{grid-column:2;grid-row:3;margin:0}.layout-search .result-card .meta-line{grid-column:2;grid-row:4;margin:0}.layout-search .result-card .card-link{grid-column:3;grid-row:1/5;align-self:center}

/* Professional index: narrow, calm reference. */
.layout-index .site-header,.layout-index .wrap{max-width:980px}.layout-index .site-header{border-left:8px solid var(--deep)}.layout-index .hero{padding:54px 0}.layout-index h1{font-size:clamp(3rem,6vw,5rem)}.layout-index .result-grid{grid-template-columns:1fr}.layout-index .result-card{min-height:0;border:0;border-bottom:1px solid var(--ink);padding:20px 0;display:grid;grid-template-columns:60px 260px 1fr 120px;gap:18px}.layout-index .result-card:before{content:'§';font:2rem var(--display);color:var(--accent-text)}.layout-index .result-card .category{grid-column:2}.layout-index .result-card h2,.layout-index .result-card h3{grid-column:2}.layout-index .result-card .summary{grid-column:3;grid-row:1/4}.layout-index .result-card .card-link{grid-column:4;grid-row:1/4;text-align:right}

/* Hosting console: dark operational surface. */
.layout-console .site-header{border-bottom:1px solid var(--accent)}.layout-console .brand-link img{filter:brightness(0) invert(1)}.layout-console .hero{background:var(--deep);border:1px solid var(--accent);margin:20px}.layout-console .hero-grid{padding-inline:24px}.layout-console h1{font-family:var(--utility);font-size:clamp(2.7rem,6vw,5.5rem);letter-spacing:-.06em}.layout-console .kicker:before{content:'> '}.layout-console .button{background:var(--accent);color:var(--deep);border-color:var(--accent)}.layout-console .result-grid{grid-template-columns:1fr}.layout-console .result-card{min-height:0;border:1px solid var(--accent);background:var(--deep);display:grid;grid-template-columns:170px 260px 1fr 140px;gap:18px}.layout-console .result-card .category{grid-column:1}.layout-console .result-card h2,.layout-console .result-card h3{grid-column:2}.layout-console .result-card .summary{grid-column:3;margin:0}.layout-console .result-card .card-link{grid-column:4;grid-row:1/4}.layout-console .field input,.layout-console .field select{background:var(--deep)}

/* Monument: asymmetry and oversized category words. */
.layout-monument{overflow-x:hidden}.layout-monument .site-header{transform:rotate(-1deg);border:4px solid var(--ink);margin-top:22px}.layout-monument .hero{overflow:hidden}.layout-monument .hero-grid{grid-template-columns:2fr .7fr}.layout-monument .hero:before{content:'PLATFORMS';position:absolute;right:-50px;bottom:-18px;writing-mode:vertical-rl;font:900 5rem/1 var(--display);color:var(--soft)}.layout-monument .result-grid{grid-template-columns:repeat(12,1fr)}.layout-monument .result-card{grid-column:span 5;min-height:280px;border:4px solid var(--ink);transform:rotate(-.5deg)}.layout-monument .result-card .meta-line{margin-bottom:12px}.layout-monument .result-card:nth-child(3n+2){grid-column:span 7;transform:translateY(12px) rotate(.5deg)}.layout-monument .result-card:nth-child(3n){grid-column:3/span 7}

/* Registry: dense alphabetical reference. */
.layout-registry .site-header{border-bottom:1px solid var(--ink);padding-block:14px}.layout-registry .brand-link img{height:44px}.layout-registry .hero{padding:36px 0}.layout-registry h1{font-size:clamp(2.5rem,6vw,5.5rem);text-transform:uppercase}.layout-registry .result-grid{display:block;border-top:3px solid var(--ink)}.layout-registry .result-card{min-height:0;display:grid;grid-template-columns:70px 250px 1fr 160px;gap:16px;border:0;border-bottom:1px solid var(--ink);padding:14px 0;background:transparent}.layout-registry .result-card:before{content:attr(data-letter);font:900 1.3rem var(--utility);color:var(--accent-text)}.layout-registry .result-card .category{grid-column:2}.layout-registry .result-card h2,.layout-registry .result-card h3{grid-column:2}.layout-registry .result-card .summary{grid-column:3;grid-row:1/4;margin:0}.layout-registry .result-card .card-link{grid-column:4;grid-row:1/4;text-align:right}

/* Storefront: awning header and category rail. */
.layout-shop .site-header{border-top:10px solid var(--deep);border-bottom:1px solid var(--soft)}.layout-shop .hero{background:var(--soft);border:0}.layout-shop .category-strip{padding:18px;background:var(--deep)}.layout-shop .category-strip a{background:var(--paper)}.layout-shop .result-grid{grid-template-columns:repeat(2,1fr);gap:28px}.layout-shop .result-card{min-height:310px;border:2px solid var(--deep);border-radius:28px 28px 4px 4px;padding:30px}.layout-shop .result-card:nth-child(even){transform:translateY(20px)}

/* Procurement matrix: structured capability blocks. */
.layout-matrix .site-header{background:var(--deep);color:white;max-width:none;padding-inline:max(28px,calc((100% - var(--content))/2 + 28px))}.layout-matrix .brand-link img{filter:brightness(0) invert(1)}.layout-matrix .hero-grid{grid-template-columns:1fr 1fr}.layout-matrix .hero-note{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--ink);padding:1px}.layout-matrix .hero-note span{background:var(--paper);padding:18px}.layout-matrix .result-card{border:0;border-top:8px solid var(--accent);box-shadow:inset 0 0 0 1px var(--ink)}.layout-matrix .result-card .meta-line{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--soft);padding-top:14px}

/* Question flow: conversation-shaped task cards. */
.layout-questions .site-header{border-bottom:4px dotted var(--accent)}.layout-questions .hero-grid{grid-template-columns:1fr}.layout-questions .hero-copy{max-width:960px}.layout-questions .hero-note{max-width:620px;border-radius:0 42px 42px 42px;background:var(--soft);padding:24px;border:0}.layout-questions .result-card{border:0;border-radius:0 34px 34px 34px;background:var(--soft)}.layout-questions .result-card:nth-child(even){border-radius:34px 0 34px 34px;background:color-mix(in srgb,var(--accent) 18%,var(--paper))}.layout-questions .category-strip a{border-radius:20px}

/* Consultancy folio: broad editorial rows and calm copper rules. */
.layout-folio .site-header{padding-block:32px;border-bottom:1px solid var(--accent)}.layout-folio .hero-grid{grid-template-columns:1.2fr .8fr}.layout-folio .hero-note{font-family:var(--display);font-size:1.25rem}.layout-folio .result-grid{grid-template-columns:1fr}.layout-folio .result-card{min-height:0;display:grid;grid-template-columns:230px 1fr 160px;gap:30px;border:0;border-bottom:1px solid var(--accent);padding:32px 0;background:transparent}.layout-folio .result-card .category{grid-column:1}.layout-folio .result-card h2,.layout-folio .result-card h3{grid-column:1}.layout-folio .result-card .summary{grid-column:2;grid-row:1/4;font-family:var(--display);font-size:1.18rem;margin:0}.layout-folio .result-card .card-link{grid-column:3;grid-row:1/4;text-align:right}

.layout-search .hero .kicker{color:var(--ink)}
/* Real summaries vary in length. Let cards grow and keep every action visible. */
.result-card{min-width:0;overflow:visible;overflow-wrap:anywhere}
.result-card>*{min-width:0}
.layout-catalog .result-card{aspect-ratio:auto;min-height:300px}
.layout-catalog .result-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
/* Keep secondary facts inside text columns rather than narrow index gutters. */
@media(min-width:901px){
 .layout-registry .result-card .location,.layout-index .result-card .location{grid-column:2;grid-row:3;margin:0}
 .layout-registry .result-card .meta-line,.layout-index .result-card .meta-line{grid-column:3;grid-row:4;margin:0}
 .layout-registry .result-card .summary,.layout-index .result-card .summary{grid-row:1/4}
 .layout-folio .result-card .location{grid-column:1;grid-row:3;margin:0}
 .layout-folio .result-card .meta-line{grid-column:2;grid-row:4;margin:0}
 .layout-console .result-card .location{grid-column:2;grid-row:2;margin:0}
 .layout-console .result-card .meta-line{grid-column:3;grid-row:2;margin:0}
 .layout-search .result-card .location{grid-column:2;margin:0}
 .layout-search .result-card .meta-line{grid-column:2;margin:0}
}
.hero-actions input{min-width:0;width:min(100%,370px);min-height:46px;padding:10px 14px;border:1px solid var(--ink);background:var(--paper);color:var(--ink)}

@media(max-width:900px){.site-header{align-items:flex-start}.site-nav{flex-wrap:wrap;justify-content:flex-end}.hero-grid,.profile,.footer-grid,.layout-casebook .hero-grid,.layout-journal .hero-grid,.layout-matrix .hero-grid,.layout-folio .hero-grid,.layout-monument .hero-grid{grid-template-columns:1fr}.result-grid,.layout-catalog .result-grid,.layout-grid .result-grid,.layout-shop .result-grid{grid-template-columns:1fr 1fr}.directory-form{grid-template-columns:1fr 1fr}.directory-form .field:first-child{grid-column:1/-1}.profile-aside{border-left:0;border-top:1px solid var(--soft);padding:24px 0 0}.layout-casebook .result-card,.layout-search .result-card,.layout-grid .result-card,.layout-index .result-card,.layout-console .result-card,.layout-registry .result-card,.layout-folio .result-card{display:flex}.layout-grid .result-card .category{border-right:0;padding-right:0}.layout-monument .result-card,.layout-monument .result-card:nth-child(3n+2),.layout-monument .result-card:nth-child(3n){grid-column:span 12;transform:none}.layout-journal .hero-grid:after{grid-column:1;grid-row:2;min-height:220px}.layout-journal .hero-note{grid-column:1;grid-row:2}.questions{grid-template-columns:1fr}}
@media(max-width:620px){.site-header{padding:16px 18px;display:grid}.brand-link img{height:54px}.site-nav{justify-content:flex-start;gap:14px}.wrap{width:min(100% - 30px,var(--content))}.hero{padding:48px 0}.hero-grid{gap:30px}h1{font-size:clamp(2.65rem,15vw,4.4rem)}.section{padding:48px 0}.section-head{display:grid}.result-grid,.layout-catalog .result-grid,.layout-grid .result-grid,.layout-shop .result-grid{grid-template-columns:1fr}.layout-journal .result-card:nth-child(1){grid-column:auto}.layout-shop .result-card:nth-child(even){transform:none}.directory-form{grid-template-columns:1fr}.directory-form .field:first-child{grid-column:auto}.fact-list{grid-template-columns:1fr}.footer nav{justify-content:flex-start}.layout-search .search-panel{padding:20px}.layout-search h1{font-size:clamp(3.4rem,18vw,5.5rem)}}
/* Layout-specific selectors otherwise override the shared mobile column rule. */
@media(max-width:620px){.layout-workspace .result-grid,.layout-grid .result-grid,.layout-catalog .result-grid{grid-template-columns:minmax(0,1fr)}.layout-grid .result-card{display:flex;gap:0}.layout-grid .result-card .category{border-right:0;padding-right:0}.layout-matrix .result-card .meta-line{grid-template-columns:1fr}.layout-catalog .result-card{min-height:0}.layout-casebook .result-card,.layout-search .result-card,.layout-index .result-card,.layout-console .result-card,.layout-registry .result-card,.layout-folio .result-card{align-items:stretch}.result-card .card-link{padding-block:10px;min-height:44px}}
/* Phone header and headings (2026-09-25). The nav wrapped into extra rows with
   12px links 15-16px tall. A sideways-scrolling row with a fade was tried and
   rejected: labels clipped at the viewport edge. The nav is now a wrapping row
   with even row and column gaps; no label ever breaks inside itself, and every
   link is 44px tall (32px at wider widths, which a tablet also taps). Every label
   stays fully visible at 320px. The journal logo link is capped to the header
   width (its fixed 340px cut the logo at 320px) and the tilted monument header is
   inset 4px a side so its corners stay on screen. Headings may break inside a
   long word instead of being clipped: find-an-agency's 18vw category heading read
   "App developme" at 390px. */
.site-nav a{display:inline-flex;align-items:center;min-height:32px}
@media(max-width:620px){.site-nav{flex-wrap:wrap;justify-content:flex-start;gap:4px 20px;min-width:0;max-width:100%}.site-nav a{flex:0 0 auto;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;padding:0}.layout-journal .site-header{grid-template-columns:minmax(0,1fr)}.layout-journal .brand-link{width:min(340px,100%)}.layout-monument .site-header{max-width:calc(100% - 8px)}h1,h2{overflow-wrap:anywhere;min-width:0}body:not(.layout-search) .hero h1{font-size:clamp(2.1rem,9.6vw,2.9rem);letter-spacing:-.03em;line-height:1.04}.category-strip{flex-wrap:wrap;overflow:visible;padding:2px 0 8px}.category-strip a{white-space:normal;min-height:44px;display:inline-flex;align-items:center;gap:6px}.hero-grid>*,.profile>*{min-width:0}.layout-search h1{font-size:clamp(2.4rem,11vw,4rem)}}
/* Contrast (2026-09-25, measured by the visual QA receipt). On the dark
   headers of the catalog and workspace layouts the current nav link took the
   accent colour and all but vanished (2.95:1 and 1.17:1); it now keeps the
   header's own text colour and is marked with an underline instead. The
   catalog hero is filled with the accent, so its kicker takes the hero's
   white. Text set directly in the matrix hero note sat ink on ink. */
.site-nav a[aria-current=page]{color:inherit;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.4em}
.layout-catalog .hero .kicker{color:inherit}
.layout-matrix .hero-note{color:var(--paper)}.layout-matrix .hero-note span{color:var(--ink)}
/* Visual review fixes (2026-09-26). Phones: headlines no longer auto-hyphenate
   ("rela-tionship") and scale down so headline and search sit high on the first
   screen; overflow-wrap:anywhere remains only for a single word wider than the
   screen. Category chip rows wrap at every width instead of running off the edge
   (the base rule no longer scrolls sideways), and on phones every chip is a 44px
   target. Each layout below replaces a generic stat note with
   a device of its own, built from the published records. */
.hero-note ol{list-style:none;margin:0;padding:0}
/* Digital Providers: a full-height register spec sheet balances the hero. */
@media(min-width:901px){.layout-grid .hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);align-items:stretch}.layout-grid h1{font-size:clamp(3rem,5vw,4.8rem)}}
.layout-grid .spec-sheet{border:1px solid var(--ink);padding:0;background:var(--paper);display:flex;flex-direction:column;font:600 .86rem/1.3 var(--utility)}
.layout-grid .spec-title{display:flex;justify-content:space-between;margin:0;padding:12px 16px;background:var(--deep);color:#fff;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}
.layout-grid .spec-rows{flex:1}.layout-grid .spec-rows li{display:flex;justify-content:space-between;gap:14px;padding:11px 16px;border-top:1px solid var(--soft)}.layout-grid .spec-rows li:first-child{border-top:0}.layout-grid .spec-rows b{font-variant-numeric:tabular-nums}
.layout-grid .spec-foot{margin:0;padding:12px 16px;border-top:2px solid var(--ink);font-size:.76rem}
/* Software Index: the registry's A to Z, with entry counts by first letter. */
.layout-registry .az-index{border:0;padding:0}@media(min-width:901px){.layout-registry .hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr)}}.layout-registry .az-title,.layout-registry .az-foot{font:700 .72rem var(--utility);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px}.layout-registry .az-foot{margin:10px 0 0}
.layout-registry .az-index ol{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:3px solid var(--ink);border-left:1px solid var(--ink)}
.layout-registry .az-index li{display:flex;flex-direction:column;min-height:52px;padding:6px 8px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);font:900 1.3rem/1 var(--utility)}.layout-registry .az-index li b{margin-top:auto;align-self:flex-end}
.layout-registry .az-index li b{font:700 .72rem var(--utility);color:var(--accent-text)}.layout-registry .az-index li.none{color:#707070;font-weight:400}
/* Platform King: a tilted double-rule capability ticket, echoing the masthead. */
.layout-monument .capability-ticket{border:6px double var(--ink);padding:20px 22px;background:var(--paper);box-shadow:10px 10px 0 var(--soft)}
@media(min-width:621px){.layout-monument .capability-ticket{transform:rotate(1.5deg)}}
.layout-monument .ticket-title{margin:0 0 10px;font:700 .74rem var(--utility);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-text)}
.layout-monument .capability-ticket li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:2px solid var(--soft);font:700 1.02rem/1.25 var(--display)}.layout-monument .capability-ticket li b{color:var(--accent-text)}
.layout-monument .ticket-foot{margin:12px 0 0;font-size:.86rem}
/* Store Guide: a till receipt of aisles in place of the striped awning. */
.layout-shop .receipt{position:relative;border:0;background:#fff;color:#1b1b1b;padding:22px 22px 30px;font:500 .86rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;box-shadow:0 12px 26px rgba(23,53,31,.16)}
.layout-shop .receipt:after{content:'';position:absolute;left:0;right:0;bottom:-10px;height:10px;background:linear-gradient(-45deg,transparent 7px,#fff 0) 0 0/14px 10px repeat-x,linear-gradient(45deg,transparent 7px,#fff 0) 0 0/14px 10px repeat-x}
.layout-shop .receipt-head{margin:0 0 12px;text-align:center;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.layout-shop .receipt li,.layout-shop .receipt-total{display:flex;justify-content:space-between;gap:12px;margin:0;padding:3px 0}
.layout-shop .receipt-total{margin-top:10px;padding-top:10px;border-top:3px double #1b1b1b;font-weight:700}.layout-shop .receipt-foot{margin:12px 0 0;text-align:center;font-size:.76rem}
/* Aussie SaaS: the Southern Cross and the made-here test every product passes. */
.layout-catalog h1{font-weight:800;letter-spacing:-.035em}@media(min-width:901px){.layout-catalog .hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr)}}
.layout-catalog .crux{border:0;padding:26px 26px 26px 18px;background:var(--deep);display:grid;grid-template-columns:150px 1fr;gap:8px 22px;align-items:center;color:#fff;box-shadow:10px 10px 0 rgba(8,21,51,.35)}
.layout-catalog .crux-stars{grid-row:1/4;width:150px;height:165px}.layout-catalog .crux-stars path{fill:#fff}.layout-catalog .crux-stars .crux-lines{fill:none;stroke:rgba(255,255,255,.5);stroke-width:1.5}
.layout-catalog .crux-test{margin:0;font:800 1.35rem/1.1 var(--display);letter-spacing:-.01em}.layout-catalog .crux-facts{margin:0;font-size:.95rem}.layout-catalog .crux-facts b{font:800 1.2rem var(--display);margin-right:4px}.layout-catalog .crux-foot{margin:0;font-size:.82rem}
/* Business Stack: a dark top bar resting on stacked layers, and workflows stacked in the hero. */
.layout-workspace .site-header{max-width:none;background:var(--deep);color:#fff;padding-inline:max(28px,calc((100% - var(--content))/2 + 28px));margin-bottom:24px;box-shadow:0 8px 0 var(--accent),0 16px 0 var(--soft)}
.layout-workspace .brand-link img{filter:brightness(0) invert(1)}
@media(min-width:901px){.layout-workspace .hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:center}}
.layout-workspace .layer-stack{border:0;padding:0}.layout-workspace .stack-title,.layout-workspace .stack-foot{margin:0 0 10px;font:700 .74rem var(--utility);letter-spacing:.08em;text-transform:uppercase}.layout-workspace .stack-foot{margin:12px 0 0}
.layout-workspace .layer-stack ol{display:grid;gap:6px}.layout-workspace .layer-stack li{display:flex;justify-content:space-between;gap:12px;padding:9px 14px;background:#fff;border:1px solid var(--ink);border-left:10px solid var(--accent);margin-right:calc(var(--layer) * 6px);margin-left:calc(var(--layer) * 2px);font-size:.9rem}
/* Brand Finder: a wider copy column and a lower desktop cap keep the headline to a few lines. */
@media(min-width:901px){.layout-journal .hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr)}.layout-journal h1{font-size:clamp(3rem,5.2vw,5.4rem)}}
/* Your Consultant: indigo consultation room, humanist sans over serif, a numbered advisory brief. */
.layout-folio .kicker,.layout-folio .eyebrow{text-transform:none;letter-spacing:0;font:italic 500 1.02rem var(--body)}
.layout-folio h1,.layout-folio h2{font-weight:600;letter-spacing:-.02em}
.layout-folio .hero{background:var(--deep);color:#fff;border:0}.layout-folio .hero .kicker{color:#f7c77a}.layout-folio .hero .button{background:#f7c77a;color:#1c1a35;border-color:#f7c77a}
.layout-folio .hero-grid{align-items:center}
.layout-folio .advisory-brief{border:0;background:var(--paper);color:var(--ink);padding:24px 26px;font-family:var(--body)}
.layout-folio .brief-title{margin:0 0 12px;font:italic 500 1.05rem var(--body)}
.layout-folio .advisory-brief li{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:baseline;padding:10px 0;border-top:1px solid var(--soft);font-size:1rem}
.layout-folio .advisory-brief li i{font:700 .9rem var(--display);font-style:normal;color:var(--accent-text)}.layout-folio .advisory-brief li b{font:600 .86rem var(--display)}
.layout-folio .brief-foot{margin:12px 0 0;font-size:.88rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
