/* Scoped to the approved dark identity; inherits the site's font and palette. */
.theme-1 #architecture.architecture-story{display:block;padding-top:90px;padding-bottom:80px;background:var(--bg);border-top:1px solid var(--line);scroll-margin-top:30px}
.architecture-story .oa-heading{display:grid;grid-template-columns:1.6fr 1fr;gap:50px;align-items:end;margin-bottom:34px}
.theme-1 .architecture-story h2{font-size:clamp(34px,3.65vw,66px);line-height:1.12;letter-spacing:-.035em;text-wrap:initial}
.architecture-story .oa-heading .eyebrow{margin:0 0 18px}
.architecture-story .oa-intro p:first-child{font-size:22px;line-height:1.5;color:var(--ink);margin:0 0 12px;font-weight:600}
.architecture-story .oa-intro p:last-child{font-size:17px;line-height:1.75;margin:0;color:var(--muted)}
.architecture-story .oa-scene{position:relative;isolation:isolate;margin:0 -20px}
.architecture-story .oa-scene-labels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0 20px;position:relative;z-index:1}
.architecture-story .oa-scene-labels>span{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--muted);padding:12px 0;border-top:1px solid var(--line);transition:color .2s,border-color .2s}
.architecture-story .oa-scene-labels b{font-size:11px;font-weight:500;letter-spacing:.08em;color:var(--accent)}
.architecture-story [data-stage="0"] [data-scene-label="0"],.architecture-story [data-stage="1"] [data-scene-label="1"],.architecture-story [data-stage="2"] [data-scene-label="2"]{color:var(--ink);border-color:var(--accent)}
.architecture-story .oa-visual{height:clamp(230px,25vw,420px);background-image:url('assets/open-architecture.png');background-position:center;background-size:cover;background-repeat:no-repeat;mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 87%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 87%,transparent)}
.architecture-story .oa-backbone{display:flex;align-items:center;justify-content:center;gap:24px;margin:-10px 20px 30px;position:relative}
.architecture-story .oa-backbone>span{height:1px;background:linear-gradient(90deg,transparent,var(--accent));flex:1;opacity:.6}
.architecture-story .oa-backbone>span:last-child{transform:rotate(180deg)}
.architecture-story .oa-backbone>div{display:flex;align-items:center;gap:22px}
.architecture-story .oa-backbone img{width:148px;height:auto}
.architecture-story .oa-backbone small{font-size:10px;letter-spacing:.12em;color:var(--muted);border-left:1px solid var(--line);padding-left:22px}
.architecture-story .oa-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.architecture-story .oa-tabs button{font:inherit;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:6px;text-align:left;padding:22px 24px 24px;position:relative;transition:background .2s,border-color .2s;cursor:pointer;min-width:0}
.architecture-story .oa-tabs button:hover{background:var(--panel);filter:none}
.architecture-story .oa-tabs button[aria-selected="true"]{border-color:var(--accent);background:linear-gradient(120deg,#0b3042,var(--panel));box-shadow:inset 0 2px var(--accent)}
.architecture-story .oa-card-top{display:flex;align-items:center;gap:12px;margin-bottom:17px;color:var(--accent)}
.architecture-story .oa-number{font-size:12px;letter-spacing:.06em;color:var(--muted)}
.architecture-story .oa-card-top svg{width:24px;height:24px}
.architecture-story .oa-arrow{margin-left:auto;font-size:23px;opacity:.45}
.architecture-story [aria-selected="true"] .oa-arrow{opacity:1}
.architecture-story .oa-tabs strong{display:block;font-size:clamp(18px,1.5vw,25px);font-weight:600;line-height:1.3;letter-spacing:-.02em}
.architecture-story .oa-card-copy{display:block;font-size:15px;line-height:1.6;color:var(--muted);margin-top:9px}
.architecture-story .oa-panels{margin-top:22px;padding:26px 28px;background:var(--panel);border-left:2px solid var(--accent);border-radius:0 4px 4px 0}
.architecture-story .oa-panel:not([hidden]){display:grid;grid-template-columns:1fr 1.3fr;gap:46px;align-items:start}
.architecture-story .oa-panel[hidden]{display:none}
.architecture-story .oa-kicker{display:block;font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--accent)}
.architecture-story .oa-panel p{font-size:16px;line-height:1.7;margin:10px 0;color:var(--muted)}
.architecture-story .oa-outcome{font-size:16px;line-height:1.6;color:var(--ink);font-weight:500}
.architecture-story .oa-outcome>span{color:var(--accent)}
.architecture-story .oa-footer{display:flex;justify-content:space-between;align-items:center;gap:26px;margin-top:28px}
.architecture-story .oa-protocols{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 6px}
.architecture-story .oa-protocols i{font-style:normal;color:#4987a3;margin:0 7px}
.architecture-story .oa-note{font-size:12px;line-height:1.7;color:var(--muted);opacity:.8;margin:0}
.theme-1 .architecture-story .oa-footer .button{background:transparent;border:1px solid var(--accent);color:var(--accent);font-size:15px;padding:15px 20px;white-space:nowrap}
.architecture-story button:focus-visible,.architecture-story a:focus-visible,.architecture-story [role="tabpanel"]:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
@media(max-width:1100px){.architecture-story .oa-heading{grid-template-columns:1fr;gap:22px}.architecture-story .oa-intro{max-width:700px}.architecture-story .oa-tabs button{padding:18px}.architecture-story .oa-tabs strong{font-size:19px}.architecture-story .oa-panel:not([hidden]){gap:25px}.architecture-story .oa-footer{align-items:flex-start}}
@media(max-width:650px){
 .theme-1 #architecture.architecture-story{padding:55px 24px}
 .theme-1 .architecture-story h2{font-size:clamp(30px,7.5vw,46px)}
 .architecture-story .oa-heading{gap:20px;margin-bottom:24px}
 .architecture-story .oa-intro p:first-child{font-size:19px}.architecture-story .oa-intro p:last-child{font-size:16px}
 .architecture-story .oa-scene{margin:0 -14px}.architecture-story .oa-scene-labels{display:block;padding:0 14px}
 .architecture-story .oa-scene-labels>span{display:none}
 .architecture-story [data-stage="0"] [data-scene-label="0"],.architecture-story [data-stage="1"] [data-scene-label="1"],.architecture-story [data-stage="2"] [data-scene-label="2"]{display:flex}
 .architecture-story .oa-visual{height:240px;background-size:300% auto;transition:background-position .35s ease}
 .architecture-story [data-stage="0"] .oa-visual{background-position:left center}.architecture-story [data-stage="1"] .oa-visual{background-position:center}.architecture-story [data-stage="2"] .oa-visual{background-position:right center}
 .architecture-story .oa-backbone{margin:0 14px 25px;gap:12px}.architecture-story .oa-backbone>div{flex-direction:column;gap:10px}.architecture-story .oa-backbone img{width:130px}.architecture-story .oa-backbone small{padding:0;border:0;font-size:8px;letter-spacing:.08em}
 .architecture-story .oa-tabs{gap:7px}.architecture-story .oa-tabs button{padding:13px 10px;border-radius:4px}
 .architecture-story .oa-card-top{gap:5px;margin-bottom:12px}.architecture-story .oa-card-top svg{width:19px;height:19px}.architecture-story .oa-arrow{display:none}
 .architecture-story .oa-tabs strong{font-size:14px;line-height:1.4}.architecture-story .oa-card-copy{display:none}
 .architecture-story .oa-panels{padding:22px 20px;margin-top:15px}.architecture-story .oa-panel:not([hidden]){grid-template-columns:1fr;gap:18px}
 .architecture-story .oa-panel p{font-size:15px}.architecture-story .oa-outcome{font-size:15px}
 .architecture-story .oa-footer{flex-direction:column;gap:20px}.architecture-story .oa-protocols{font-size:11px}.architecture-story .oa-protocols i{margin:0 3px}
}
@media(prefers-reduced-motion:reduce){.architecture-story *{transition:none!important}}
