:root{--ink:#171a1f;--ink-2:#2b3038;--red:#c92f36;--red-dark:#a82128;--paper:#f7f1e6;--paper-2:#ede4d4;--white:#fff;--muted:#60666f;--line:#d9d0c2;--focus:#0868b7;--shadow:0 18px 50px rgba(23,26,31,.12);--radius:1.1rem}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.65 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}img,video{max-width:100%}button,a{font:inherit}a{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.skip-link{position:absolute;left:1rem;top:-5rem;z-index:100;background:var(--ink);color:#fff;padding:.7rem 1rem}.skip-link:focus{top:1rem}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-header{position:relative;z-index:10;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;max-width:1280px;margin:auto;padding:1rem 2rem}.brand{justify-self:start;display:flex;align-items:center;text-decoration:none}.brand-logo{display:block;width:58px;height:58px;object-fit:contain;padding:4px;background:#fefcef;border-radius:8px}.site-nav{grid-column:2;display:flex;align-items:center;justify-content:center;gap:1.45rem}.site-nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-weight:760;font-size:.94rem}.site-nav a:hover{text-decoration:underline;text-underline-offset:.3em}.header-cta{grid-column:3;justify-self:end}.mobile-call{display:none!important}.menu-button{display:none;border:0;background:var(--ink);color:#fff;border-radius:.5rem;min-width:48px;min-height:48px;font-weight:850}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .9rem;border:2px solid var(--red);border-radius:.45rem;background:var(--red);color:#fff;text-decoration:none;font-size:.94rem;font-weight:850;box-shadow:2px 2px 0 rgba(23,26,31,.25);transition:.15s ease}.button:hover{background:var(--red-dark);transform:translate(-1px,-1px);box-shadow:3px 3px 0 rgba(23,26,31,.25)}.button.secondary{background:transparent;color:var(--ink);border-color:var(--ink);box-shadow:none}.button.secondary:hover{background:var(--ink);color:#fff;transform:none}.actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}.eyebrow{display:flex;align-items:center;gap:.65rem;color:var(--red);font-size:.79rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.eyebrow:before{content:"";width:2.4rem;height:3px;background:currentColor}h1,h2,h3{font-family:"Arial Nova","Avenir Next",Avenir,Montserrat,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.04em;line-height:1.08;margin:0}h1{font-size:clamp(3rem,7vw,6.7rem);margin:.7rem 0 1.3rem}
.hero{position:relative;max-width:1280px;margin:auto;padding:5.4rem 2rem 6.4rem;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);gap:4rem;align-items:center;overflow:hidden}.hero:before{content:"";position:absolute;right:-15vw;top:-3rem;width:56vw;height:34rem;background:var(--paper-2);clip-path:polygon(29% 0,100% 0,100% 68%,0 100%)}.hero-copy,.hero-art{position:relative;z-index:1}.hero p{font-size:clamp(1.1rem,2vw,1.32rem);max-width:690px;color:var(--ink-2)}.hero-art{min-height:360px;display:grid;place-items:center}.kite{width:min(280px,65vw);aspect-ratio:1;background:var(--red);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);transform:rotate(10deg);display:grid;place-items:center;color:#fff}.kite span{font-size:2.2rem;font-weight:950;transform:rotate(-10deg)}
.section{padding:6rem max(1.4rem,calc((100% - 1216px)/2))}.section.dark{background:var(--ink);color:#fff}.section.white{background:#fff}.section-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:3rem;margin-bottom:3rem;align-items:end}.section h2{font-size:clamp(2.35rem,5vw,4.7rem)}.section-intro{font-size:1.12rem;max-width:690px;color:var(--muted)}.dark .section-intro{color:#c5c9cf}.services{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.service-card{grid-column:span 4;min-height:250px;padding:1.7rem;border:1px solid #343941;background:#20242b;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none}.service-card:nth-child(-n+2){grid-column:span 6}.service-card:hover{border-color:var(--red)}.service-card small{color:#ff858b;font-weight:850;text-transform:uppercase}.service-card h3{font-size:clamp(1.5rem,3vw,2.2rem);margin:.7rem 0}.service-card p{color:#bdc2ca}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.card{padding:1.6rem;border:1px solid var(--line);background:#fff;text-decoration:none;min-height:190px}.card:hover{border-color:var(--red)}.card small{color:var(--red);font-weight:850;text-transform:uppercase}.card h3{font-size:1.55rem;margin:.65rem 0}.decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.decision{border-top:4px solid var(--ink);padding-top:1.2rem}.decision h2,.decision h3{font-size:1.6rem;margin-bottom:.7rem}.decision p{color:var(--muted)}
.home-hero{display:block;max-width:1216px;padding-top:7rem;padding-bottom:5rem}.home-hero:before{display:none}.home-hero .hero-copy{max-width:1040px}.home-hero h1{max-width:980px}.home-hero p{max-width:760px}.home-facts{max-width:1216px;margin:0 auto;padding:1.4rem 2rem 2.6rem;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;border-top:1px solid var(--line)}.home-facts li{font-weight:780;padding-left:1rem;border-left:3px solid var(--red)}.connection-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:5rem;align-items:start}.connection-copy h2{margin:.75rem 0 1.5rem}.connection-copy p{max-width:700px;color:var(--muted);font-size:1.08rem}.connection-copy .lead{font-size:1.3rem;color:var(--ink)}.principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.principle-grid section{padding-top:1.2rem;border-top:4px solid var(--red)}.principle-grid h3{font-size:1.45rem;margin-bottom:.65rem}.principle-grid p{margin:0;color:var(--muted)}.services-section .section-head h2{max-width:580px}.evidence-section{background:var(--paper-2)}.evidence-intro{max-width:880px}.evidence-intro h2{margin:.75rem 0 1.3rem}.evidence-intro>p:last-child{max-width:760px;font-size:1.15rem;color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:3rem 0 2rem}.stat{min-height:180px;padding:1.6rem;background:#fff;border-top:5px solid var(--red);display:flex;flex-direction:column;justify-content:space-between}.stat strong{font-size:clamp(2.6rem,5vw,4.6rem);line-height:1;color:var(--ink)}.stat span{max-width:250px;color:var(--muted);font-weight:700}.evidence-conclusion{max-width:820px;font-size:1.14rem}.source-link,.text-link{display:inline-flex;align-items:center;min-height:44px;font-weight:800;text-underline-offset:.25em}.source-link{color:var(--muted);font-size:.82rem}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.method-step{padding:1.5rem;border:1px solid var(--line);background:var(--paper);min-height:270px}.method-step>span{display:block;color:var(--red);font-weight:900;letter-spacing:.12em;margin-bottom:2.5rem}.method-step h3{font-size:1.55rem;margin-bottom:.8rem}.method-step p{color:var(--muted)}.seo-core{display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem;background:var(--ink);color:#fff}.seo-core h2{margin-top:.75rem}.seo-core-copy{max-width:690px}.seo-core-copy p{font-size:1.13rem;color:#cbd0d7}.pete-section{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);align-items:center;gap:5rem}.pete-section figure{margin:0;max-width:430px;background:var(--paper-2)}.pete-section img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.pete-section h2{margin:.75rem 0 1.3rem}.pete-section .lead{max-width:690px;font-size:1.25rem;color:var(--muted)}.faq-section{background:var(--paper-2)}.faq-list{max-width:900px}.faq-list details{border-top:1px solid var(--line);padding:0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style-position:outside;padding:1.35rem .3rem;font-size:1.18rem;font-weight:850}.faq-list details p{max-width:740px;margin:0;padding:0 .3rem 1.4rem;color:var(--muted)}.home-closing{max-width:1216px;margin:6rem auto;padding:3rem;background:var(--ink);color:#fff;border-left:8px solid var(--red);display:flex;align-items:center;justify-content:space-between;gap:3rem}.home-closing h2{font-size:clamp(2.2rem,5vw,4.2rem);max-width:760px;margin:.6rem 0 1rem}.home-closing p{max-width:680px;color:#cbd0d7}.home-closing .actions{flex:0 0 auto}.home-closing .button.secondary{border-color:#fff;color:#fff}.home-closing .button.secondary:hover{background:#fff;color:var(--ink)}.service-summary .decision-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.service-detail{background:#fff}.service-detail>.prose{max-width:760px}.service-cta{max-width:1100px;margin:0 auto 6rem;padding:2.4rem 2.6rem;background:var(--ink);color:#fff;border-left:8px solid var(--red);display:flex;align-items:center;justify-content:space-between;gap:2rem}.service-cta h2{font-size:clamp(2rem,4vw,3.6rem);max-width:720px}.topic-groups{display:grid;gap:3.5rem}.topic-group>h3{font-size:clamp(1.8rem,3vw,2.7rem);margin-bottom:1.3rem}.topic-group .card h4{font-size:1.4rem;line-height:1.15;margin:.7rem 0}.topic-group .card{min-height:175px;display:flex;flex-direction:column;align-items:flex-start}.topic-group .card strong{margin-top:auto}
.audit-start{max-width:1216px;margin:1rem auto 5rem;padding:2.5rem 2rem;background:#fff;border:1px solid var(--line);border-left:8px solid var(--red);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:4rem;align-items:start}.audit-start-copy h2{font-size:clamp(2.1rem,4vw,3.8rem);margin:.7rem 0 1rem}.audit-start-copy>p:not(.eyebrow){max-width:560px;color:var(--muted);font-size:1.08rem}.audit-steps{list-style:none;margin:0;padding:0;display:grid;gap:0}.audit-steps li{display:grid;grid-template-columns:54px 1fr;gap:1rem;padding:1.15rem 0;border-top:1px solid var(--line)}.audit-steps li:last-child{border-bottom:1px solid var(--line)}.audit-steps>li>span{color:var(--red);font-size:.82rem;font-weight:900;letter-spacing:.1em}.audit-steps h3{font-size:1.32rem;margin-bottom:.35rem}.audit-steps p{margin:0;color:var(--muted)}
.service-tint{background:var(--paper-2)}.service-content-inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5rem;align-items:start}.service-content h2{max-width:560px}.service-content-copy{max-width:720px}.service-content-copy>p{font-size:1.16rem;color:var(--muted);margin-top:0}.service-content-copy ul{display:grid;gap:.75rem;padding-left:1.25rem}.service-content-copy li{padding-left:.35rem}
.service-media{margin:2rem 0 0;max-width:520px}.service-media img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain;background:#fff;border:1px solid var(--line)}.service-media figcaption{padding-top:.65rem;color:var(--muted);font-size:.84rem;font-weight:700;line-height:1.5}.service-directory-cards .card{display:flex;flex-direction:column}.service-directory-cards .card p{color:var(--muted)}
.service-trust{border-top:1px solid var(--line)}.service-trust-inner{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1.58fr);gap:3rem;align-items:center;max-width:940px;margin:auto}.service-trust figure{margin:0;max-width:240px;background:var(--paper-2)}.service-trust img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.service-trust h2{margin:.75rem 0 1rem}.service-trust p{max-width:680px;color:var(--muted);font-size:1.12rem}.decision-barriers .service-content-copy p{font-size:1.18rem}
.page-mast{background:var(--ink);color:#fff;padding:1rem 0 5rem}.page-mast .site-header{color:#fff}.page-mast .hero{padding-top:4rem;padding-bottom:1.5rem;display:block}.page-mast .hero:before{background:#252a31}.page-mast .hero p{color:#d3d7dd}.crumbs{max-width:1216px;margin:0 auto;padding:1rem 2rem;font-size:.88rem;color:#bac0c8}.crumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;list-style:none;padding:0;margin:0}.crumbs li{display:inline-flex;align-items:center;min-height:44px}.crumbs li:not(:last-child):after{content:"/";margin-left:.35rem}.crumbs a{display:inline-flex;align-items:center;min-height:44px}.proposition{max-width:940px;margin:auto;padding:5rem 2rem}.proposition>.decision-grid{margin-top:3rem}.supporting{background:var(--paper-2)}
.author-profile-intro{display:grid;grid-template-columns:minmax(260px,440px) minmax(0,620px);gap:clamp(2.5rem,7vw,7rem);align-items:center}.author-profile-intro figure{margin:0;aspect-ratio:3/4;overflow:hidden;background:var(--paper-2)}.author-profile-intro img{width:100%;height:100%;object-fit:cover;display:block}.author-profile-copy h2{font-size:clamp(2.3rem,5vw,4.5rem);margin:.3rem 0 1.5rem}.author-profile-copy p:not(.eyebrow){font-size:1.13rem;line-height:1.75;color:var(--muted)}.author-expertise{background:var(--paper-2)}.author-areas{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.author-area{display:flex;min-height:250px;flex-direction:column;padding:1.5rem;background:#fff;color:var(--ink);text-decoration:none}.author-area small{color:var(--red);font-weight:850;text-transform:uppercase}.author-area h3{font-size:1.35rem;margin:.9rem 0}.author-area span{margin-top:auto;font-weight:800}.author-area:hover{background:#fff7f3}
.article-page{background:#fff}.article-page .site-header{border-bottom:1px solid #e5e5e5}.article-mast{max-width:800px;margin:auto;padding:5rem 2rem 2.5rem}.article-mast h1{font-size:clamp(3rem,7vw,6rem)}.article-deck{font-size:1.25rem;color:var(--muted)}.byline{display:flex;align-items:center;gap:.8rem;margin-top:2rem;font-weight:780}.avatar{flex:0 0 auto;width:48px;height:48px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:900}.article-layout{width:min(100% - 2.5rem,760px);margin:auto;padding:0 0 7rem;overflow-wrap:anywhere}.context-note{margin:0 0 2.5rem;padding:1rem 1.2rem;border-left:5px solid #d49300;background:#fff6d8;color:#4d3b00}.toc{margin:0 0 3rem;padding:1.5rem 1.6rem 1.35rem;background:var(--paper);border:1px solid var(--line);border-top:5px solid var(--red)}.toc h2{margin:0 0 1rem;font-size:1.15rem;letter-spacing:.02em}.toc ol{margin:0;padding-left:1.6rem;display:grid;gap:.4rem}.toc li{padding-left:.25rem;color:var(--red);font-weight:850}.toc a{display:inline-flex;align-items:center;min-height:40px;color:var(--ink);font-size:.95rem;font-weight:750;text-decoration-thickness:1px;text-underline-offset:.2em}.toc a:hover{text-decoration-color:var(--red)}.prose{max-width:700px;margin:auto;font:400 1.18rem/1.85 Georgia,"Times New Roman",serif}.prose h2,.prose h3{font-family:"Arial Nova","Avenir Next",sans-serif;margin:4rem 0 1.2rem}.prose h2{font-size:clamp(2rem,4vw,3.1rem)}.prose h3{font-size:1.65rem}.prose p{margin:0 0 1.55rem}.prose ul{margin:0 0 1.8rem;padding-left:1.4rem}.prose li{margin:.45rem 0}.historical{font:700 .85rem/1.5 Inter,system-ui,sans-serif;background:#fff6d8;border-left:4px solid #d49300;padding:.8rem 1rem;margin:1.5rem 0;color:#4d3b00}.article-media{margin:3rem 0}.article-media img,.article-media video{display:block;width:100%;height:auto;border:1px solid #ddd}.article-media figcaption{font:700 .82rem/1.5 Inter,system-ui,sans-serif;color:var(--muted);padding-top:.6rem}.embed-placeholder{font:400 1rem/1.6 Inter,system-ui,sans-serif;background:var(--paper);border:1px solid var(--line);padding:1.5rem}.author-box{font:400 1rem/1.6 Inter,system-ui,sans-serif;margin-top:4.5rem;padding:1.5rem;border:1px solid #d9d9d9;border-left:6px solid var(--red);background:var(--paper);display:grid;grid-template-columns:96px 1fr;align-items:start;gap:1.25rem}.author-box-photo{display:block;width:96px;height:128px;object-fit:cover}.author-box h2{font-size:1.35rem;margin:0 0 .35rem}.author-box p{margin:.2rem 0 .8rem}.author-box a{font-weight:800}
.site-footer{background:#101216;color:#fff;padding:3.5rem max(1.4rem,calc((100% - 1216px)/2)) 2rem}.footer-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:var(--paper);color:var(--ink);border-left:8px solid var(--red);padding:2rem;margin-bottom:3rem;box-shadow:10px 10px 0 #292d34}.footer-cta h2{font-size:clamp(1.8rem,4vw,3rem)}.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .85fr 1.3fr;gap:2.5rem}.site-footer h2,.site-footer h3{font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:#ff858b}.site-footer a{display:flex;align-items:center;min-height:44px;color:#d5d9df}.site-footer .footer-cta h2{color:var(--ink)}.site-footer .button{color:#fff}.nap{font-style:normal;color:#d5d9df;padding-left:1rem;border-left:3px solid var(--red)}.nap strong,.nap span{display:block;margin:.2rem 0}.nap a{display:inline-flex;color:#fff;font-weight:800}.footer-map h3{margin-bottom:1rem}.map-embed{position:relative;min-height:210px;background:#20242b;border:1px solid #343941;display:grid;place-items:center;overflow:hidden}.map-embed iframe{display:block;width:100%;height:auto;aspect-ratio:4/3;border:0}.map-load{min-height:48px;padding:.7rem 1rem;border:2px solid #fff;background:transparent;color:#fff;font-weight:850;cursor:pointer}.map-load:hover{background:#fff;color:var(--ink)}.footer-bottom{border-top:1px solid #30343b;margin-top:3rem;padding-top:1.5rem;color:#979da7;font-size:.84rem;display:flex;align-items:center;justify-content:center;gap:1.2rem;flex-wrap:wrap}.footer-cookie-settings{min-height:44px;border:0;padding:.35rem;background:transparent;color:#d5d9df;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.footer-cookie-settings:hover{color:#fff}
.cookie-banner{position:fixed;z-index:1000;left:1rem;right:1rem;bottom:1rem;width:min(980px,calc(100% - 2rem));margin:auto;padding:.85rem 1rem;background:#fff;color:var(--ink);border:1px solid var(--line);border-left:6px solid var(--red);box-shadow:0 14px 40px rgba(0,0,0,.22);display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,1fr);gap:1rem;align-items:center}.cookie-banner[hidden]{display:none}.cookie-banner .eyebrow{font-size:.66rem;letter-spacing:.1em}.cookie-banner .eyebrow:before{width:1.6rem}.cookie-banner h2{font-size:clamp(1.12rem,2vw,1.45rem);margin:.12rem 0 .25rem}.cookie-banner p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}.cookie-banner a{font-weight:800;text-underline-offset:.2em}.cookie-actions{display:flex;gap:.45rem;flex-wrap:wrap}.cookie-banner .cookie-actions{justify-content:flex-end}.cookie-banner .button,.cookie-manage{min-height:44px;padding:.4rem .65rem;font-size:.8rem}.cookie-manage{border:0;background:transparent;color:var(--ink);font-weight:850;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.consent-dialog{width:min(680px,calc(100% - 2rem));max-height:calc(100vh - 2rem);overflow:auto;padding:1.6rem;border:1px solid var(--line);border-left:7px solid var(--red);background:#fff;color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.32)}.consent-dialog::backdrop{background:rgba(10,12,16,.68)}.consent-dialog-head{display:flex;align-items:start;justify-content:space-between;gap:1.5rem}.consent-dialog h2{font-size:clamp(1.8rem,4vw,3rem);margin:.4rem 0 1rem}.consent-dialog>p{color:var(--muted)}.consent-close{flex:0 0 48px;width:48px;height:48px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:1.8rem;cursor:pointer}.consent-options{display:grid;margin:1.5rem 0}.consent-options label{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem 0;border-top:1px solid var(--line);cursor:pointer}.consent-options label:last-child{border-bottom:1px solid var(--line)}.consent-options label span{display:grid;gap:.2rem}.consent-options small{color:var(--muted);font-size:.86rem}.consent-options input{width:24px;height:24px;accent-color:var(--red)}
.entitymap-layout{width:min(100% - 2.8rem,960px);margin:0 auto;padding:4rem 0 6rem;display:grid;gap:1.5rem}.entity-card{background:#fff;border:1px solid var(--line);border-left:6px solid var(--red);padding:clamp(1.5rem,4vw,2.5rem)}.entity-card h2{margin-bottom:.75rem}.entity-card h3{margin-top:1.5rem;font-size:1rem}.entity-card ul{padding-left:1.25rem}.entity-card blockquote{margin:1rem 0 0;padding:1.25rem;background:var(--paper);border-left:3px solid var(--ink)}.entity-card blockquote p{margin:0 0 .75rem}.entity-card cite{font-style:normal;font-size:.9rem}.entity-card cite a{font-weight:800;color:var(--red-dark)}
.service-directory-link{display:inline-flex;margin-top:2rem}.article-cluster{font:400 1rem/1.55 Inter,system-ui,sans-serif;margin-top:4.5rem;padding:1.5rem;background:#fff;border:1px solid var(--line);border-top:5px solid var(--red)}.article-cluster h2{font-size:1.35rem;margin:0 0 .4rem}.article-cluster p{margin:0 0 1rem;color:var(--muted)}.article-cluster ul{columns:2;column-gap:2rem;margin:0;padding-left:1.2rem}.article-cluster li{break-inside:avoid;margin:.2rem 0}.article-cluster a{display:inline-flex;align-items:center;min-height:40px;color:var(--ink);font-weight:800}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.site-nav{grid-column:auto;display:none;position:absolute;left:1rem;right:1rem;top:78px;background:#fff;color:var(--ink);padding:1rem;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.mobile-call{display:inline-flex!important;color:#fff}.header-cta{display:none}.menu-button{display:block;grid-column:2;grid-row:1;justify-self:end}.hero{grid-template-columns:1fr;padding-top:3.5rem}.hero-art{min-height:260px}.home-facts{grid-template-columns:1fr 1fr}.audit-start,.connection-section,.seo-core,.pete-section,.service-content-inner,.author-profile-intro{grid-template-columns:1fr;gap:3rem}.audit-start{margin-left:1.4rem;margin-right:1.4rem}.author-profile-intro figure{max-width:520px}.author-areas{grid-template-columns:repeat(2,minmax(0,1fr))}.method-grid{grid-template-columns:1fr 1fr}.home-closing{margin:4rem 1.4rem;align-items:flex-start;flex-direction:column}.home-closing .actions{flex:initial}.section-head{grid-template-columns:1fr}.cards,.decision-grid,.service-summary .decision-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.services{display:grid}.service-card,.service-card:nth-child(-n+2){grid-column:span 6}.service-cta{margin-left:1.4rem;margin-right:1.4rem}}
@media(max-width:620px){.site-header{padding:1rem 1.1rem}.hero{padding:3.2rem 1.2rem 4rem}.home-hero h1{font-size:clamp(2.8rem,14vw,4.5rem)}.home-facts,.principle-grid,.stats-grid,.method-grid{grid-template-columns:1fr}.home-facts{padding:0 1.2rem 2rem;border-top:0}.audit-start{margin-bottom:3.5rem;padding:2rem 1.3rem;gap:2rem}.audit-steps li{grid-template-columns:42px 1fr}.section{padding-top:4rem;padding-bottom:4rem}.services,.cards,.decision-grid,.service-summary .decision-grid{display:block}.service-card,.card,.decision{margin-bottom:1rem}.method-step{min-height:0}.pete-section figure,.author-profile-intro figure{max-width:100%}.author-areas{grid-template-columns:1fr}.author-area{min-height:180px}.home-closing{padding:2.2rem 1.4rem}.home-closing .actions{width:100%}.home-closing .button{width:100%}.service-cta{align-items:flex-start;flex-direction:column;padding:2rem 1.4rem}.footer-cta{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.article-mast{padding:3rem 1.25rem 2rem}.article-layout{width:min(100% - 2.5rem,760px)}.toc{padding:1.25rem}.toc a{display:flex}.author-box{grid-template-columns:72px 1fr;padding:1.2rem}.author-box-photo{width:72px;height:96px}}
/* Content-page refinements: comfortable FAQ reading and resilient guidance cards. */
.card{display:block;min-width:0;overflow-wrap:anywhere}
.faq-section .section-head{max-width:1000px}
.faq-list{max-width:1000px;padding:1.25rem 2rem;background:#fff;border:1px solid var(--line)}
.faq-list details:first-child{border-top:0}
.faq-list details:last-child{border-bottom:0}
.about-story{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:5rem;align-items:center}
.about-story figure{margin:0;max-width:430px;background:var(--paper-2)}
.about-story img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.about-copy{max-width:720px}.about-copy p{font-size:1.13rem;color:var(--muted)}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:5rem;align-items:start}
.contact-form{display:grid;gap:1.1rem;padding:2rem;background:#fff;border:1px solid var(--line)}
.contact-form h2{font-size:clamp(2.2rem,4vw,3.8rem)}
.form-field{display:grid;gap:.4rem}.form-field label,.contact-form legend{font-weight:800}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:48px;padding:.75rem .8rem;border:1px solid #777;background:#fff;color:var(--ink);font:inherit}.form-field textarea{min-height:150px;resize:vertical}.form-field small,.form-note{color:var(--muted)}.contact-form fieldset{border:0;padding:0;margin:0}.contact-form .button{justify-self:start}.contact-details{padding:2rem;background:var(--ink);color:#fff;border-left:7px solid var(--red)}.contact-details h2{font-size:2rem;margin-bottom:1rem}.contact-details h3{margin-top:2rem}.contact-details address{font-style:normal}.contact-details a{display:inline-flex;align-items:center;min-height:44px;color:#fff;font-weight:800}.contact-details p{color:#d5d9df}.form-status{min-height:1.6rem;font-weight:750}.form-status.error{color:#9d161d}.form-status.success{color:#176b39}
.contact-details-map{width:100%;min-width:0;margin-top:2.25rem;padding-top:.25rem;border-top:1px solid #343941}.contact-details-map h3{margin:1.5rem 0 .35rem}.contact-details-map>p{margin:0}.contact-details-map .external-embed{width:100%;max-width:100%;margin:1rem 0 0;padding:0;background:#20242b;border-color:#343941;overflow:hidden}.contact-details-map .external-embed iframe{display:block;width:100%;max-width:100%;height:auto;min-height:250px;aspect-ratio:4/3;border:0}
.evidence-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.evidence-images figure{margin:0;padding:1rem;background:var(--paper);border:1px solid var(--line)}.evidence-images img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#fff}.evidence-images figcaption{padding-top:.75rem;color:var(--muted);font-size:.84rem;font-weight:700}
.case-intro{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:5rem;align-items:start}.case-intro h2{max-width:560px}.case-intro>div:last-child{max-width:720px;font-size:1.12rem;color:var(--muted)}.case-study{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:5rem;align-items:start}.case-study-copy{max-width:680px}.case-study-copy h2{margin:.65rem 0 1rem}.case-study-copy h3{font-size:1.25rem;margin:2rem 0 .55rem;letter-spacing:-.02em}.case-study-copy p,.case-study-copy li{color:var(--muted)}.case-study-copy ul{padding-left:1.3rem;display:grid;gap:.55rem}.case-period{padding:.8rem 1rem;border-left:4px solid var(--red);background:var(--paper)}.service-tint .case-period{background:#fff}.case-study-media{display:grid;gap:1.4rem}.case-study-media figure{margin:0;padding:1rem;background:#fff;border:1px solid var(--line)}.case-study-media a{display:block}.case-study-media img{display:block;width:100%;height:auto;max-height:680px;object-fit:contain;background:#fff}.case-study-media figcaption{padding-top:.75rem;color:var(--muted);font-size:.84rem;font-weight:700;line-height:1.5}.case-outcome-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.case-outcome-grid section{padding:1.7rem;border:1px solid #3b4048;background:#20242b}.case-outcome-grid h3{font-size:1.5rem;margin-bottom:.8rem}.case-outcome-grid p{color:#cbd0d7}.case-review{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5rem}.case-review h2{max-width:560px}.case-review ul{margin:0;padding-left:1.4rem;display:grid;gap:1rem;max-width:720px;color:var(--muted);font-size:1.08rem}
.review-check{margin:.7rem 0 0;color:var(--muted);font-size:.84rem;font-weight:700}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.review-card{min-height:290px;padding:1.6rem 1.7rem 1.5rem;background:#fff;border:1px solid var(--line);border-left:6px solid var(--red);box-shadow:0 8px 24px rgba(23,26,31,.07);display:flex;flex-direction:column}.review-card:last-child:nth-child(odd){grid-column:1/-1}.review-card header{display:flex;align-items:center;gap:.9rem;padding-bottom:1.15rem;border-bottom:1px solid var(--line)}.review-mark{flex:0 0 48px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;padding-top:.28rem;background:var(--red);color:#fff!important;font:900 2.7rem/1 Georgia,serif}.review-card header div{display:grid;gap:.12rem}.review-card header strong{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}.review-card header span:not(.review-mark){color:var(--muted);font-size:.84rem;font-weight:700}.review-card blockquote{margin:0;padding:1.6rem 0;flex:1}.review-card blockquote p{margin:0;font-size:clamp(1.28rem,2.2vw,1.65rem);font-weight:720;line-height:1.45;letter-spacing:-.02em}.review-card footer{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid var(--line)}.review-card footer div{display:grid;gap:.08rem}.review-card cite{font-style:normal;font-weight:900}.review-card footer span{color:var(--muted);font-size:.82rem}.review-card a{display:inline-flex;align-items:center;min-height:44px;color:var(--red-dark);font-size:.88rem;font-weight:850;text-underline-offset:.2em}
@media(max-width:900px){.about-story,.contact-layout,.case-intro,.case-study,.case-review{grid-template-columns:1fr;gap:3rem}.case-study-media{max-width:760px}.evidence-images{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.supporting .cards{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}.supporting .card{display:flex;width:100%;min-width:0;margin:0;overflow-wrap:anywhere}.faq-list{padding:.75rem 1rem}.faq-list summary{padding:1.15rem .15rem}.faq-list details p{padding:0 .15rem 1.2rem}.contact-form,.contact-details{padding:1.25rem}.evidence-images,.case-outcome-grid,.review-grid{grid-template-columns:1fr}.case-study-media figure{padding:.65rem}.review-card,.review-card:last-child:nth-child(odd){grid-column:auto;min-height:260px;padding:1.3rem}.review-card footer{align-items:start;flex-direction:column}.review-card a{margin-top:.35rem}}
@media(max-width:620px){.contact-details-map .external-embed iframe{min-height:220px}}
@media(max-width:620px){.article-cluster ul{columns:1}}
@media(max-width:700px){.cookie-banner{grid-template-columns:1fr;align-items:start;padding:.85rem;gap:.65rem}.cookie-banner .cookie-actions{justify-content:flex-start}.cookie-banner .button{flex:1 1 145px}.consent-dialog{padding:1.2rem}.consent-options label{align-items:start}.footer-bottom{flex-direction:column;gap:.2rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media(forced-colors:active){.button,.service-card,.card,.method-step,.stat{border:2px solid ButtonText}.eyebrow:before{background:CanvasText}}

/* Deployment defect fixes: external embeds and narrow-screen containment. */
html,body{max-width:100%;overflow-x:hidden}
iframe{max-width:100%}
.external-embed{width:100%;margin:2rem 0;padding:1rem;background:var(--paper);border:1px solid var(--line);font:400 1rem/1.55 Inter,system-ui,sans-serif;overflow:hidden}
.external-embed p{margin:0 0 1rem;color:var(--muted)}
.external-load{min-height:48px;padding:.65rem 1rem;border:2px solid var(--ink);background:var(--ink);color:#fff;font-weight:850;cursor:pointer}
.external-embed iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0}
.contact-map>.external-embed{max-width:900px;margin:0}
.map-embed>p{margin:.8rem;text-align:center;color:#d5d9df;font-size:.84rem}
@media(max-width:620px){.section,.services,.cards,.supporting,.service-card,.card{min-width:0;max-width:100%}.supporting .card{display:block!important;width:100%;overflow-wrap:anywhere}.supporting .card strong{display:block;margin-top:1rem}.external-embed{padding:.75rem}.external-load{width:100%}}

/* Compact, focused response pages for missing routes and completed enquiries. */
.utility-main{min-height:62vh;display:grid;place-items:center;padding:clamp(4rem,9vw,8rem) max(1.25rem,6vw);background:var(--paper)}
.utility-card{width:min(100%,860px);padding:clamp(2rem,6vw,5rem);background:#fff;border:1px solid var(--line);border-left:8px solid var(--red)}
.utility-card h1{max-width:760px;margin:.7rem 0 1.2rem;font-size:clamp(2.7rem,7vw,5.8rem);line-height:.96;letter-spacing:-.055em}
.utility-card>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:1.12rem}
.utility-card .actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}

/* WCAG AA contrast for small uppercase labels on tinted and dark sections. */
.evidence-section .eyebrow,.service-tint .eyebrow{color:var(--red-dark)}
.seo-core .eyebrow{color:#ff858b}

/* Keep the audit-review form as the primary conversion route; calls stay secondary. */
.mobile-audit{display:none!important}
.service-cta-actions,.footer-cta-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.service-call,.footer-call{display:inline-flex;align-items:center;min-height:44px;font-weight:800;text-underline-offset:.25em}
.service-call{color:#fff}
.footer-call{color:var(--ink)!important}
@media(max-width:900px){.mobile-audit{display:inline-flex!important;color:#fff}.mobile-call{display:inline-flex!important;justify-content:center;color:var(--ink)!important;text-decoration:underline!important;text-underline-offset:.25em}}
@media(max-width:620px){.service-cta-actions,.footer-cta-actions{width:100%;align-items:stretch;flex-direction:column}.service-cta-actions .button,.footer-cta-actions .button{width:100%}.service-call,.footer-call{justify-content:center}}

/* Approved UX refinements: content-driven mastheads and mobile article disclosure. */
.page-mast{padding:0 0 2.5rem}
.page-mast .hero{min-height:0;padding-top:2rem;padding-bottom:1rem}
.page-mast .hero h1{font-size:clamp(2.8rem,6vw,5.5rem)}
.page-mast .hero:before{height:24rem}
.toc>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:44px;cursor:pointer;font-size:1.15rem;font-weight:850;letter-spacing:.02em}
.toc>summary::after{content:"−";font-size:1.4rem;line-height:1}
.toc:not([open])>summary::after{content:"+"}
.toc>nav{margin-top:1rem}
@media(max-width:620px){
  .page-mast{padding-bottom:2rem}
  .page-mast .hero{padding:1.5rem 1.2rem .5rem}
  .page-mast .hero h1{font-size:clamp(2.65rem,12vw,4.25rem)}
  .page-mast .hero:before{height:18rem}
  .toc:not([open]){padding-bottom:1.1rem}
}

/* Interactive entity network: the client's connected online footprint. */
.entity-network-figure{grid-column:1/-1;margin:1rem 0 0;padding:clamp(1.1rem,3vw,2rem);background:#0a0a0e;color:#fff;border:1px solid #2b2b33;border-radius:16px;overflow:hidden}
.entity-network-figure figcaption{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:2rem;align-items:end;margin:0 0 1.5rem}
.entity-network-figure figcaption .eyebrow{grid-column:1/-1;margin:0;color:#b9bec8}
.entity-network-figure figcaption h3{margin:0;max-width:650px;font-size:clamp(1.7rem,3.5vw,3rem);line-height:1.05;color:#fff}
.entity-network-figure figcaption>p:last-child{max-width:720px;margin:0;color:#c9cbd2;font-size:1rem}
.entity-network-shell{border:1px solid #292930;background:#0a0a0e}
.entity-network-canvas{position:relative;isolation:isolate;width:100%;aspect-ratio:1000/620;min-height:260px;overflow:hidden;background:#0a0a0e}
.entity-network-graphic{position:absolute;inset:0;width:100%;height:100%}
.entity-network-graphic--mobile{display:none}
.entity-network-rings circle{fill:none;stroke:#5a5a63;stroke-width:1;opacity:.24}
.entity-network-line{stroke:#686872;stroke-width:1.1;opacity:.42;transition:stroke .18s ease,stroke-width .18s ease,opacity .18s ease}
.entity-network-line.is-active{stroke:#f0f0f2;stroke-width:2.2;opacity:.9}
.entity-node{position:absolute;z-index:2;left:var(--node-x);top:var(--node-y);width:clamp(2rem,5.2vw,3.5rem);height:clamp(2rem,5.2vw,3.5rem);padding:0;transform:translate(-50%,-50%);border:1px solid #484852;border-radius:50%;background:#111118;color:#d8d8df;box-shadow:0 0 0 0 rgba(255,255,255,0);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease}
.entity-node:hover,.entity-node:focus-visible,.entity-node.is-active{z-index:4;transform:translate(-50%,-50%) scale(1.16);border-color:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.09),0 0 24px rgba(255,255,255,.24)}
.entity-node:focus-visible{outline:3px solid #7dbbff;outline-offset:4px}
.entity-node--centre{width:clamp(3rem,7vw,4.75rem);height:clamp(3rem,7vw,4.75rem);background:#fff;color:#171a1f;border-color:#fff;animation:entity-centre-pulse 3.4s ease-in-out infinite}
.entity-node-icon,.entity-node-icon img,.entity-node-icon svg{display:block;width:100%;height:100%}
.entity-node-icon{padding:19%}
.entity-node-icon img{padding:0;border-radius:50%;object-fit:cover}
.entity-node-icon svg{overflow:visible;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}
.entity-node-label{position:absolute;z-index:5;left:50%;top:calc(100% + .55rem);width:max-content;max-width:180px;padding:.34rem .5rem;transform:translateX(-50%);border:1px solid #3a3a45;border-radius:4px;background:#15151c;color:#fff;font-size:.72rem;font-weight:750;line-height:1.2;opacity:0;pointer-events:none;transition:opacity .15s ease}
.entity-node:hover .entity-node-label,.entity-node:focus-visible .entity-node-label,.entity-node.is-active .entity-node-label{opacity:1}
.entity-node--label-above .entity-node-label{top:auto;bottom:calc(100% + .55rem)}
.entity-node--edge-left .entity-node-label{left:-.25rem;transform:none}
.entity-node--edge-right .entity-node-label{right:-.25rem;left:auto;transform:none}
.entity-network-detail{display:grid;grid-template-columns:minmax(150px,.34fr) minmax(0,.66fr);column-gap:2rem;align-items:start;min-height:112px;padding:1.25rem 1.4rem;border-top:1px solid #292930;background:#111118}
.entity-network-detail-label{grid-column:1/-1;margin:0 0 .4rem;color:#9da2ad;font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.entity-network-detail h4{margin:0;color:#fff;font-size:1.25rem}
.entity-network-detail>p:last-child{margin:0;color:#c9cbd2}
.entity-network-bridge{max-width:900px;margin:1.4rem 0 0;color:#c9cbd2;font-size:1.05rem}
.entity-network-bridge strong{color:#fff}
/* Node coordinates live in the external stylesheet so the production CSP can
   continue to reject inline styles without collapsing the network layout. */
[data-entity-node="business"]{--node-x:50%;--node-y:50%;--mobile-x:50%;--mobile-y:50%}
[data-entity-node="branding"]{--node-x:34.5%;--node-y:25.8%;--mobile-x:30%;--mobile-y:10%}
[data-entity-node="gbp"]{--node-x:50%;--node-y:15.3%;--mobile-x:50%;--mobile-y:10%}
[data-entity-node="directories"]{--node-x:19.5%;--node-y:41.9%;--mobile-x:10%;--mobile-y:27%}
[data-entity-node="wikidata"]{--node-x:24.5%;--node-y:67.7%;--mobile-x:27%;--mobile-y:43%}
[data-entity-node="customer"]{--node-x:30%;--node-y:86.3%;--mobile-x:10%;--mobile-y:64%}
[data-entity-node="government"]{--node-x:7.5%;--node-y:21.8%;--mobile-x:10%;--mobile-y:10%}
[data-entity-node="website"]{--node-x:36%;--node-y:53.2%;--mobile-x:30%;--mobile-y:27%}
[data-entity-node="press"]{--node-x:40.5%;--node-y:78.2%;--mobile-x:30%;--mobile-y:64%}
[data-entity-node="reviews"]{--node-x:8%;--node-y:66.1%;--mobile-x:10%;--mobile-y:43%}
[data-entity-node="maps"]{--node-x:62.5%;--node-y:29.8%;--mobile-x:50%;--mobile-y:27%}
[data-entity-node="search"]{--node-x:72%;--node-y:14.5%;--mobile-x:70%;--mobile-y:10%}
[data-entity-node="facebook"]{--node-x:77.5%;--node-y:36.3%;--mobile-x:70%;--mobile-y:27%}
[data-entity-node="instagram"]{--node-x:86.5%;--node-y:20.2%;--mobile-x:90%;--mobile-y:10%}
[data-entity-node="x"]{--node-x:92.5%;--node-y:48.4%;--mobile-x:90%;--mobile-y:27%}
[data-entity-node="linkedin"]{--node-x:85%;--node-y:66.1%;--mobile-x:74%;--mobile-y:43%}
[data-entity-node="youtube"]{--node-x:67%;--node-y:78.2%;--mobile-x:55%;--mobile-y:70%}
[data-entity-node="tiktok"]{--node-x:92.5%;--node-y:84.7%;--mobile-x:90%;--mobile-y:43%}
[data-entity-node="chatgpt"]{--node-x:47.5%;--node-y:87.9%;--mobile-x:38%;--mobile-y:83%}
[data-entity-node="claude"]{--node-x:60%;--node-y:91.1%;--mobile-x:63%;--mobile-y:83%}
[data-entity-node="gemini"]{--node-x:74.5%;--node-y:87.9%;--mobile-x:80%;--mobile-y:64%}
[data-entity-node="perplexity"]{--node-x:13.5%;--node-y:88.7%;--mobile-x:12%;--mobile-y:83%}
[data-entity-node="branding"]{color:#a78bfa}
[data-entity-node="gbp"],[data-entity-node="wikidata"],[data-entity-node="maps"],[data-entity-node="search"],[data-entity-node="gemini"]{background:#fff}
[data-entity-node="directories"]{color:#f4b400}
[data-entity-node="customer"]{color:#9fc3ff}
[data-entity-node="website"]{color:#38bdf8}
[data-entity-node="press"]{color:#d4d4d4}
[data-entity-node="reviews"]{color:#fbbf24}
[data-entity-node="reviews"] svg{fill:currentColor}
[data-entity-node="facebook"]{color:#1877f2}
[data-entity-node="facebook"] svg,[data-entity-node="linkedin"] svg,[data-entity-node="youtube"] svg,[data-entity-node="x"] svg,[data-entity-node="tiktok"] svg{fill:currentColor;stroke:none}
[data-entity-node="instagram"]{color:#fff;background:radial-gradient(circle at 30% 105%,#fdf497 0 5%,#fd5949 35%,#d6249f 62%,#285aeb 95%)}
[data-entity-node="instagram"] svg{fill:none;stroke:currentColor}
[data-entity-node="x"]{color:#fff}
[data-entity-node="linkedin"]{color:#0a66c2}
[data-entity-node="youtube"]{color:#ff0000}
[data-entity-node="tiktok"]{color:#fff;border-color:#69c9d0;box-shadow:2px 0 0 rgba(238,29,82,.55)}
@keyframes entity-centre-pulse{0%,100%{box-shadow:0 0 0 6px rgba(255,255,255,.07),0 0 28px rgba(255,255,255,.2)}50%{box-shadow:0 0 0 12px rgba(255,255,255,.025),0 0 42px rgba(255,255,255,.32)}}
@media(max-width:760px){.entity-network-figure figcaption{grid-template-columns:1fr}.entity-network-figure figcaption .eyebrow{grid-column:auto}.entity-network-detail{grid-template-columns:1fr;gap:.35rem}.entity-network-detail-label{grid-column:auto}.entity-node-label{display:none}.entity-network-canvas{aspect-ratio:5/6;min-height:0}.entity-network-graphic--desktop{display:none}.entity-network-graphic--mobile{display:block}.entity-node{left:var(--mobile-x);top:var(--mobile-y);width:44px;height:44px}.entity-node--centre{width:56px;height:56px}}
@media(max-width:420px){.entity-network-figure{padding:.8rem;border-radius:10px}.entity-network-detail{min-height:150px;padding:1rem}.entity-network-figure figcaption{padding:.35rem}.entity-network-bridge{padding:.35rem;margin-top:1rem}}
@media(prefers-reduced-motion:reduce){.entity-node--centre{animation:none}.entity-node,.entity-network-line,.entity-node-label{transition:none}}
@media(forced-colors:active){.entity-network-figure,.entity-network-shell,.entity-network-canvas,.entity-network-detail{forced-color-adjust:auto}.entity-node{border:2px solid ButtonText}.entity-network-line{stroke:CanvasText}.entity-node-label{border:1px solid CanvasText}}

/* Balanced section introductions: one idea reads as one visual block. */
.section-head{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:3rem}
.section-head>div{max-width:1000px}
.section-head h2,.services-section .section-head h2{max-width:1000px}
.section-head .section-intro{max-width:800px;margin:0}
.entity-network-figure figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:.85rem;margin-bottom:1.75rem}
.entity-network-figure figcaption .eyebrow{margin:0}
.entity-network-figure figcaption h3{max-width:900px}
.entity-network-figure figcaption>p:last-child{max-width:800px}
.seo-core{display:block}
.seo-core h2{max-width:980px}
.seo-core-copy{max-width:800px;margin-top:1.5rem}
.service-content-inner{display:block}
.service-content h2{max-width:900px}
.service-content-copy{max-width:800px;margin-top:1.5rem}
.service-content-inner.has-media{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5rem}
.service-content-inner.has-media .service-content-copy{margin-top:0}
.service-content-inner.has-media h2{max-width:560px}
.case-intro,.case-review{display:block}
.case-intro h2,.case-review h2{max-width:900px}
.case-intro>div:last-child,.case-review>ul{margin-top:1.5rem}
@media(max-width:900px){.service-content-inner.has-media{grid-template-columns:1fr;gap:3rem}.service-content-inner.has-media .service-content-copy{margin-top:0}}

/* Review cards: compact, verifiable client feedback with clear source hierarchy. */
.review-grid{max-width:1000px;margin:0 auto;gap:1.5rem}
.review-card,.review-card:last-child:nth-child(odd){grid-column:auto;min-height:300px;padding:1.65rem 1.7rem 1.45rem;border-left:4px solid var(--red);box-shadow:0 8px 24px rgba(23,26,31,.08)}
.review-card header{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:.9rem;padding-bottom:0;border-bottom:0}
.review-mark{background:#0f1115;color:#fff!important;font:850 .82rem/1 Inter,system-ui,sans-serif;padding:0}
.review-source{display:grid;gap:.08rem;min-width:0}
.review-source strong{color:var(--red-dark);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.review-source span{overflow-wrap:anywhere;color:var(--muted);font-size:.86rem;font-weight:700}
.review-card header span.review-stars{color:#a26800;font-size:1rem;font-weight:800;letter-spacing:.1em;line-height:1;white-space:nowrap}
.review-card header span.review-stars>span{color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit}
.review-card blockquote{padding:1.65rem 0 1.8rem}
.review-card blockquote p{font-size:clamp(1.25rem,2vw,1.55rem);font-weight:780;line-height:1.4}
.review-card footer{align-items:center;padding-top:1.15rem}
.review-card cite{font-size:1rem}
.review-card footer span{color:var(--muted)}
.review-card a{justify-content:flex-end;min-height:44px;color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.04em;text-align:right;text-transform:uppercase}
@media(max-width:620px){.review-card,.review-card:last-child:nth-child(odd){min-height:0;padding:1.3rem}.review-card header{grid-template-columns:44px minmax(0,1fr);gap:.75rem}.review-mark{width:44px;height:44px}.review-stars{grid-column:2;margin-top:.35rem}.review-card footer{align-items:flex-start;flex-direction:column}.review-card a{justify-content:flex-start;text-align:left}}

/* Approved corner system: 5px for every rectangular interface box. */
:root{--radius:5px}
.brand-logo,
.menu-button,
.button,
.site-nav,
.service-card,
.card,
.stat,
.method-step,
.home-closing,
.service-cta,
.audit-start,
.service-media img,
.service-trust figure,
.pete-section figure,
.about-story figure,
.author-profile-intro figure,
.author-area,
.context-note,
.toc,
.historical,
.article-media img,
.article-media video,
.embed-placeholder,
.external-embed,
.external-load,
.author-box,
.author-box-photo,
.footer-cta,
.map-embed,
.map-load,
.cookie-banner,
.consent-dialog,
.consent-close,
.entity-card,
.entity-card blockquote,
.article-cluster,
.faq-list,
.contact-form,
.contact-details,
.form-field input,
.form-field select,
.form-field textarea,
.evidence-images figure,
.evidence-images img,
.case-period,
.case-study-media figure,
.case-study-media img,
.case-outcome-grid section,
.review-card,
.utility-card,
.entity-network-figure,
.entity-network-shell,
.entity-network-detail,
.entity-node-label{border-radius:var(--radius)}
.pete-section figure,
.service-trust figure,
.about-story figure,
.author-profile-intro figure,
.service-media img,
.article-media img,
.article-media video,
.author-box-photo,
.evidence-images figure,
.evidence-images img,
.case-study-media figure,
.case-study-media img{overflow:hidden}

/* Mobile service-page repairs: keep Pete's trust block in a readable single
   column and keep FAQ disclosure markers inside the card padding. */
.faq-list summary{position:relative;list-style:none;padding-left:2.15rem}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::before{content:"▶";position:absolute;left:.35rem;top:1.58rem;font-size:.72em;line-height:1;transition:transform .15s ease}
.faq-list details[open] summary::before{transform:rotate(90deg)}
.faq-list details p{padding-left:2.15rem}
@media(max-width:900px){
  .service-trust-inner{grid-template-columns:minmax(0,1fr);gap:2.25rem;max-width:680px}
  .service-trust figure{width:min(100%,320px);max-width:320px}
}
@media(max-width:620px){
  .service-trust-inner{gap:1.75rem}
  .service-trust figure{width:min(78vw,300px)}
  .faq-list summary{padding:1.15rem .2rem 1.15rem 2rem}
  .faq-list summary::before{left:.25rem;top:1.42rem}
  .faq-list details p{padding:0 .2rem 1.2rem 2rem}
}

/* Performance: retain the centre-node emphasis without an infinite
   box-shadow animation, which delayed Lighthouse visual completion. */
.entity-node--centre{
  animation:none;
  box-shadow:0 0 0 8px rgba(255,255,255,.06),0 0 28px rgba(255,255,255,.2)
}
