/* IAPont Bridge 1.8.9 C3. Mobile-first, application-owned assets only. */
:root {
 color-scheme:light; --bg:#f7f7fb; --surface:#ffffff; --raised:#fff;
 --ink:#17243d; --muted:#59667c; --border:#dce1eb; --subtle:#f0eef7;
 --accent:#6c43a7; --accent-hover:#543083; --on-accent:#fff; --focus:#087a91;
 --danger:#a42c45; --success:#256748; --code:#17243d; --code-ink:#eff3ff;
 --editor:#fdfcff; --shadow:0 8px 32px #1926410b; --radius:16px; --small-radius:10px;
 --hero-paper:#fbfafb; --hero-haze:#fbfafb00; --navy:#141e31; --lilac:#d5c3ee;
}
:root[data-theme=dark] {
 color-scheme:dark; --bg:#10192b; --surface:#1a263a; --raised:#202d44;
 --ink:#f4f3fb; --muted:#b9c4d7; --border:#3c4a64; --subtle:#2a304a;
 --accent:#bea0eb; --accent-hover:#d1b9f5; --on-accent:#21152f; --focus:#77deed;
 --danger:#ffadb9; --success:#94dfba; --code:#0f192a; --code-ink:#eef2ff;
 --editor:#152035; --shadow:0 8px 32px #0002; --hero-paper:#121d30; --hero-haze:#121d3000;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:1rem}
body {margin:0;background:var(--bg);color:var(--ink);font:1rem/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-rendering:optimizeLegibility}
button,input,select,textarea {font:inherit}
button,select,a,input,textarea {-webkit-tap-highlight-color:transparent}
button,a {touch-action:manipulation}
button {cursor:pointer;color:inherit}
button:disabled {cursor:not-allowed;opacity:.55}
input,textarea,select {max-width:100%;color:var(--ink);background:var(--raised);border:1px solid var(--border);border-radius:var(--small-radius)}
input:not([type=checkbox]),select {width:100%;min-height:48px;padding:.6rem .75rem}
input[type=checkbox] {width:20px;height:20px;flex-shrink:0;accent-color:var(--accent)}
a {color:var(--accent);text-underline-offset:.2em}
a:hover {text-decoration-thickness:2px}
svg {flex-shrink:0}
img {max-width:100%;height:auto}
h1,h2,h3,p {margin:0 0 1rem}
h1,h2,h3 {line-height:1.2;overflow-wrap:break-word}
h1 {font-size:clamp(1.45rem,3.2vw,2rem);font-weight:650;letter-spacing:-.04em}
h2 {font-size:1.2rem;letter-spacing:-.025em}
h3 {font-size:1rem;margin-top:1.5rem}
figure {margin:0}
p:last-child {margin-bottom:0}
[hidden] {display:none!important}
main {min-width:0}
strong {font-weight:680}
:focus-visible {outline:3px solid var(--focus);outline-offset:3px}
::selection {background:#ac82da44}
pre {white-space:pre-wrap;overflow-wrap:anywhere}
summary {cursor:pointer;min-height:48px;padding:.7rem 0;font-weight:600}
details {border-top:1px solid var(--border);margin-top:1rem}
details p {font-size:.92rem;color:var(--muted)}
details[open] {padding-bottom:.75rem}
.visually-hidden,input.visually-hidden {min-height:0;min-width:0;position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link {position:fixed;top:-100px;left:1rem;padding:1rem;background:var(--surface);z-index:100}
.skip-link:focus {top:1rem}
.button,.icon-button,.text-button,.editor-tools button,.mode-switch button,.mobile-jumps a {
 display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;min-width:48px;padding:.65rem .95rem;border:1px solid var(--border);border-radius:var(--small-radius);font-size:.875rem;font-weight:630;line-height:1.35;text-decoration:none;background:var(--surface);color:var(--ink);transition:background-color .15s,border-color .15s,box-shadow .15s;
}
.button:hover,.icon-button:hover,.text-button:hover,.editor-tools button:hover {background:var(--subtle);border-color:var(--accent)}
.button.primary {background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:var(--on-accent);border-color:var(--accent);box-shadow:0 4px 12px #6b43a724}
.button.primary:hover {background:var(--accent-hover);box-shadow:0 5px 16px #6b43a738}
.button.subtle,.text-button {background:transparent;border-color:transparent}
.button.glass {background:var(--surface);border-color:#b4a9ca}
.icon-button {width:48px;padding:.6rem;flex-shrink:0}
.button.small {padding:.6rem .7rem}
.danger {color:var(--danger)}
.button:active,.icon-button:active {transform:translateY(1px)}
.muted,.fine-print {color:var(--muted)}
.fine-print {font-size:.8rem}
.eyebrow {text-transform:uppercase;font-size:.68rem;letter-spacing:.16em;font-weight:730;margin-bottom:.6rem;color:var(--accent)}
/* Shared header and navigation */
.site-header {position:relative;z-index:3;border-bottom:1px solid var(--border);background:var(--surface)}
.is-home .site-header {background:var(--hero-paper);border-bottom-color:transparent}
.header-inner {max-width:1640px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.65rem max(1rem,env(safe-area-inset-left))}
.brand {display:inline-flex;align-items:center;min-height:48px;flex-shrink:0;text-decoration:none;color:var(--ink);gap:.3rem}
.brand-symbol {width:48px;height:40px;object-fit:contain}
.brand-text {display:flex;flex-direction:column}
.brand-name {font-size:1.5rem;letter-spacing:-.07em;font-weight:360;line-height:1.15}
.brand-name b {font-weight:760}
.brand-tagline {display:none;font-size:.48rem;letter-spacing:.15em;text-transform:uppercase;font-weight:550;margin-top:.25rem}
.desktop-nav {display:none;align-items:center;gap:.25rem}
.desktop-nav a {display:flex;align-items:center;min-height:48px;padding:.65rem .8rem;border-radius:8px;font-size:.84rem;font-weight:590;text-decoration:none;color:var(--ink)}
.desktop-nav a:hover {background:var(--subtle)}
.desktop-nav a[aria-current=page] {text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:.6rem}
.header-tools {display:flex;align-items:center;gap:.35rem}
.header-tools .icon-button {border-color:transparent;background:transparent}
.header-tools .icon-button:hover {background:var(--subtle)}
.theme-toggle[aria-pressed=true] {background:var(--subtle)}
.language-button {display:none;align-items:center;justify-content:center;gap:.1rem;border:0;min-height:48px;min-width:48px;background:transparent;color:var(--ink);font-size:.8rem;font-weight:600}
.language-button svg {width:14px}
/* Local workspace: sidebar only when enough room remains for both panels. */















.small-details {text-align:left}
.notice {border:1px solid var(--border);border-left:4px solid var(--accent);padding:.85rem 1rem;border-radius:10px;background:var(--surface);margin-bottom:1rem;font-size:.92rem;overflow-wrap:anywhere}
.notice.error {border-left-color:var(--danger);color:var(--danger)}
.notice.success {border-left-color:var(--success)}
.notice button,.notice a {margin-left:.5rem}



@keyframes spin {to{transform:rotate(360deg)}}




.document-symbol {width:40px;height:48px;display:grid;place-items:center;flex-shrink:0;color:var(--accent)}
.document-symbol svg {padding:4px;box-sizing:content-box;background:var(--subtle);border-radius:8px}
.file-name {display:block;font-weight:670;line-height:1.3;font-size:.9rem;overflow-wrap:anywhere}
















.work-panel {min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);scroll-margin-top:1rem}
.panel-heading {display:flex;align-items:center;justify-content:space-between;gap:.4rem;min-height:60px;padding:.45rem .8rem;border-bottom:1px solid var(--border)}
.panel-heading h2 {display:flex;align-items:center;gap:.4rem;font-size:.85rem;margin:0;font-weight:670}
.panel-heading h2 svg {width:17px;height:17px;color:var(--accent)}
.panel-heading>.muted {font-size:.66rem;text-align:right}
.panel-heading .text-button {padding:.55rem .15rem;font-size:.73rem}
.panel-heading .text-button svg {width:16px}






.check-field {display:flex;align-items:center;gap:.5rem;min-height:48px;font-size:.73rem}

.panel-help {padding:0 .9rem .85rem;color:var(--muted);font-size:.72rem;margin:0}

.field {display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:550;min-width:0}
.compact-field {flex:1 1 130px;font-size:.7rem}
.compact-field:first-child {flex-basis:170px}
.compact-field select {font-size:.79rem;padding-left:.5rem;padding-right:.4rem}
.fit-control {flex-shrink:0;font-size:.72rem}
.fit-control[aria-pressed=true] {background:var(--subtle);border-color:var(--accent)}








.import-report {padding:0 1rem}
.import-report li {font-size:.85rem;color:var(--muted)}


.mobile-work-nav {position:sticky;bottom:0;z-index:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;padding:.45rem max(.65rem,env(safe-area-inset-left)) max(.45rem,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -6px 22px #19264110}
.mobile-work-nav a,.mobile-work-nav button {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;text-decoration:none;color:var(--muted);background:transparent;border:0;border-radius:10px;min-height:52px;font-size:.62rem;line-height:1.3;padding:.4rem .1rem;text-align:center}
.mobile-work-nav [aria-current=page] {color:var(--accent);background:var(--subtle)}
.mobile-work-nav svg {width:18px;height:18px}
/* Modal controls: retained functional contracts, redesigned surfaces. */
.dialog {max-width:min(680px,calc(100vw - 1.25rem));width:680px;max-height:calc(100dvh - 1.25rem);padding:0;border:1px solid var(--border);border-radius:20px;color:var(--ink);background:var(--surface);box-shadow:0 20px 80px #0004}
.dialog::backdrop {background:#0a142bc2;backdrop-filter:blur(3px)}
.dialog-top {position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.65rem 1rem;border-bottom:1px solid var(--border);background:var(--surface)}
.dialog-top h2 {margin:0;font-size:1.2rem}
.dialog-body {padding:1rem;min-width:0;overflow-wrap:anywhere}
.dialog-body>p {font-size:.9rem}
.dialog-actions {display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap;margin-top:1rem}
.dialog nav a {display:flex;align-items:center;min-height:48px}
.dialog .form-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.dialog .field {margin-bottom:.5rem}
.wide-dialog {width:900px;max-width:min(900px,calc(100vw - 1.25rem))}


.tool-card {display:flex;align-items:center;gap:.75rem;min-height:64px;background:var(--raised);border:1px solid var(--border);border-radius:12px;padding:1rem;text-align:left;font-weight:600}
.tool-card>span {flex:1}
.tool-card:hover {border-color:var(--accent);background:var(--subtle)}

.metrics {display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin:1rem 0}
.metric {padding:.85rem;background:var(--subtle);border-radius:12px}
.metric strong {display:block;font-size:1.5rem;line-height:1.3}
.metric span {font-size:.75rem}
.check-list {padding:0;list-style:none}
.check-list li {display:flex;gap:.65rem;padding:.7rem 0;border-bottom:1px solid var(--border);font-size:.85rem}
.check-badge {font-weight:700;color:var(--success);min-width:24px}
.check-badge.review {color:var(--danger)}
.check-list .muted {margin-left:auto;font-size:.75rem}
.code-box {background:var(--code);color:var(--code-ink);padding:1rem;border-radius:12px;max-height:340px;overflow:auto;font-size:.8rem}
.library-list {display:grid;gap:.65rem;margin:1rem 0}
.library-item {display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;border:1px solid var(--border);border-radius:12px;padding:.75rem}
.library-item>.item-info {flex:1 1 180px;min-width:0}
.library-item strong {display:block;font-size:.9rem;overflow-wrap:anywhere}
.library-item small {display:block;color:var(--muted);font-size:.73rem}
.library-item .item-actions {display:flex;flex-wrap:wrap;gap:.25rem}
.chunk-list {max-height:450px;overflow:auto}
.chunk-item {padding:1rem;border:1px solid var(--border);border-radius:12px;margin-bottom:.7rem}
.chunk-item pre {font-size:.8rem;max-height:220px;overflow:auto}




progress {width:100%;height:12px;accent-color:var(--accent);margin-bottom:.75rem}



.navigation-links {display:grid;grid-template-columns:1fr 1fr;gap:.3rem .7rem;margin-bottom:1rem}
.navigation-links a {color:var(--ink);padding:.5rem;text-decoration:none;border-bottom:1px solid var(--border)}
.locale-links {display:flex;flex-wrap:wrap;gap:.5rem}
.locale-links a {min-width:48px;min-height:48px;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;text-decoration:none}
.locale-links a[aria-current] {background:var(--subtle)}


.locale-links{border:0;margin:1.2rem 0 0;padding:0}
.locale-links legend{font-size:.85rem;margin-bottom:.5rem}

/* Panoramic marketing composition, separate from the editor. */
.bridge-home {background:var(--hero-paper)}
.bridge-hero {position:relative;isolation:isolate;background:var(--hero-paper);padding-bottom:2rem}
.hero-art {position:absolute;inset:auto 0 0;height:42%;z-index:-1;opacity:.75;pointer-events:none}
.hero-art img {width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.hero-art::after {content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--hero-paper),var(--hero-haze) 68%)}
.hero-inner {max-width:1500px;margin:auto;padding:2rem max(1.2rem,env(safe-area-inset-left)) 8rem}
.hero-copy {position:relative;z-index:1;background:var(--hero-paper);border-radius:0 16px 16px 0;padding-right:.75rem}
.hero-copy .eyebrow {display:flex;align-items:center;gap:.5rem;font-size:.62rem;letter-spacing:.15em}
.signal-dot {display:block;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #9974c421}
.hero-copy h1 {font:400 clamp(2.45rem,6.5vw,4.35rem)/1.06 Georgia,"Times New Roman",serif;letter-spacing:-.055em;max-width:700px;margin-bottom:1.25rem}
.hero-verbs {font-size:1rem;font-weight:550;letter-spacing:-.02em;margin-bottom:.8rem}
.hero-description {color:var(--muted);font-size:.95rem;max-width:55ch;line-height:1.75;margin-bottom:1.5rem}
.hero-actions {display:flex;flex-direction:column;gap:.65rem;max-width:540px}
.hero-actions .button {min-height:52px;padding:.8rem 1.3rem;font-size:.84rem}
.hero-footnote {display:flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.68rem;margin-top:1rem;flex-wrap:wrap}
.hero-footnote svg {width:14px;height:14px}
.hero-aside {display:none}
.product-section {position:relative;max-width:1530px;margin:-2rem auto 0;padding:0 1rem 1.5rem}
.product-section-heading {background:var(--hero-paper);padding:.15rem .5rem;border-radius:9px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.65rem;position:relative}
.product-section-heading .eyebrow {font-size:.59rem;letter-spacing:.1em;color:var(--muted);margin:0}
.product-section-heading a {display:inline-flex;align-items:center;gap:.4rem;font-size:.76rem;min-height:48px;color:var(--ink)}
.product-showcase {position:relative;display:grid;grid-template-columns:minmax(0,1fr);padding:6px;background:#131f34;border-radius:20px;box-shadow:0 0 0 1px #b2bfd0,0 20px 50px #19243f2b;min-width:0}
.showcase-sidebar {display:none}
.showcase-workspace {color:#182740;background:#f9f9fc;border-radius:14px;min-width:0;overflow:hidden}
.showcase-document-bar {display:flex;align-items:center;gap:.4rem;padding:.6rem .6rem;border-bottom:1px solid #dfe4ec;background:linear-gradient(135deg,#fff,#f2f1f8)}
.showcase-document-bar .document-symbol {color:#6c43a7;width:32px}
.showcase-document-bar .document-symbol svg {background:#e8dff2}
.showcase-document-bar strong {font-size:.73rem;line-height:1.4;font-weight:680;max-width:48ch}
.showcase-example-label {display:none;font-size:.63rem;color:#59667c;margin-left:auto}
.showcase-toolbar {display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.7rem .65rem;border-bottom:1px solid #e4e7ef}
.showcase-tabs {display:flex;gap:.3rem;font-size:.66rem;font-weight:600}
.showcase-tabs span {display:flex;align-items:center;gap:.3rem;padding:.6rem .6rem;border:1px solid #e0e4ed;border-radius:7px;background:#fff}
.showcase-tabs span.selected {color:#fff;background:#654099;border-color:#654099}
.showcase-tabs svg {width:14px;height:14px}
.showcase-profile {font-size:.6rem;color:#536077;margin-left:auto}
.showcase-devices {display:none;gap:.5rem;margin-left:.3rem;color:#665083}
.showcase-devices svg {width:15px;height:15px}
.showcase-columns {display:grid;grid-template-columns:minmax(0,1fr);padding:.6rem;gap:.7rem}
.showcase-editor,.showcase-render {min-width:0;border:1px solid #e1e5ed;border-radius:10px;background:#fff;overflow:hidden}
.showcase-panel-label {min-height:42px;display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;font-size:.73rem;font-weight:650;color:#182740;border-bottom:1px solid #e8eaf0}
.showcase-panel-label>span {margin-left:auto;color:#57647b;font-size:.6rem;font-weight:400}
.showcase-panel-label>span:not(:has(svg)) {display:none}
.showcase-panel-label svg {width:15px;height:15px}
.showcase-editor-tools {display:flex;align-items:center;gap:1rem;padding:.6rem .8rem;font-size:.72rem;color:#465772;background:#fafbff;border-bottom:1px solid #e8eaf0}
.showcase-editor-tools svg {width:13px;height:13px}
.showcase-editor pre {font:10px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;color:#223049;padding:1rem .8rem;margin:0;max-height:220px;overflow:hidden}
.showcase-editor-foot {display:flex;align-items:center;gap:.4rem;padding:.7rem .8rem;font-size:.62rem;color:#2a614b;border-top:1px solid #edf0f5}
.showcase-editor-foot svg {width:12px;height:12px}
.sample-paper {padding:1.4rem 1.2rem;background:linear-gradient(140deg,#faf7f0,#f3f0eb);color:#252223;margin:.4rem;border:1px solid #e9e4dc;border-radius:7px;font-family:Georgia,serif}
.sample-brand {font-size:.79rem;letter-spacing:.05em;text-align:center;margin:0 0 1.5rem}
.sample-brand span {display:block;font:5px/1.8 system-ui,sans-serif;letter-spacing:.14em;color:#886731;margin-top:.3rem}
.sample-paper h2 {font:400 clamp(1.55rem,3.5vw,2.45rem)/1.06 Georgia,serif;letter-spacing:-.045em;text-align:center;margin-bottom:1rem}
.sample-paper .sample-intro {font:.73rem/1.7 system-ui,sans-serif;text-align:center;color:#697182;max-width:30ch;margin:0 auto 1.7rem}
.sample-paper h3 {font:400 1.25rem/1.15 Georgia,serif;letter-spacing:-.03em;margin:1.3rem 0 .75rem}
.sample-paper p {font-size:.75rem;line-height:1.85}
.sample-paper figure {margin:1rem 0}
.sample-paper figure img {width:100%;height:auto;display:block}
.sample-paper figcaption {font:italic .58rem/1.6 Georgia,serif;color:#646774;text-align:center;margin-top:.35rem}
.phone-showcase {display:none}
.showcase-explanation {text-align:center;color:var(--muted);font-size:.73rem;line-height:1.7;margin:1.5rem 0 0}
.showcase-action {display:flex;margin:1.25rem auto 0;max-width:330px;font-size:.8rem;background:var(--hero-paper)}
.capabilities {position:relative;max-width:none;display:grid;grid-template-columns:minmax(0,1fr);gap:1.7rem;background:linear-gradient(145deg,#152036,#242139);color:#fff;padding:2.5rem max(1.3rem,calc((100vw - 1440px)/2))}
.capabilities article {display:flex;align-items:start;gap:1rem;min-width:0}
.capability-icon {display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;background:linear-gradient(135deg,#8b61b9,#50316d);border:1px solid #af8bd133;border-radius:13px;box-shadow:0 5px 18px #0002;color:#fff}
.capability-icon svg {width:23px;height:23px}
.capabilities h2 {font-size:.9rem;line-height:1.4;letter-spacing:0;margin:.1rem 0 .25rem;font-weight:630}
.capabilities p {font-size:.75rem;line-height:1.65;color:#c2cadd;margin:0;max-width:42ch}
.closing-statement {position:relative;text-align:center;background:radial-gradient(ellipse at 85% 100%,#71548d4d,transparent 65%),#141e31;color:#fff;padding:2.3rem 1.2rem 3rem}
.closing-statement .eyebrow {color:#c0abd7;font-size:.64rem}
.closing-statement h2 {font:400 clamp(1.6rem,4vw,2.7rem)/1.18 Georgia,serif;letter-spacing:-.03em;margin:1rem auto;max-width:28ch}
.closing-statement>p:not(.eyebrow) {font-size:.85rem;color:#c6cfe0}
.closing-statement .button {background:#9b77c9;border-color:#ab8dd1;color:#0c1528;margin-top:.4rem}
/* Public information and footer */
.public-content {max-width:1240px;margin:0 auto;padding:clamp(2rem,6vw,5rem) 1.25rem}
.prose {max-width:780px}
.prose h1 {font:2.6rem/1.15 Georgia,serif;margin-bottom:1.5rem}
.prose p {color:var(--muted);font-size:1.05rem}
.error-number {font:5rem/1 Georgia,serif;color:var(--accent)}
.site-footer {background:#111b2d;color:#c4cede;padding:1.8rem max(1.25rem,env(safe-area-inset-left)) max(1.7rem,env(safe-area-inset-bottom));border-top:1px solid #364059;font-size:.75rem}
.footer-inner {max-width:1480px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:1.3rem}
.site-footer a {color:#c4cede;min-height:44px;display:inline-flex;align-items:center;text-decoration:none}
.site-footer a:hover {text-decoration:underline}
.footer-brand {font-size:1.7rem;letter-spacing:.15em;flex-direction:column;color:#fff!important}
.footer-brand span {font-size:.52rem;text-transform:uppercase;letter-spacing:.22em;margin-top:.35rem}
.footer-inner nav {display:flex;justify-content:center;gap:.3rem 1rem;flex-wrap:wrap}
.footer-credit {font-size:.72rem}
.version-badge {padding:.12rem .35rem;border:1px solid #45516b;border-radius:6px;font-size:.61rem;margin-left:.4rem}



/* Progressive composition. No device removes document functionality. */

@media(min-width:400px) {
 .brand-tagline{display:block}.brand-name{font-size:1.8rem}.brand-symbol{width:53px}
 
 .hero-actions{flex-direction:row;flex-wrap:wrap}
 .showcase-profile{display:block}.showcase-panel-label>span:not(:has(svg)){display:block}
}
@media(min-width:600px) {
 
 .header-inner{padding-left:1.5rem;padding-right:1.5rem}.brand-name{font-size:2.1rem}.brand-symbol{width:67px;height:52px}.brand-tagline{font-size:.5rem}
 .language-button{display:flex}.dialog .form-grid{grid-template-columns:1fr 1fr}.span-two{grid-column:1/-1}.dialog-body{padding:1.3rem}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
 
 .hero-inner{padding:3rem 2rem 10rem}.hero-copy h1{max-width:710px;font-size:clamp(2.8rem,6vw,4.35rem)}.hero-verbs{font-size:1.18rem}.hero-description{font-size:1rem}
 .hero-actions .button{padding:.9rem 1.4rem}.hero-art{height:65%;opacity:.65}
 .product-section{padding:0 1.5rem 2.2rem;margin-top:-4rem}.showcase-columns{grid-template-columns:1fr 1fr;gap:.8rem;padding:.8rem}.showcase-editor pre{max-height:none;min-height:400px;font-size:11px}.showcase-toolbar{padding:.9rem}.showcase-tabs{font-size:.7rem}.showcase-tabs span{padding:.65rem .75rem}.showcase-devices{display:flex}.showcase-document-bar strong{font-size:.85rem}.showcase-document-bar{padding:.8rem}.sample-paper{padding:2rem 1.4rem}.showcase-example-label{display:block}.capabilities{grid-template-columns:1fr 1fr;padding-left:2rem;padding-right:2rem;gap:2rem}.footer-inner{flex-direction:row;flex-wrap:wrap}
}
@media(min-width:900px) {
 .desktop-nav{display:flex}.hero-inner{padding:3rem 2.5rem 7rem}.hero-copy{width:60%}.hero-art{inset:0 0 0 auto;height:100%;width:66%;opacity:1}.hero-art::after{background:linear-gradient(90deg,var(--hero-paper),var(--hero-haze) 50%),linear-gradient(0deg,var(--hero-paper),var(--hero-haze) 40%)}.hero-copy h1{font-size:clamp(3rem,4.6vw,4.3rem)}.hero-description{max-width:52ch}.hero-verbs{font-size:1.1rem}.hero-actions .button{font-size:.8rem}.hero-aside{display:block;position:absolute;right:3rem;top:36%;max-width:17ch;text-transform:uppercase;color:#fff;font-size:.62rem;letter-spacing:.19em;font-weight:600;line-height:1.9;background:#111b2df2;border:1px solid #ffffff3d;border-radius:10px;padding:.72rem .82rem;box-shadow:0 8px 24px #0b132455}
 .capabilities{grid-template-columns:repeat(3,minmax(0,1fr));padding:2.7rem max(2rem,calc((100vw - 1440px)/2))}.showcase-tabs{font-size:.77rem}.showcase-columns{grid-template-columns:1.05fr 1fr}.showcase-editor pre{font-size:12px;min-height:450px;padding:1.3rem}.sample-paper h2{font-size:2.3rem}.sample-paper h3{font-size:1.45rem}
}
@media(min-width:1000px) {
 
 
 .showcase-sidebar{display:flex;flex-direction:column;min-width:0;padding:.8rem;color:#eef1fb}.product-showcase{grid-template-columns:174px minmax(0,1fr);border-radius:22px;gap:.15rem;padding:7px}.showcase-brand{font-size:1.5rem;letter-spacing:-.06em;font-weight:600;padding:.4rem .5rem 1.2rem}.showcase-new{display:flex;gap:.4rem;align-items:center;padding:.65rem .5rem;background:linear-gradient(120deg,#8057b4,#533778);border-radius:7px;font-size:.63rem;font-weight:550;margin-bottom:.8rem}.showcase-nav-item{display:flex;align-items:center;gap:.5rem;font-size:.67rem;padding:.65rem .6rem;margin:.1rem 0;border-radius:7px}.showcase-nav-item svg{width:15px;height:15px}.showcase-nav-item.selected{background:#36425a}.showcase-note{position:relative;overflow:hidden;padding:1rem .7rem 4rem;border-radius:10px;background:linear-gradient(135deg,#364156,#242d45);margin-top:auto;min-height:160px}.showcase-note h3{position:relative;font-size:.76rem;margin:0 0 .6rem;line-height:1.4;z-index:1}.showcase-note p{font-size:.65rem;line-height:1.5;color:#c4cee0;position:relative;z-index:1}.ribbon{display:block;position:absolute;left:-10%;right:-10%;bottom:-45px;height:110px;border-radius:50%;background:linear-gradient(0deg,transparent,#523b8b44,#b292e899,transparent);box-shadow:0 -3px 0 #c4a0e477;transform:rotate(-16deg)}
 .product-section{padding-right:6rem}.phone-showcase{position:absolute;right:1.5rem;bottom:6rem;display:block;width:194px;border:6px solid #182234;outline:1px solid #67758b;border-radius:28px;padding:1.9rem .7rem .5rem;color:#17243d;background:#fafbff;box-shadow:0 15px 36px #0d172b59;transform:rotate(1.5deg)}.phone-sensor{position:absolute;left:30%;top:0;width:40%;height:11px;background:#182234;border-radius:0 0 10px 10px}.phone-top{display:flex;justify-content:space-between;align-items:center;padding:0 0 .7rem;font-size:.85rem}.phone-top svg{width:14px;height:14px}.phone-showcase h3{font-size:.8rem;margin:.6rem 0;line-height:1.4}.phone-tabs{display:flex;gap:.2rem;padding:.4rem 0;font-size:.55rem}.phone-tabs span{padding:.35rem .55rem;border:1px solid #d9deed;border-radius:5px}.phone-tabs span:first-child{background:#664197;color:#fff}.phone-showcase pre{font:8px/1.75 monospace;max-height:160px;overflow:hidden;padding:.4rem}.phone-paper{padding:.6rem;background:#f2ece5;border-radius:6px}.phone-paper h4{font:1rem/1.2 Georgia,serif;margin:0 0 .5rem}.phone-paper img{display:block;border-radius:3px}.phone-nav{display:flex;justify-content:space-around;align-items:center;padding:.75rem 0 .25rem;color:#6b4795}.phone-nav svg{width:14px;height:14px}
}
@media(min-width:1200px) {
 
 
 
 
 
 
 .mobile-work-nav{display:none}.header-inner{padding-left:2.1rem;padding-right:2.1rem}.hero-inner{padding:3.2rem 3rem 7rem}.hero-copy{width:61%;max-width:740px}.hero-copy h1{font-size:4.2rem}.hero-art{width:62%}.hero-aside{right:4rem}.product-section{padding-left:2.3rem;padding-right:8rem;margin-top:-3.8rem}.showcase-columns{padding:.8rem}.showcase-editor pre{font-size:12px;min-height:475px}.showcase-document-bar{min-height:66px}.phone-showcase{width:220px;right:2rem}.showcase-profile{font-size:.7rem}.showcase-action{background:var(--surface);margin-top:1.7rem}.capabilities{gap:2.5rem}
}
@media(min-width:1500px) {
 .hero-art{width:60%}.hero-copy h1{font-size:4.55rem}.showcase-editor pre{font-size:13px}.product-showcase{grid-template-columns:195px minmax(0,1fr)}.capabilities{grid-template-columns:repeat(6,minmax(0,1fr));gap:1.4rem}.capabilities article{gap:.7rem}.capability-icon{width:40px;height:44px}.capabilities h2{font-size:.77rem}.capabilities p{font-size:.65rem}
}
@media(prefers-reduced-motion:reduce) {html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print {.site-header,.site-footer,.workspace-sidebar,.mobile-work-nav,.workspace-toolbar,.document-bar,.source-panel,.preview-tools,.candidate-note,.mobile-jumps{display:none}}

/* C2 shared brand, compact panorama and document lifecycle controls. */
.brand-lockup {display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:48px;text-decoration:none;color:var(--ink);gap:0;flex-shrink:0;max-width:100%}
.brand-lockup .brand-logo-pair {display:block;width:151px;max-width:100%;line-height:0;margin:0;padding:0}
.brand-lockup .brand-symbol {display:block;width:100%;height:auto;max-height:none;object-fit:contain;margin:0;padding:0}
.brand-lockup .logo-on-dark {display:none}
[data-theme=dark] .brand-lockup[data-surface=auto] .logo-on-light,.brand-lockup[data-surface=dark] .logo-on-light {display:none}
[data-theme=dark] .brand-lockup[data-surface=auto] .logo-on-dark,.brand-lockup[data-surface=dark] .logo-on-dark {display:block}
.brand-lockup .brand-tagline {display:block;font:600 .44rem/1.8 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;margin:.1rem 0 0;padding-left:35px;color:inherit;white-space:nowrap}
.brand-lockup[data-surface=dark] {color:#eeeafa}
.site-footer .brand-lockup {align-items:flex-start;font-size:inherit}
.site-footer .brand-logo-pair {width:190px}
.site-footer .brand-tagline {padding-left:44px;letter-spacing:.12em;font-size:.52rem}























#workspace-outline {max-height:240px;overflow:auto;padding:.25rem;display:flex;flex-direction:column;align-items:stretch;gap:.1rem}
.outline-entry {text-align:left;justify-content:flex-start;border:0;border-radius:7px;padding:.65rem .7rem;font-size:.8rem;min-height:48px;background:transparent;color:var(--ink);line-height:1.45}
.outline-entry:hover {background:var(--subtle)}.outline-entry.depth-3 {padding-left:1.6rem;font-size:.76rem}

.export-description {padding:1rem;border:1px solid var(--border);border-radius:10px;background:var(--subtle);margin-top:1rem}
.export-filename {font:600 .85rem/1.6 ui-monospace,monospace;overflow-wrap:anywhere}
.method-card {padding:1.2rem;margin:1.4rem 0;border:1px solid var(--border);border-radius:14px;background:linear-gradient(120deg,var(--subtle),var(--surface))}
.method-card h3 {font:500 1.45rem/1.3 Georgia,serif;margin:0 0 .7rem}
.method-card a {display:inline-flex;align-items:center;gap:.5rem;min-height:48px;font-size:.9rem}
/* The reader is in flow: no extra fixed bar conceals mobile editing controls. */





















/* Three readable editorial zones, not one undifferentiated paragraph. */
.story-page {max-width:1180px}
.story-header {padding:1.8rem 0;border-bottom:1px solid var(--border);margin-bottom:1.4rem}
.story-header h1 {font:400 clamp(2rem,5vw,3.8rem)/1.13 Georgia,serif;letter-spacing:-.04em}
.story-header>p:last-child {color:var(--muted);max-width:64ch}
.story-zones {display:grid;grid-template-columns:minmax(0,1fr);gap:1.15rem;margin-bottom:2rem}
.story-zone {padding:1.4rem;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);min-width:0}
.story-index {display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--subtle);border-radius:50%;font-size:.75rem;font-weight:700;color:var(--accent);margin-bottom:1rem}
.story-zone h2 {font:500 1.55rem/1.2 Georgia,serif;margin:0 0 1rem}
.story-zone p {font-size:.98rem;line-height:1.85;color:var(--muted)}
/* Product examples and editorial ecosystem cards, never inside document output. */
.starter-section,.ecosystem-section {max-width:1370px;margin:3rem auto;padding:0 1rem}
.starter-section>h2,.ecosystem-heading h2 {font:400 clamp(1.8rem,4vw,3rem)/1.2 Georgia,serif;margin:0 0 1rem;letter-spacing:-.03em}
.starter-grid,.ecosystem-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.starter-card {border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:1.4rem;min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.starter-symbol {display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:var(--accent);background:var(--subtle)}
.starter-card h3 {font-size:1.13rem;margin:.8rem 0 .6rem}.starter-card p {font-size:.9rem;color:var(--muted);flex:1;margin-bottom:1.1rem}
.starter-article {border-top:3px solid #ff2e7a}.starter-note {border-top:3px solid #6c43a7}.starter-galerie {border-top:3px solid #d4af37}
.ecosystem-heading {max-width:720px;margin:0 0 1.5rem}.ecosystem-heading p {color:var(--muted);font-size:.92rem}
.ecosystem-card {position:relative;isolation:isolate;overflow:hidden;min-width:0;border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:1.4rem;display:flex;flex-direction:column;align-items:flex-start}
.ecosystem-art {height:100px;position:absolute;inset:0 0 auto;z-index:-1;overflow:hidden;background:linear-gradient(135deg,#242a46,#564075 65%,#d3b9bf)}
.ecosystem-orbit {position:absolute;left:40%;bottom:-65px;width:80%;height:180px;border:1px solid #e7d3e7;border-radius:50%;box-shadow:0 -10px 24px #dec3e733;transform:rotate(-18deg)}
.ecosystem-logo {display:flex;align-items:center;justify-content:center;height:68px;min-width:105px;max-width:220px;padding:12px 15px;border-radius:12px;box-shadow:0 3px 12px #1112;margin-top:26px;margin-bottom:1rem;background:#fff}
.ecosystem-logo.on-dark {background:#1b2240}.ecosystem-logo img {max-width:170px;max-height:44px;width:auto;height:auto;object-fit:contain}
.ecosystem-text-logo {font:750 1.25rem/1.2 system-ui,sans-serif;color:#182740}
.ecosystem-card h3 {margin:0 0 .6rem;font-size:1.1rem}.ecosystem-card p {font-size:.9rem;color:var(--muted);flex:1}.ecosystem-card>a {display:flex;align-items:center;gap:.5rem;min-height:48px;font-size:.85rem;font-weight:650}
.ecosystem-more {margin-top:1rem}.ecosystem-more summary {font-size:.92rem}
.sample-paper {background:#0f0f0f;color:#edece7}.sample-paper .sample-brand {color:#fff;border-color:#857025}.sample-paper .sample-brand span {color:#d4af37}.sample-paper h2,.sample-paper h3 {color:#fff}.sample-paper .sample-intro,.sample-paper p,.sample-paper figcaption {color:#cfceca}
.phone-paper {background:#101010;color:#eee}.phone-paper h4 {color:#eee}
@media (min-width:640px) {.brand-lockup .brand-logo-pair{width:202px}.brand-lockup .brand-tagline{padding-left:47px;font-size:.52rem}.starter-grid,.ecosystem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.story-zones{grid-template-columns:minmax(0,1fr)}.story-zone{padding:1.8rem}}
@media (min-width:1000px) {.starter-grid,.ecosystem-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.story-zones{grid-template-columns:repeat(3,minmax(0,1fr))}.story-zone h2{font-size:1.7rem}}
@media (max-width:430px) {.story-zone{padding:1.15rem}}
@media (prefers-reduced-motion:reduce) {.document-reading-follow{scroll-behavior:auto}}


/* Keep the shared lockup legible in the compact sidebar, too. */

@media print{.site-header,.site-footer,.reader-dock{display:none!important}}
/* Public help and discovery: narrow-first, native disclosure, no layout shift. */
.public-guide{max-width:74rem;margin-inline:auto}.public-guide .story-header{margin-bottom:2rem}
.faq-search{max-width:38rem;margin:1rem 0}.faq-categories,.guide-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.4rem 0}
.faq-group{scroll-margin-top:6rem;margin:2rem 0}.faq-group h2{font-size:1.35rem}.faq-item{border:1px solid var(--border,#d6dbeb);border-radius:1rem;margin:.65rem 0;background:var(--surface,#fff);scroll-margin-top:6rem}
.faq-item summary{cursor:pointer;padding:1.15rem;font-weight:650;min-height:48px}.faq-item[open] summary{border-bottom:1px solid var(--border,#d6dbeb)}.faq-answer{padding:.5rem 1.3rem 1.3rem;line-height:1.8;max-width:78ch}.faq-permalink{display:inline-flex;min-height:48px;align-items:center}.faq-item:target{outline:2px solid var(--accent,#7040af);outline-offset:3px}
.public-route-grid,.guide-sections{display:grid;gap:1rem}.public-route-grid section,.guide-sections section{background:var(--surface,#fff);padding:1.4rem;border:1px solid var(--border,#d6dbeb);border-radius:1.2rem;line-height:1.8}.public-route-grid h2,.guide-sections h2{font-size:1.25rem}.public-guide [hidden]{display:none!important}
@media(min-width:850px){.public-route-grid{grid-template-columns:1fr 1fr}}

/* 1.8.3: public help and storage stay narrow-first, controls remain touchable. */
#storage-restore-preview{max-height:16rem;overflow:auto}#storage-dialog .dialog-actions{flex-wrap:wrap}#storage-dialog .button{white-space:normal;text-align:center;min-height:48px}#storage-dialog input[type=file]{max-width:100%;min-width:0}
.ecosystem-mention{display:grid;grid-template-columns:1fr;gap:.8rem;padding:1rem;margin:1rem 0;border:1px solid var(--border,#d7dceb);border-radius:16px;background:var(--surface);min-width:0}.ecosystem-mention p{margin:.2rem 0 .5rem;line-height:1.55}.ecosystem-mention a{font-weight:700;display:inline-flex;align-items:center;gap:.5rem}.mention-logo{width:128px;height:64px;padding:10px;border:1px solid #e0ddea;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mention-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.mention-logo.on-dark{background:#15213a;color:#fff}.mention-logo.on-light{background:#fff;color:#171526}.eco-rotator{border:1px solid #cfc8e4;border-radius:18px;overflow:hidden;background:#fff;color:#19253a;max-width:30rem;margin:1.2rem auto;isolation:isolate}.eco-label{font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:1rem 1rem .65rem;margin:0;color:#665282}.eco-slides{min-height:295px}.eco-slide{padding:0 1rem 1rem;position:relative;animation:eco-reveal 160ms ease-out}.eco-slide[hidden]{display:none!important}.eco-banner{height:62px;border-radius:12px;background:linear-gradient(125deg,rgba(12,25,51,.5),rgba(98,58,155,.2)),url("../img/bridge-hero-480.webp") center 48%/cover;margin-bottom:-20px;position:relative;z-index:-1}.eco-slide .mention-logo{margin-left:.6rem;position:relative;box-shadow:0 6px 16px #13213a15}.eco-slide h3{font-size:1.05rem;margin:.7rem 0 .4rem;font-family:system-ui,sans-serif;color:#172338}.eco-slide p{font-size:.87rem;line-height:1.55;margin:0 0 .65rem;color:#505970;min-height:4rem}.eco-slide a{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;color:#654098;font-weight:700;font-size:.83rem}.eco-controls{display:flex;gap:.3rem;align-items:center;justify-content:space-between;padding:.5rem;border-top:1px solid #dfdaeb;background:#f8f6fc}.eco-controls button{border:1px solid #dfdaeb;border-radius:9px;background:#fff;min-width:48px;min-height:48px;color:#423456;font:inherit;font-size:.8rem;padding:.4rem .6rem;cursor:pointer}.eco-controls button:focus-visible{outline:3px solid #6943ac;outline-offset:2px}.eco-mobile{padding:1rem;max-width:44rem;margin:auto}
@keyframes eco-reveal{from{opacity:.4}to{opacity:1}}@media(prefers-reduced-motion:reduce){.eco-slide{animation:none}}@media(min-width:540px){.ecosystem-mention{grid-template-columns:128px minmax(0,1fr);align-items:center}}@media(min-width:1200px){.eco-mobile{display:none}}

/* 1.8.4: persistent guidance, real labels, roomy mobile controls. */




















#reader-dock-title{scroll-margin-block-start:1.5rem}
#reader-intro{font-size:.92rem;margin:1rem 0;line-height:1.6}

@media(prefers-reduced-motion:reduce){#reader-dock{scroll-behavior:auto}}



#reader-dock select{font-size:1rem}




/* 1.8.5: public trust, legal, pricing and contact surfaces. */
.public-section-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin:1.5rem 0 2rem}
.public-section-card{min-width:0;border:1px solid var(--border,#d6dbeb);border-radius:1.2rem;background:var(--surface,#fff);padding:1.25rem;box-shadow:0 10px 34px rgba(17,30,55,.045)}
.public-section-card h2{font-size:1.2rem;margin:0 0 .65rem;overflow-wrap:anywhere}.public-section-card p{margin:0;line-height:1.75;color:var(--muted,#566077)}
.public-actions{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin:1.5rem 0}.public-actions .button{min-height:48px;white-space:normal;text-align:center}
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin:1.5rem 0 2rem}.contact-card{min-width:0;border:1px solid var(--border,#d6dbeb);border-radius:1.25rem;background:var(--surface,#fff);padding:1rem;display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;overflow:hidden}.contact-card h2,.contact-card p{margin:0}.contact-card .ecosystem-mention{width:100%;margin:0}.contact-card .button{min-height:48px;white-space:normal;text-align:center}.contact-brand{width:100%;min-height:9rem;border-radius:1rem;background:#0b0b0d;display:flex;align-items:center;justify-content:center;overflow:hidden}.contact-brand img{display:block;width:100%;height:auto;max-height:16rem;object-fit:contain}.authority-link{min-height:44px;display:inline-flex;align-items:center;gap:.45rem;font-weight:700;overflow-wrap:anywhere}.compact-contact{max-width:38rem}
.footer-groups{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;width:100%}.footer-nav-group{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;min-width:0}.footer-nav-group strong{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--footer-heading,#fff)}.footer-nav-group a{min-height:36px;display:inline-flex;align-items:center;color:inherit;overflow-wrap:anywhere}.footer-nav-group a:focus-visible{outline:3px solid currentColor;outline-offset:3px}
@media(min-width:680px){.public-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-groups{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.public-page-pricing .public-section-grid,.public-page-contact .public-section-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.public-page-legal .public-section-grid,.public-page-security .public-section-grid,.public-page-transparency .public-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 1.8.5 C3: compact premium footer with brand links and theme-aware bridge. */
.site-footer{position:relative;isolation:isolate;overflow:hidden;padding:1.1rem max(1rem,env(safe-area-inset-left)) max(1rem,env(safe-area-inset-bottom));background:linear-gradient(180deg,#f8f9fd 0%,#edf1f8 100%);border-top:1px solid #d9dfeb;color:#344159}
.site-footer::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 82% 100%,#7a54b515 0,transparent 35%),linear-gradient(180deg,#ffffff52,transparent 55%);pointer-events:none}
.site-footer::after{content:"";position:absolute;z-index:-1;right:0;bottom:-1.35rem;width:min(42vw,520px);height:250px;background:url("../img/iapont-bridge.svg") right bottom/contain no-repeat;opacity:.16;filter:saturate(.72);pointer-events:none}
.footer-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:1.05rem;max-width:1380px;margin:0 auto}
.footer-brand-block{display:flex;flex-direction:column;align-items:flex-start;gap:.42rem;min-width:0;max-width:420px}
.site-footer .footer-brand{min-height:0;padding:0}
.site-footer .brand-logo-pair{width:164px}
.site-footer .brand-tagline{padding-left:38px;margin-top:.15rem;font-size:.47rem;letter-spacing:.14em;color:#55637a}
.footer-brand-copy{max-width:34ch;margin:.28rem 0 .15rem;color:#55637a;font-size:.76rem;line-height:1.55}
.footer-socials{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .65rem;margin:.08rem 0 .12rem}
.footer-social-link{min-height:44px!important;display:inline-flex!important;align-items:center;gap:.45rem;padding:.22rem .28rem .22rem .12rem;border-radius:10px;color:#24324a!important;font-size:.75rem!important;font-weight:600;text-decoration:none!important;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.footer-social-link:hover{background:#ffffff99;color:#111b2d!important;transform:translateY(-1px)}
.footer-social-mark{width:32px;height:32px;object-fit:contain;display:block;border-radius:8px;box-shadow:0 2px 8px #111b2d18}
.footer-myproid-mark{background:#151922}
.footer-external{font-size:.74rem;opacity:.62}
.footer-credit{min-height:36px!important;font-size:.68rem;color:#536078!important;opacity:1}
.footer-credit::after{content:"↗";margin-left:.35rem;font-size:.72rem;opacity:.7}
.footer-groups{display:grid;grid-template-columns:minmax(0,1fr);gap:.65rem 1.2rem;width:100%}
.footer-nav-group{gap:0;justify-content:flex-start}
.footer-nav-group strong{margin-bottom:.22rem;font-size:.65rem;letter-spacing:.14em;color:#1c2940}
.footer-nav-group a{min-height:44px;padding:0;font-size:.72rem;line-height:1.3;color:#42516a;transition:color .18s ease,transform .18s ease}
.footer-nav-group a:hover{color:#151f33;text-decoration:none;transform:translateX(2px)}
.footer-nav-group a:focus-visible,.footer-social-link:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:6px}
:root[data-theme=dark] .site-footer{background:linear-gradient(180deg,#111b2d 0%,#0b1525 100%);border-top-color:#2c3850;color:#c4cede}
:root[data-theme=dark] .site-footer::before{background:radial-gradient(circle at 82% 100%,#7252b526 0,transparent 38%),linear-gradient(180deg,#18274255,transparent 56%)}
:root[data-theme=dark] .site-footer::after{opacity:.22;filter:saturate(.85) brightness(.86)}
:root[data-theme=dark] .site-footer .brand-tagline{color:#aeb9cc}
:root[data-theme=dark] .footer-brand-copy{color:#a8b4c8}
:root[data-theme=dark] .footer-social-link{color:#dce4f1!important}
:root[data-theme=dark] .footer-social-link:hover{background:#ffffff0d;color:#fff!important}
:root[data-theme=dark] .footer-credit{color:#96a5bc!important}
:root[data-theme=dark] .footer-nav-group strong{color:#f6f8fc}
:root[data-theme=dark] .footer-nav-group a{color:#b7c2d4}
:root[data-theme=dark] .footer-nav-group a:hover{color:#fff}
@media(min-width:360px){.footer-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-nav-group:nth-child(1){grid-column:1;grid-row:1}.footer-nav-group:nth-child(3){grid-column:2;grid-row:1}.footer-nav-group:nth-child(2){grid-column:1 / -1;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;column-gap:1rem;row-gap:0}.footer-nav-group:nth-child(2)>strong{grid-column:1 / -1}}
@media(min-width:900px){.site-footer{padding-top:1.35rem;padding-bottom:1.2rem}.footer-inner{grid-template-columns:minmax(280px,.95fr) minmax(0,2.3fr);gap:2.3rem}.footer-brand-block{grid-column:1}.footer-groups{grid-column:2;grid-template-columns:minmax(135px,.75fr) minmax(330px,1.8fr) minmax(135px,.75fr);gap:1.7rem}.footer-nav-group:nth-child(1),.footer-nav-group:nth-child(2),.footer-nav-group:nth-child(3){grid-column:auto;grid-row:auto}.footer-nav-group:nth-child(2){grid-template-columns:repeat(2,minmax(0,1fr));display:grid;column-gap:1.15rem;row-gap:0}.footer-nav-group:nth-child(2)>strong{grid-column:1 / -1}}
@media(prefers-reduced-motion:reduce){.footer-nav-group a,.footer-social-link{transition:none}.footer-nav-group a:hover,.footer-social-link:hover{transform:none}}

/* 1.8.7: mobile-first tool navigation. */
.navigation-dialog{width:min(620px,calc(100vw - 1.25rem))}
.navigation-dialog-body{padding:.9rem}
.navigation-tools{grid-template-columns:minmax(0,1fr);gap:.58rem;margin:0}
.navigation-tools .navigation-tool{min-height:58px;padding:.68rem .78rem;border:1px solid var(--border);border-radius:14px;background:var(--raised);display:flex;align-items:center;gap:.72rem;color:var(--ink);text-decoration:none;transition:border-color .16s ease,background-color .16s ease,transform .16s ease,box-shadow .16s ease}
.navigation-tools .navigation-tool:hover{border-color:var(--accent);background:var(--subtle);transform:translateY(-1px)}
.navigation-tools .navigation-tool:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.navigation-tools .navigation-tool.is-primary{min-height:62px;border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:linear-gradient(135deg,var(--subtle),var(--surface));box-shadow:0 8px 24px #11192a0b}
.navigation-tool-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:11px;background:var(--subtle);color:var(--accent)}
.navigation-tool.is-primary .navigation-tool-icon{background:var(--accent);color:var(--surface)}
.navigation-tool-icon .icon{width:19px;height:19px}
.navigation-tool-label{min-width:0;flex:1;font-size:.92rem;font-weight:680;line-height:1.25;overflow-wrap:normal;word-break:normal}
.navigation-tool-arrow{display:grid;place-items:center;flex:0 0 22px;color:var(--muted)}
.navigation-tool-arrow .icon{width:17px;height:17px}
.navigation-preferences{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}
.navigation-dialog .navigation-theme{margin:0}
.navigation-dialog .navigation-theme select{min-height:50px}
.navigation-dialog .locale-links{margin:0;align-content:start}
.navigation-dialog .locale-links legend{font-weight:550}
.navigation-dialog .locale-links a{background:var(--surface)}
.navigation-dialog .locale-links a:hover{border-color:var(--accent);background:var(--subtle)}
@media(min-width:560px){.navigation-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.navigation-tools .navigation-tool{min-height:62px}.navigation-tools .navigation-tool:first-child{grid-column:1 / -1}.navigation-tools .navigation-tool.is-primary{min-height:68px}.navigation-preferences{grid-template-columns:minmax(180px,.8fr) minmax(280px,1.2fr);align-items:end}.navigation-dialog .locale-links{justify-content:flex-end}.navigation-dialog .locale-links legend{width:100%;text-align:left}}
@media(prefers-reduced-motion:reduce){.navigation-tools .navigation-tool{transition:none}.navigation-tools .navigation-tool:hover{transform:none}}


/* 1.8.8: SEO/GEO resource discovery, mobile-first and content-first. */
.resource-section{max-width:1370px;margin:3rem auto;padding:0 1rem}.resource-section>h2{font:400 clamp(1.8rem,4vw,3rem)/1.2 Georgia,serif;margin:0 0 .7rem;letter-spacing:-.03em}.resource-lead{max-width:68ch;color:var(--muted);line-height:1.7;margin:0 0 1.2rem}.resource-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.85rem}.resource-grid article{min-width:0;padding:1.1rem 1.15rem;border:1px solid var(--border);border-radius:1rem;background:var(--surface);box-shadow:0 8px 26px #11192a08}.resource-grid h3{font-size:1rem;line-height:1.35;margin:0 0 .45rem}.resource-grid h3 a{color:var(--ink);text-decoration:none}.resource-grid h3 a:hover{text-decoration:underline}.resource-grid p{color:var(--muted);font-size:.8rem;line-height:1.65;margin:0 0 .7rem}.resource-link,.faq-context-link a{display:inline-flex;align-items:center;gap:.35rem;min-height:44px;color:var(--accent);font-weight:650;text-decoration:none}.resource-link:hover,.faq-context-link a:hover{text-decoration:underline}.resource-link .icon,.faq-context-link .icon{width:16px;height:16px}.story-tagline{font-weight:650;color:var(--ink)!important;margin:.35rem 0 .65rem}.related-resources{margin:2.2rem 0}.related-resources>h2{font:400 clamp(1.55rem,3vw,2.25rem)/1.2 Georgia,serif;letter-spacing:-.025em;margin:.45rem 0 1rem}.related-resources .public-route-grid h3{font-size:1.05rem;margin:0 0 .45rem}.related-resources .public-route-grid h3 a{color:var(--ink);text-decoration:none}.related-resources .public-route-grid h3 a:hover{text-decoration:underline}.faq-context-link{margin:.6rem 0 0}
@media(min-width:640px){.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1000px){.resource-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.resource-grid article{padding:1.2rem}}
/* 1.8.8 accessibility: keep public-resource grids and the header usable with enlarged text. */
.header-brand{flex:1 1 auto;min-width:0}
.header-brand .brand-tagline{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.public-route-grid{grid-template-columns:minmax(0,1fr);min-width:0}
.public-route-grid>section{min-width:0;overflow-wrap:anywhere}
@media(min-width:850px){.public-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.public-section-card{overflow-wrap:anywhere}
.footer-nav-group strong{overflow-wrap:anywhere}
@media(min-width:360px) and (max-width:899px){
 .footer-groups{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}
 .footer-nav-group:nth-child(1){grid-column:auto;grid-row:auto;order:1}
 .footer-nav-group:nth-child(3){grid-column:auto;grid-row:auto;order:2}
 .footer-nav-group:nth-child(2){grid-column:1/-1;grid-row:auto;order:3}
}
