@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--brown:#663300;--brown2:#8b5a2b;--gold:#b8860b;--ink:#2b241d;--muted:#70675d;--paper:#faf8f4;--cream:#f0ebe2;--line:#ded6c9;--white:#fff;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 var(--sans)}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.025em}h1{font-size:clamp(3.1rem,5.6vw,5.4rem);margin-bottom:28px}h2{font-size:clamp(2.4rem,4vw,3.7rem);margin-bottom:22px}h3{font-weight:500;line-height:1.35;font-size:1.35rem}p{margin-bottom:22px}img{max-width:100%;display:block}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}.concept{background:#33251a;color:#f7ead3;display:flex;justify-content:space-between;padding:7px max(30px,calc((100vw - 1240px)/2));font-size:12px;letter-spacing:.05em}.concept span:first-child{letter-spacing:.14em}header{position:sticky;top:0;background:rgba(250,248,244,.98);z-index:20;border-bottom:1px solid var(--line)}.nav-wrap{max-width:1400px;margin:auto;padding:12px 40px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:18px}.brand img{width:102px;height:77px;object-fit:contain}.brand span{font-size:12px;line-height:1.5;color:var(--brown);border-left:1px solid var(--line);padding-left:16px}nav{display:flex;align-items:center;gap:26px}nav a{font-size:14px;font-weight:500;white-space:nowrap}nav a:hover,nav a.active{color:var(--brown);text-decoration:underline;text-underline-offset:7px}.nav-cta{background:var(--brown);color:white!important;padding:13px 18px}.nav-cta span{margin-left:14px}.menu-toggle{display:none}.eyebrow{display:block;font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--brown2);margin-bottom:22px}.eyebrow.light{color:#dcc397}.hero{display:grid;grid-template-columns:1.03fr 1fr;min-height:670px}.hero-copy{padding:82px 55px 65px max(48px,calc((100vw - 1240px)/2))}.hero h1 em{font-style:normal;color:var(--brown)}.hero-copy>p{max-width:510px;color:var(--muted);font-size:18px;line-height:1.75}.hero-media{position:relative;min-height:580px;background:#514e46 url('assets/industrial-hero-1600.jpg') center/cover}.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(32,25,17,.8))}.image-caption{position:absolute;bottom:35px;left:35px;right:35px;z-index:1;color:white;display:flex;gap:22px;align-items:flex-start}.image-caption .index{font:36px var(--serif);color:#d5b366}.image-caption p{font-size:18px;line-height:1.5;max-width:380px;margin:0}.hero-note{margin-top:42px;border-top:1px solid var(--line);padding-top:20px;display:flex;gap:12px;color:var(--muted);font-size:13px}.hero-note strong{color:var(--brown);font-weight:500}.buttons{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:28px}.button{display:inline-flex;gap:24px;align-items:center;justify-content:center;background:var(--brown);color:white;padding:15px 23px;border:1px solid var(--brown);font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#492400;transform:translateY(-2px)}.button.secondary{background:transparent;color:var(--brown)}.button.secondary:hover{background:#eee4d6}.button.gold{background:#cc9a29;color:#261e14;border-color:#cc9a29}.text-link{display:inline-flex;gap:20px;color:var(--brown);font-size:14px;font-weight:600;border-bottom:1px solid #b99b76;padding-bottom:5px}.sectors{display:flex;justify-content:space-between;gap:20px;padding:23px 0;border-bottom:1px solid var(--line);color:#63584b;font-size:13px}.sectors strong{color:var(--brown);font-weight:600}.section{padding:88px 0}.section.small{padding:58px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:55px;margin-bottom:42px}.section-head h2{max-width:650px;margin:0}.section-head p{max-width:390px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;min-height:290px;transition:background .2s}.service-card:hover{background:#f0e9dd}.service-number{font-size:13px;color:var(--brown2);margin-bottom:36px;display:flex;justify-content:space-between}.service-card h3{font-family:var(--serif);font-size:29px;margin-bottom:15px}.service-card p{font-size:15px;color:var(--muted);margin-bottom:28px}.service-card .arrow{margin-top:auto;color:var(--brown);font-size:23px}.service-card.highlight{background:var(--brown);color:white}.service-card.highlight p,.service-card.highlight .service-number,.service-card.highlight .arrow{color:#eee0cc}.dark{background:#30261d;color:#fff9ed}.dark h2{color:#fff9ed}.dark p{color:#d0c3b4}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.question-tabs{display:flex;flex-direction:column;border-top:1px solid #62523f}.question-tabs button{background:transparent;color:#cbbca8;text-align:left;border:0;border-bottom:1px solid #62523f;padding:23px 0;display:flex;gap:22px;font-size:18px;align-items:center}.question-tabs button[aria-selected=true]{color:#fff;background:#3d3023;padding-left:20px;border-left:3px solid #cf9e37}.question-tabs button span{font-size:13px;color:#c8a064}.situation-panel{padding:30px 0 0}.situation-panel h3{font-family:var(--serif);font-size:35px;color:#eed09a}.situation-panel ul{padding-left:20px;margin-bottom:32px;color:#d4c9bb}.situation-panel li{margin:12px 0}.label-row{display:flex;justify-content:space-between;align-items:center}.value-row{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}.value-row article{border-top:2px solid var(--gold);padding-top:24px}.value-row h3{font-family:var(--serif);font-size:31px}.value-row p{color:var(--muted)}.cta-band{padding:58px 0;background:var(--cream);border-top:1px solid var(--line)}.cta-band .wrap{display:flex;gap:40px;justify-content:space-between;align-items:center}.cta-band h2{font-size:42px;margin-bottom:10px}.cta-band p{margin:0;color:var(--muted)}footer{background:#eee8de;padding-top:60px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:60px;padding-bottom:45px}.footer-logo{width:112px;height:84px;object-fit:contain;margin-bottom:17px}.footer-top p{font-size:14px;margin-bottom:14px}.footer-top a{display:block;font-size:14px;margin-bottom:13px}.footer-top a:hover{text-decoration:underline}.muted{color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d6cbbb;padding:20px 0;font-size:12px;color:#665b4b}.text-button{background:none;border:0;color:inherit;font-size:inherit;padding:0;text-decoration:underline}.page-hero{padding:55px 0 65px;border-bottom:1px solid var(--line)}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:38px}.breadcrumb a:hover{text-decoration:underline}.page-hero h1{font-size:clamp(3rem,5vw,4.8rem);max-width:950px}.page-hero .intro{font-size:20px;max-width:770px;color:var(--muted)}.page-hero .eyebrow{margin-bottom:17px}.page-hero.brown{background:var(--brown);color:#fff6e8}.page-hero.brown .breadcrumb,.page-hero.brown .intro{color:#e3d0b7}.page-hero.brown .eyebrow{color:#e8c988}.page-grid{display:grid;grid-template-columns:260px 1fr;gap:68px}.side-nav{position:sticky;top:125px;align-self:start}.side-nav a{display:block;border-bottom:1px solid var(--line);padding:15px 0;font-size:14px;color:var(--muted)}.side-nav a.current{color:var(--brown);font-weight:700;border-left:3px solid var(--gold);padding-left:15px}.side-nav .eyebrow{margin-bottom:10px}.content-heading{font-family:var(--serif);font-size:37px;line-height:1.2}.check-list{list-style:none;padding:0;margin:0}.check-list li{padding:16px 0 16px 30px;border-bottom:1px solid var(--line);position:relative}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--brown2)}.tab-row{display:flex;border-bottom:1px solid var(--line);gap:22px;margin:35px 0 28px;flex-wrap:wrap}.tab-row button{background:none;border:0;border-bottom:3px solid transparent;padding:12px 0;color:var(--muted);font-weight:500}.tab-row button[aria-selected=true]{color:var(--brown);border-bottom-color:var(--gold)}.deliverables{display:grid;grid-template-columns:1fr 1fr;gap:18px}.deliverable{background:var(--cream);padding:25px;border-left:2px solid var(--gold)}.deliverable h3{font-size:17px;margin-bottom:10px}.deliverable p{font-size:15px;margin:0;color:var(--muted)}.note{background:#efe8db;padding:20px 24px;border-left:3px solid var(--gold);font-size:14px;color:#615442}.note strong{color:var(--brown)}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:24px}summary:after{content:'+';color:var(--brown);font-size:22px}details[open] summary:after{content:'−'}details p{color:var(--muted);margin:20px 0 0}.scope-note{font-size:14px;color:var(--muted);margin-top:25px}.approach-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:55px}.dependency-map{background:#eee7da;padding:32px;position:relative}.dependency-map svg{width:100%;height:auto;display:block}.map-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.map-controls button{background:var(--paper);border:1px solid #cdbda6;padding:10px 7px;font-size:13px;color:var(--brown)}.map-controls button.active{background:var(--brown);color:#fff}.map-controls button:hover{border-color:var(--brown)}.map-detail{padding:15px 0}.map-detail h3{font-family:var(--serif);font-size:38px}.map-detail .eyebrow{margin-top:20px}.impact{border-top:1px solid var(--line);padding-top:23px;margin-top:28px}.impact p{margin:10px 0 25px}.scenario-switch{display:flex;gap:12px;align-items:center;border:1px solid var(--line);padding:18px;margin-bottom:25px;background:#fff}.scenario-switch input{width:20px;height:20px;accent-color:var(--brown)}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.case{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column}.case-art{padding:35px;background:#ddd0ba;min-height:190px;display:flex;justify-content:space-between;align-items:flex-end;color:var(--brown)}.case-art span{font:72px var(--serif);opacity:.45}.case-art strong{max-width:240px;font:30px/1.1 var(--serif);font-weight:400}.case-content{padding:30px;display:flex;flex:1;flex-direction:column}.case-content h3{font-size:23px}.case-content p{color:var(--muted)}.case-content .text-link{align-self:flex-start;margin-top:auto}.case-tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}.tag{font-size:12px;letter-spacing:.025em;border:1px solid var(--line);padding:4px 9px;color:var(--muted)}.article-list{border-top:1px solid var(--line)}.article-row{display:grid;grid-template-columns:120px 1fr 50px;gap:35px;padding:36px 0;border-bottom:1px solid var(--line);align-items:start}.article-row:hover h3{color:var(--brown)}.article-row h3{font:33px/1.2 var(--serif);margin-bottom:12px}.article-row p{color:var(--muted);margin:0;max-width:760px}.article-row>span:last-child{font-size:28px;color:var(--brown)}.article-body{max-width:770px;margin:auto}.article-body h2{font-size:36px;margin-top:45px}.article-body p,.article-body li{font-size:18px;line-height:1.85;color:#544b40}.article-body blockquote{font:30px/1.4 var(--serif);color:var(--brown);border-left:3px solid var(--gold);margin:35px 0;padding:10px 0 10px 30px}.person{padding:38px;background:var(--cream);border-top:3px solid var(--gold)}.person h3{font:36px var(--serif);margin-bottom:10px}.person .role{color:var(--brown2);font-size:14px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px}.contact-info h2{font-size:39px}.contact-info a{display:block;color:var(--brown);font-size:20px;margin:14px 0}.contact-info .steps{margin-top:40px}.steps>div{display:flex;gap:20px;padding:18px 0;border-top:1px solid var(--line)}.steps .step-number{font:30px var(--serif);color:var(--gold)}.steps h3{font-size:16px;margin:0 0 8px}.steps p{font-size:14px;color:var(--muted);margin:0}.form{background:white;border:1px solid var(--line);padding:36px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:22px}.field label{display:block;font-size:14px;font-weight:500;margin-bottom:8px}.field input,.field select,.field textarea{width:100%;background:#faf8f4;border:1px solid #cfc5b7;border-radius:0;padding:12px;color:var(--ink);min-width:0}.field textarea{min-height:140px;resize:vertical}.field small{font-size:12px;color:var(--muted)}.form .button{width:100%}.form .note{margin-bottom:26px;font-size:13px}.success{padding:25px 0}.success h2{font-size:34px}.success dl{margin:30px 0}.success dt{font-size:12px;text-transform:uppercase;color:var(--muted);margin-top:20px}.success dd{margin:3px 0;overflow-wrap:anywhere}.filter-row{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 32px}.filter-row button{background:none;border:1px solid var(--line);padding:9px 18px;font-size:14px;color:var(--muted)}.filter-row button.active{background:var(--brown);border-color:var(--brown);color:white}dialog{border:1px solid var(--line);background:var(--paper);padding:50px;width:min(700px,calc(100% - 32px));max-height:85vh;color:var(--ink)}dialog::backdrop{background:#201a13aa;backdrop-filter:blur(3px)}.modal-close{position:absolute;right:14px;top:6px;font-size:30px;border:0;background:none;color:var(--brown)}dialog h2{font-size:39px}dialog h3{font-size:18px;margin-top:25px}dialog p{color:var(--muted)}.skip{position:fixed;top:-60px;left:10px;background:#fff;padding:10px;z-index:50}.skip:focus{top:5px}.image-credit{font-size:12px;margin-top:12px;color:var(--muted)}.image-credit a{text-decoration:underline}.process-steps{counter-reset:stage;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process-steps article{border-top:1px solid var(--line);padding-top:20px}.process-steps article:before{counter-increment:stage;content:'0' counter(stage);font:32px var(--serif);color:var(--brown2);display:block;margin-bottom:25px}.process-steps h3{font-size:19px}.process-steps p{font-size:15px;color:var(--muted)}.gold-rule{border:0;height:3px;background:var(--gold);width:50px;margin:0 0 25px}.mini-label{font-size:12px;color:var(--brown2);text-transform:uppercase;letter-spacing:.09em}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;background:var(--cream);font-weight:600;color:var(--brown)}th,td{padding:18px;border-bottom:1px solid var(--line);vertical-align:top}#main{outline:none}.page-in{animation:pageIn .3s ease}@keyframes pageIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(min-width:1600px){.hero-copy{padding-top:110px}.hero{min-height:760px}}@media(max-width:1150px){.brand span{display:none}nav{gap:18px}.nav-wrap{padding:12px 28px}.wrap{width:calc(100% - 64px)}.hero-copy{padding:60px 35px}.hero{min-height:600px}.hero h1{font-size:4.25rem}.hero-media{min-height:600px}.split{gap:45px}.page-grid{gap:38px;grid-template-columns:220px 1fr}.contact-grid{gap:45px}.service-card{padding:28px}}@media(max-width:900px){.menu-toggle{display:flex;gap:20px;align-items:center;border:1px solid var(--line);background:none;padding:9px 16px;color:var(--brown)}nav{display:none;position:absolute;top:100%;left:0;right:0;padding:22px 32px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:13px 0}nav .nav-cta{padding:14px;margin-top:10px}.brand span{display:block}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding:45px 28px}.hero h1{font-size:3.4rem}.hero-copy>p{font-size:16px}.hero-media{min-height:570px}.hero-note{font-size:12px}.image-caption{left:24px;bottom:25px;right:24px}.image-caption p{font-size:15px}.section{padding:60px 0}.section-head{gap:30px}.service-grid{grid-template-columns:1fr 1fr}.sectors{flex-wrap:wrap;justify-content:flex-start;gap:12px 25px}.sectors strong{width:100%}.page-grid{display:block}.side-nav{position:static;display:flex;gap:15px;flex-wrap:wrap;margin-bottom:40px}.side-nav .eyebrow{width:100%}.side-nav a{padding:8px!important;font-size:12px}.approach-layout{grid-template-columns:1fr}.process-steps{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}.contact-info .steps{display:none}.footer-top{gap:30px}.cta-band .wrap{align-items:flex-start}.cta-band h2{font-size:35px}.cta-band .button{flex-shrink:0}}@media(max-width:620px){.wrap{width:calc(100% - 40px)}.concept{padding:6px 20px;font-size:10px}.concept span:last-child{display:none}.nav-wrap{padding:9px 20px}.brand img{width:80px;height:61px}.brand span{font-size:10px;padding-left:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 20px}.hero h1{font-size:3.45rem}.hero-copy>p{font-size:17px}.hero-media{min-height:340px}.hero-note{margin-top:27px}.eyebrow{font-size:11px}.section-head{display:block}.section-head p{margin-top:22px}.section-head .text-link{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:220px}.service-number{margin-bottom:20px}.service-card h3{font-size:30px}.split,.value-row,.two-col,.case-grid,.deliverables{grid-template-columns:1fr;gap:35px}.cta-band .wrap{display:block}.cta-band .button{margin-top:27px}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px;align-items:flex-start}.page-hero{padding:35px 0 40px}.breadcrumb{margin-bottom:27px}.page-hero h1{font-size:3.2rem}.page-hero .intro{font-size:18px}.form{padding:23px}.form-grid{grid-template-columns:1fr;gap:0}.article-row{grid-template-columns:1fr 30px;gap:15px}.article-row>.mini-label{grid-column:1/-1}.article-row h3{font-size:29px}.process-steps{gap:25px}.dependency-map{padding:15px}.map-controls{grid-template-columns:1fr 1fr}.map-controls button{font-size:12px}.tab-row{gap:18px}.tab-row button{font-size:14px}dialog{padding:40px 24px}.section{padding:50px 0}.buttons{gap:20px}.article-body p,.article-body li{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
/* Refined corporate navigation and expanded service architecture. */
body{font-size:18px}p{overflow-wrap:break-word}h1,h2,h3{overflow-wrap:break-word}html{scroll-padding-top:140px}.concept{font-size:12px}.nav-wrap{padding:4px 34px;gap:28px;min-height:116px}.brand{flex:none}.brand .brand-logo{display:block;position:relative;width:196px;height:112px;overflow:hidden;border:0;padding:0;margin:0}.brand .brand-logo img{position:absolute;top:-22px;left:0;width:196px;height:auto;max-width:none;object-fit:initial}.brand span{border:0;padding:0}.nav-wrap nav{gap:25px}.nav-wrap nav a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.nav-wrap nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.nav-cta{padding:13px 20px}.menu-toggle{min-height:44px;border-color:#998874}.eyebrow{font-size:14px;letter-spacing:.11em}.hero-copy{padding-top:64px;padding-bottom:66px}.hero-copy>.eyebrow{max-width:420px;font-size:13px}.hero h1{font-size:clamp(3.4rem,6.1vw,6rem);line-height:1.01}.hero-copy>p{font-size:20px;line-height:1.6;margin-bottom:17px}.hero-copy>p.hero-support{font-size:16px;line-height:1.65;color:var(--muted);max-width:470px}.hero-media{background-image:url('/assets/industrial-hero-1600.jpg');min-height:610px}.image-caption .index{font-size:27px;letter-spacing:-.08em;border:1px solid #d5b366;padding:4px 7px;line-height:1.1}.image-caption p{font-size:20px}.hero .buttons{margin-top:31px}.button,.text-link{font-size:15px}.button{min-height:48px}.text-link{min-height:44px;align-items:center}.sectors{font-size:14px;flex-wrap:wrap;align-items:center}.sectors strong{font-weight:500}.group-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line)}.group-card{padding:33px 30px;background:#f3eee6;display:flex;flex-direction:column;min-width:0}.group-card+ .group-card{border-left:1px solid #cdbfae}.family-number{font:36px/1 var(--serif);color:var(--brown2);display:block;margin-bottom:34px}.group-card h3{font:34px/1.12 var(--serif);color:var(--brown);min-height:114px;margin-bottom:20px}.group-card>p{font-size:16px;color:var(--muted);min-height:80px}.group-card ul{list-style:none;padding:0;margin:0}.group-card li{border-top:1px solid #d3c6b5}.group-service{display:flex;align-items:center;gap:15px;justify-content:space-between;font-size:15px;font-weight:500;line-height:1.45;padding:17px 0;min-height:54px}.group-service span{flex:none;color:var(--brown2)}.group-service:hover{color:var(--brown);text-decoration:underline;text-underline-offset:4px}.question-tabs button{padding:18px 0;font-size:17px;line-height:1.5;min-height:64px}.question-tabs button span{font-size:14px}.situation-panel{padding-top:66px;align-self:start;position:sticky;top:145px}.situation-panel h3{font-size:42px;line-height:1.12}.situation-panel>p{font-size:18px}.situation-links{margin:30px 0 36px;border-top:1px solid #776753}.situation-link{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:17px 0;font-size:16px;border-bottom:1px solid #776753;color:#fff7e8;line-height:1.4}.situation-link:hover{color:#eed09a}.situation-link span{flex:none}.family-jumps{display:flex;position:static;background:none;gap:16px;border:0;padding:0;align-items:stretch;margin-bottom:68px}.family-jumps a{white-space:normal;display:flex;flex:1;gap:15px;justify-content:space-between;align-items:center;border:1px solid #a8957c;padding:18px 20px;color:var(--brown);font-size:15px;line-height:1.4}.family-jumps a:hover{background:var(--cream);text-decoration:none}.family-jumps span{flex:none}.service-family{scroll-margin-top:145px;margin-bottom:76px}.service-family:last-child{margin-bottom:0}.family-heading{display:flex;gap:24px;align-items:flex-start;margin-bottom:27px}.family-heading .family-number{padding-top:3px;margin:0;min-width:38px}.family-heading .eyebrow{margin-bottom:10px}.family-heading h2{font-size:42px;margin-bottom:12px}.family-heading p{font-size:17px;color:var(--muted);margin:0}.service-card{min-height:270px;padding:30px}.service-card h3{font-size:30px}.service-card p{font-size:16px}.service-action{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-top:auto;font-size:14px;font-weight:600;color:var(--brown)}.service-family:nth-of-type(n+2) .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.side-nav{top:145px;max-height:calc(100vh - 175px);overflow-y:auto}.side-nav a{font-size:14px;line-height:1.4;padding:15px 0}.side-nav a.current{padding-left:12px}.check-list{font-size:17px}.deliverable h3{font-size:18px}.deliverable p,.steps p{font-size:16px}.scope-note{font-size:14px;line-height:1.6}.cream{background:var(--cream)}.perspective-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:stretch}.perspective-model{background:var(--cream);padding:28px}.perspective-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.perspective-tabs button{display:grid;grid-template-columns:1fr auto;text-align:left;background:var(--paper);border:1px solid #9c866a;color:var(--brown);padding:23px;min-height:166px;font:32px/1.2 var(--serif)}.perspective-tabs button[aria-selected=true]{background:var(--brown);color:white;border-color:var(--brown)}.perspective-tabs button:hover{outline:1px solid var(--brown);outline-offset:2px}.perspective-tabs button .perspective-number{grid-column:1/-1;font:14px var(--sans);align-self:start;opacity:.8}.perspective-tabs button>span:nth-child(n+2){align-self:end}.perspective-tabs button>span:last-child{font:20px var(--sans);align-self:end}.model-caption{font-size:14px;color:var(--muted);margin:23px 0 0;text-align:center}.perspective-panel{padding:20px 0;align-self:center}.perspective-panel h3{font:40px/1.1 var(--serif);margin-bottom:20px}.perspective-panel>p{font-size:18px;color:var(--muted)}.perspective-value{border-top:2px solid var(--gold);padding-top:25px;margin-top:30px}.perspective-value p{margin:12px 0 0;font-size:18px}.mini-label{font-size:13px}.approach-principles{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:45px}.approach-principles article{border-top:1px solid #b9a68a;padding-top:26px}.principle-label{font-size:14px;font-weight:600;color:var(--brown2);letter-spacing:.07em}.approach-principles h3{font:34px/1.15 var(--serif);margin:22px 0}.approach-principles p{font-size:18px;color:#5d5142}.approach-principles details{border-color:#b9a68a;padding:18px 0}.approach-principles summary{font-size:16px;line-height:1.5;align-items:center}.approach-principles details p{font-size:17px}.proof-note{margin-bottom:34px;font-size:16px}.proof-note p{margin:6px 0 0}.filter-row{margin-bottom:18px}.filter-row button{border-color:#978571;min-height:44px;font-size:14px}.result-count{font-size:14px;color:var(--muted);margin-bottom:28px}.case-content h3{font:32px/1.15 var(--serif)}.case-content p{font-size:17px}.tag{font-size:13px}.case-art span{font-size:58px}.case-art strong{font-size:29px}.case-art{min-height:160px;padding:28px}.article-row>.mini-label{font-size:13px}.article-row p{font-size:17px}.person p{font-size:17px}.person .scope-note{font-size:14px}.person .role{font-size:16px}.contact-info .steps h3{font-size:18px}.field label{font-size:16px}.field small{font-size:14px}.field input,.field select,.field textarea{border-color:#8d7d69;min-height:48px;font-size:16px}.form .note{font-size:14px}.form-grid{gap:18px}.success dd{white-space:pre-wrap}.success dt{font-size:14px}.footer-top a,.footer-top p{font-size:16px}.footer-top a{min-height:32px;line-height:1.5}.footer-brand{position:relative;width:196px;height:112px;overflow:hidden;margin-bottom:12px}.footer-brand img{position:absolute;width:196px;height:auto;top:-22px}.footer-tagline{color:var(--brown)}.footer-bottom{font-size:13px;align-items:center}.footer-bottom button{min-height:44px}.modal-close{width:44px;height:44px;padding:0;top:8px;right:8px}.image-credit{font-size:13px;margin-top:16px;margin-bottom:16px}.skip{font-size:16px}.note p:last-child{margin-bottom:0}.tab-row button{min-height:48px;font-size:16px}.breadcrumb{font-size:14px;line-height:1.5}.breadcrumb a{display:inline-flex;min-height:36px;align-items:center}.content-heading{font-size:37px}main>section:first-child{scroll-margin-top:130px}summary{min-height:36px}.footer-top{gap:40px}
@media(max-width:1150px){.nav-wrap nav{gap:17px}.nav-wrap{padding:4px 25px}.hero h1{font-size:clamp(3.35rem,6.4vw,5rem)}.hero-copy{padding:50px 34px}.hero-copy>p{font-size:18px}.group-card{padding:26px 22px}.group-card h3{font-size:31px}.group-card>p{min-height:100px}.section-head{gap:35px}.perspective-layout{gap:36px}.perspective-tabs button{font-size:28px;padding:20px}.perspective-panel h3{font-size:36px}}
@media(max-width:1050px){.menu-toggle{display:flex;align-items:center;gap:20px;background:none;color:var(--brown);padding:9px 16px;border:1px solid #998874}.nav-wrap #navigation{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:20px 32px;flex-direction:column;gap:0;align-items:stretch}.nav-wrap #navigation.open{display:flex}.nav-wrap #navigation a{padding:13px 0}.nav-wrap #navigation .nav-cta{padding:14px 18px;margin-top:8px}.brand .brand-logo{display:block}}
@media(max-width:900px){.hero{grid-template-columns:1.1fr 1fr}.hero-copy{padding:44px 28px}.hero h1{font-size:clamp(3rem,6.8vw,4rem)}.hero-media{min-height:620px}.hero-copy>.eyebrow{font-size:12px;letter-spacing:.07em}.hero .buttons{align-items:flex-start;gap:12px}.hero-copy>p{font-size:18px}.group-overview{grid-template-columns:1fr}.group-card{padding:28px 30px;display:grid;grid-template-columns:1fr 1.15fr;gap:12px 30px}.group-card+.group-card{border-left:0;border-top:1px solid #cdbfae}.group-card .family-number{grid-column:1;margin-bottom:4px}.group-card h3{grid-column:1;margin-bottom:12px;min-height:0;font-size:34px}.group-card>p{grid-column:1;min-height:0;margin:0;font-size:17px}.group-card ul{grid-column:2;grid-row:1/4;align-self:center}.group-service{font-size:16px}.family-jumps{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:48px;flex-direction:row}.family-jumps a{flex:1 1 200px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-family:first-of-type .service-card:last-child{grid-column:1/-1;min-height:220px}.side-nav{max-height:none;overflow:visible;gap:9px}.side-nav a{font-size:14px;padding:10px!important;line-height:1.5}.situation-panel{top:140px;padding-top:50px}.situation-panel h3{font-size:36px}.question-tabs button{font-size:16px}.perspective-layout{grid-template-columns:1fr 1fr;gap:28px}.perspective-model{padding:18px}.perspective-tabs{gap:10px}.perspective-tabs button{padding:17px 12px;font-size:24px;min-height:135px}.approach-principles{gap:35px}.approach-principles h3{font-size:31px}.footer-top{grid-template-columns:1.2fr 1fr 1fr;gap:30px}.footer-top a{font-size:14px;overflow-wrap:anywhere}.cta-band .button{flex-shrink:1}.sectors strong{width:100%}.form-grid{gap:20px}.contact-info .steps{display:block}}
@media(max-width:620px){.nav-wrap{padding:2px 20px;min-height:100px}.brand .brand-logo{width:176px;height:100px}.brand .brand-logo img{width:176px;height:auto;top:-20px}.concept{font-size:12px;padding:6px 20px;letter-spacing:0}.concept span:first-child{letter-spacing:.08em}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 20px}.hero h1{font-size:clamp(3.35rem,13vw,4.6rem)}.hero-copy>.eyebrow{font-size:12px}.hero-media{min-height:330px}.hero-copy>p{font-size:19px}.hero-copy>p.hero-support{font-size:17px}.hero .buttons{align-items:center;gap:14px 22px}.hero .button{padding:14px 18px}.image-caption p{font-size:18px}.eyebrow{font-size:13px;letter-spacing:.08em}.group-card{display:block;padding:27px 24px}.group-card .family-number{margin-bottom:24px}.group-card h3{font-size:34px;max-width:330px;margin-bottom:18px}.group-card>p{margin-bottom:24px}.group-service{font-size:16px;min-height:54px}.family-jumps{display:flex;flex-direction:column}.family-jumps a{flex:initial;font-size:15px}.service-grid,.service-family:nth-of-type(n+2) .service-grid{grid-template-columns:1fr}.service-family:first-of-type .service-card:last-child{grid-column:auto}.family-heading{gap:14px}.family-heading .family-number{font-size:29px;min-width:29px}.family-heading h2{font-size:34px}.family-heading .eyebrow{font-size:12px}.service-family{margin-bottom:55px}.service-card{min-height:240px;padding:26px}.service-card h3{font-size:31px}.service-card p{font-size:17px}.situation-panel{position:static;padding-top:0}.situation-panel h3{font-size:36px}.question-tabs button{font-size:16px;min-height:62px}.situation-links{margin:24px 0 28px}.situation-link{font-size:16px}.perspective-layout{grid-template-columns:1fr;gap:24px}.perspective-tabs button{font-size:28px;padding:20px;min-height:150px}.perspective-panel{padding:14px 0}.perspective-panel h3{font-size:36px}.model-caption{font-size:14px}.approach-principles{grid-template-columns:1fr;gap:38px}.approach-principles h3{font-size:33px}.approach-principles summary{font-size:16px}.page-hero .intro{font-size:19px}.page-hero h1{font-size:clamp(2.8rem,11vw,3.6rem)}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top a,.footer-top p{font-size:15px}.footer-bottom{align-items:flex-start;font-size:13px}.form-grid{gap:0}.field label{font-size:16px}.form{padding:23px 19px}.contact-info a{font-size:19px}.contact-grid{gap:35px}.tab-row{gap:13px}.tab-row button{font-size:15px}.filter-row{gap:8px}.filter-row button{padding:9px 14px;font-size:14px}.case-art{gap:20px}.case-content{padding:26px}.case-content h3{font-size:31px}.image-credit{font-size:13px}.person{padding:29px}.content-heading{font-size:34px}.section-head h2{font-size:clamp(2.3rem,9vw,3.3rem)}}

.form fieldset{border:0;margin:0;padding:0;min-width:0}.form fieldset:disabled{opacity:.7}

/* A compact logo and message grouped in the photograph's upper-left sky. */
.hero-media::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(250,248,244,.68) 0,rgba(250,248,244,.68) 170px,rgba(250,248,244,0) 290px)}
.hero-branding{position:absolute;z-index:2;top:24px;left:24px;right:24px;display:flex;align-items:center;gap:20px;color:#4f2e16}
.hero-branding .hero-logo-frame{position:relative;display:block;flex:0 0 152px;width:152px;aspect-ratio:648/413;overflow:hidden;background:transparent}
.hero-branding .hero-logo{position:absolute;width:122.222223%;max-width:none;height:auto;left:-9.876544%;top:-22.760291%;background:transparent}
.hero-branding p{font-size:18px;line-height:1.5;font-weight:500;max-width:250px;min-width:0;margin:0}
@media(max-width:900px){.hero-branding{top:20px;left:20px;right:20px;gap:14px}.hero-branding .hero-logo-frame{flex-basis:112px;width:112px}.hero-branding p{font-size:16px;line-height:1.5}}
@media(max-width:620px){.hero-branding{top:18px;left:18px;right:18px}.hero-media::before{background:linear-gradient(180deg,rgba(250,248,244,.68) 0,rgba(250,248,244,.68) 130px,rgba(250,248,244,0) 240px)}}

.hero-eyebrow>span{display:block}.hero-eyebrow>span+span{margin-top:5px}

/* Production content: evidence, readable articles, and financial control. */
.faq-block{margin-top:3.5rem}.financial-approach{display:grid;grid-template-columns:1fr 1fr;gap:4rem;border-top:1px solid var(--line);padding-top:3rem}.financial-approach h2{font-size:2.7rem}.financial-approach p{font-size:1.1rem}.page-jumps{display:flex;flex-wrap:wrap;gap:.75rem 2rem;padding:0 0 1.8rem;margin-bottom:3rem;border-bottom:1px solid var(--line);position:static;background:transparent}.page-jumps a{font-size:.95rem;color:var(--brown);min-height:2.75rem;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:5px}.financial-opening h2{font-size:2.7rem}.financial-opening p{font-size:1.1rem}.control-explorer{display:grid;grid-template-columns:1.7fr 1fr;gap:2.5rem;align-items:stretch}.control-diagram{position:relative;min-width:0;align-self:start}.control-wires{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.control-nodes{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6rem 2rem;padding:1.5rem 1rem 2.5rem;min-height:330px}.control-nodes button{min-height:105px;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:.7rem;padding:1rem;background:var(--paper);color:var(--brown);border:1px solid #9c866a;font:600 1rem/1.4 var(--sans);cursor:pointer}.control-nodes button .mini-label{font-size:.875rem;font-weight:400}.control-nodes button[aria-selected=true]{background:var(--brown);color:white;border-color:var(--brown)}.control-detail{background:var(--paper);padding:2rem;border-left:3px solid var(--gold);align-self:stretch}.control-detail h3{font:2rem/1.15 var(--serif);margin-bottom:1rem}.control-detail p{font-size:1rem}.control-connection{padding-top:1rem;margin-top:1.5rem;border-top:1px solid var(--line);color:var(--muted)}.diagram-caption{max-width:850px;font-size:.95rem;color:var(--muted);margin:1.5rem 0 0}.forecast-module{border:1px solid #cabbab;padding:2.5rem;background:#fffefa;min-width:0}.forecast-header{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem}.forecast-header h3{font:2.5rem/1.15 var(--serif);margin:0}.chart-basis{font-size:.95rem;max-width:245px;color:var(--muted);line-height:1.6}.chart-basis strong{color:var(--brown)}.forecast-intro{font-size:1.05rem;max-width:850px;margin:1.5rem 0}.chart-legend{display:flex;gap:1rem 1.75rem;flex-wrap:wrap;font-size:.95rem;margin:1.5rem 0}.chart-legend>span{display:inline-flex;align-items:center;gap:.65rem}.legend-line{width:25px;border-top:3px solid #663300;display:inline-block}.legend-line.upper{border-color:#B8860B;border-top-style:dashed}.legend-line.budget{border-color:#77716a;border-top-style:dotted}.forecast-line{fill:none;stroke:#663300;stroke-width:3.5;stroke-linejoin:round;vector-effect:non-scaling-stroke}.forecast-upper{fill:none;stroke:#B8860B;stroke-width:3;stroke-dasharray:8 4;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-grid{stroke:#e3dbd0;stroke-width:1}.chart-baseline{stroke:#77716a;stroke-width:1.5;stroke-dasharray:4 4}.chart-cursor{stroke:#ad9980;stroke-width:1;stroke-dasharray:3 4}.chart-axis{fill:#5f5145;font:20px var(--sans)}#forecast-plot{overflow-x:auto;max-width:100%;margin:1.5rem 0}#forecast-svg{display:block;width:100%;min-width:760px;height:auto}.forecast-controls{display:flex;align-items:center;gap:2rem;border-top:1px solid var(--line);padding-top:1.5rem}.forecast-controls .button{white-space:nowrap}.forecast-slider{flex:1;min-width:0}.forecast-slider label{display:flex;justify-content:space-between;gap:.5rem;font-size:.95rem;margin-bottom:.6rem}.forecast-slider output{font-weight:600;color:var(--brown)}.forecast-slider input{width:100%;accent-color:#663300;cursor:pointer;min-height:2.75rem;margin:0}.forecast-step{display:flex;gap:.5rem}.forecast-step button{width:44px;height:44px;border:1px solid #9c866a;background:transparent;color:var(--brown);font-size:1.2rem;cursor:pointer}.forecast-step button:disabled{opacity:.4;cursor:default}.forecast-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:2rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.forecast-metrics>div{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.4rem}.forecast-metrics>div+div{border-left:1px solid var(--line)}.forecast-metrics span{font-size:.95rem;color:var(--muted)}.forecast-metrics strong{font:2.5rem/1.1 var(--serif);color:var(--brown)}.forecast-metrics small{font-size:.875rem;color:var(--muted)}.forecast-caption{font-size:1rem;margin:1.3rem 0 .75rem;min-height:2.8rem}.chart-qualification{font-size:.9rem;color:#655344;line-height:1.6;padding:.9rem 1rem;background:#f3ece2;margin-bottom:1.4rem}.forecast-module details{font-size:1rem}.forecast-module summary{font-size:1rem}.forecast-module details p{font-size:1rem}.table-scroll{overflow:auto;max-width:100%;margin-top:1rem}.forecast-table{border-collapse:collapse;width:100%;font-size:.95rem;text-align:right}.forecast-table caption{font-size:.95rem;text-align:left;padding:1rem 0}.forecast-table td,.forecast-table th{border-bottom:1px solid var(--line);padding:.75rem 1rem}.forecast-table th:first-child{text-align:left}.forecast-table thead{background:var(--cream)}.forecast-table tbody th{font-weight:400}.forecast-takeaway{max-width:850px;margin:2.5rem auto 0;padding-left:1.5rem;border-left:3px solid var(--gold)}.forecast-takeaway h3{font:2.1rem/1.2 var(--serif);margin:.9rem 0}.forecast-takeaway p{font-size:1.1rem}.evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.evidence-card{display:flex;flex-direction:column;padding:2rem;background:var(--paper);border:1px solid #cabbab;color:inherit;min-width:0}.evidence-card>strong{font:2.2rem/1.1 var(--serif);color:var(--brown);margin:.5rem 0}.metric-context{font-size:.95rem;color:var(--muted);line-height:1.5}.evidence-card h3{font:1.7rem/1.2 var(--serif);margin:1.7rem 0}.evidence-card .service-action{margin-top:auto;padding-top:1rem}.evidence-card:hover{border-color:var(--brown)}.related-insights{margin-top:3rem;padding-top:1.6rem;border-top:1px solid var(--line)}.related-link{display:flex;justify-content:space-between;gap:1rem;align-items:center;color:var(--brown);padding:1rem 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.5}.related-link:hover{text-decoration:underline;text-underline-offset:4px}.related-link>span{flex:none}.experience-intro{max-width:950px;font-size:1.1rem;margin-bottom:2rem}.real-case .case-art{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.75rem;background:#eee6d9}.real-case .case-art strong{font:2.2rem/1.1 var(--serif);color:var(--brown)}.real-case .case-art .case-metric-context{font:1rem/1.5 var(--sans);color:#68503d;max-width:440px;opacity:1}.real-case .case-content{display:flex;flex-direction:column}.real-case .case-content .text-link{margin-top:auto;padding-top:1rem}.story-layout{display:grid;grid-template-columns:minmax(0,780px) minmax(220px,300px);justify-content:space-between;gap:4rem}.story-copy{min-width:0}.story-copy section{margin:2.5rem 0}.story-copy h2,.article-body h2{font:2.2rem/1.2 var(--serif);margin-bottom:1rem}.story-copy p,.article-body p,.article-body li{font-size:1.125rem;line-height:1.8}.story-aside{align-self:start;position:sticky;top:155px;min-width:0}.story-aside>.eyebrow{margin-top:2rem}.story-aside .button{margin-top:2rem;white-space:normal;text-align:left;justify-content:space-between}.case-result{padding:1.5rem;background:var(--cream);border-top:3px solid var(--gold);margin-bottom:2rem}.case-result>strong{font:2.2rem/1.15 var(--serif);color:var(--brown);display:block;margin:1rem 0}.case-result p{font-size:1rem;margin:0}.story-layout .article-body{max-width:none;padding:0;margin:0;min-width:0}.article-body section{margin:2rem 0 2.5rem}.insight-implications{padding-left:1.3rem}.insight-implications li{padding-left:.4rem;margin-bottom:1.2rem}.owner-takeaway{border-left:3px solid var(--gold);padding:1.5rem 1.7rem;background:var(--cream)}.owner-takeaway p{margin:0;font-size:1.1rem}.inquiry-help{font-size:1rem}.success .buttons{align-items:stretch}.success dd{overflow-wrap:anywhere}.button:disabled{cursor:default;opacity:.55}.real-case .tag{font-size:.875rem}.article-row>.mini-label{font-size:.875rem}
@media(max-width:1050px){.control-explorer{grid-template-columns:1fr}.control-detail{border-left:0;border-top:3px solid var(--gold)}.control-nodes{gap:6rem 2rem}.story-layout{gap:2.5rem;grid-template-columns:minmax(0,1fr) 260px}.forecast-module{padding:1.8rem}.evidence-card{padding:1.5rem}.evidence-card h3{font-size:1.5rem}}
@media(max-width:800px){.financial-approach,.financial-opening{grid-template-columns:1fr;gap:1.5rem}.story-layout{grid-template-columns:1fr;gap:2.5rem}.story-aside{position:static;border-top:1px solid var(--line);padding-top:1.5rem}.evidence-grid{grid-template-columns:1fr}.evidence-card{padding:1.7rem}.evidence-card h3{font-size:1.8rem}.forecast-header{align-items:flex-start;flex-direction:column;gap:1rem}.chart-basis{max-width:none}.forecast-controls{flex-wrap:wrap;gap:1rem}.forecast-slider{order:3;flex-basis:100%}.forecast-step{margin-left:auto}.forecast-metrics>div{padding:1rem}.forecast-metrics strong{font-size:2rem}}
@media(max-width:620px){.page-jumps{gap:.4rem 1.2rem;margin-bottom:2rem}.page-jumps a{font-size:.95rem}.financial-opening h2,.financial-approach h2{font-size:2.2rem}.control-nodes{gap:4.5rem .8rem;padding:1rem 0 2rem;min-height:320px}.control-nodes button{font-size:.9rem;padding:.7rem .5rem;min-height:112px;overflow-wrap:normal;hyphens:none}.control-nodes .mini-label{font-size:.875rem}.control-wires{opacity:.75}.control-detail{padding:1.5rem}.control-detail h3{font-size:1.9rem}.forecast-module{padding:1.4rem 1rem}.forecast-header h3{font-size:2rem}.chart-legend{flex-direction:column;gap:.7rem;font-size:.9rem}.forecast-metrics{grid-template-columns:1fr}.forecast-metrics>div{display:grid;grid-template-columns:1fr auto;gap:.5rem;padding:1rem}.forecast-metrics>div+div{border-left:0;border-top:1px solid var(--line)}.forecast-metrics strong{grid-column:2;grid-row:1/3;font-size:2rem}.forecast-metrics small{grid-column:1}.forecast-metrics span{font-size:1rem}.forecast-caption{min-height:0}.forecast-takeaway h3{font-size:1.9rem}.forecast-table{font-size:.875rem}.forecast-table td,.forecast-table th{padding:.6rem .5rem}.story-copy h2,.article-body h2{font-size:2rem}.story-copy p,.article-body p,.article-body li{font-size:1.0625rem}.owner-takeaway{padding:1.3rem}.real-case .case-art strong{font-size:2rem}.real-case .case-art .case-metric-context{font-size:.95rem}}

/* Service contribution cards share the deliverable layout. */
.cost-work{margin-top:48px}

/* Realized adjustments share the illustrative dollar scale of the forecast series. */
.forecast-realized{fill:none;stroke:#3f6655;stroke-width:3;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.legend-line.realized{border-color:#3f6655;position:relative}
.legend-line.realized:after{content:"";width:8px;height:8px;background:#3f6655;position:absolute;left:9px;top:-5px;transform:rotate(45deg)}
@media(min-width:621px) and (max-width:1050px){.forecast-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.forecast-metrics>div:nth-child(3){border-left:0}.forecast-metrics>div:nth-child(n+3){border-top:1px solid var(--line)}}

/* Experience spans multiple connected contributions. */
.case-kind{display:block;color:var(--brown2);font-size:.875rem;font-weight:600;margin-bottom:.6rem}
.experience-context{max-width:950px;font-size:1rem;color:var(--muted);margin:-.75rem 0 2rem}
.experience-connections{border-top:2px solid var(--gold);padding-top:2rem;margin-top:2.5rem}
.experience-connections .tag{font-size:.875rem}

/* Consistent Experience headers and meaningful, linked topic labels. */
.experience-meta{display:flex;align-items:center;justify-content:space-between;gap:.65rem 1rem;flex-wrap:wrap;margin-bottom:1rem}
.experience-meta .case-kind,.experience-meta .eyebrow{margin:0}
.setting-tag{display:inline-flex;align-items:center;min-height:36px;padding:.25rem .65rem;border:1px solid #bda88e;background:#f6efe3;color:#663300;font-size:.875rem;font-weight:600}
.setting-tag:hover,.setting-tag:focus-visible{background:#e9dcc8;text-decoration:underline;text-underline-offset:3px}
.setting-label{font-size:.875rem;color:#68503d}
.category-tag:hover,.category-tag:focus-visible{color:#663300;background:#eee6d9;border-color:#8b5a2b;text-decoration:underline;text-underline-offset:3px}
.experience-topics{margin:.1rem 0 1.2rem;padding-top:1rem;border-top:1px solid var(--line)}
.topic-label{display:block;font-size:.875rem;font-weight:600;color:#68503d;margin-bottom:.4rem}
.topic-links{display:flex;flex-wrap:wrap;gap:.25rem .9rem}
.topic-tag{display:inline-flex;align-items:center;min-height:36px;font-size:.875rem;color:#663300;text-decoration:underline;text-decoration-color:#bda88e;text-underline-offset:4px;overflow-wrap:anywhere;max-width:100%}
.topic-tag:hover,.topic-tag:focus-visible{text-decoration-color:#663300;background:#f6efe3}
.detail-meta{margin-bottom:.5rem}
.story-copy p.setting-description{font-size:1rem;color:#68503d;margin-bottom:2rem}
#experience-list{scroll-margin-top:125px}
.real-case .case-content .case-explore{margin-top:0;margin-bottom:1.25rem;padding-top:0}
.real-case .case-content .experience-topics{margin-top:auto;margin-bottom:0}

/* A concise, accessible comparison within an Insight's perspective. */
.insight-comparison{margin:2rem 0 0;padding-top:1.5rem;border-top:2px solid var(--gold);min-width:0}
.article-body .insight-comparison h3{font:1.8rem/1.25 var(--serif);color:var(--brown);margin:0 0 1rem}
.insight-comparison-scroll{max-width:100%;overflow-x:auto;margin:1.5rem 0;overscroll-behavior-x:contain}
.insight-comparison-scroll:focus-visible{outline:2px solid var(--brown);outline-offset:4px}
.insight-comparison-table{border-collapse:collapse;width:100%;min-width:580px;font-size:1rem;line-height:1.6;text-align:left}
.insight-comparison-table th,.insight-comparison-table td{padding:1rem;vertical-align:top;border-bottom:1px solid var(--line)}
.insight-comparison-table thead{background:var(--cream);color:var(--brown)}
.insight-comparison-table tbody th{width:22%;color:var(--brown);font-weight:600}
.insight-comparison-table td{width:39%}

/* Place selected examples within the breadth of Sand Hill's recent work. */
.experience-breadth{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:3.5rem;align-items:start}
.experience-breadth h2{font-size:2.75rem}
.experience-breadth p{font-size:1.0625rem;line-height:1.7}
.experience-breadth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.experience-breadth-grid article{border-top:2px solid var(--gold);padding-top:1.1rem;min-width:0}
.experience-breadth-grid h3{font:1.75rem/1.2 var(--serif);color:var(--brown);margin:0 0 .8rem}
.experience-breadth-grid p{margin:0}
.breadth-links{margin-top:1rem}.breadth-links .related-link{font-size:.95rem;padding:.65rem 0;min-height:44px}
.experience-breadth p.project-value-context{font-size:.875rem;line-height:1.6;color:#68503d;border-top:1px solid var(--line);padding-top:1rem;margin:1.75rem 0 0}
@media(max-width:1000px){.experience-breadth{grid-template-columns:1fr;gap:2rem}}
@media(max-width:600px){.experience-breadth-grid{grid-template-columns:1fr}.experience-breadth h2{font-size:2.25rem}}

.chart-contingency{stroke:#456477;stroke-width:2;stroke-dasharray:10 4 2 4}.legend-line.contingency{border-color:#456477;border-top-style:dashed}

/* Keep selected financial-control labels readable on the brown background. */
.control-nodes button[aria-selected=true] .mini-label{color:#fff}

/* Accessible horizontal chart navigation on smaller screens. */
.forecast-scroll-help{display:none;font-size:.95rem;color:var(--muted);margin:1rem 0 .5rem}
#forecast-plot:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(max-width:1050px){.forecast-scroll-help{display:block}}

/* Balanced greenfield and brownfield examples on Project Development. */
@media(min-width:801px){.evidence-grid.evidence-grid-paired{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Navigation remains available until interactive initialization succeeds. */
@media(max-width:1050px){
 html:not(.navigation-ready) header{position:static}
 html:not(.navigation-ready) .nav-wrap{flex-wrap:wrap}
 html:not(.navigation-ready) .menu-toggle{display:none}
 html:not(.navigation-ready) .nav-wrap #navigation{display:flex;position:static;flex:0 0 100%;width:100%;padding:0 0 16px;border-bottom:0}
}

/* Consistent service categories and visible navigation hierarchy. */
.service-nav-group{margin:22px 0 0}.service-nav-group h2{font-family:var(--sans);font-size:14px;line-height:1.45;letter-spacing:0;font-weight:700;color:var(--brown);margin:0 0 6px}.service-nav-group ul{list-style:none;margin:0;padding:0}.service-nav-group li{margin:0}.side-nav .service-nav-group a{padding:9px 8px 9px 14px;line-height:1.45}.service-nav-group.current-group h2{border-top:2px solid var(--gold);padding-top:10px}.side-nav .service-nav-group a.current{background:var(--cream);padding-left:11px}
@media(min-width:1051px){.side-nav{max-height:calc(100vh - 150px);overflow-y:auto;padding-right:12px;scrollbar-gutter:stable}}
@media(max-width:1050px){.side-nav{max-height:none;overflow:visible}.service-nav-group{min-width:0}}
.page-grid .financial-opening{grid-template-columns:1fr;gap:24px}
.service-nav-toggle{display:none}
@media(max-width:900px){
 .side-nav{display:block}
 .service-nav-toggle:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:48px;padding:13px 16px;border:1px solid var(--line);background:var(--cream);color:var(--brown);text-align:left;font-weight:600;cursor:pointer}
 .service-nav-indicator{font-size:22px;line-height:1;flex-shrink:0}
 .service-nav-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-top:20px}
 .service-nav-links>.eyebrow{grid-column:1/-1;margin-bottom:0}
 .service-nav-group{margin-top:0}
 .side-nav .service-nav-group a{min-height:44px;display:flex;align-items:center;font-size:14px}
}
@media(max-width:600px){.service-nav-links{grid-template-columns:1fr}.service-nav-group{margin-top:10px}}
.service-nav-toggle[hidden],.service-nav-links[hidden]{display:none}

/* Approved text is present before enhancement; only working tabs hide panels. */
[data-tabset]:not(.tabs-ready){display:block}
[data-tabset]:not(.tabs-ready) [data-tab-controls]{display:none}
[data-tabset]:not(.tabs-ready)>[data-tab-panel]{position:static;margin-top:2rem}
[data-tabset]:not(.tabs-ready)>[data-tab-panel]+[data-tab-panel]{border-top:1px solid var(--line);padding-top:2rem}
[data-tabset="situation"]:not(.tabs-ready)>.situation-panel{padding-top:0}
.tabs-ready .tab-fallback-heading{display:none}
[data-tab-panel][hidden]{display:none!important}

.service-authority{margin:28px 0 36px}.service-authority h2{font-family:var(--sans);font-size:18px;font-weight:600;line-height:1.4;letter-spacing:0;margin-bottom:16px}.service-authority p{font-size:16px}.service-authority p:last-child{margin-bottom:0}

/* Shared Experience evidence labels and featured-facility result. */
.case-evidence-type{padding:14px 28px;background:var(--paper);color:var(--brown);font-size:16px;font-weight:700;border-bottom:1px solid var(--line);border-top:3px solid var(--gold)}.real-case.evidence-case .case-art .evidence-basis{font:600 14px/1.5 var(--sans);color:var(--brown2);opacity:1}.breadth-evidence-type{display:block;color:var(--brown);font-weight:700;font-size:14px;margin-bottom:12px;border-left:3px solid var(--gold);padding-left:10px}.featured-facility-result{background:var(--cream);border-left:3px solid var(--gold);padding:22px;margin:0 0 24px}.featured-facility-result>span{display:block;font-size:14px;font-weight:700;color:var(--brown2);margin-bottom:10px}.featured-facility-result>strong{display:block;font:30px/1.2 var(--serif);color:var(--brown);margin-bottom:12px}.featured-facility-result p{font-size:16px;margin:0 0 12px}.featured-facility-result a{color:var(--brown);font-size:16px;font-weight:600;text-decoration:underline;text-underline-offset:4px}.evidence-case .case-art strong{max-width:100%}
@media(max-width:600px){.case-evidence-type{padding:12px 22px}.featured-facility-result{padding:18px}}

.evidence-card .related-evidence-type{font-size:14px;font-weight:700;color:var(--brown);margin-bottom:10px}.evidence-card .related-evidence-basis{font-size:14px;color:var(--muted);margin-bottom:8px}

/* Paired principal profiles, with a reserved portrait for Mark. */
.about-firm{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}
.about-firm>div{min-width:0}
.about-firm h2{max-width:480px}
.about-firm p:last-of-type{margin-bottom:26px}
.about-leadership{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.leadership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:stretch}
.leadership-card{min-width:0;background:var(--paper);border-top:3px solid var(--gold);padding:32px}
.leadership-heading{display:grid;grid-template-columns:144px minmax(0,1fr);gap:26px;align-items:center;margin-bottom:30px}
.leadership-portrait{width:144px;height:180px;object-fit:cover;object-position:center center;background:#e6e0d6}
.leadership-heading h3{font:2rem/1.12 var(--serif);color:var(--brown);margin:0 0 12px;overflow-wrap:break-word}
.leadership-credentials{font-size:.875rem;color:var(--muted);margin:0 0 12px}
.leadership-role{font-size:1rem;line-height:1.5;font-weight:500;color:var(--brown);margin:0}
.leadership-bio p{font-size:1rem;line-height:1.75;margin:0 0 20px}
.leadership-bio p:last-child{margin-bottom:0}
.portrait-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;border:1px solid #cbbca8;color:var(--brown)}
.portrait-initials{font:3.5rem/1 var(--serif)}
.portrait-label{font-size:.875rem;line-height:1.4;text-align:center;max-width:110px}
@media(max-width:1100px){.about-firm{gap:45px}.leadership-card{padding:28px}.leadership-heading{grid-template-columns:120px minmax(0,1fr);gap:20px}.leadership-portrait{width:120px;height:150px}}
@media(max-width:960px){.about-firm{grid-template-columns:1fr;gap:24px}.about-firm h2{max-width:none}.leadership-grid{grid-template-columns:1fr}.leadership-heading{grid-template-columns:144px minmax(0,1fr);gap:28px}.leadership-portrait{width:144px;height:180px}.leadership-heading h3{font-size:2.25rem}}
@media(max-width:600px){.leadership-card{padding:24px}.leadership-heading{grid-template-columns:1fr;gap:22px;margin-bottom:26px}.leadership-portrait{width:144px;height:180px}.leadership-heading h3{font-size:2rem}.leadership-grid{gap:28px}}

/* Interior pages retain navigation in a shorter, stable header. */
html.interior-page{scroll-padding-top:104px}
.interior-page .nav-wrap{min-height:84px;padding:4px 34px}
.interior-page .brand .brand-logo{width:132px;height:76px}
.interior-page .brand .brand-logo img{width:132px;height:auto;top:-15px}
.interior-page .service-family,.interior-page main>section:first-child{scroll-margin-top:0}
.interior-page .story-aside{top:104px}
@media(min-width:1051px){.interior-page .side-nav{top:104px;max-height:calc(100vh - 124px)}}
@media(max-width:1150px){.interior-page .nav-wrap{padding-left:25px;padding-right:25px}}
@media(max-width:620px){.interior-page .nav-wrap{padding-left:20px;padding-right:20px}}

/* Keep the chart key and reporting-period controls together. */
.forecast-module{padding:24px}
.forecast-header{align-items:center;gap:24px}
.forecast-header .eyebrow{margin-bottom:8px}
.forecast-header h3{font-size:32px;line-height:1.15}
.chart-basis{font-size:14px;max-width:265px;flex-shrink:0}
.forecast-intro{font-size:16px;line-height:1.5;max-width:none;margin:14px 0}
.chart-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;font-size:14px;line-height:1.4;margin:16px 0}
.chart-legend>span{align-items:center;min-width:0}
.legend-line{flex:0 0 25px}
.forecast-controls{gap:24px;padding-top:12px}
.forecast-controls .button{min-height:44px;padding:10px 16px}
.forecast-slider label{font-size:14px;margin-bottom:0}
.forecast-display{margin-top:12px;min-width:0}
.forecast-chart{min-width:0}
.chart-unit{font-size:14px;color:var(--muted);margin:0 0 4px}
#forecast-plot{margin:0;min-width:0}
#forecast-svg{height:auto;max-height:300px}
.forecast-scroll-help{margin:4px 0 8px;font-size:14px}
.forecast-metrics{margin-top:12px;gap:0}
.forecast-metrics>div{padding:12px;min-width:0;gap:6px}
.forecast-metrics span,.forecast-metrics small{font-size:14px;line-height:1.35}
.forecast-metrics strong{font-size:28px;line-height:1.15}
.forecast-metrics .budget-position{background:#f0ebe2}
.forecast-metrics .budget-position-result{color:var(--brown);font-weight:600}
.forecast-caption{font-size:15px;line-height:1.5;margin:16px 0 10px;min-height:0}
.chart-qualification{font-size:14px;line-height:1.5;padding:10px 12px;margin-bottom:12px}
.forecast-module details{padding:12px 0}
.forecast-module summary{font-size:15px;min-height:44px;align-items:center}
.forecast-table{min-width:840px}
#historical-forecast{padding-top:32px}
#cost-questions .faq-block{margin-top:0}
@media(min-width:1280px){
 .forecast-display{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}
 .forecast-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
 .forecast-metrics>div:nth-child(3){border-left:0}
 .forecast-metrics>div:nth-child(n+3){border-top:1px solid var(--line)}
}
@media(min-width:1051px) and (max-width:1279px){.forecast-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1050px){.chart-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){
 .forecast-header{align-items:flex-start;gap:12px}
 .forecast-controls{gap:12px}
 .forecast-slider{order:3;flex-basis:100%}
 .forecast-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .forecast-module{padding:18px 16px}
 .forecast-header h3{font-size:28px}
 .chart-legend{grid-template-columns:1fr;gap:10px}
 .forecast-metrics{grid-template-columns:1fr}
 .forecast-metrics>div{display:flex;padding:14px 12px}
 .forecast-metrics>div+div{border-left:0;border-top:1px solid var(--line)}
 .forecast-metrics strong{font-size:28px}
 .forecast-step{gap:8px}
}

/* Funding, production and financial closeout remain distinct chart milestones. */
.chart-milestone line{stroke:#8b5a2b;stroke-width:1.5;stroke-dasharray:3 5;opacity:.7;vector-effect:non-scaling-stroke}
.chart-milestone text{fill:#663300;font:500 20px var(--sans)}

/* Context for the selected reporting period. */
.forecast-period-note{margin:16px 0 10px;padding:12px 16px;border-left:3px solid var(--gold);background:var(--cream);font-size:1rem;line-height:1.5}
.forecast-period-note strong{display:block;color:var(--brown);margin-bottom:4px}

/* Breadcrumb ancestors remain links; the full current title wraps naturally. */
.breadcrumb ol{margin:0;padding:0;list-style:none;white-space:normal;overflow-wrap:anywhere}
.breadcrumb li{display:inline}
.breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.breadcrumb [aria-current="page"]{white-space:normal;overflow-wrap:anywhere}

/* A readable single-column notice, using the established story typography. */
.privacy-copy{max-width:800px;margin-inline:auto}.privacy-copy>section:first-of-type{margin-top:1.5rem}.privacy-copy a{overflow-wrap:anywhere}

/* The three homepage focus labels lead to their matching service sections. */
.sectors a{display:inline-flex;align-items:center;min-height:24px;color:inherit;text-decoration:underline;text-decoration-color:#bda88e;text-underline-offset:4px}
.sectors a:hover,.sectors a:focus-visible{color:var(--brown);text-decoration-color:currentColor}

/* Homepage category headings link to the full service-family overview. */
.group-card h3 a{color:inherit;text-decoration:underline;text-decoration-color:#bda88e;text-decoration-thickness:1px;text-underline-offset:5px}
.group-card h3 a:hover,.group-card h3 a:focus-visible{text-decoration-color:currentColor}

/* Connect the four perspectives with the context for decisions. */
.approach-context{max-width:900px;margin:24px 0 0;color:var(--muted);font-size:18px;line-height:1.7}

/* Insight filters wrap naturally; hidden rows stay outside layout and keyboard navigation. */
.insight-filters[hidden],.article-row[hidden]{display:none}
.insight-filters button{max-width:100%;white-space:normal;line-height:1.45;text-align:left}

/* Keep the interactive mobile menu inside the available viewport. */
@media(max-width:1050px){
 html.navigation-ready .nav-wrap #navigation{max-height:var(--menu-available-height,calc(100vh - 125px));max-height:var(--menu-available-height,calc(100dvh - 125px));overflow-y:auto;overscroll-behavior-y:contain}
 html.navigation-ready .nav-wrap #navigation a{flex-shrink:0}
}

/* A visible, approved example connects the Approach to delivered work. */
.approach-example{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.approach-example p{margin:0 0 1rem}

/* Same photograph and composition; choose a smaller transfer for the display. */
.hero-media{background-image:url('/assets/industrial-hero-1600.jpg');background-image:image-set(url('/assets/industrial-hero-1600.webp') type('image/webp') 1x,url('/assets/industrial-hero-2400.webp') type('image/webp') 2x,url('/assets/industrial-hero-1600.jpg') type('image/jpeg') 1x)}
@media(max-width:600px){.hero-media{background-image:url('/assets/industrial-hero-768.jpg');background-image:image-set(url('/assets/industrial-hero-768.webp') type('image/webp') 1x,url('/assets/industrial-hero-1536.webp') type('image/webp') 2x,url('/assets/industrial-hero-768.jpg') type('image/jpeg') 1x)}}
@media(min-width:2600px){.hero-media{background-image:image-set(url('/assets/industrial-hero-2400.webp') type('image/webp') 1x,url('/assets/industrial-hero-1600.jpg') type('image/jpeg') 1x)}}

/* Representative imagery for selected Experience examples. */
.case-evidence-visual{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,200px);gap:20px;align-items:center;padding:26px;background:#eee6d9}
.real-case .case-evidence-visual .case-art{padding:0;min-height:0}
.experience-figure{margin:0;min-width:0}
.experience-figure picture{display:block}
.experience-photo{position:relative;display:block}
.experience-brand-mark{position:absolute;right:5px;bottom:5px;width:23%;max-width:58px;padding:3px 4px;background:rgba(250,248,244,.9);border:1px solid rgba(102,51,0,.16);border-radius:2px;pointer-events:none}
.experience-brand-mark img{display:block;width:100%;height:auto}
.experience-figure img{display:block;width:100%;height:auto;object-fit:contain}
.experience-figure figcaption{padding-top:9px;font:400 12px/1.5 var(--sans);color:#594d3e}
.experience-image-link{display:block}
.experience-image-link:focus-visible{outline-offset:4px;outline-width:3px}
.experience-image-link:hover img{filter:brightness(1.035)}
.experience-detail-intro{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:24px;align-items:start;margin-bottom:2.5rem}
.experience-detail-context{min-width:0}
.experience-detail-context .setting-description{margin-bottom:0}
.experience-figure-detail{margin:0;width:200px;max-width:100%}
.experience-figure-detail figcaption{font-size:12px;text-align:left}
@media(min-width:901px) and (max-width:1150px){.case-evidence-visual{grid-template-columns:minmax(0,1fr) 150px;gap:16px;padding:22px}}
@media(max-width:620px){.case-evidence-visual{grid-template-columns:1fr;gap:22px;padding:26px}.experience-figure-card{width:240px;max-width:100%;justify-self:center}.experience-detail-intro{grid-template-columns:1fr;gap:18px}.experience-figure-detail{justify-self:start}}

/* Clearly selectable service categories with a connected content panel. */
.explorer-intro{margin:0 0 20px}.explorer-intro h3{font:30px/1.2 var(--serif);color:#663300;margin:0 0 8px}.explorer-intro p{margin:0;font-size:17px;color:var(--muted)}
.family-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 0;padding:0 0 16px}
.family-tabs button{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:80px;padding:20px 22px;border:1px solid #ad9477;border-bottom:4px solid #ad9477;background:#f5f0e8;color:#663300;font:600 18px/1.4 var(--sans);text-align:left;cursor:pointer;transition:background .15s,border-color .15s}
.family-tabs button:hover{background:#ede2d0;border-bottom-color:#b8860b}.family-tabs button[aria-selected=true]{background:#663300;color:#fff;border-color:#663300;border-bottom-color:#b8860b}.family-tab-cue{font-size:24px;flex:none}
.family-tabs button:focus-visible,.family-content section:focus-visible{outline:3px solid #b8860b;outline-offset:4px}
.family-content{border:1px solid #cdbfae;border-top:4px solid #b8860b;background:#faf7f1;padding:32px}.family-content .service-family{margin:0}.family-content .service-family[hidden]{display:none}.family-content .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.family-content .service-card{background:white;min-height:250px}.family-content .family-heading h2{font-size:36px}.family-content .family-heading{margin-bottom:25px}
@media(max-width:900px){.family-tabs button{padding:16px;font-size:16px}.family-content .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.family-tabs{grid-template-columns:1fr;gap:8px}.family-tabs button{min-height:60px;padding:14px 18px}.family-content{padding:24px 18px}.family-content .service-grid{grid-template-columns:1fr}.family-content .family-heading h2{font-size:30px}}
@media print{.family-tabs,.explorer-intro{display:none}.family-content .service-family[hidden]{display:block}.family-content .service-family{margin-bottom:30px}}

/* Industrial interfaces: stationary scene, independently addressable reveals. */
.hero.interface-hero{grid-template-columns:minmax(320px,.85fr) minmax(0,1.35fr);align-items:start;background:var(--paper)}
.interface-hero .hero-copy{padding:58px 38px 44px}.interface-hero .hero-copy h1{font-size:clamp(3.3rem,5.2vw,5.8rem)}
.interface-story{background:#241b13;color:#fff6e7;margin:24px 24px 24px 0;min-width:0;border:1px solid #72502a;box-shadow:0 12px 34px #37220e18}
.interface-heading{padding:22px 24px 18px}.interface-heading .eyebrow{color:#e5b941;font-size:12px;letter-spacing:.13em;margin-bottom:7px}.interface-heading p{font-size:15px;line-height:1.5;margin:0;color:#e4d8c5}
.interface-scene{position:relative;aspect-ratio:1672/940;isolation:isolate}.interface-scene>img{display:block;width:100%;height:100%;object-fit:cover}.interface-scene:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 65px #1d140c44;pointer-events:none;z-index:0}
.interface-marker{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);padding:8px;border:0;background:none;color:white;cursor:pointer;z-index:2;font:600 14px/1.3 var(--sans);min-width:44px;min-height:44px}
.interface-dot{display:grid;place-items:center;width:28px;height:28px;border:1px solid #f2c858;border-radius:50%;background:#392712d9;color:#fff6d9;box-shadow:0 0 0 5px #b8860b33;transition:background .5s,box-shadow .5s}
.interface-marker.is-seen .interface-dot{background:#a17209}.interface-marker.is-current{z-index:3}.interface-marker.is-current .interface-dot{background:#b8860b;box-shadow:0 0 0 7px #e8b33766,0 0 0 13px #ecc66733}
.interface-pop{position:absolute;bottom:calc(100% + 15px);width:max-content;max-width:235px;background:#2d1c0df2;color:#fff9ed;border:1px solid #c89620;border-radius:4px;padding:10px 13px;text-align:left;box-shadow:0 6px 22px #0005;opacity:0;transform:translateY(6px);visibility:hidden;transition:opacity .45s,transform .45s}
.interface-marker.left .interface-pop{left:10px}.interface-marker.right .interface-pop{right:10px}.interface-pop:after{content:'';position:absolute;top:100%;height:20px;width:1px;background:#e3b23a;left:11px}.interface-marker.right .interface-pop:after{right:11px;left:auto}.interface-marker.is-current .interface-pop{opacity:1;transform:translateY(0);visibility:visible}
.interface-marker:focus-visible,.interface-controls button:focus-visible,.interface-all summary:focus-visible{outline:3px solid #f4ce65;outline-offset:4px}
.interface-caption{padding:23px 24px 12px;min-height:174px;border-top:2px solid #b8860b}.interface-count{font:600 11px/1.4 var(--sans);letter-spacing:.13em;color:#e4b846}.interface-caption h2{font:500 26px/1.15 var(--serif);color:#fff6e7;margin:8px 0}.interface-caption p{font-size:15px;line-height:1.5;color:#e4d8c5;margin:0}.interface-caption [hidden]{display:none}
.interface-controls{display:flex;align-items:center;gap:8px;padding:0 24px 16px}.interface-controls button{font:500 13px var(--sans);border:1px solid #9e8058;background:#352518;color:#fff6e7;min-height:38px;padding:8px 15px;cursor:pointer}.interface-controls button:hover{background:#663300}.interface-controls button:disabled{opacity:.6;cursor:default}.interface-controls span{font-size:12px;color:#d2bfa4;margin-left:auto}
.interface-all{margin:0 24px;border-top:1px solid #66513b}.interface-all summary{font-size:13px;cursor:pointer;padding:12px 0;color:#ebd9bb}.interface-all ol{padding-left:22px;font-size:14px}.interface-all li{margin-bottom:15px}.interface-all p{font-size:13px;line-height:1.5;margin:4px 0;color:#dfd0bb}.interface-credit{font-size:10px;line-height:1.4;margin:0;padding:4px 24px 16px;color:#bea98e}
@media(max-width:1050px){.hero.interface-hero{grid-template-columns:1fr}.interface-hero .hero-copy{padding:40px 28px 24px}.interface-hero .hero-copy h1{font-size:64px}.interface-story{margin:0 28px 28px}.interface-caption{min-height:150px}.interface-heading .eyebrow{font-size:14px}}
@media(max-width:620px){.interface-story{margin:0 12px 24px}.interface-hero .hero-copy{padding:36px 20px}.interface-hero .hero-copy h1{font-size:clamp(3.3rem,13vw,4.6rem)}.interface-heading{padding:18px 16px}.interface-heading .eyebrow{font-size:11px}.interface-heading p{font-size:14px}.interface-pop{font-size:11px;max-width:175px;padding:7px 9px;bottom:calc(100% + 7px)}.interface-pop:after{height:12px}.interface-dot{width:25px;height:25px;font-size:12px}.interface-caption{padding:18px 16px 12px;min-height:190px}.interface-caption h2{font-size:25px}.interface-controls{padding:0 16px 12px;flex-wrap:wrap}.interface-controls span{font-size:11px}.interface-all{margin:0 16px}.interface-credit{padding:4px 16px 14px}}
@media(prefers-reduced-motion:reduce){.interface-pop,.interface-dot{transition:none}}

/* Six complementary business perspectives; lines indicate coordination, not physical flows. */
.story-connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.story-connections g{opacity:0;transition:opacity .65s}.story-connections g.is-active{opacity:1}.story-connections g.is-overview{opacity:.25}.story-connections path{stroke:#f3c454;stroke-width:2;vector-effect:non-scaling-stroke;fill:none;stroke-dasharray:5 5}.story-connections ellipse{stroke:#f3c454;stroke-width:1.5;vector-effect:non-scaling-stroke;fill:#dcae3424}
.interface-caption{min-height:235px}.story-evidence{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:#f2ce76;font-size:13px;padding:14px 0 0;text-decoration:underline;text-underline-offset:4px}.story-evidence-name{font-size:11px;color:#d9c5a4;width:100%;text-decoration:none}.story-evidence:focus-visible{outline:2px solid #f2ce76;outline-offset:3px}.interface-all a{font-size:13px;color:#f2ce76;text-decoration:underline}
.story-financial{position:absolute;left:3%;top:5%;display:flex;flex-direction:column;gap:5px;padding:10px 13px;background:#25190ded;border:1px solid #b8860b;color:#f5e6c7;font-size:12px;z-index:2}.story-financial[hidden]{display:none}.story-financial span+span{border-top:1px solid #795c31;padding-top:5px}
@media(max-width:620px){.interface-caption{min-height:275px}.interface-caption h2{font-size:24px}.story-financial{font-size:10px;padding:7px}.interface-pop{max-width:150px}}
@media(prefers-reduced-motion:reduce){.story-connections g{transition:none}}

/* Coherent campus scale; human activity expands in a separately illustrated review inset. */
.campus-stage{position:relative}.campus-story .interface-pop{font-size:13px;max-width:220px}.whole-marker .interface-pop{top:calc(100% + 10px);bottom:auto}.whole-marker .interface-pop:after{top:auto;bottom:100%;height:15px}
.whole-campus{stroke:#f1c85b;stroke-width:2;vector-effect:non-scaling-stroke;fill:#eebc3910;stroke-dasharray:6 4}.campus-story .story-connections g.is-overview{opacity:.7}
.organization-labels{position:absolute;inset:0;pointer-events:none;z-index:2}.organization-labels[hidden]{display:none}.organization-labels span{position:absolute;background:#2d1c0de8;border:1px solid #c5993b;color:#fff6e7;font-size:11px;padding:5px 8px;line-height:1.2}
.change-inset{position:absolute;top:4%;left:3%;width:49%;z-index:4;background:#faf4e8;color:#39230f;border:2px solid #c09331;box-shadow:0 10px 25px #0007}.change-inset[hidden]{display:none}.change-image{position:relative;aspect-ratio:2.8;overflow:hidden}.change-image img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.change-image>span{position:absolute;bottom:0;left:0;right:0;padding:6px 12px;background:#2d1c0de8;color:#f2cf77;font-size:10px;letter-spacing:.08em}.change-copy{padding:12px}.change-copy strong{display:block;font:600 14px/1.3 var(--sans)}.change-copy p{font:400 12px/1.45 var(--sans);margin:7px 0 10px}.change-copy [hidden]{display:none}.change-steps{display:flex;gap:5px;flex-wrap:wrap}.change-steps button{border:1px solid #a98d64;background:#fffaf0;color:#663300;padding:7px 8px;min-height:34px;font:600 10px/1.3 var(--sans);cursor:pointer}.change-steps button[aria-pressed=true]{background:#663300;color:#fff;border-color:#663300}.change-steps button:focus-visible{outline:3px solid #b8860b;outline-offset:3px}
.campus-story .interface-caption{min-height:260px}.campus-story .interface-controls button{min-height:44px}
@media(min-width:1400px){.change-copy{padding:15px}.change-copy strong{font-size:16px}.change-copy p{font-size:14px}.change-steps button{font-size:11px}}
@media(max-width:1050px) and (min-width:621px){.change-inset{width:44%}}
@media(max-width:620px){.campus-story .interface-pop{font-size:10px;max-width:142px}.change-inset{position:relative;left:auto;top:auto;width:auto;margin:0;border-width:2px 0;box-shadow:none;display:grid;grid-template-columns:35% 65%}.change-image{aspect-ratio:auto;min-height:180px}.change-image img{object-position:37% center}.change-image>span{font-size:8px;padding:6px}.change-copy{padding:12px}.change-copy strong{font-size:13px}.change-copy p{font-size:12px}.change-steps button{min-height:36px;font-size:10px}.organization-labels span{font-size:8px;padding:3px 4px}.campus-story .interface-caption{min-height:285px}.interface-controls span{width:100%;margin:4px 0 0}.whole-marker .interface-pop{max-width:135px}}
@media print{.campus-story .interface-caption [hidden]{display:block}.change-inset{position:relative;width:100%}.interface-controls{display:none}}

/* The change advances visually: proposal, evaluation, decision, then incorporation. */
.campus-story .change-inset{width:55%;top:3%;left:2%}.change-identity{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#332315;color:#f3d795;padding:8px 12px;font:600 10px/1.3 var(--sans);letter-spacing:.04em}.change-identity small{font-size:9px;color:#deceb9;letter-spacing:0;font-weight:400}
.change-visuals{position:relative;height:250px;overflow:hidden;background:#efe6d6}.change-visuals>[data-change-visual]{position:absolute;inset:0}.change-visuals [hidden],.decision-beats[hidden]{display:none!important}.change-drawing img{width:100%;height:100%;object-fit:cover;object-position:center 60%}.visual-status{position:absolute;bottom:0;left:0;right:0;padding:7px 10px;background:#332315ed;color:#f5dfab;font:600 10px/1.3 var(--sans);letter-spacing:.025em}
.change-evaluation{padding:11px;background:#eee6d7;display:flex;flex-direction:column;gap:8px}.evaluation-top{display:grid;grid-template-columns:1.2fr 1fr;gap:8px}.review-document,.review-schedule{border:1px solid #c8b99e;background:#fffdf6;padding:8px;min-width:0}.review-document h3,.review-schedule h3{font:700 11px/1.2 var(--sans);color:#663300;margin:0 0 5px}.review-document p{font:400 9px/1.3 var(--sans);margin:3px 0;display:flex;justify-content:space-between;gap:5px}.review-document p span{font-weight:600;text-align:right}.review-document .review-total{border-top:1px solid #c8b99e;padding-top:4px}.review-document strong{font:700 12px var(--sans)}.review-document small{display:block;font:400 8px/1.3 var(--sans);margin-top:5px}.review-status{display:inline-block;padding:3px 5px;background:#f1e1b9;color:#563708;font:600 9px var(--sans)}
.review-schedule{flex:1;padding:7px 8px}.gantt-row{display:grid;grid-template-columns:72px 1fr;gap:6px;align-items:center;font:400 9px var(--sans);margin:5px 0}.gantt-row>div{position:relative;height:8px;background:repeating-linear-gradient(90deg,transparent 0,transparent 24%,#ddd1bd 24%,#ddd1bd 25%)}.gantt-row i{position:absolute;top:0;height:8px;background:#b0a38d;border-radius:1px}.gantt-row i.delay-bar{background:#b94332}.review-schedule small{font:400 8px var(--sans);display:block;margin-top:5px}.delay-key{display:inline-block;width:12px;height:5px;background:#b94332;margin-right:3px}
.change-photo{position:absolute;inset:0;background-image:url('/assets/change-decision-installation-v1.png');background-size:200% auto;background-repeat:no-repeat}.decision-photo{background-position:left center}.installation-photo{background-position:right center}.change-authorization .visual-status,.change-installation .visual-status{top:0;bottom:auto}.decision-gate{position:absolute;bottom:10px;left:10px;right:10px;padding:8px;background:#fff9efed;display:flex;justify-content:space-between;font:600 11px var(--sans);color:#663300}.incorporation-record{position:absolute;bottom:8px;left:8px;right:8px;display:flex;flex-wrap:wrap;gap:4px}.incorporation-record span{background:#fff9efed;border:1px solid #c5ad76;padding:5px 7px;color:#503416;font:600 9px var(--sans)}
.decision-beats{padding:6px 12px 0;display:flex;gap:7px}.decision-beats button{background:transparent;border:0;border-bottom:2px solid transparent;color:#664723;padding:6px 0;min-height:30px;font:600 10px var(--sans);cursor:pointer}.decision-beats button[aria-pressed=true]{border-color:#b8860b;color:#663300}.decision-beats button:focus-visible{outline:2px solid #b8860b;outline-offset:3px}.show-installation [data-story-connection="3"] ellipse{stroke-width:3;fill:#eebc3940}
@media(max-width:620px){.campus-story .change-inset{position:relative;width:auto;left:auto;top:auto;display:block}.change-visuals{height:250px}.change-copy strong{font-size:14px}.change-copy p{font-size:13px}.change-identity{font-size:10px}.review-document p{font-size:9px}.decision-beats button{min-height:36px}}

/* Give the opening message priority and keep the complete scene in a compact card. */
.hero.interface-hero{grid-template-columns:minmax(0,1fr) minmax(0,620px);gap:16px}
.interface-hero .hero-copy{padding:48px 38px 36px}
.interface-story{width:calc(100% - 24px);max-width:620px;justify-self:end}
.interface-heading{padding:15px 18px 13px}
.campus-story .interface-caption{min-height:180px;padding:17px 18px 10px}
.interface-caption h2{font-size:23px}.interface-caption p{font-size:14px}
.interface-controls{padding:0 18px 12px}.interface-all{margin:0 18px}
.interface-credit{padding:4px 18px 12px}
.campus-story .change-inset{position:relative;inset:auto;width:100%;display:grid;grid-template-columns:54% 46%;border-width:2px 0;box-shadow:none}
.campus-story .change-inset[hidden]{display:none}
.change-identity{grid-column:1/-1}
.change-visuals{height:210px;grid-column:1;grid-row:2/4}
.change-copy{grid-column:2;grid-row:2;padding:12px}
.change-copy strong{font-size:13px}.change-copy p{font-size:12px}
.decision-beats{grid-column:2;grid-row:3;padding:0 12px 8px;flex-wrap:wrap;gap:4px}
.change-steps{gap:4px}.change-steps button{padding:6px;font-size:10px}
.change-evaluation{padding:7px;gap:6px}
.change-evaluation .review-document p{font:400 9px/1.3 var(--sans);margin:3px 0}
.review-document,.review-schedule{padding:6px}.evaluation-top{gap:6px}
.change-identity small{font-size:9px}
@media(max-width:1050px){.hero.interface-hero{grid-template-columns:1fr;gap:0}.interface-story{width:calc(100% - 56px);justify-self:center;margin:0 28px 28px}.interface-hero .hero-copy{padding:36px 28px 24px}}
@media(max-width:620px){.interface-story{width:calc(100% - 24px);margin:0 12px 24px}.interface-hero .hero-copy{padding:32px 20px}.campus-story .change-inset{display:block}.change-visuals{height:225px}.change-copy{padding:12px}.change-copy p{font-size:13px}.campus-story .interface-caption{min-height:230px}.decision-beats{padding:0 12px 10px}}

@media(min-width:621px){.campus-story .change-inset{position:absolute;top:12%;left:2%;width:96%;border:2px solid #c09331;box-shadow:0 6px 18px #0005}}
.change-evaluation .review-document>strong{font:700 11px/1.2 var(--sans)}
.change-evaluation .review-document>p{font:400 9px/1.3 var(--sans);margin:3px 0}
.change-evaluation .review-document>span{font:600 9px/1.2 var(--sans)}
.change-evaluation .review-document>small{margin-top:4px;font-size:8px}
.change-evaluation .evaluation-top{height:106px;flex:none}
.change-evaluation .review-schedule{min-height:82px}

.change-visuals{height:230px}.change-evaluation .evaluation-top{height:120px}.change-evaluation .review-document{line-height:1.2;min-height:0}.change-evaluation .review-schedule{min-height:84px}

/* Change review: separate decision and execution stages, with persistent dismissal. */
.change-identity{position:relative;padding-right:52px;min-height:48px}
.change-close{position:absolute;right:4px;top:4px;display:grid;place-items:center;width:40px;height:40px;border:1px solid #d3b77d;background:#faf4e8;color:#663300;font:400 28px/1 var(--sans);cursor:pointer;border-radius:3px}
.change-close:hover{background:#f3d795}
.change-close:focus-visible{outline:3px solid #fff;outline-offset:2px}
.change-steps{display:grid;grid-template-columns:1fr 1fr}
.change-steps button{min-height:40px;text-align:left}

/* Place the sixth perspective in the sky above the yellow campus boundary. */
.campus-story .whole-marker .interface-pop{top:50%;bottom:auto;right:48px;max-width:none;white-space:nowrap;padding:6px 8px;font-size:12px;transform:translateY(-50%)}
.campus-story .whole-marker .interface-pop:after{display:none}
@media(max-width:620px){.campus-story .whole-marker .interface-pop{font-size:9px;padding:4px 6px;right:42px}}

/* Audience context introduces the home-page offer without competing with the headline. */
.interface-hero .hero-copy>p.hero-audience{font-size:15px;line-height:1.55;font-weight:500;color:var(--brown);margin-bottom:22px}

/* Review revision: use width for the scene and its supporting information. */
.hero.interface-hero{grid-template-columns:minmax(330px,.8fr) minmax(0,1.9fr);gap:8px;min-height:0;align-items:center}
.interface-hero .hero-copy{padding:40px 24px 40px 32px}
.interface-hero .hero-copy h1{font-size:clamp(3.3rem,4.8vw,5.5rem)}
.interface-story{width:auto;max-width:none;justify-self:stretch;margin:32px 24px 32px 0;display:grid;grid-template-columns:minmax(0,1fr) 248px;align-items:start}
.interface-heading{grid-column:1/-1;padding:18px 20px}
.campus-stage{align-self:center;min-width:0}
.interface-sidebar{min-width:0;border-left:1px solid #66513b;padding-top:2px}
.campus-story .interface-caption{min-height:278px;border-top:0;padding:16px 18px}
.interface-caption h2{font-size:25px;line-height:1.18}
.interface-caption p{font-size:14px;line-height:1.55}
.story-evidence{display:block;font-size:13px;line-height:1.55;padding-top:16px}
.interface-controls{flex-wrap:wrap;padding:0 18px 14px}
.interface-controls span{width:100%;margin:0;font-size:11px}
.interface-all{margin:0 18px}
.interface-all summary{line-height:1.5}
.interface-all ol{padding-left:18px}
.interface-credit{padding:12px 18px 16px}
.home-service-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.home-pillar{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--gold);padding:28px;color:inherit}
.home-pillar h3{font:500 29px/1.2 var(--serif);color:var(--brown);margin:12px 0}
.home-pillar p{font-size:16px;line-height:1.6}
.home-pillar .service-action{margin-top:auto;padding-top:18px;font-size:14px;color:var(--brown)}
.home-pillar:hover{border-color:var(--brown);background:var(--cream)}
.home-pillar:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
@media(min-width:1600px){.hero.interface-hero{grid-template-columns:420px minmax(0,1fr);max-width:1800px;margin:auto}.interface-story{grid-template-columns:minmax(0,1fr) 280px}.interface-hero .hero-copy{padding-left:38px}.campus-story .interface-caption{min-height:260px}}
@media(max-width:1200px){.hero.interface-hero{grid-template-columns:minmax(300px,.8fr) minmax(0,1.7fr)}.interface-story{grid-template-columns:minmax(0,1fr) 220px}.interface-hero .hero-copy{padding-left:24px}.interface-caption h2{font-size:23px}}
@media(max-width:1050px){.hero.interface-hero{grid-template-columns:1fr;gap:0}.interface-hero .hero-copy{padding:36px 28px 28px}.interface-hero .hero-copy>p{max-width:720px}.interface-story{width:calc(100% - 56px);margin:0 28px 28px;grid-template-columns:minmax(0,1fr) 260px;justify-self:center}.home-service-overview{gap:14px}.home-pillar{padding:22px}.home-pillar h3{font-size:25px}}
@media(max-width:700px){.interface-story{grid-template-columns:1fr}.interface-sidebar{border-left:0;border-top:2px solid var(--gold)}.campus-story .interface-caption{min-height:215px}.interface-hero .hero-copy{padding:32px 20px}.interface-story{width:calc(100% - 24px);margin:0 12px 24px}.home-service-overview{grid-template-columns:1fr}.home-pillar h3{font-size:28px}.interface-caption h2{font-size:25px}}

/* Keep the opening message and graphic aligned at the top of the section. */
.hero.interface-hero{align-items:start}
.campus-story .interface-caption{min-height:245px}
.interface-all{padding:0;background:transparent;border-left:0;border-right:0;border-bottom:0}
.interface-all summary{padding:12px 0;font-size:13px}
.interface-all[open]{padding-bottom:10px}

/* Stable perspective frame, image-column heading, and independent overview. */
html{scrollbar-gutter:stable}
.interface-explorer{min-width:0;margin:32px 24px 32px 0}
.interface-explorer .interface-story{margin:0;width:100%;max-width:none;align-items:center}
.interface-visual{min-width:0;align-self:center}
.interface-visual .interface-heading{padding:16px 20px 14px}
.interface-visual .interface-credit{padding:12px 20px 14px}
.interface-sidebar{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:18px 0}
.campus-story .interface-caption{display:grid;min-height:0;padding:16px 18px 20px;align-items:start}
.interface-caption>div{grid-area:1/1;min-width:0}
.campus-story .interface-caption>[hidden]{display:block;visibility:hidden;pointer-events:none}
.interface-controls{margin:0;padding-bottom:14px}
.interface-controls button{min-width:72px}
.interface-overview-link{display:flex;justify-content:flex-end;padding:12px 0 0}
.interface-overview-link button{border:0;background:transparent;padding:10px 0;color:var(--brown);font:500 14px/1.5 var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.interface-overview-link button span{margin-left:10px}
.interface-overview-link button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.perspectives-dialog{width:min(820px,calc(100vw - 32px));max-width:none;max-height:85vh;max-height:85dvh;padding:0;border:1px solid var(--gold);background:var(--paper);color:var(--ink);overflow:hidden}
.perspectives-dialog[open]{display:flex;flex-direction:column}
.perspectives-dialog::backdrop{background:#241b13b8}
html:has(.perspectives-dialog[open]){overflow:hidden}
.perspectives-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 28px 20px;border-bottom:1px solid var(--line);flex:none}
.perspectives-dialog-header .eyebrow{font-size:11px}
.perspectives-dialog-header h2{font:500 30px/1.2 var(--serif);margin:8px 0 0;color:var(--brown)}
.perspectives-dialog-header button{width:44px;height:44px;flex:none;background:var(--paper);border:1px solid #bda88e;color:var(--brown);font:400 30px/1 var(--sans);cursor:pointer}
.perspectives-dialog-header button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.perspectives-dialog-body{overflow-y:auto;overscroll-behavior:contain;padding:0 28px 24px}
.perspectives-dialog-body ol{padding:0;margin:0;list-style:none}
.perspectives-dialog-body li{padding:24px 0;border-bottom:1px solid var(--line)}
.perspectives-dialog-body li:last-child{border-bottom:0}
.perspectives-dialog-body h3{font:500 26px/1.25 var(--serif);margin:8px 0 12px;color:var(--brown)}
.perspectives-dialog-body p{font-size:16px;line-height:1.65;margin:0 0 14px}
.perspectives-dialog-body a{font-size:14px;color:var(--brown);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1050px){.interface-explorer{width:calc(100% - 56px);margin:0 28px 28px;justify-self:center}}
@media(max-width:700px){.interface-explorer{width:calc(100% - 24px);margin:0 12px 24px}.interface-sidebar{padding:0}.interface-overview-link{justify-content:center}.perspectives-dialog-header{padding:18px;gap:12px}.perspectives-dialog-header h2{font-size:26px}.perspectives-dialog-body{padding:0 18px 18px}}
/* Labels explain their point without intercepting adjacent numbered controls. */
.interface-pop{pointer-events:none}
