/* Shared interaction contract. These selectors deliberately outrank legacy generated CSS. */
html body .anagata-header[data-experience] { position:sticky!important; top:0!important; z-index:1000!important; overflow:visible!important; height:auto!important; max-height:none!important; isolation:isolate; }
html body .anagata-header[data-experience] .anagata-header-bar { overflow:visible!important; height:auto!important; max-height:none!important; }
html body .anagata-header[data-experience] .anagata-header-inner { display:flex!important; gap:clamp(.5rem,2vw,1.5rem)!important; min-height:72px!important; max-width:1440px; margin:auto!important; }
html body .anagata-header[data-experience] .anagata-logo { flex:0 1 auto; min-width:0; }
html body .anagata-header[data-experience] .anagata-logo img { max-width:clamp(112px,18vw,190px)!important; height:auto!important; max-height:52px!important; object-fit:contain; }
html body .anagata-header[data-experience] .anagata-mobile-toggle { display:none!important; }
html body .anagata-header[data-experience] .anagata-nav-container { display:block!important; position:static!important; transform:none!important; visibility:visible!important; opacity:1!important; pointer-events:auto!important; height:auto!important; width:auto!important; overflow:visible!important; background:transparent!important; padding:0!important; box-shadow:none!important; }
html body .anagata-header[data-experience] .anagata-nav { display:flex!important; flex-direction:row!important; flex-wrap:wrap; align-items:center; gap:clamp(.2rem,1vw,1rem); list-style:none; margin:0!important; padding:0!important; position:static!important; width:auto!important; max-width:none!important; height:auto!important; transform:none!important; overflow:visible!important; visibility:visible!important; opacity:1!important; background:transparent!important; }
html body .anagata-header[data-experience] .anagata-nav li { position:relative; list-style:none; margin:0; }
html body .anagata-header[data-experience] .anagata-nav li.has-dropdown,
html body .anagata-header[data-experience] .anagata-nav li.menu-item-has-children { display:grid; grid-template-columns:1fr 36px; align-items:center; }
html body .anagata-header[data-experience] .anagata-nav a { display:block; padding:12px 8px; white-space:normal; text-decoration:none; }
html body .anagata-header[data-experience] .anagata-nav a::after,
html body .anagata-header[data-experience] .anagata-nav a::before { content:none!important; }
html body .anagata-header[data-experience] .anagata-submenu-toggle { display:grid; place-items:center; width:36px; height:44px; border:0; border-radius:8px; background:transparent; color:inherit; cursor:pointer; padding:0; font:inherit; }
html body .anagata-header[data-experience] .anagata-submenu-toggle svg { width:16px; height:16px; transition:transform .2s; }
html body .anagata-header[data-experience] .anagata-submenu-toggle[aria-expanded=true] svg { transform:rotate(180deg); }
html body .anagata-header[data-experience] .anagata-nav ul { position:absolute!important; top:100%!important; left:0!important; right:auto!important; min-width:240px; max-width:min(340px,calc(100vw - 32px)); margin:0!important; padding:8px!important; border:1px solid var(--border,#dbe1e7); border-radius:14px; background:var(--surface,#fff)!important; box-shadow:0 16px 48px #12233724; z-index:1100; height:auto!important; max-height:none!important; transform:none!important; visibility:visible!important; opacity:1!important; pointer-events:auto!important; list-style:none; }
html body .anagata-header[data-experience] .anagata-nav ul ul { top:0!important; left:100%!important; }
html body .anagata-header[data-experience] .anagata-nav ul[data-align=end] { left:auto!important; right:0!important; }
html body .anagata-header[data-experience] .anagata-nav ul[hidden] { display:none!important; }
html body .anagata-header[data-experience] .anagata-nav ul:not([hidden]) { display:block!important; }
html body .anagata-header[data-experience] :is(a,button):focus-visible { outline:3px solid var(--primary,#176c70); outline-offset:3px; }
html body .anagata-header[data-experience] .anagata-header-cta { flex-shrink:0; }
html body .anagata-experience-overlay[hidden] { display:none!important; }
html body .anagata-experience-overlay { position:fixed; inset:0; z-index:998; border:0; background:#091a2c80; width:100%; height:100%; }
html body .anagata-mobile-overlay { display:none!important; }
@media(max-width:1100px) {
 html body .anagata-header[data-experience] .anagata-mobile-toggle { display:flex!important; margin-left:auto!important; position:relative; z-index:1101; }
 html body .anagata-header[data-experience] .anagata-header-cta { display:none!important; }
 html body .anagata-header[data-experience] .anagata-nav-container { display:none!important; }
 html body .anagata-header[data-experience][data-menu-state=open] .anagata-nav-container { display:block!important; position:absolute!important; top:100%!important; left:0!important; right:0!important; width:100%!important; padding:16px!important; max-height:calc(100dvh - var(--anagata-header-bottom,80px)); overflow-y:auto!important; overscroll-behavior:contain; background:var(--surface,#fff)!important; border-top:1px solid var(--border,#dbe1e7); box-shadow:0 24px 40px #12233724!important; box-sizing:border-box; }
 html body .anagata-header[data-experience] .anagata-nav { display:block!important; }
 html body .anagata-header[data-experience] .anagata-nav li { display:block!important; width:100%!important; float:none!important; box-sizing:border-box; }
 html body .anagata-header[data-experience] .anagata-nav>li { border-bottom:1px solid var(--border,#e2e7ec); }
 html body .anagata-header[data-experience] .anagata-nav li:has(>.anagata-submenu-toggle) { display:grid!important; grid-template-columns:minmax(0,1fr) 44px!important; }
 html body .anagata-header[data-experience] .anagata-submenu-toggle { width:44px; }
 html body .anagata-header[data-experience] .anagata-nav a { min-height:44px; padding:12px; box-sizing:border-box; }
 html body .anagata-header[data-experience] .anagata-nav ul { position:static!important; grid-column:1/-1; min-width:0!important; max-width:none!important; width:100%!important; border:0!important; box-shadow:none!important; padding:0 0 8px 16px!important; box-sizing:border-box; }
}
.anagata-articles { --article-border:var(--border,#dfe6ec); width:100%; }
.anagata-article-filters { display:flex; gap:8px; flex-wrap:wrap; margin:0 0 28px; }
.anagata-article-filters a { display:inline-flex; align-items:center; min-height:44px; padding:8px 18px; border:1px solid var(--article-border); border-radius:99px; text-decoration:none; color:var(--text-main,#172c32); background:var(--surface,#fff); }
.anagata-article-filters a[aria-current=true] { color:var(--surface,#fff); background:var(--text-main,#172c32); }
.anagata-posts { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2.5vw,32px); }
.anagata-post-card { overflow:hidden; min-width:0; border:1px solid var(--article-border); border-radius:20px; background:var(--surface,#fff); box-shadow:0 6px 24px #152b3610; }
.anagata-post-image { display:block; aspect-ratio:16/10; overflow:hidden; }
.anagata-post-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.anagata-post-card:hover .anagata-post-image img { transform:scale(1.035); }
.anagata-post-copy { padding:24px; }
.anagata-post-copy h3 { font-size:clamp(1.2rem,2vw,1.5rem); line-height:1.25; margin:12px 0; }
.anagata-post-copy a { color:inherit; text-decoration:none; }
.anagata-post-copy time { font-size:.85rem; }
.anagata-post-copy p { line-height:1.7; }
.anagata-post-read { display:inline-flex; gap:16px; align-items:center; padding:12px 0; font-weight:600; }
.anagata-articles-more { display:table; margin:24px auto 0; min-height:44px; padding:12px 24px; border:1px solid currentColor; border-radius:99px; color:var(--text-main,#172c32); text-decoration:none; }
.anagata-articles [hidden] { display:none!important; }
.anagata-articles [aria-disabled=true] { opacity:.6; cursor:wait; }
.anagata-article-status { margin:24px 0 0; }
.anagata-sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media(max-width:900px) { .anagata-posts { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .anagata-posts { grid-template-columns:minmax(0,1fr); } }
/* All content remains visible until enhancement is confirmed. No scroll hijacking. */
html body [data-anagata-scene] { perspective:1100px; position:relative; isolation:isolate; overflow:visible; }
html body :is([data-anagata-depth],[data-anagata-tilt],[data-anagata-reveal],[data-anagata-orbit]) { contain:none!important; }
html body :is([data-anagata-depth],[data-anagata-tilt]) { transform-style:preserve-3d; }
html body [data-anagata-reveal].anagata-reveal-ready { transition:opacity .75s ease,translate .75s cubic-bezier(.16,1,.3,1),scale .75s ease; }
html body [data-anagata-reveal].anagata-reveal-ready:not(.is-visible) { opacity:0; translate:0 28px; }
html body [data-anagata-reveal=left].anagata-reveal-ready:not(.is-visible) { translate:-32px 0; }
html body [data-anagata-reveal=right].anagata-reveal-ready:not(.is-visible) { translate:32px 0; }
html body [data-anagata-reveal=scale].anagata-reveal-ready:not(.is-visible) { translate:0 0; scale:.94; }
html body [data-anagata-orbit] { display:grid; place-items:center; position:relative; width:min(100%,480px); aspect-ratio:1; perspective:900px; pointer-events:none; }
.anagata-orbit-art { position:relative; width:70%; aspect-ratio:1; transform-style:preserve-3d; transform:rotateX(-18deg) rotateY(var(--orbit-angle,25deg)); }
.anagata-orbit-core { position:absolute; inset:26%; border-radius:50%; background:radial-gradient(circle at 30% 24%,#ffffffd9,var(--accent,#c1ab80) 25%,var(--primary,#176c70) 70%); box-shadow:inset -12px -16px 28px #072c3540,0 30px 55px #073b3f24; transform:translateZ(20px); }
.anagata-orbit-ring { position:absolute; inset:2%; border:2px solid color-mix(in srgb,var(--primary,#176c70) 55%,transparent); border-radius:50%; box-shadow:0 0 18px #6fb3ae1a,inset 0 0 14px #6fb3ae1a; transform:rotateX(68deg) rotateZ(20deg); }
.anagata-orbit-ring:nth-child(2) { inset:10%; transform:rotateY(65deg) rotateZ(-30deg); border-color:var(--accent,#c1ab80); }
.anagata-orbit-ring:nth-child(3) { inset:-8%; transform:rotateX(40deg) rotateY(-38deg); border-style:dashed; border-width:1px; opacity:.55; }
/* Keep the article introduction compact even if an older brief requested a full-screen hero. */
html body.anagata-article-index :is(.blog-hero,section.hero,section[class$="-hero"]) { min-height:0!important; padding-block:clamp(36px,5vw,72px)!important; }
@media(max-width:600px) {
 html body.anagata-article-index :is(.blog-hero,section.hero,section[class$="-hero"]) { padding-block:32px!important; gap:24px!important; }
 html body.anagata-article-index :is(.blog-hero,section.hero,section[class$="-hero"]) :is(figure,[data-anagata-depth]):has(img) { min-height:0!important; max-height:190px!important; }
 html body.anagata-article-index :is(.blog-hero,section.hero,section[class$="-hero"]) :has(>img) { height:190px!important; min-height:0!important; }
 html body.anagata-article-index :is(.blog-hero,section.hero,section[class$="-hero"]) img { height:190px!important; max-height:190px!important; width:100%!important; object-fit:cover!important; }
}
@media(prefers-reduced-motion:reduce) {
 html body :is([data-anagata-depth],[data-anagata-tilt]) { transform:none!important; }
 html body [data-anagata-reveal] { opacity:1!important; translate:none!important; scale:none!important; transition:none!important; }
 .anagata-post-image img { transition:none; }
}
