/* Approved DevSense identity, extended to the complete site.
   Neutral structural surfaces; purple is reserved for actions and emphasis. */
:root { --font:var(--sans); --bg:var(--ds-bg-primary); --panel:var(--ds-bg-secondary); --elev:var(--ds-bg-tertiary); --text:var(--ds-text-primary); --text-2:var(--ds-text-secondary); --border:var(--ds-border); --border-2:var(--ds-border); --blue:var(--ds-accent-purple); --blue-soft:var(--ds-accent-purple-subtle); --green:var(--ds-success); --green-bg:var(--ds-success-subtle); --amber:var(--ds-warning); --amber-bg:var(--ds-warning-subtle); }
/* Shared navigation is deliberately compact, with grouped destinations. */
.nav-group { position:relative; }
.nav-group summary { display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;padding:16px 0;white-space:nowrap; }
.nav-group summary::-webkit-details-marker { display:none; }
.nav-group summary:after { content:'⌄';font-size:12px;color:var(--ds-text-muted);transition:transform .15s; }
.nav-group[open] summary { color:var(--ds-text-primary); }
.nav-group[open] summary:after { transform:rotate(180deg); }
.nav-group summary:focus-visible { outline:2px solid var(--ds-accent-purple);outline-offset:4px;border-radius:2px; }
.nav-dropdown { position:absolute;top:100%;left:-22px;width:260px;padding:10px;background:var(--ds-bg-secondary);border:1px solid var(--ds-border);border-radius:10px;box-shadow:0 18px 44px #0006;display:grid;gap:2px; }
.nav-dropdown a { padding:12px;font-size:12px;line-height:1.5;border-radius:5px;display:block;color:var(--ds-text-secondary); }
.nav-dropdown a:hover,.nav-dropdown a[aria-current="page"] { color:var(--ds-text-primary);background:var(--ds-bg-tertiary); }
.nav-dropdown a[aria-current="page"] { box-shadow:none; }
.nav-dropdown a small { display:block;font-size:10px;line-height:1.6;color:var(--ds-text-muted);margin-top:3px;font-weight:400; }
.site-header .nav-inner>nav>a[aria-current="page"] { color:var(--ds-accent-purple); }
.site-footer { padding:58px 0 25px;border-top:1px solid var(--ds-border);background:var(--ds-bg-primary); }
.site-footer>.wrap { display:grid;grid-template-columns:1fr 2fr;gap:60px; }
.footer-intro .brand { font-size:23px;width:fit-content;margin-bottom:18px; }
.footer-intro p { max-width:280px;font-size:12px;line-height:1.9;color:var(--ds-text-muted); }
.footer-intro>a:not(.brand) { display:inline-block;margin-top:19px;font-size:11px;color:var(--ds-text-secondary); }
.footer-links { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px; }
.footer-column { display:flex;flex-direction:column;align-items:flex-start;gap:11px;min-width:0; }
.footer-column h3,.footer-column>strong { font:10px/1.5 var(--sans);letter-spacing:.6px;text-transform:uppercase;margin:3px 0 9px;color:var(--ds-text-primary); }
.footer-column a { font-size:11px;line-height:1.6;color:var(--ds-text-muted); }
.footer-column a:hover { color:var(--ds-accent-purple); }
.site-footer .footer-bottom { grid-column:1/-1;border-top:1px solid var(--ds-border-muted);margin-top:10px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;line-height:1.8;color:var(--ds-text-muted); }
.site-footer .footer-bottom a { color:var(--ds-text-secondary); }
.footer-wordmark { display:none; }
/* Every interior has an editorial opening and a small, useful next step. */
.interior .site-main { padding-top:0; }
.interior .legacy-content .pagehero:before { content:none; }
.interior .pagehero { position:relative;padding:82px 0 64px!important;border-bottom:1px solid var(--ds-border-muted)!important;overflow:visible; }
.interior .pagehero>.wrap { display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,.7fr);gap:85px;align-items:end; }
.interior .interior-hero-copy { min-width:0; }
.interior .pagehero .kicker { font-size:9px;letter-spacing:1.1px;margin-bottom:25px; }
.interior .pagehero h1 { font-size:clamp(38px,4.2vw,59px);font-weight:500;line-height:1.09;letter-spacing:-2px;max-width:19ch;margin:0 0 27px; }
.interior .pagehero .lead { max-width:62ch;font-size:14px;line-height:1.95;color:var(--ds-text-secondary); }
.interior .pagehero-ctas { gap:23px;margin-top:28px;align-items:center; }
.interior .pagehero-ctas .btn { font-size:11px;padding:11px 16px;gap:18px; }
.interior .pagehero-ctas .btn-quiet { padding:9px 0; }
.interior-hero-aside { padding:25px 0 3px;border-top:1px solid var(--ds-border);max-width:310px;min-width:0; }
.hero-page-index { display:block;color:var(--ds-accent-purple);font:10px/1.5 var(--sans);letter-spacing:1px;margin-bottom:25px; }
.interior-hero-aside strong { display:block;color:var(--ds-text-primary);font-size:21px;font-weight:500;line-height:1.5;letter-spacing:-.4px;margin-bottom:13px; }
.interior-hero-aside p { color:var(--ds-text-muted);font-size:12px;line-height:1.9;margin:0; }
.interior-hero-aside a { display:flex;justify-content:space-between;gap:20px;width:fit-content;color:var(--ds-accent-purple);font-size:11px;line-height:1.7;margin-top:22px; }
.interior-hero-aside a:after { content:'↗'; }
.interior section { padding:66px 0; }
.interior section.tight { padding:45px 0; }
.interior .section-head { grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 70px;margin-bottom:36px;align-items:end; }
.interior .section-head .kicker { font-size:9px;margin:0; }
.interior .section-head h2 { font-size:clamp(28px,3vw,39px);line-height:1.2;letter-spacing:-1.2px;max-width:620px; }
.interior .section-head .lead { font-size:13px;line-height:1.9; }
.interior section h3 { letter-spacing:-.3px; }
.interior .cap,.interior .indblock { gap:75px;padding:56px 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.interior .cap h3,.interior .indblock h2 { font-size:28px;line-height:1.3;letter-spacing:-.8px;font-weight:500; }
.interior .cap p,.interior .indblock .desc { font-size:13px;line-height:1.95;max-width:54ch; }
.interior .cap-tag,.interior .indblock .tag,.interior .roleblock .tag { color:var(--ds-accent-purple);font-size:9px;letter-spacing:.9px; }
.interior .cap-media,.interior .indmedia,.interior .exhibit,.interior .plan { border:1px solid var(--ds-border);border-radius:10px;box-shadow:none;background:var(--ds-bg-secondary); }
.interior .cap-media .mh,.interior .indmedia .mh { background:var(--ds-bg-tertiary);border-color:var(--ds-border);font-size:10px;padding:14px 18px; }
.interior .mini-row { padding:19px 18px; }
.interior .mini-row b { font-size:12px;line-height:1.6; }
.interior .mini-row .sub { font-size:10px;line-height:1.7; }
.interior .codeblock { font-size:11px;line-height:2.2;padding:25px 22px;overflow-x:auto; }
.interior .codeblock .b { color:var(--ds-accent-purple); }
.interior .exhibit-cap { font-size:10px;line-height:1.8;color:var(--ds-text-muted);margin-top:13px; }
.interior .pill-info { background:var(--ds-accent-purple-subtle);color:var(--ds-accent-purple);border-color:var(--ds-border); }
.interior .unit { padding:40px;gap:45px;background:var(--ds-bg-secondary);border-radius:10px;border-color:var(--ds-border); }
.interior .unit h2 { font-size:31px;line-height:1.25;letter-spacing:-1px; }
.interior .unit p { font-size:13px;line-height:1.9; }
.interior .unit-flow div { font-size:11px; }
/* The platform tour keeps its navigation visible while reading the evidence. */
.interior .layout { display:grid;grid-template-columns:190px minmax(0,1fr);gap:58px;padding:55px 0 0!important; }
.interior .layout>main { min-width:0; }
.interior .sidenav { display:block;top:110px;padding-bottom:30px; }
.interior .sidenav ul { padding:0; }
.interior .sidenav a { font-size:11px;line-height:1.6;padding:11px 0 11px 15px; }
.interior .sidenav .grp { font-size:9px;padding-top:24px; }
.interior .pillar { padding:0 0 48px!important;margin-bottom:48px!important;scroll-margin-top:110px; }
.interior .pillar-head { margin-bottom:28px!important; }
.interior .pillar-head .px { font-size:9px;margin-bottom:14px; }
.interior .pillar-head h2 { font-size:34px;line-height:1.25;letter-spacing:-1.05px;max-width:23ch; }
.interior .pillar-head p { font-size:13px;line-height:1.9;max-width:68ch; }
.interior .feat { padding:23px 0; }
.interior .feat h3 { font-size:16px;line-height:1.5; }
.interior .feat p { font-size:12px;line-height:1.9; }
.interior .feat .ic,.interior .tile .ic,.interior .roleblock .rico { background:var(--ds-accent-purple-subtle);border-radius:7px; }
.interior .wiz-steps { gap:12px;padding:17px; }
.interior .wstep { font-size:9px;white-space:nowrap; }
.interior .wstep.active .n,.interior .tpl.sel { border-color:var(--ds-accent-purple);background:var(--ds-accent-purple-subtle); }
.interior .tplgrid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.interior .tpl { padding:17px 14px;border-radius:6px; }
.interior .tpl b { font-size:11px; }
.interior .tpl span { font-size:10px;line-height:1.7; }
.interior .runbox,.interior .tech { border-color:var(--ds-border);border-radius:9px; }
.interior .runrow,.interior .job { font-size:11px; }
.interior .ind-nav,.interior .role-nav { display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 0;overflow:visible!important; }
.interior .ind-nav a,.interior .role-nav a { white-space:normal;font-size:10px;line-height:1.5;padding:9px 11px;border-radius:4px;border-color:var(--ds-border);background:var(--ds-bg-secondary); }
.interior .roleblock { padding:48px 0;scroll-margin-top:110px; }
.interior .roleblock .rhead { margin-bottom:30px; }
.interior .roleblock h2 { font-size:29px;letter-spacing:-.7px;line-height:1.3; }
.interior .roleblock .sub { font-size:13px;line-height:1.9;max-width:75ch; }
.interior .rgrid { grid-template-columns:repeat(3,minmax(0,1fr));gap:25px; }
.interior .rg { border:0;border-top:1px solid var(--ds-border);padding:22px 0;background:transparent;border-radius:0; }
.interior .rg h3 { font-size:17px;line-height:1.45; }
.interior .rg p { font-size:12px;line-height:1.9; }
.interior .rg .lbl { font-size:9px; }
.interior .rquote { border:0;border-left:2px solid var(--ds-accent-purple);border-radius:0;background:var(--ds-bg-secondary);font-size:13px;line-height:1.9;padding:23px 27px; }
.interior .rquote b { display:block;font-size:12px;line-height:1.9;margin-top:8px;font-weight:400;color:var(--ds-text-secondary); }
/* A shared typographic rhythm, rather than a wall of identical rounded cards. */
.interior .grid2 { gap:0 60px; }
.interior .grid3,.interior .paths,.interior .models,.interior .model3,.interior .resp { gap:28px; }
.interior .tile { gap:20px;padding:28px 0; }
.interior .tile h3 { font-size:17px;line-height:1.5; }
.interior .tile p { font-size:12px;line-height:1.9; }
.interior .path,.interior .model,.interior .m3,.interior .respcol { border:0;border-top:1px solid var(--ds-border);padding:26px 0;background:transparent;border-radius:0; }
.interior .path .tag,.interior .model label,.interior .m3 label { font-size:9px;letter-spacing:.9px;color:var(--ds-accent-purple); }
.interior .path h3,.interior .model h3,.interior .m3 h3 { font-size:20px;font-weight:500;line-height:1.4;margin-bottom:13px; }
.interior .path p,.interior .model p,.interior .m3 p { font-size:12px;line-height:1.9; }
.interior .model.hl,.interior .m3.hl { background:transparent;border-top-color:var(--ds-accent-purple); }
.interior .respcol li { font-size:12px;line-height:1.8; }
.interior .modes { gap:30px; }
.interior .mode { padding:35px;background:var(--ds-bg-secondary);border-radius:10px;border-color:var(--ds-border); }
.interior .mode.hl { background:var(--ds-bg-tertiary);border-color:var(--ds-border); }
.interior .mode h3 { font-size:26px;font-weight:500; }
.interior .mode .sub { font-size:13px;line-height:1.9; }
.interior .mode li,.interior .mode .who { font-size:12px;line-height:1.8; }
.interior .mode .btn { align-self:flex-start;font-size:11px; }
.interior .deploy { gap:30px; }
.interior .dcard { border:0;border-top:1px solid var(--ds-border);border-radius:0;padding:26px 0;background:transparent; }
.interior .dcard h3 { font-size:21px; }
.interior .dcard p { font-size:12px;line-height:1.9; }
.interior .cardgrid,.interior .modos { border-radius:10px; }
.interior .card,.interior .modo { padding:30px; }
.interior .card h3,.interior .modo h3 { font-size:19px;line-height:1.45; }
.interior .card p,.interior .modo p { font-size:12px;line-height:1.9; }
.interior .casogrid { gap:30px; }
.interior .caso { border-radius:10px;border-color:var(--ds-border);background:var(--ds-bg-secondary);padding:32px; }
.interior .caso h3 { font-size:24px;line-height:1.35; }
.interior .caso p,.interior .feature p { font-size:13px;line-height:1.9; }
.interior .feature { background:var(--ds-bg-secondary);border-color:var(--ds-border);border-radius:12px;padding:38px; }
.interior .feature h2 { font-size:34px;line-height:1.25;letter-spacing:-1px; }
.interior .thesis { max-width:790px; }
.interior .thesis p { font-size:17px;line-height:1.95; }
.interior .thesis p:first-child { font-size:24px;line-height:1.65;letter-spacing:-.4px; }
.interior .compare { border-radius:8px; }
.interior .compare-cell { font-size:12px;line-height:1.7;padding:20px; }
.interior .compare-cell.devsense { background:var(--ds-accent-purple-subtle); }
.interior .flow-step:before,.interior .f4:before,.interior .fstep:before { background:var(--ds-border); }
.interior .flow-step:after,.interior .f4:after,.interior .fstep:after { background:var(--ds-accent-purple)!important; }
.interior .flow-step.done .flow-dot,.interior .f4.done .d,.interior .fstep.done .fdot,.interior .wstep.done .n,.interior .planstep.done .n { background:var(--ds-accent-purple-subtle)!important;border-color:var(--ds-accent-purple)!important; }
.interior .flow,.interior .flow4 { margin-bottom:25px; }
.interior .fstep b,.interior .f4 b { font-size:12px; }
.interior .fstep p,.interior .f4 p { font-size:11px;line-height:1.9; }
.interior .invlist>div { padding:18px 0;font-size:13px;line-height:1.8; }
.interior .eval-grid { gap:75px; }
.interior .need { padding:23px 0; }
.interior .need h3 { font-size:18px;line-height:1.5; }
.interior .need p { font-size:13px;line-height:1.9; }
.interior .planstep { padding:20px; }
.interior .planstep b { font-size:12px;line-height:1.6; }
.interior .planstep p { font-size:11px;line-height:1.8; }
/* Contact stays usable at every size, with a readable non-technical brief. */
.interior .contact-grid { grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:75px; }
.interior .form { padding:32px;background:var(--ds-bg-secondary);border-radius:10px; }
.interior .fld label { font-size:11px;line-height:1.6; }
.interior .fld input,.interior .fld select,.interior .fld textarea { min-height:46px;font-size:13px;line-height:1.6;border-radius:5px;border-color:var(--ds-border);font-family:var(--sans); }
.interior .fld input:focus,.interior .fld select:focus,.interior .fld textarea:focus { border-color:var(--ds-accent-purple);outline:2px solid var(--ds-accent-purple-subtle);outline-offset:2px; }
.interior .fld textarea { min-height:135px; }
.interior .fld-row { min-width:0; }
.interior .fld { min-width:0; }
.interior .form .btn { font-size:12px; }
.interior .form .note { font-size:10px;line-height:1.8; }
.interior .aside-block { padding:26px 0; }
.interior .aside-block h3 { font-size:18px;font-weight:500;line-height:1.5; }
.interior .aside-block p,.interior .contact-meta p { font-size:12px;line-height:1.9; }
.interior .contact-meta { padding-top:10px; }
.interior .contact-meta b { font-size:9px; }
.interior .cierre { margin-top:35px;padding:65px 0;border-color:var(--ds-border);background:var(--ds-bg-secondary); }
.interior .cierre h2 { font-size:37px;line-height:1.3;letter-spacing:-1.1px;max-width:850px; }
.interior .cierre p { font-size:13px;line-height:1.9;max-width:710px; }
.interior .cierre .btn { font-size:11px; }
.interior .cierre .btn-primary { background:var(--ds-accent-purple);color:var(--ds-text-on-accent);border-color:var(--ds-accent-purple); }
.interior .cierre .btn-quiet { border-color:var(--ds-border); }
.interior .screen-reader-trap { position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden; }
.interior img { max-width:100%;height:auto; }
.interior .grow,.interior .cap>div,.interior .indblock>div { min-width:0; }
.interior .table-scroll,.interior .qa-table-scroll { overflow-x:auto;max-width:100%; }
@media(max-width:1100px) {
 .interior .pagehero>.wrap { gap:45px;grid-template-columns:minmax(0,1.6fr) minmax(210px,.7fr); }
 .interior .pagehero h1 { font-size:46px; }
 .interior .layout { grid-template-columns:160px minmax(0,1fr);gap:32px; }
 .interior .cap,.interior .indblock,.interior .contact-grid,.interior .eval-grid { gap:40px; }
 .site-footer>.wrap { gap:35px;grid-template-columns:.8fr 1.5fr; }
 .footer-links { gap:20px; }
}
@media(max-width:1020px) {
 .nav-inner nav.open { max-height:calc(100dvh - 100px);overflow-y:auto;align-items:stretch;gap:0;padding:15px 20px; }
 .nav-inner nav.open>a { padding:13px 0; }
 .nav-group { border-bottom:1px solid var(--ds-border-muted); }
 .nav-group summary { justify-content:space-between;width:100%;padding:15px 0; }
 .nav-dropdown { position:static;width:100%;box-shadow:none;border:0;border-left:1px solid var(--ds-border);border-radius:0;margin:0 0 13px;padding:0 0 0 11px;background:transparent; }
 .nav-dropdown a { font-size:12px;padding:11px; }
 .nav-inner nav.open .nav-group[open] summary { color:var(--ds-accent-purple); }
}
@media(max-width:900px) {
 .interior .pagehero { padding:57px 0 45px!important; }
 .interior .pagehero>.wrap { grid-template-columns:minmax(0,1.5fr) minmax(185px,.7fr);gap:28px; }
 .interior .pagehero h1 { font-size:39px;letter-spacing:-1.3px; }
 .interior .pagehero .lead { font-size:12px; }
 .interior-hero-aside strong { font-size:18px; }
 .interior-hero-aside p { font-size:11px; }
 .interior .layout { display:block; }
 .interior .sidenav { position:static;display:block;margin-bottom:28px;padding:0 0 20px;border-bottom:1px solid var(--ds-border); }
 .interior .sidenav ul { display:flex;flex-wrap:wrap;gap:5px 13px; }
 .interior .sidenav .grp { display:none; }
 .interior .sidenav a { border:0;padding:6px 0;font-size:10px; }
 .interior .sidenav a.active { color:var(--ds-accent-purple); }
 .interior .pillar-head h2 { max-width:26ch;font-size:31px; }
 .interior .section-head { gap:18px 32px; }
 .interior .section-head h2 { font-size:29px; }
 .interior .cap,.interior .indblock { gap:32px; }
 .interior .cap h3,.interior .indblock h2 { font-size:24px; }
 .interior .rgrid { gap:23px; }
 .interior .rg h3 { font-size:15px; }
 .interior .models,.interior .model3,.interior .resp { gap:23px; }
 .interior .model h3,.interior .m3 h3 { font-size:18px; }
 .interior .mode { padding:26px; }
 .interior .contact-grid,.interior .eval-grid { gap:35px; }
 .interior .form { padding:25px; }
 .site-footer>.wrap { grid-template-columns:1fr;gap:32px; }
 .footer-intro { display:grid;grid-template-columns:1fr 1.5fr;gap:0 40px;align-items:start; }
 .footer-intro p { max-width:440px;grid-column:2;grid-row:1/3; }
 .footer-intro>a:not(.brand) { margin-top:0; }
 .footer-links { gap:40px; }
}
@media(max-width:740px) {
 .interior .wrap { width:calc(100% - 40px); }
 .interior .pagehero { padding:41px 0 35px!important; }
 .interior .pagehero>.wrap { display:block; }
 .interior .pagehero h1 { font-size:38px;line-height:1.12;letter-spacing:-1.45px;max-width:21ch;margin-bottom:23px; }
 .interior .pagehero .kicker { font-size:8px;letter-spacing:.8px;margin-bottom:20px; }
 .interior .pagehero .lead { font-size:13px;line-height:1.9; }
 .interior .pagehero-ctas { gap:14px;margin-top:24px; }
 .interior .pagehero-ctas .btn { font-size:9px;gap:12px;padding:10px 12px; }
 .interior .pagehero-ctas .btn-quiet { padding:7px 0; }
 .interior-hero-aside { margin-top:34px;max-width:none;padding:20px 0 0;display:grid;grid-template-columns:1fr 1.25fr;gap:0 24px; }
 .hero-page-index { font-size:8px;margin-bottom:14px;grid-column:1; }
 .interior-hero-aside strong { grid-column:1;font-size:18px;line-height:1.5;margin:0; }
 .interior-hero-aside p { grid-column:2;grid-row:1/3;align-self:center;font-size:11px; }
 .interior-hero-aside a { grid-column:1/-1;margin-top:16px;font-size:10px; }
 .interior section,.interior section.tight { padding:42px 0; }
 .interior .section-head { display:block;margin-bottom:28px; }
 .interior .section-head .kicker { margin-bottom:16px; }
 .interior .section-head h2 { font-size:29px;line-height:1.24;letter-spacing:-1px; }
 .interior .section-head .lead { margin-top:20px;font-size:12px;line-height:1.9; }
 .interior .cap,.interior .indblock { grid-template-columns:1fr;gap:26px;padding:35px 0; }
 .interior .cap:nth-child(2n) .cap-media,.interior .indblock:nth-child(2n) .indmedia { order:0; }
 .interior .cap h3,.interior .indblock h2 { font-size:25px; }
 .interior .cap p,.interior .indblock .desc { font-size:12px; }
 .interior .cap-media .mh,.interior .indmedia .mh { padding:12px 14px;flex-wrap:wrap;gap:7px; }
 .interior .cap-media .mh span,.interior .indmedia .mh span { font-size:9px; }
 .interior .mini-row { padding:15px 14px;gap:10px; }
 .interior .mini-row b { font-size:10px; }
 .interior .mini-row .sub { font-size:9px; }
 .interior .mini-row .pill { font-size:8px; }
 .interior .codeblock { font-size:9px;padding:20px 15px; }
 .interior .unit { grid-template-columns:1fr;gap:25px;padding:26px; }
 .interior .unit h2 { font-size:26px; }
 .interior .unit p { font-size:12px; }
 .interior .unit-flow div { font-size:10px; }
 .interior .layout { padding-top:27px!important; }
 .interior .pillar { margin-bottom:36px!important;padding-bottom:36px!important; }
 .interior .pillar-head h2 { font-size:28px;letter-spacing:-.8px; }
 .interior .pillar-head p { font-size:12px; }
 .interior .feat h3 { font-size:15px; }
 .interior .feat p { font-size:11px; }
 .interior .wiz-body { padding:18px 14px; }
 .interior .tplgrid { grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px; }
 .interior .tpl { padding:14px 10px; }
 .interior .tpl b { font-size:10px;line-height:1.5; }
 .interior .tpl span { font-size:9px; }
 .interior .wiz-steps { gap:12px;padding:14px; }
 .interior .wstep { font-size:8px;flex-shrink:0; }
 .interior .wsep { min-width:10px; }
 .interior .ind-nav,.interior .role-nav { gap:6px; }
 .interior .ind-nav a,.interior .role-nav a { font-size:9px;padding:8px 10px; }
 .interior .indblock li { font-size:11px;line-height:1.9; }
 .interior .indrow { font-size:10px;gap:10px;padding:14px;flex-wrap:wrap; }
 .interior .indrow .grow { flex-basis:55%; }
 .interior .roleblock { padding:35px 0; }
 .interior .roleblock h2 { font-size:25px; }
 .interior .roleblock .rhead { gap:13px;margin-bottom:20px; }
 .interior .roleblock .rico { width:35px;height:35px; }
 .interior .roleblock .rico svg { width:18px;height:18px; }
 .interior .roleblock .sub { font-size:12px; }
 .interior .rgrid { grid-template-columns:1fr!important;gap:0; }
 .interior .rg { padding:20px 0; }
 .interior .rg h3 { font-size:18px; }
 .interior .rquote { padding:20px;font-size:12px; }
 .interior .rquote b { font-size:11px; }
 .interior .grid2,.interior .grid3,.interior .paths,.interior .models,.interior .model3,.interior .resp,.interior .modes,.interior .deploy,.interior .cardgrid,.interior .modos,.interior .casogrid { grid-template-columns:1fr;gap:0; }
 .interior .tile { gap:15px;padding:24px 0; }
 .interior .tile h3 { font-size:16px; }
 .interior .tile p { font-size:11px; }
 .interior .path,.interior .model,.interior .m3,.interior .respcol { padding:25px 0; }
 .interior .path h3,.interior .model h3,.interior .m3 h3 { font-size:21px; }
 .interior .modes,.interior .casogrid { gap:20px; }
 .interior .mode { padding:26px; }
 .interior .mode h3 { font-size:25px; }
 .interior .mode .sub { font-size:12px; }
 .interior .mode li { font-size:11px; }
 .interior .card,.interior .modo { padding:25px;border-bottom:1px solid var(--ds-border); }
 .interior .caso { padding:26px; }
 .interior .caso h3 { font-size:24px; }
 .interior .feature { padding:27px; }
 .interior .feature h2 { font-size:27px; }
 .interior .feature p { font-size:12px; }
 .interior .thesis p { font-size:14px;line-height:1.9; }
 .interior .thesis p:first-child { font-size:20px;line-height:1.65; }
 .interior .compare-cell { font-size:11px;padding:16px; }
 .interior .compare-row { min-width:0; }
 .interior .fstep { min-width:155px; }
 .interior .flow4 .f4 { min-width:205px;flex-basis:205px; }
 .interior .invlist>div { font-size:12px;padding:16px 0; }
 .interior .eval-grid,.interior .contact-grid { grid-template-columns:1fr;gap:28px; }
 .interior .need { padding:22px 0; }
 .interior .need h3 { font-size:18px; }
 .interior .need p { font-size:12px; }
 .interior .contact-grid .form { padding:25px 20px; }
 .interior .fld-row { grid-template-columns:1fr;gap:0; }
 .interior .fld input,.interior .fld select,.interior .fld textarea { font-size:16px; }
 .interior .aside-block h3 { font-size:19px; }
 .interior .cierre { margin-top:18px;padding:47px 0; }
 .interior .cierre h2 { font-size:29px;letter-spacing:-1px; }
 .interior .cierre p { font-size:12px; }
 .interior .cierre .btns { flex-wrap:wrap;gap:15px; }
 .interior .cierre .btn { font-size:10px; }
 .site-footer { padding:38px 0 22px; }
 .site-footer>.wrap { gap:32px; }
 .footer-intro { display:block; }
 .footer-intro .brand { font-size:21px;margin-bottom:15px; }
 .footer-intro p { max-width:350px;font-size:11px; }
 .footer-intro>a:not(.brand) { margin-top:17px; }
 .footer-links { grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px; }
 .footer-column { gap:10px; }
 .footer-column h3,.footer-column>strong { font-size:9px;margin-bottom:6px; }
 .footer-column a { font-size:10px; }
 .site-footer .footer-bottom { display:block;margin-top:0;font-size:9px; }
 .site-footer .footer-bottom>*+* { margin-top:10px;display:block; }
}
@media(max-width:370px) {
 .interior .pagehero h1 { font-size:33px; }
 .interior .pagehero-ctas { gap:12px; }
 .interior .pagehero-ctas .btn { font-size:8px;padding:10px; }
 .interior-hero-aside { grid-template-columns:1fr;gap:12px; }
 .hero-page-index { margin-bottom:0; }
 .interior-hero-aside strong,.interior-hero-aside p,.interior-hero-aside a { grid-column:auto;grid-row:auto; }
 .interior-hero-aside a { margin-top:2px; }
}
@media(prefers-reduced-motion:reduce) { .nav-group summary:after { transition:none; } }
/* Entry point from the approved homepage into the autonomy chapter. */
.nav-group summary>span[aria-hidden="true"] { display:none; }
.nav-badge { margin-left:8px;padding:2px 5px;background:var(--ds-accent-purple-subtle);color:var(--ds-accent-purple);border-radius:3px;font:8px var(--sans); }
.autonomy-entry { display:grid;grid-template-columns:1.1fr 1fr;gap:75px;padding:40px 0;margin-top:30px;border-top:1px solid var(--ds-border);border-bottom:1px solid var(--ds-border);align-items:center; }
.autonomy-entry .kicker { font-size:9px;margin-bottom:18px; }
.autonomy-entry h2 { font-size:36px;letter-spacing:-1.2px;line-height:1.25;max-width:520px; }
.autonomy-entry p { color:var(--ds-text-secondary);font-size:13px;line-height:1.9;margin:0 0 18px; }
.autonomy-entry a { color:var(--ds-accent-purple);font-size:11px;line-height:1.7;display:inline-flex;gap:24px; }
.form-status { padding:13px 15px;margin-top:16px;border:1px solid var(--ds-border);border-radius:5px;color:var(--ds-text-secondary);font-size:12px;line-height:1.8;background:var(--ds-bg-primary); }
.form-status[hidden] { display:none; }
.form-status[data-state="error"],.form-status.error { color:var(--ds-danger); }
.form-status[data-state="success"],.form-status.success { color:var(--ds-success); }
@media(max-width:900px) { .autonomy-entry { gap:35px; }.autonomy-entry h2 { font-size:31px; } }
@media(max-width:740px) { .autonomy-entry { grid-template-columns:1fr;gap:22px;padding:29px 0;margin-top:22px; }.autonomy-entry h2 { font-size:29px; }.autonomy-entry p { font-size:12px; }.autonomy-entry a { font-size:10px; } }
/* Normalize the few global rules inherited from the captured production CSS. */
.interior .wrap { max-width:none;padding-left:0;padding-right:0; }
.site-header .nav-inner { padding:0; }
.site-header .nav-inner nav { position:static;background:transparent;backdrop-filter:none;border:0; }
.menu-toggle { width:auto;height:auto;flex-direction:row;gap:7px; }
.menu-toggle span { display:inline;width:auto;height:auto;margin:0;background:none;border-radius:0; }
.menu-toggle:focus-visible { outline:2px solid var(--ds-accent-purple);outline-offset:4px; }
.interior .btn-quiet { border-top:0;border-left:0;border-right:0; }
.interior .btn:has(>span[aria-hidden="true"]):after,.interior-hero-aside a:has(>span[aria-hidden="true"]):after { content:none; }
.site-footer>.wrap { grid-template-columns:.7fr 2.3fr;gap:50px; }
.footer-links { grid-template-columns:repeat(4,minmax(0,1fr));gap:25px; }
.footer-column h2 { font:10px/1.5 var(--sans);letter-spacing:.6px;text-transform:uppercase;margin:3px 0 9px;color:var(--ds-text-primary); }
.footer-column p { color:var(--ds-text-muted);font-size:10px;line-height:1.8; }
@media(max-width:1020px) { .site-header .nav-inner nav.open { position:absolute;background:var(--ds-bg-secondary);border:1px solid var(--ds-border); } }
@media(max-width:900px) { .site-footer>.wrap { grid-template-columns:1fr;gap:32px; }.footer-links { grid-template-columns:repeat(4,minmax(0,1fr));gap:23px; }.footer-column a { overflow-wrap:anywhere; } }
@media(max-width:740px) { .footer-links { grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px; }.footer-column h2 { font-size:9px;margin-bottom:6px; } }
.form-status:empty { display:none; }
.nav-autonomy { color:var(--ds-text-primary);white-space:nowrap; }
.nav-autonomy[aria-current="page"] { color:var(--ds-accent-purple); }
@media(max-width:1020px) { .nav-autonomy { display:block;padding:14px 0;border-bottom:1px solid var(--ds-border); } }
/* Paired content uses balanced columns instead of pushing short lists to the far edge. */
.interior .unit,.interior .feature {
 grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);
 column-gap:clamp(28px,4vw,56px);
}
.interior .unit>div,.interior .feature>div { min-width:0; }
.interior .unit h2 { max-width:24ch; }
.interior .unit p,.interior .feature p { max-width:60ch; }
.interior .unit-flow { gap:13px; }
.interior .unit-flow div { font-size:13px;line-height:1.65; }
.interior .feature>.pill { justify-self:start; }
@media(max-width:900px) {
 .interior .unit,.interior .feature { grid-template-columns:1fr;gap:25px; }
}
@media(max-width:740px) {
 .interior .unit-flow div { font-size:12px; }
}
