.architect-wrap { width:90%; max-width:1000px; margin-inline:auto; min-width:0; }
.architect-page .feature-hero { padding-block:4.5rem 3.5rem; }
.architect-page .feature-hero-inner { grid-template-columns:1fr 1fr; gap:3.5rem; }
.architect-page .feature-intro h1 { font-size:clamp(2.5rem,4vw,3.5rem); text-wrap:balance; }
.architect-page .feature-eyebrow { letter-spacing:.1em; text-transform:uppercase; font-size:.8rem; }
.architect-page .feature-description { font-size:1.025rem; }
.architect-page .mcp-hero-actions { flex-wrap:wrap; gap:1rem 1.5rem; }
.architect-media { margin:0; min-width:0; }
.architect-capture { overflow:hidden; border:1px solid #344155; border-radius:10px; background:#202938; }
.architect-capture--pair { display:grid; grid-template-columns:420fr 320fr; }
.architect-capture a { display:block; min-width:0; line-height:0; }
.architect-capture img { display:block; width:100%; height:auto; }
.architect-capture--pair a+a { border-inline-start:1px solid #344155; }
.architect-capability { scroll-margin-top:90px; }
.architect-media figcaption { font-size:.78rem; line-height:1.65; color:var(--col-darkfore3); margin-top:.8rem; }
.architect-toc { position:static; top:auto; z-index:auto; background:none; backdrop-filter:none; box-shadow:none; padding-inline:0; display:flex; align-items:center; flex-wrap:wrap; gap:.75rem 1.75rem; padding-block:1.2rem; border-block:1px solid #29364a; font-size:.8rem; }
.architect-toc span { color:var(--col-darkfore3); margin-inline-end:auto; }
.architect-toc a { color:var(--col-darkfore2); text-decoration:none; }
.architect-toc a:hover { color:var(--col-lightaccent2); }
.architect-section { padding-inline:0; padding-block:3.5rem; border-bottom:1px solid #29364a; scroll-margin-top:90px; }
.architect-intro { max-width:760px; }
.architect-content h2 { text-align:start; text-wrap:balance; }
.architect-content h3 { font-family:var(--sofiasans); color:var(--col-darkfore1); font-size:1.45rem; line-height:1.3; margin-bottom:1rem; text-wrap:balance; }
.architect-content p { color:var(--col-darkfore2); font-size:.95rem; }
.architect-content p+p { margin-top:1rem; }
.architect-content a { color:var(--col-lightaccent2); text-decoration:underline; text-underline-offset:.2em; }
.architect-capabilities { margin-top:2.5rem; }
.architect-capability { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:3.5rem; padding-block:2.5rem; border-top:1px solid #29364a; }
.architect-capability:last-child { padding-bottom:0; }
.architect-capability:nth-child(even) .architect-capability-copy { order:2; }
.architect-capability h3 { max-width:27ch; }
.architect-doc-link { display:inline-block; margin-top:1rem; font-size:.85rem; }
.architect-prompt-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:3.5rem; margin-top:2rem; align-items:start; }
.architect-prompt-guide { list-style:none; counter-reset:prompt; padding:0; margin:0; }
.architect-prompt-guide li { display:flex; gap:1rem; padding-block:1.15rem; border-top:1px solid #29364a; counter-increment:prompt; }
.architect-prompt-guide li::before { content:counter(prompt,decimal-leading-zero); font-size:.8rem; color:var(--col-lightaccent2); padding-top:.2rem; }
.architect-prompt-guide h3 { font-size:1.15rem; margin-bottom:.4rem; }
.architect-prompt-guide p { font-size:.875rem; }
.architect-example { border:1px solid #344660; border-radius:10px; padding:1.5rem 1.75rem; background:#141f30; }
.architect-page p.architect-label { font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; color:var(--col-darkfore3); margin:0 0 .85rem; }
.architect-example blockquote { margin:0; padding:0; font-size:.95rem; line-height:1.8; color:var(--col-darkfore1); }
.architect-followup { margin-top:1.4rem; padding-top:1.2rem; border-top:1px solid #344660; }
.architect-followup q { display:block; font-size:.9rem; line-height:1.75; color:var(--col-darkfore1); }
.architect-page .architect-small { font-size:.8rem; color:var(--col-darkfore3); }
.architect-example .architect-small { margin-top:1rem; }
.architect-uses { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2.5rem; margin-block:2rem 1.5rem; }
.architect-uses article { padding-top:1.5rem; border-top:1px solid #344660; }
.architect-uses h3 { font-size:1.2rem; }
.architect-uses p { font-size:.9rem; }
.architect-export-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr); gap:3.5rem; align-items:start; }
.architect-export-grid aside { border-inline-start:1px solid #344660; padding-inline-start:2rem; }
.architect-export-grid aside h3 { font-size:1.2rem; }
.architect-formats { padding:0; list-style:none; display:flex; gap:.6rem; flex-wrap:wrap; margin-top:1.5rem; }
.architect-formats li { border:1px solid #344660; padding:.35rem .6rem; border-radius:5px; font-size:.75rem; color:var(--col-darkfore2); }
.architect-reading { max-width:800px; }
.architect-content .mcp-details { margin:0; border-radius:0; border:0; border-bottom:1px solid #29364a; background:none; padding:1.25rem 0; }
.architect-content .mcp-details summary { line-height:1.6; }
.architect-content .mcp-details[open] summary { margin-bottom:1rem; }
.architect-content .mcp-details p { max-width:720px; }
.architect-content .feature-related { padding-inline:0; padding-block:3rem 4rem; }
.architect-content .feature-related a { text-decoration:none; font-size:.95rem; }
@media(max-width:760px) {
 .architect-page .feature-hero { padding-block:2.75rem; }
 .architect-page .feature-hero-inner,.architect-capability,.architect-prompt-grid,.architect-export-grid { grid-template-columns:1fr; gap:1.75rem; }
 .architect-page .feature-intro h1 { font-size:2.6rem; }
 .architect-media { width:100%; max-width:440px; margin-inline:auto; }
 .architect-toc { gap:.75rem 1.25rem; }
 .architect-toc span { flex-basis:100%; }
 .architect-section { padding-block:2.5rem; }
 .architect-capability { padding-block:2rem; }
 .architect-capability:nth-child(even) .architect-capability-copy { order:initial; }
 .architect-prompt-grid { margin-top:1.5rem; }
 .architect-example { padding:1.4rem; }
 .architect-uses { grid-template-columns:1fr; gap:1.25rem; }
 .architect-uses article { padding-top:1.25rem; }
 .architect-uses h3 { margin-bottom:.6rem; }
 .architect-export-grid aside { border-inline-start:0; border-top:1px solid #344660; padding-inline-start:0; padding-top:1.5rem; }
}

/* Keep captured application UI in its original left-to-right order. */
.architect-capture { direction:ltr; }
/* Avoid starting a Japanese line with a prolonged sound mark. */
html[lang="ja"] .architect-page { line-break: strict; }
