/* Local effect system. Palette tokens also power the WordPress preview. */
:is(html,.ac-preview-controls)[data-mode=system]{color-scheme:dark;--fc-background:#030805;--fc-surface:#09180e;--fc-text:#b7ffd0;--fc-muted:#78c78e;--fc-border:#28673d;--fc-accent:#42f58a;--fc-cta:#42f58a;--fc-cta-text:#031008}
:is(html,.ac-preview-controls)[data-mode=sunset]{color-scheme:dark;--fc-background:#241121;--fc-surface:#3b1b32;--fc-text:#fff1dc;--fc-muted:#deb2ba;--fc-border:#805269;--fc-accent:#ffb18c;--fc-cta:#ffb18c;--fc-cta-text:#241121}
:is(html,.ac-preview-controls)[data-mode=sunrise]{color-scheme:light;--fc-background:#fff1de;--fc-surface:#ffe0be;--fc-text:#352238;--fc-muted:#71516a;--fc-border:#b68b89;--fc-accent:#9d3540;--fc-cta:#9d3540;--fc-cta-text:#fff7ed}
html[data-mode=system] body{background-image:repeating-linear-gradient(0deg,transparent 0 3px,#42f58a08 3px 4px),linear-gradient(90deg,#42f58a09 1px,transparent 1px),linear-gradient(#42f58a09 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}
html:is([data-mode=system],[data-mode=sunset]) .ac-social-bubble img{filter:grayscale(1) invert(1)}html[data-mode=sunrise] .ac-social-bubble img{filter:grayscale(1)}
html:is([data-mode=system],[data-mode=sunset],[data-mode=sunrise]) .ac-mode-toggle>svg{display:none!important}
.ac-mode-symbol{display:grid;place-items:center;width:22px;height:22px;color:var(--fc-text)}.ac-mode-symbol svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.ac-mode-options{position:absolute;top:100%;right:0;min-width:14rem;z-index:125;background:var(--fc-background);color:var(--fc-text);border:1px solid var(--fc-border);padding:.5rem;display:grid;gap:.25rem}
.ac-mode-options button{text-align:left;min-height:44px;background:transparent;color:inherit;border:0;padding:.8rem}.ac-mode-options button[aria-pressed=true]{background:var(--fc-surface);outline:1px solid var(--fc-accent)}
.ac-mode-toggle{position:relative}.ac-theme-holder{position:relative;display:flex;align-items:stretch}
.ac-fx-dialog{width:min(92vw,680px);max-height:90dvh;padding:clamp(1.3rem,4vw,2.5rem);overflow:auto;background:var(--fc-background);color:var(--fc-text);border:1px solid var(--fc-border);overscroll-behavior:contain}
.ac-fx-dialog:not([open]){display:none}.ac-fx-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.ac-fx-dialog h2{font-size:clamp(1.6rem,4vw,2.6rem);margin:.5rem 0 1rem}.ac-fx-dialog .ac-mode-options{position:static;border:0}.ac-fx-close{display:block;margin-left:auto;min-width:44px;min-height:44px}.ac-fx-dialog-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}
.ac-fx-social-list{display:grid;gap:.5rem;list-style:none;padding:0}.ac-fx-social-list a{display:flex;align-items:center;gap:1rem;padding:.8rem;text-decoration:none;border-bottom:1px solid var(--fc-border)}.ac-fx-social-list img{width:28px;height:28px}
.ac-electric{position:relative;--ac-electric-color:var(--fc-accent);box-shadow:0 0 calc(var(--ac-electric-glow,.8) * 22px) color-mix(in srgb,var(--ac-electric-color) 50%,transparent);outline:1px solid var(--ac-electric-color);outline-offset:2px}
.ac-electric-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0;filter:drop-shadow(0 0 3px var(--ac-electric-color));color:var(--ac-electric-color)}.ac-electric-svg path{fill:none;stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}
.ac-electric>[class]:not(.ac-electric-svg){position:relative;z-index:1}.ac-electric[data-electric-preset=cyberpunk]{border:2px solid var(--ac-electric-color);box-shadow:8px 8px 0 color-mix(in srgb,var(--ac-electric-color) 20%,transparent)}
.ac-electric[data-electric-preset=cyberpunk]::after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 7px,color-mix(in srgb,var(--ac-electric-color) 8%,transparent) 7px 8px);clip-path:polygon(0 0,96% 0,100% 8%,100% 92%,96% 100%,0 100%);z-index:0}
.ac-electric[data-electric-preset=cyberpunk][open]{animation:ac-cyber-in .4s steps(3,end)}@keyframes ac-cyber-in{0%{transform:translateX(-9px);filter:hue-rotate(40deg)}40%{transform:translateX(7px)}70%{transform:translateX(-3px)}100%{transform:none;filter:none}}
/* Preserve actual native controls, their labels, keyboard handling and disabled states. */
.ac-elastic :is(input[type=checkbox],input[type=radio]){accent-color:var(--fc-accent);width:20px;height:20px;cursor:pointer;vertical-align:middle}
.ac-elastic input[type=range]{accent-color:var(--fc-accent);cursor:pointer}
.ac-elastic-wrap{display:inline-flex;position:relative;align-items:center;vertical-align:middle;width:24px;height:24px;margin-right:.3rem}
.ac-elastic-wrap input{position:absolute!important;inset:2px;margin:0!important;opacity:0;width:20px!important;height:20px!important;z-index:2}
.ac-elastic-wrap svg{width:24px;height:24px;overflow:visible;fill:var(--fc-background);stroke:var(--fc-accent);stroke-width:2;pointer-events:none}
.ac-elastic-wrap .ac-control-mark{fill:none;stroke:var(--fc-accent);stroke-width:2.5;stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .2s}
.ac-elastic-wrap input:checked+svg .ac-control-mark{stroke-dashoffset:0}.ac-elastic-wrap input:focus-visible+svg{outline:3px solid var(--fc-accent);outline-offset:3px}.ac-elastic-wrap input:disabled+svg{opacity:.4}
.ac-preview-controls{--fc-background:#0b0b0c;--fc-surface:#161619;--fc-text:#f5f5f2;--fc-accent:#4f8cff;display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;padding:1.5rem;margin-top:1rem;background:var(--fc-background);color:var(--fc-text);border:1px solid var(--fc-accent)}
.ac-preview-controls[data-mode=light]{--fc-background:#f7f7f3;--fc-text:#111114;--fc-accent:#185ac6}.ac-preview-controls label{display:flex;gap:.5rem;align-items:center}.ac-fx-preview{max-width:680px}
.ac-decrypt-word{display:inline-block;position:relative;color:inherit}.ac-decrypt-char{display:inline-block;white-space:pre}.ac-decrypt-pending{color:var(--ac-scramble-color,currentColor)}
.ac-menu-boxes{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(5,1fr);pointer-events:none;z-index:0;perspective:900px;overflow:hidden}.ac-menu-boxes span{display:block;background:var(--fc-surface);border:1px solid var(--fc-border);transform-origin:top;backface-visibility:hidden}
.navigation-panel:has(.ac-menu-boxes)>:not(.ac-menu-boxes){position:relative;z-index:1}
.ac-error-art{width:100%;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--fc-border);position:relative;background:var(--fc-surface);color:var(--fc-text);margin-bottom:2rem;overflow:hidden}.ac-face-svg{width:85%;height:85%;overflow:visible}.ac-error-extra{width:min(100%,1800px);margin:auto;padding:0 var(--ac-gutter,1rem)}
.ac-effect{position:relative;isolation:isolate;min-height:320px;height:var(--ac-effect-height,640px);width:100%;overflow:hidden;background:var(--fc-background);border:1px solid var(--fc-border);perspective:1100px;margin-block:2rem}
.ac-effect-stage{position:absolute;inset:0;overflow:visible;transform-style:preserve-3d;pointer-events:none}.ac-effect-stage img{position:absolute;object-fit:cover;border-radius:8px;box-shadow:0 8px 25px #0007;max-width:none}
.ac-effect-copy{position:relative;z-index:4;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:100%;padding:clamp(1.5rem,5vw,6rem);pointer-events:none;background:linear-gradient(90deg,#000b,transparent);color:#fff}.ac-effect-copy:empty{display:none}.ac-effect-copy :is(a,button,input){pointer-events:auto}.ac-effect-copy h2{color:inherit;text-shadow:0 2px 10px #0008}.ac-effect-empty{position:relative;padding:1rem;color:var(--fc-muted)}
.ac-effect-pause{position:absolute;right:1rem;bottom:1rem;z-index:8;padding:.65rem;min-height:44px;max-width:calc(100% - 2rem)}
.ac-drift-wall .ac-effect-stage{inset:-30%;transform:rotate(-8deg) translate(var(--ac-mouse-x,0px),var(--ac-mouse-y,0px));transition:transform .5s ease-out}.ac-drift-wall .ac-effect-stage img{width:19%;height:28%;left:calc(mod(var(--i),5) * 21%);top:calc(round(down,var(--i) / 5) * 30%);animation:ac-drift var(--ac-wall-speed,40s) linear infinite alternate}
@keyframes ac-drift{to{translate:0 -25%}}
.ac-poster-wall .ac-effect-stage{inset:-50%;transform:rotateX(25deg) rotateZ(-18deg);transform-origin:center}.ac-poster-wall .ac-effect-stage img{width:12%;height:26%;animation:ac-poster var(--ac-wall-speed,40s) linear infinite;left:calc(mod(var(--i),8) * 13%);top:calc(round(down,var(--i) / 8) * 28%)}
@keyframes ac-poster{to{translate:0 -112%}}
.ac-sphere-gallery .ac-effect-stage{perspective:1000px;overflow:hidden;pointer-events:auto;touch-action:pan-y}.ac-sphere-gallery .ac-effect-stage img{width:110px;height:76px;left:50%;top:50%;margin-left:-55px;margin-top:-38px;cursor:pointer;pointer-events:auto;border:1px solid var(--fc-border)}
.ac-sphere-controls{position:absolute;left:1rem;bottom:1rem;z-index:9;display:flex;gap:.5rem}.ac-sphere-controls button{min-width:44px;min-height:44px}.ac-effect canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ac-effect[data-paused=true] *{animation-play-state:paused!important}.ac-effect[data-offscreen=true] *{animation-play-state:paused!important}
.ac-site-effect{position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.25}.ac-site-effect .ac-effect{height:100dvh;border:0;margin:0}.ac-site-effect .ac-effect-pause,.ac-site-effect .ac-effect-copy{display:none}body:has(.ac-site-effect){isolation:isolate;background-color:transparent}html:has(.ac-site-effect){background:var(--fc-background)}
@media(max-width:600px){.ac-effect{height:min(var(--ac-effect-height,640px),85dvh)}.ac-sphere-gallery .ac-effect-stage img{width:84px;height:60px;margin-left:-42px;margin-top:-30px}}
@media(prefers-reduced-motion:reduce){.ac-effect *,.ac-error-art *,.ac-electric,.ac-mode-symbol{animation:none!important;transition:none!important}}
html[data-motion=off] :is(.ac-effect *,.ac-error-art *,.ac-electric,.ac-mode-symbol){animation:none!important;transition:none!important}
.header-tools>.ac-theme-holder{width:56px;min-width:56px;align-self:stretch}.ac-theme-holder>.ac-mode-toggle{width:100%;height:100%;min-width:0;padding:1rem;display:grid;place-items:center;border:0;border-left:1px solid var(--fc-border);background:transparent;color:var(--fc-text)}
@media(max-width:70rem){.header-tools>.ac-theme-holder{width:54px;min-width:54px}.ac-mode-options{position:fixed;top:calc(var(--fc-header-height) + var(--wp-admin--admin-bar--height,0px));right:0}}
.menu-close .ac-hamburger i{transition:transform .28s,opacity .28s}.menu-close .ac-hamburger i:first-child{transform:translateY(7px) rotate(45deg)}.menu-close .ac-hamburger i:nth-child(2){opacity:0}.menu-close .ac-hamburger i:last-child{transform:translateY(-7px) rotate(-45deg)}
.ac-poster-track{animation:ac-poster-track var(--ac-wall-speed,40s) linear infinite;width:100%}.ac-poster-group{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:1rem;padding-bottom:1rem}.ac-poster-wall .ac-poster-group img{position:static;width:100%;height:auto;aspect-ratio:27/40;animation:none;object-fit:cover}
@keyframes ac-poster-track{to{transform:translateY(-50%)}}
.ac-background-pause{position:fixed;left:1rem;bottom:1rem;z-index:80;min-height:44px;font-size:.65rem;padding:.7rem;background:var(--fc-background);color:var(--fc-text);border:1px solid var(--fc-border)}
@media(prefers-reduced-motion:reduce){.ac-background-pause{display:none}}html[data-motion=off] .ac-background-pause{display:none}
.wp-admin:has(#ac-fx-elastic){--fc-background:#fff;--fc-surface:#f0f0f1;--fc-text:#1d2327;--fc-muted:#50575e;--fc-border:#c3c4c7;--fc-accent:#2271b1;--fc-heading:system-ui;--fc-mono:monospace}
.entry-content>.ac-effect.alignfull{width:100vw;max-width:none;margin-left:50%;transform:translateX(-50%)}
.ac-error-page:has(.ac-error-art)>.ac-error-signal{display:none}.ac-error-art{overflow:visible}
.ac-gallery-dialog{width:96vw;max-width:1400px;max-height:96dvh}.ac-sphere-gallery .ac-effect-stage img:is(:hover,:focus-visible){outline:2px solid var(--fc-accent);outline-offset:4px;filter:brightness(1.12)}
.navigation-panel:not(.is-open)>.ac-menu-boxes{display:none}@media(min-width:70.001rem){.ac-menu-boxes{display:none!important}}
.ac-poster-wall .ac-effect-stage{transform:rotateX(25deg) rotateZ(-18deg) translate(var(--ac-mouse-x,0px),var(--ac-mouse-y,0px))}
.ac-electric[data-electric-preset=cyberpunk]{clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px))}
/* Static, usable fallbacks before JavaScript initializes or when it is unavailable. */
.ac-effect:not([data-effect-ready]) *{animation-play-state:paused!important}.ac-effect:not([data-effect-ready])>.ac-effect-pause,.ac-error-art:not([data-face-ready])>.ac-effect-pause{display:none}
.ac-sphere-gallery:not([data-effect-ready]){height:auto;overflow:visible}.ac-sphere-gallery:not([data-effect-ready]) .ac-effect-stage{position:relative;inset:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem;padding:1rem}.ac-sphere-gallery:not([data-effect-ready]) .ac-effect-stage img{position:static;width:100%;height:auto;margin:0}.ac-sphere-gallery:not([data-effect-ready]) .ac-sphere-links{position:static!important;clip:auto;clip-path:none;height:auto;width:auto;overflow:visible;padding:1rem;margin:0;list-style:none}

/* Crosshair remains decorative and cannot intercept links or native controls. */
.ac-crosshair{position:fixed;z-index:90;pointer-events:none;overflow:hidden;contain:layout paint;opacity:0;transition:opacity var(--crosshair-fade,.35s);--crosshair-x:0px;--crosshair-y:0px}
.ac-crosshair.is-active{opacity:var(--crosshair-opacity,.5)}
.ac-crosshair i{position:absolute;display:block;box-sizing:border-box;font-style:normal}
.ac-crosshair-h{left:0;right:0;top:var(--crosshair-y);border-top:var(--crosshair-weight,.5px) var(--crosshair-style,dotted) currentColor;clip-path:polygon(0 0,calc(var(--crosshair-x) - var(--crosshair-gap)) 0,calc(var(--crosshair-x) - var(--crosshair-gap)) 100%,calc(var(--crosshair-x) + var(--crosshair-gap)) 100%,calc(var(--crosshair-x) + var(--crosshair-gap)) 0,100% 0,100% 100%,0 100%)}
.ac-crosshair-v{top:0;bottom:0;left:var(--crosshair-x);border-left:var(--crosshair-weight,.5px) var(--crosshair-style,dotted) currentColor;clip-path:polygon(0 0,100% 0,100% calc(var(--crosshair-y) - var(--crosshair-gap)),0 calc(var(--crosshair-y) - var(--crosshair-gap)),0 calc(var(--crosshair-y) + var(--crosshair-gap)),100% calc(var(--crosshair-y) + var(--crosshair-gap)),100% 100%,0 100%)}
.ac-crosshair-lock{border:var(--crosshair-weight,.5px) var(--crosshair-style,dotted) currentColor}
.ac-crosshair-coordinates{position:absolute;left:clamp(4px,calc(var(--crosshair-x) + 12px),calc(100% - 165px));top:clamp(4px,calc(var(--crosshair-y) + 12px),calc(100% - 24px));font:11px/1.4 monospace;white-space:nowrap}
.ac-crosshair-pulse{width:24px;height:24px;border:1px solid currentColor;border-radius:50%;opacity:0}
.ac-crosshair [hidden]{display:none!important}.ac-crosshair-hide-cursor,.ac-crosshair-hide-cursor *{cursor:none!important}
@media(prefers-reduced-motion:reduce){.ac-crosshair{display:none}.ac-crosshair-hide-cursor,.ac-crosshair-hide-cursor *{cursor:auto!important}}
html[data-motion="off"] .ac-crosshair{display:none}

/* Appearance disclosure mirrors the social disclosure in the header grid. */
.ac-theme-holder>.ac-mode-toggle:hover{background:var(--fc-surface)}
.ac-theme-holder>.ac-mode-toggle:focus-visible{outline:3px solid var(--fc-accent);outline-offset:-5px}
.ac-theme-holder>.ac-mode-options{width:14rem;min-width:0;max-width:calc(100vw - 24px);max-height:calc(100dvh - var(--fc-header-height) - var(--wp-admin--admin-bar--height,0px) - 20px);overflow:auto;border:1px solid var(--fc-border);border-top:0;border-radius:0;box-shadow:none;padding:.3rem 0;gap:0;background:color-mix(in srgb,var(--fc-background) var(--ac-menu-opacity,94%),transparent);backdrop-filter:blur(12px)}
.ac-theme-holder>.ac-mode-options button{width:100%;min-height:56px;border:0;border-radius:0;padding:.75rem 1.6rem;color:var(--fc-muted);font:400 12px/1.5 var(--fc-mono);letter-spacing:1.7px;text-transform:uppercase;box-shadow:none}
.ac-theme-holder>.ac-mode-options button:is(:hover,:focus-visible){background:var(--fc-surface);color:var(--fc-text)}
.ac-theme-holder>.ac-mode-options button[aria-pressed=true]{background:var(--fc-surface);color:var(--fc-text);outline:1px solid var(--fc-accent);outline-offset:-1px}
.ac-mode-choice-label{display:inline-block;transition:transform .2s}.ac-theme-holder .ac-mode-options button:is(:hover,:focus-visible) .ac-mode-choice-label{transform:translateY(-3px)}
.ac-theme-holder>.ac-mode-toggle>svg,.ac-theme-holder>.ac-mode-toggle>.ac-mode-symbol{transition:transform .2s}
.ac-theme-holder>.ac-mode-toggle[aria-expanded=true]>svg,.ac-theme-holder>.ac-mode-toggle[aria-expanded=true]>.ac-mode-symbol{transform:translateY(-5px)}
.ac-theme-close-arrow{display:none;position:absolute;bottom:5px;left:0;width:100%;text-align:center;font:18px/1 sans-serif}
.ac-mode-toggle[aria-expanded=true]>.ac-theme-close-arrow{display:block}
@media(max-width:70rem){.ac-theme-holder>.ac-mode-options{position:absolute;top:100%;right:0}}
@media(prefers-reduced-motion:reduce){.ac-mode-choice-label,.ac-theme-holder>.ac-mode-toggle>svg,.ac-theme-holder>.ac-mode-toggle>.ac-mode-symbol{transition:none}}
html[data-motion=off] :is(.ac-mode-choice-label,.ac-theme-holder>.ac-mode-toggle>svg,.ac-theme-holder>.ac-mode-toggle>.ac-mode-symbol){transition:none}

.ac-mode-options button{display:flex;align-items:center;gap:12px}.ac-mode-choice-icon{display:inline-grid;place-items:center;flex-shrink:0;width:22px;height:22px;transition:transform .2s}.ac-mode-choice-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ac-mode-options[data-display=names] .ac-mode-choice-icon{display:none}
.ac-mode-options[data-display=icons] .ac-mode-choice-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ac-theme-holder>.ac-mode-options[data-display=icons]{width:56px}.ac-mode-options[data-display=icons] button{justify-content:center;padding-inline:4px}
.ac-theme-holder .ac-mode-options button:is(:hover,:focus-visible) .ac-mode-choice-icon{transform:translateY(-3px)}
.ac-fx-social-list[data-display=names] .ac-social-bubble{display:none}
@media(prefers-reduced-motion:reduce){.ac-mode-choice-icon{transition:none}}html[data-motion=off] .ac-mode-choice-icon{transition:none}

.site-header .ac-mode-toggle.ac-shows-active-mode>svg{display:none!important}

.ac-welcome-hero{position:relative;isolation:isolate;min-height:calc(100svh - var(--fc-header-height,80px) - var(--wp-admin--admin-bar--height,0px));display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:clamp(24px,4vw,64px);overflow:hidden;border:1px solid var(--fc-border)}.ac-welcome-hero>.ac-effect{position:absolute;inset:0;width:100%;height:100%;min-height:0;opacity:.55;z-index:-1}.ac-welcome-hero>.ac-effect .ac-effect-pause{z-index:5}.ac-welcome-panel{width:min(900px,100%);padding:clamp(24px,5vw,64px);text-align:center;background:color-mix(in srgb,var(--fc-background) 80%,transparent);border:1px solid var(--fc-border);margin:0 auto;backdrop-filter:blur(8px)}.ac-welcome-panel h1{font-size:clamp(40px,7vw,100px);margin:0 0 20px}.ac-welcome-panel h2{font-size:clamp(24px,3vw,44px);text-transform:none}.ac-welcome-body{white-space:normal;font-size:clamp(18px,2vw,25px);color:var(--fc-muted)}.ac-welcome-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:30px}.ac-welcome-links .button{border:1px solid var(--fc-border)}.ac-welcome-links .button:not(:first-child){background:var(--fc-background);color:var(--fc-text)}.ac-welcome-note{font:12px/1.6 var(--fc-mono);letter-spacing:1px;color:var(--fc-muted);margin-top:28px}.ac-featured-video video{display:block;width:100%;max-height:70vh;background:var(--fc-background)}
.ac-welcome-orbit .ac-poster-track{animation:ac-welcome-orbit 65s linear infinite!important;transform-style:preserve-3d}.ac-welcome-orbit .ac-effect-stage{perspective:1000px}@keyframes ac-welcome-orbit{from{transform:rotateY(0deg) rotateZ(-12deg)}to{transform:rotateY(360deg) rotateZ(-12deg)}}
.ac-welcome-orbit [data-paused=true] .ac-poster-track{animation-play-state:paused!important}.ac-welcome-neon .ac-effect-stage canvas{filter:saturate(1.8) drop-shadow(0 0 12px var(--fc-accent))}
@media(prefers-reduced-motion:reduce){.ac-welcome-orbit .ac-poster-track{animation:none!important}}html[data-motion=off] .ac-welcome-orbit .ac-poster-track{animation:none!important}

.ac-effect-stage .ac-wall-video{position:absolute;width:24%;height:180px;object-fit:cover;border:1px solid var(--fc-border);pointer-events:none}.ac-welcome-hero>.ac-effect>.ac-effect-pause{position:absolute;bottom:12px;right:12px}
/* Welcome belongs to the same uninterrupted technical grid as the header. */
.content-wrap.ac-template-welcome{padding-top:0}.ac-template-welcome .ac-welcome-hero{overflow:visible}.ac-template-welcome .ac-welcome-hero>.ac-effect{overflow:hidden}.ac-template-welcome .ac-welcome-panel{position:relative;margin-block:0;min-width:0}
.ac-welcome-hero::after,.ac-welcome-panel::after{content:'';position:absolute;inset:-7px;pointer-events:none;background:linear-gradient(var(--fc-text),var(--fc-text)) left 7px top/1px 14px no-repeat,linear-gradient(var(--fc-text),var(--fc-text)) left top 7px/14px 1px no-repeat,linear-gradient(var(--fc-text),var(--fc-text)) right 7px top/1px 14px no-repeat,linear-gradient(var(--fc-text),var(--fc-text)) right top 7px/14px 1px no-repeat,linear-gradient(var(--fc-text),var(--fc-text)) left 7px bottom/1px 14px no-repeat,linear-gradient(var(--fc-text),var(--fc-text)) left bottom 7px/14px 1px no-repeat,linear-gradient(var(--fc-text),var(--fc-text)) right 7px bottom/1px 14px no-repeat,linear-gradient(var(--fc-text),var(--fc-text)) right bottom 7px/14px 1px no-repeat;opacity:.6}
.ac-site-effect .ac-effect-stage{transform:rotate(var(--ac-bg-direction,0deg)) scale(var(--ac-bg-size,1))!important}.ac-site-effect .ac-effect-stage img{rotate:calc(var(--ac-bg-angle,0deg) - var(--ac-bg-direction,0deg))}.ac-site-effect .ac-poster-wall .ac-effect-stage{transform:perspective(1200px) rotateX(25deg) rotateZ(var(--ac-bg-direction,0deg)) scale(var(--ac-bg-size,1))!important}
.ac-bg-fade{animation:ac-bg-enter 1.2s ease-out both}@keyframes ac-bg-enter{from{opacity:0}to{opacity:.25}}
.ac-background-preview{position:absolute;right:24px;top:330px;width:36%;max-width:600px;border:1px solid #c3c4c7;background:white;padding:12px;box-sizing:border-box}.ac-background-preview iframe{width:100%;height:320px;border:1px solid #c3c4c7}.wrap:has(.ac-background-preview)>.form-table{max-width:60%}.wrap:has(.ac-background-preview) form>.form-table{width:60%}
.ac-direction-wheel{position:relative;display:grid;place-items:center;width:90px;height:90px;margin:12px 0;border:2px solid #646970;border-radius:50%;background:#fff;touch-action:none;cursor:crosshair}.ac-direction-wheel span{font-size:32px;transform:rotate(var(--wheel-angle,270deg));pointer-events:none}.ac-direction-wheel:focus-visible{outline:2px solid #2271b1;outline-offset:4px}
@media(max-width:1100px){.ac-background-preview{position:static;width:100%;margin-top:16px}.wrap:has(.ac-background-preview) form>.form-table{width:100%}}
@media(prefers-reduced-motion:reduce){.ac-bg-fade{animation:none}}html[data-motion=off] .ac-bg-fade{animation:none}

.ac-welcome-hero:is(.ac-welcome-neon,.ac-welcome-tubes,.ac-welcome-palette)>.ac-effect{pointer-events:none}
.ac-cursor-disable{position:absolute;right:16px;bottom:16px;z-index:4;background:var(--fc-background);border:1px solid var(--fc-border);padding:10px 14px;font:12px/1.5 var(--fc-mono)}
/* Category artwork and thumbnails occupy cells in the existing technical grid. */
.ac-archive-intro:has(.ac-category-carousel){display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:0;padding-block:0;align-items:stretch;border-block:1px solid var(--fc-border)}
.ac-archive-intro:has(.ac-category-carousel)>.page-heading{padding:clamp(20px,4vw,64px);display:flex;flex-direction:column;justify-content:center}
.ac-category-carousel{position:relative;display:grid;place-items:center;min-height:430px;padding:40px 32px 70px;border-left:1px solid var(--fc-border);background:color-mix(in srgb,var(--fc-background) 60%,transparent)}
.ac-polaroid{display:block;width:min(220px,75%);padding:10px 10px 24px;background:var(--fc-background);border:1px solid var(--fc-border);box-shadow:0 10px 24px #0003;transform:rotate(var(--card-angle));text-align:center;text-decoration:none;grid-area:1/1}
.ac-polaroid[hidden]{display:none}.ac-polaroid img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover}.ac-category-carousel[data-ratio=square] img{aspect-ratio:1}.ac-polaroid>span{display:block;font:12px/1.5 var(--fc-mono);margin-top:12px}
.ac-carousel-controls{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:4px}.ac-carousel-controls button{min-height:44px;border:1px solid var(--fc-border);background:var(--fc-background);color:var(--fc-text);padding:8px;font:11px var(--fc-mono)}
:is(.ac-lineup-card,.ac-post-card){position:relative}.ac-tile-float{position:absolute!important;pointer-events:none;z-index:6;right:24px;top:25%;width:clamp(90px,12vw,170px)!important;height:auto!important;aspect-ratio:2/3;object-fit:cover;border:5px solid var(--fc-background);box-shadow:0 12px 35px #0006;opacity:0;transform:translateY(20px) rotate(0);transition:opacity .3s,transform .5s cubic-bezier(.2,.8,.2,1)}.has-floating-thumb>.ac-tile-float{opacity:1;transform:translateY(-12px) rotate(var(--thumb-angle)) scale(var(--thumb-zoom))}
.ac-welcome-hero:has([data-kind=grid],[data-kind=paper],[data-kind=crystal],[data-kind=sea],[data-kind=proximity],[data-kind=wave])>.ac-effect{pointer-events:none}
@media(max-width:800px){.ac-archive-intro:has(.ac-category-carousel){grid-template-columns:1fr}.ac-category-carousel{border-left:0;border-top:1px solid var(--fc-border)}}
@media(prefers-reduced-motion:reduce){.ac-tile-float{display:none}}html[data-motion=off] .ac-tile-float{display:none}
.ac-site-disable{position:fixed;bottom:70px;right:16px;z-index:80}.ac-effect-stage[hidden],.ac-site-effect[hidden]{display:none!important}
/* Keep editorial blocks aligned to the same ruled column. */
.ac-page>.entry-content,.ac-single>.entry-content{border-inline:1px solid var(--fc-border);padding-inline:clamp(16px,3vw,40px)}
.ac-page>.entry-content>:is(h2,h3),.ac-single>.entry-content>:is(h2,h3){border-top:1px solid var(--fc-border);padding-top:16px;position:relative}
.ac-page>.entry-content>:is(h2,h3)::before,.ac-single>.entry-content>:is(h2,h3)::before{content:'+';position:absolute;left:calc(clamp(16px,3vw,40px)*-1 - 5px);top:-12px;color:var(--fc-muted);font:18px var(--fc-mono)}
.ac-category-carousel::before,.ac-category-carousel::after{content:'';grid-area:1/1;width:min(220px,75%);aspect-ratio:2/3;background:var(--fc-surface);border:1px solid var(--fc-border);transform:rotate(-7deg) translate(-5px,3px);pointer-events:none}.ac-category-carousel::after{transform:rotate(6deg) translate(4px,-3px)}.ac-category-carousel[data-ratio=square]::before,.ac-category-carousel[data-ratio=square]::after{aspect-ratio:1}.ac-polaroid{z-index:1}.ac-carousel-controls{z-index:2}
.archive .ac-news-intro-wrap{padding-top:0}
/* 2.50: a single clean category card, without decorative blank layers. */
.ac-category-carousel::before,.ac-category-carousel::after{content:none;display:none}.ac-category-carousel{padding:30px;min-height:390px}.ac-polaroid{padding:2px;border:1px solid var(--fc-border);box-shadow:0 14px 32px #0005;translate:none!important}.ac-polaroid img{object-fit:contain}.ac-polaroid>span,.ac-carousel-controls{display:none}
:is(.ac-lineup-image,.ac-card-image){position:relative;translate:none!important}
.ac-tile-float-face{position:absolute;pointer-events:none;z-index:6;left:50%;top:50%;height:104%;max-width:72%;aspect-ratio:2/3;border:2.5px solid var(--fc-text);background:var(--fc-background);box-shadow:none;opacity:0;transform:translate(-50%,-45%) perspective(1000px) rotateZ(0);transition:opacity .25s,transform .25s ease-out;transform-style:preserve-3d}
.ac-tile-float-face>.ac-tile-float{position:static!important;display:block;width:100%!important;height:100%!important;max-width:none;object-fit:contain;border:0;box-shadow:none;opacity:1;transform:none!important;transition:none;aspect-ratio:auto}
.has-floating-thumb .ac-tile-float-face{opacity:1;transform:translate(-50%,-50%) perspective(1000px) rotateX(var(--thumb-x,0deg)) rotateY(var(--thumb-y,0deg)) rotateZ(var(--thumb-angle,0deg)) scale(var(--thumb-zoom,1.08))}
.ac-tile-glow{position:absolute;inset:0;opacity:var(--thumb-glow,.35);background:radial-gradient(circle at var(--glow-x,50%) var(--glow-y,30%),color-mix(in srgb,var(--fc-accent) 35%,white),transparent 65%);mix-blend-mode:screen;pointer-events:none}
:is(.ac-lineup-card,.ac-post-card)[id]{scroll-margin-top:calc(var(--fc-header-height,80px) + var(--wp-admin--admin-bar--height,0px) + 20px)}
.ac-project-layout{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid var(--fc-border);margin-top:0}.ac-project-layout.has-project-image{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr)}.ac-project-image{padding:24px;margin:0;border-right:1px solid var(--fc-border);background:color-mix(in srgb,var(--fc-background) 85%,transparent)}.ac-project-image img{display:block;width:100%;height:auto;max-height:680px;object-fit:contain}.ac-project-information{min-width:0;background:color-mix(in srgb,var(--fc-background) 92%,transparent)}.ac-project-credits{margin:0}.ac-project-credits>div{display:grid;grid-template-columns:minmax(110px,.6fr) minmax(0,1fr);gap:16px;padding:12px 24px;border-bottom:1px solid var(--fc-border)}.ac-project-credits dt{font:12px/1.5 var(--fc-mono);color:var(--fc-muted)}.ac-project-credits dd{margin:0;overflow-wrap:anywhere}.ac-project-information .ac-detail-meta{display:flex;flex-wrap:wrap;margin:0;border:0}.ac-project-information .ac-detail-meta>div{flex:1 1 200px;padding:12px 24px}.ac-single>.ac-featured-video{margin:0 0 20px}.ac-single>.ac-featured-video video{width:100%;max-height:80vh}
@media(max-width:650px){.ac-project-layout.has-project-image{grid-template-columns:1fr}.ac-project-image{border-right:0;border-bottom:1px solid var(--fc-border)}.ac-project-image img{max-height:60vh}.ac-project-credits>div{padding:12px 16px}.ac-category-carousel{min-height:330px}}
@media(prefers-reduced-motion:reduce){.ac-tile-float-face{display:none}}html[data-motion=off] .ac-tile-float-face{display:none}
.ac-reference-tubes{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}

/* Welcome effects are painted and clipped inside the hero, never the viewport. */
.ac-template-welcome .ac-welcome-hero>.ac-effect{position:absolute;inset:0;width:100%;height:100%;margin:0;contain:paint}.ac-welcome-hero>.ac-effect .ac-effect-pause{pointer-events:auto}.ac-welcome-panel{overflow-wrap:anywhere}

/* Centered category posters can rise beyond the clipped background image. */
:is(.ac-lineup-image,.ac-card-image).ac-float-media{overflow:visible;isolation:isolate;z-index:2}
.ac-tile-image-clip{position:absolute;inset:0;display:block;overflow:hidden}
.ac-tile-image-clip>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.ac-thumb-shadow .ac-tile-float-face{box-shadow:0 10px 24px #0007}
.ac-thumb-rounded .ac-tile-float-face{border-radius:10px;overflow:hidden}
.ac-thumb-rounded .ac-tile-float-face>.ac-tile-float{border-radius:7px}
.ac-category-style-preview iframe{display:block;width:min(100%,620px);height:520px;border:1px solid #aaa;margin-top:12px}

.has-floating-thumb .ac-tile-float-face{pointer-events:auto}

/* Shared 3D tilt: transform and shine live on the actual poster hit target. */
.ac-featured-image-card{position:relative;display:block;width:fit-content;max-width:100%;margin:auto;line-height:0;isolation:isolate}
.ac-image-tilt{transform-style:preserve-3d;transition:transform .3s ease-out,box-shadow .3s ease-out}
.ac-featured-image-card.ac-image-tilt{transform:perspective(1200px) rotateX(var(--image-x,0deg)) rotateY(var(--image-y,0deg)) rotateZ(var(--image-z,0deg)) scale(var(--image-scale,1))}
.has-floating-thumb .ac-tile-float-face.ac-image-tilt{transform:translate(-50%,-50%) perspective(1200px) rotateX(var(--image-x,0deg)) rotateY(var(--image-y,0deg)) rotateZ(var(--image-z,0deg)) scale(var(--image-scale,1))}
.ac-image-tilting{transition-duration:150ms}
.ac-featured-image-card.ac-image-tilting,.ac-thumb-shadow .ac-image-tilting{box-shadow:0 12px 30px #0006}
.ac-image-shine{position:absolute;inset:0;z-index:8;pointer-events:none;border-radius:inherit;opacity:var(--image-shine,0);background:radial-gradient(circle at var(--image-light-x,50%) var(--image-light-y,30%),#fff 0%,#ffffff88 18%,#ffffff00 65%),linear-gradient(115deg,#ffffff00 20%,#ffffff44 48%,#ffffff00 75%);mix-blend-mode:screen;transition:opacity .15s}
.ac-image-tilt>.ac-tile-glow{display:none}
