:root{color-scheme:dark;--ink:#f5f2ed;--muted:#d6dfe5;--copper:#ffd0ad;--line:rgba(237,168,185,.55)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#102332 url('assets/background.png') center center/cover fixed no-repeat;color:var(--ink);font:18px/1.65 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;min-height:100vh}body:before{content:'';position:fixed;inset:0;background:linear-gradient(180deg,rgba(4,16,27,.2),rgba(4,16,27,.04) 60%,rgba(4,16,27,.48));pointer-events:none;z-index:-1}a{color:var(--copper);text-underline-offset:.25em}a:hover{color:#fff}a:focus-visible{outline:3px solid #fff3a6;outline-offset:6px;border-radius:4px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.2;font-weight:400}h1{font-size:clamp(2rem,4vw,3.3rem);margin:.3em 0 .65em}h2{font-size:1.65rem;color:var(--copper)}h3{font-size:1.4rem}p{margin:0 0 1.1em}img{max-width:100%}[hidden]{display:none!important}.skip{position:absolute;left:16px;top:-100px;background:#102332;padding:12px;z-index:20}.skip:focus{top:12px}.topbar{max-width:1480px;margin:auto;padding:18px 4%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-shadow:0 2px 5px #000}.topbar a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}.site-name{letter-spacing:.06em;font-size:1.15rem}.topbar nav{display:flex;gap:clamp(16px,3vw,42px)}.world{position:relative;max-width:1450px;height:min(850px,70vw);min-height:600px;margin:auto}.identity{position:absolute;width:39%;left:31%;top:38%;text-align:center;z-index:2}.identity img{display:block;width:100%;height:auto;filter:drop-shadow(0 5px 8px #061522)}.identity p{font-size:clamp(16px,1.45vw,22px);text-shadow:0 2px 5px #000;background:rgba(6,21,34,.7);border-radius:24px;padding:5px 12px;margin:-2% -10% 0}.bubble{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;text-decoration:none;width:32%;transition:transform .2s;filter:drop-shadow(0 6px 10px rgba(0,0,0,.3))}.bubble span{position:relative;z-index:1;font-family:Georgia,'Times New Roman',serif;color:var(--copper);font-size:clamp(20px,2vw,28px);text-shadow:0 2px 4px #000;background:rgba(8,24,38,.86);padding:3px 15px;border-radius:30px;line-height:1.4}.bubble img{display:block;width:100%;height:auto;object-fit:contain;max-height:340px}.bubble:hover{transform:translateY(-5px)}.bubble[aria-current=page] span{color:#fff4ce;box-shadow:0 2px 0 #f8c596}.costuming{left:1%;top:2%}.advocacy{left:36%;top:0;width:31%}.gaming{right:0;top:9%}.writing{left:4%;bottom:3%;width:31%}.appearances{left:35%;bottom:-2%;width:32%}.projects{right:1%;bottom:0;width:32%}.content-window{max-width:1120px;margin:50px auto 0;border:1px solid var(--line);border-top-color:#dee8ed;border-radius:32px;background:linear-gradient(135deg,rgba(77,105,126,.58),rgba(9,28,43,.94) 35%,rgba(15,38,54,.92));box-shadow:inset 0 0 0 5px rgba(206,232,245,.05),inset 0 1px 18px rgba(223,241,255,.15),0 18px 70px #07121e66;backdrop-filter:blur(18px);padding:clamp(24px,5vw,62px)}.panel{scroll-margin:30px}.panel+.panel{margin-top:60px;padding-top:40px;border-top:1px solid var(--line)}.enhanced .panel{margin:0;padding:0;border:0}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;color:var(--copper);margin:0 0 12px}.lead{font-size:1.3rem;max-width:46em;color:#fff}.panel>p{max-width:52em}.home-panel{text-align:center;max-width:850px;margin:auto}.home-panel h1{font-size:clamp(1.8rem,3vw,2.6rem)}.columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:32px 0}.columns.two{grid-template-columns:repeat(2,minmax(0,1fr))}.columns h2{margin-top:0}.note{border-left:2px solid #ddb38c;padding:4px 0 4px 24px;margin:32px 0}.note h2{margin-top:0}.status{color:#e3d0bd;font-style:italic}.button{display:inline-block;padding:12px 22px;border:1px solid #deb597;border-radius:30px;background:#142b3c;color:#ffe1cb;text-decoration:none;margin-top:12px}.button:hover{background:#2b4354}.archive article{padding:24px 0;border-bottom:1px solid var(--line)}.archive article:first-child{padding-top:12px}.archive article p{margin-bottom:.5em}.archive h2,.archive h3{margin:8px 0 14px}.archive{margin:26px 0}.feature{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:32px}.feature img{height:auto}.fine{font-size:.78rem;color:#d1dce4}footer{text-align:center;padding:40px 20px 28px;text-shadow:0 2px 4px #000}footer p:first-child{font-family:Georgia,serif;font-size:1.25rem;margin-bottom:6px}footer .fine{margin-top:14px}.inside .world{height:auto;min-height:0}.inside .identity{position:static;width:230px;margin:0 auto 12px}.inside .identity p{display:none}.inside .bubbles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:0 24px}.inside .bubble{position:static;width:auto;filter:none}.inside .bubble span{font-size:clamp(15px,1.4vw,21px);padding:5px 8px;min-height:2.9em;display:flex;align-items:center;justify-content:center;line-height:1.2}.inside .bubble img{height:clamp(90px,12vw,150px);width:100%}.inside .content-window{margin-top:24px}
@media(min-width:1500px){.world{height:850px}.bubble img{max-height:360px}}
@media(max-width:1000px){.world{min-height:580px}.bubble img{max-height:270px}.identity{top:39%}.content-window{margin-left:24px;margin-right:24px}.inside .bubbles{grid-template-columns:repeat(3,minmax(0,1fr));max-width:730px;margin:auto}.inside .bubble img{height:110px}.inside .bubble span{min-height:2.5em}.columns{gap:24px}}
@media(max-width:620px){body{font-size:17px;background-position:62% center}.topbar{padding:10px 18px}.site-name{font-size:.93rem}.topbar nav{gap:15px;font-size:.9rem}.world{height:auto;min-height:0;padding:0 14px}.identity{position:static;width:85%;margin:6px auto 30px}.identity p{font-size:16px;margin:-5px -4% 0}.bubbles,.inside .bubbles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;padding:0}.bubble,.inside .bubble{position:static;width:auto}.bubble span,.inside .bubble span{font-size:18px;min-height:2.7em;display:flex;align-items:center;justify-content:center;padding:3px 9px;line-height:1.25;width:100%}.bubble img,.inside .bubble img{height:125px;max-height:none;object-fit:contain}.inside .identity{width:210px;margin-bottom:16px}.inside .bubbles{gap:8px}.inside .bubble span{font-size:16px}.inside .bubble img{height:92px}.content-window,.inside .content-window{margin:28px 14px 0;border-radius:24px;padding:27px 23px}.columns,.columns.two,.feature{grid-template-columns:1fr;gap:18px}.feature img{max-width:300px;justify-self:center}.lead{font-size:1.14rem}h1{overflow-wrap:anywhere}.panel a{overflow-wrap:anywhere}footer{padding-top:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.bubble{transition:none}.bubble:hover{transform:none}}
@media print{body{background:#fff;color:#111}.world,.topbar,footer{display:none}.content-window{background:none;box-shadow:none;border:0;margin:0;padding:0}.panel[hidden]{display:block!important}.panel{break-inside:avoid}a,h2,.eyebrow,.status,.lead{color:#222}}
/* Homepage: loose constellation around the wordmark. Section menus retain their compact layout. */
@media screen {
 body:not(.inside) .world{display:block;position:relative;width:100%;max-width:1536px;height:auto;min-height:0;aspect-ratio:3/2;padding:0;margin:0 auto}
 body:not(.inside) .bubbles{display:block;position:absolute;inset:0}
 body:not(.inside) .bubble{position:absolute;display:block;margin:0;max-width:none;min-height:0}
 body:not(.inside) .bubble img{width:100%;height:100%;max-height:none;object-fit:contain}
 body:not(.inside) .bubble span{position:absolute;bottom:14%;left:50%;transform:translateX(-50%);width:max-content;max-width:90%;min-height:0;padding:3px 14px;line-height:1.25;font-size:clamp(16px,1.75vw,27px);background:rgba(7,23,36,.86);border-radius:24px;z-index:1}
 body:not(.inside) .costuming{left:0;top:0;width:36%;height:46%}
 body:not(.inside) .advocacy{left:36%;top:-2%;width:33%;height:42%}
 body:not(.inside) .gaming{left:68%;right:auto;top:10%;width:32%;height:45%}
 body:not(.inside) .writing{left:6%;top:44%;bottom:auto;width:32%;height:37%}
 body:not(.inside) .appearances{left:34%;top:61%;bottom:auto;width:33%;height:38%}
 body:not(.inside) .projects{left:65%;right:auto;top:54%;bottom:auto;width:34%;height:39%}
 body:not(.inside) .identity{position:absolute;left:34%;top:37%;width:35%;margin:0;text-align:center;z-index:2}
 body:not(.inside) .identity img{width:100%;height:auto}
 body:not(.inside) .identity p{font-size:clamp(14px,1.4vw,22px);margin:-3% -8% 0;padding:3px 10px;line-height:1.4}
 body:not(.inside) .content-window{margin-top:24px}
}
@media screen and (max-width:620px){
 body:not(.inside) .world{aspect-ratio:0.58;max-width:500px}
 body:not(.inside) .bubble span{font-size:16px;bottom:11%;padding:3px 9px;max-width:94%;text-align:center}
 body:not(.inside) .costuming{left:0;top:0;width:54%;height:28%}
 body:not(.inside) .costuming span{max-width:145px;width:85%}
 body:not(.inside) .advocacy{left:50%;top:7%;width:50%;height:23%}
 body:not(.inside) .gaming{left:53%;top:30%;width:47%;height:25%}
 body:not(.inside) .writing{left:0;top:28%;width:49%;height:24%}
 body:not(.inside) .identity{left:10%;top:48%;width:80%}
 body:not(.inside) .identity p{font-size:16px;margin:-3% -9% 0;padding:6px 8px}
 body:not(.inside) .appearances{left:0;top:74%;width:54%;height:25%}
 body:not(.inside) .projects{left:50%;top:69%;width:50%;height:25%}
}

/* Center the complete scene within the viewport, with storm-navy desktop gutters. */
body{background:#102332;display:flex;align-items:center;justify-content:center;min-height:100svh}
body:before{display:none}
.site-frame{width:min(1440px,calc(100% - 64px),calc(150svh - 120px));margin:auto;background:#102332 url('assets/background.png') center/cover no-repeat;position:relative;isolation:isolate}
.site-frame:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,16,27,.15),transparent 70%,rgba(4,16,27,.16));pointer-events:none;z-index:-1}
body:not(.inside) .content-window{display:none}
body:not(.inside) .identity p{background:none;border:0;border-radius:0;box-shadow:none;padding:0 4px;color:#fff;text-shadow:0 2px 5px #071521,0 0 12px #071521;font-family:Georgia,'Times New Roman',serif}
.inside .site-frame{width:min(1440px,calc(100% - 64px));min-height:100svh;background-attachment:scroll}
.album-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;margin:20px 0 30px}
.album-list article{padding:18px 0;border-bottom:1px solid var(--line)}
.album-list h3{margin:0 0 10px;color:var(--copper)}
.album-list .status{margin:0}
.project-groups h3{color:#f2d5bc;margin-top:24px}
.project-groups li{margin:6px 0}
@media screen and (max-width:767px){
 .site-frame,.inside .site-frame{width:100%;min-height:100svh;margin:0;background-position:62% center}
 body:not(.inside) .world{max-width:none}
 .album-list{grid-template-columns:1fr}
}
@media print{body{display:block}.site-frame,.inside .site-frame{width:100%;background:none}.site-frame:before{display:none}body:not(.inside) .content-window{display:block}}

.copyright{display:block;padding:18px 24px;color:#f5f2ed;background:rgba(8,23,36,.84);text-align:center;font-size:14px;line-height:1.5;text-shadow:none}
.copyright p,.copyright p:first-child{font:inherit;max-width:1100px;margin:0 auto 6px}
.copyright p:last-child{margin-bottom:0}
@media screen and (min-width:768px){body:not(.inside) .site-frame{width:min(1440px,calc(100% - 64px),calc(150svh - 120px - var(--footer-space,180px)))}}
@media print{.copyright{display:block;background:none;color:#111}}

/* Compact, centered two-line footer. */
.copyright{padding:9px 8px;font-size:clamp(12px,1vw,14px);line-height:1.45}
.copyright p,.copyright p:first-child{margin:0 auto;white-space:nowrap;max-width:none}
.brand-entry{margin:28px 0;padding:24px 0;border-bottom:1px solid var(--line)}
.brand-logo{display:block;width:min(100%,480px);height:auto;margin:0 auto 22px}
.brand-entry h2,.brand-entry h3{margin-top:0}
.acronym{color:var(--copper);font-size:1.05rem}
.wearable-art{margin:32px 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.wearable-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:24px;margin-top:24px}
.wearable-gallery figure{margin:0;min-width:0}
.wearable-gallery img{display:block;width:100%;height:320px;object-fit:contain;background:#10202d;border-radius:12px}
.wearable-gallery a{display:block;border-radius:12px}
.wearable-gallery a:focus-visible{outline:3px solid var(--copper);outline-offset:5px}
.wearable-gallery h3{margin-top:16px}
.wearable-gallery figcaption p{font-size:1rem}
@media screen and (max-width:350px){.copyright{font-size:11px}}

/* Photo archives */
.portfolio-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:20px;margin:24px 0}
.portfolio-gallery figure{margin:0;min-width:0}
.portfolio-gallery img{display:block;width:100%;height:270px;object-fit:contain;background:#10202d;border-radius:10px}
.portfolio-gallery a{display:block;border-radius:10px}
.portfolio-gallery a:focus-visible{outline:3px solid var(--copper);outline-offset:5px}
.portfolio-gallery figcaption{padding:10px 0;font-size:1rem;line-height:1.5}
.album-list .populated-album{grid-column:1/-1}

/* Shared Emerald Kingdom-style editorial sections. */
.hero-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,52px);align-items:center;padding:40px 0;margin:0;border-bottom:1px solid #c78c9c77}
.hero-row:first-of-type{padding-top:20px}.hero-copy{min-width:0}.hero-copy h2{margin:0 0 20px;color:#f7c9be}.hero-copy p:last-child{margin-bottom:0}
.hero-row.image-right{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.image-right>.glass-photo{grid-column:2;grid-row:1}.image-right>.hero-copy{grid-column:1;grid-row:1}
.hero-row.text-only{grid-template-columns:1fr}.text-only>.hero-copy{grid-column:1}.hero-copy a{overflow-wrap:anywhere}
.glass-photo{display:flex;position:relative;isolation:isolate;align-items:center;justify-content:center;width:100%;max-width:470px;min-width:0;padding:18px;aspect-ratio:1;border-radius:50%;border:2px solid #e5f3ffbd;background:radial-gradient(ellipse at 28% 12%,#f8ffff55,transparent 35%),radial-gradient(ellipse at 78% 92%,#8fc2d555,transparent 50%),#0b2030;box-shadow:inset 0 0 0 6px #c8eaff12,inset 0 0 26px #d3f2ff55,0 12px 30px #04101e80;justify-self:center;text-decoration:none;overflow:hidden}
.glass-photo:after{content:'';position:absolute;inset:7px;border-radius:50%;border-top:2px solid #ffffffc7;border-right:1px solid #c9e9ff88;box-shadow:inset 0 -9px 13px #b7ddf22e;pointer-events:none;z-index:2}
.glass-photo img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;border-radius:14%;margin:auto}
a.glass-photo{transition:box-shadow .2s,transform .2s}a.glass-photo:hover{transform:translateY(-3px);box-shadow:inset 0 0 25px #fff5,0 15px 34px #04101e90}a.glass-photo:focus-visible{outline:3px solid #fff3a6;outline-offset:7px}
.logo-above{grid-template-columns:1fr!important;text-align:center}.logo-above>.glass-photo{grid-column:1;grid-row:auto;max-width:350px}.logo-above>.hero-copy{grid-column:1;grid-row:auto}
.coming-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin-bottom:24px}.coming-grid article{border-bottom:1px solid #c78c9c77;padding:20px 0}.coming-grid h3{margin:0 0 10px;color:#f7c9be}.coming-grid p{margin:0}
.panel>h2,.panel>h3{margin-top:44px}.event-filter{display:block;margin:24px 0 12px}.event-filter input{display:block;width:100%;font:inherit;color:#fff;background:#0c2231;border:1px solid #edb7bd;border-radius:16px;padding:12px 16px;margin-top:10px}.event-filter input:focus{outline:3px solid #fff3a6;outline-offset:3px}#event-count{color:#cbdce6}
/* Metallic lettering sits directly over the existing navigation bubbles. */
.bubble span,.inside .bubble span,body:not(.inside) .bubble span{background:linear-gradient(180deg,#fff2d9 3%,#e9b8a1 32%,#9c6152 47%,#ffe6d0 55%,#d69281 74%,#fff0d8 100%);background-clip:text;-webkit-background-clip:text;color:#edc0a7;-webkit-text-fill-color:transparent;border:0;border-radius:0;box-shadow:none;text-shadow:none;filter:drop-shadow(0 2px 1px #07111c) drop-shadow(0 0 3px #07111c);font-weight:700;font-size:clamp(22px,2.2vw,34px);line-height:1.15;padding:0;letter-spacing:.015em}
body:not(.inside) .costuming span{max-width:80%;white-space:normal;bottom:12%}.inside .bubble{position:relative;padding-top:0}.inside .bubble span{position:absolute;bottom:3%;left:3%;width:94%;min-height:0;font-size:clamp(18px,1.65vw,25px);z-index:3}.inside .bubble img{height:155px}.inside .content-window{margin-bottom:30px}
.note,.archive article,.brand-entry,.album-list article,.wearable-art{border-color:#c78c9c77}
@media(max-width:767px){.hero-row,.hero-row.image-right{grid-template-columns:1fr;gap:25px;padding:32px 0}.hero-row>.glass-photo{grid-column:1;grid-row:1;width:min(100%,370px)}.hero-row>.hero-copy{grid-column:1;grid-row:2}.text-only>.hero-copy{grid-row:1}.coming-grid{grid-template-columns:1fr}.inside .bubble img{height:125px}.inside .bubble span{font-size:19px}.glass-photo{padding:15px}.content-window,.inside .content-window{padding:26px 20px}.hero-copy h2{font-size:1.65rem}.logo-above>.glass-photo{max-width:300px}}
@media(max-width:620px){body:not(.inside) .bubble span{font-size:clamp(21px,5vw,28px);bottom:12%}body:not(.inside) .costuming span{max-width:90%;width:90%}.inside .bubbles{grid-template-columns:repeat(2,minmax(0,1fr))}.inside .bubble img{height:120px}.inside .bubble span{font-size:20px}}
@media(prefers-reduced-motion:reduce){a.glass-photo{transition:none}a.glass-photo:hover{transform:none}}

/* R11: consistent iridescent rims, complete photographs, and clean navigation. */
body,button,input,textarea,select,h1,h2,h3,.bubble span,.inside .bubble span,body:not(.inside) .bubble span,.identity p,body:not(.inside) .identity p,footer p:first-child{font-family:Calibri,Arial,sans-serif}
h1,h2,h3{font-weight:500}
.inside .bubbles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px;padding:12px 34px 20px;align-items:start}
.inside .bubble{position:relative;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%;height:auto;min-width:0;margin:0;padding:0;display:grid;grid-template-rows:145px auto;gap:3px;transform:none}
.inside .bubble img{grid-row:1;width:100%;height:145px;max-height:none;object-fit:contain}
.inside .bubble span{grid-row:2;position:static;inset:auto;width:100%;max-width:100%;min-height:2.4em;padding:0;transform:none;font-size:clamp(17px,1.45vw,23px);line-height:1.15;display:flex;align-items:flex-start;justify-content:center;overflow-wrap:normal}
.inside .bubble:hover{transform:none}.inside .bubble[aria-current=page] span{box-shadow:none}
.glass-photo{display:block;aspect-ratio:1332/1181;padding:0;border:0;border-radius:0;background:none;box-shadow:none;overflow:visible;isolation:isolate}
.glass-photo:before{content:'';position:absolute;inset:0;background-image:var(--photo);background-position:center;background-size:cover;filter:blur(12px) brightness(.58);clip-path:ellipse(44% 43% at 50% 52%);z-index:-1}
.glass-photo:after{content:'';position:absolute;inset:0;border:0;border-radius:0;box-shadow:none;background:url('assets/bubble-rim.png') center/100% 100% no-repeat;pointer-events:none;z-index:2}
.glass-photo img{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);display:block;width:var(--fit-width,65%);height:var(--fit-height,65%);max-width:none;max-height:none;object-fit:contain;border-radius:0;margin:0;background:none}
a.glass-photo:hover{box-shadow:none;filter:drop-shadow(0 5px 10px #061522aa)}
.built-in-bubble{aspect-ratio:auto!important;padding:0!important;border:0!important;box-shadow:none!important;background:none!important}
.built-in-bubble:before,.built-in-bubble:after{display:none!important}
.built-in-bubble img{position:static;transform:none;display:block;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain;border-radius:0;margin:0}
@media(max-width:1100px){.inside .bubbles{grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;margin:auto;gap:18px 28px}.inside .bubble{grid-template-rows:125px auto}.inside .bubble img{height:125px}.inside .bubble span{font-size:21px}}
@media(max-width:620px){.inside .bubbles{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;padding:12px 16px 20px}.inside .bubble{grid-template-rows:115px auto}.inside .bubble img{height:115px}.inside .bubble span{font-size:20px;min-height:2.4em}.glass-photo{padding:0}.hero-row>.built-in-bubble{width:min(100%,370px)}}

/* R12: photographs fill the rim; approved transparent logos retain their fit. */
.glass-photo:not(.built-in-bubble):not(.fitted-logo):before{display:none}
.glass-photo:not(.built-in-bubble):not(.fitted-logo) img{left:0;top:0;transform:none;width:100%;height:100%;object-fit:cover;object-position:center;clip-path:url(#photo-bubble-clip)}
.event-list{margin:20px 0 32px}
.event-list .event-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.8fr);gap:20px;padding:18px 0;border-bottom:1px solid #c78c9c77;align-items:baseline}
.event-entry h3,.event-entry p{margin:0}.event-entry h3{font-size:1.2rem;color:#f7c9be}
@media(max-width:620px){.event-list .event-entry{grid-template-columns:1fr;gap:7px}}

/* Appearances archive: readable title and compact role notes. */
#appearances-title{font-size:clamp(1.7rem,3.6vw,2.8rem);line-height:1.18;max-width:30ch}
.event-role{display:block;margin-top:.5rem;font-size:.94em;line-height:1.55;color:#e4e1eb}
.event-years{display:block;font-weight:600}

/* Keep the full height of the family portrait within the bubble. */
.glass-photo.family-photo:not(.built-in-bubble):not(.fitted-logo):before{display:block;background-image:url('assets/archive/family-wheelchairs.jpg');background-size:cover;background-position:center;filter:blur(9px);clip-path:url(#photo-bubble-clip)}
.glass-photo.family-photo:not(.built-in-bubble):not(.fitted-logo) img{object-fit:contain;object-position:50% 80%}

/* Wide exhibit: retain all three thrones inside the existing bubble. */
.glass-photo.thrones-photo:not(.built-in-bubble):not(.fitted-logo):before{display:block;background-image:url('assets/portfolio/gotham-arkham-thrones.jpg');background-size:cover;background-position:center;filter:blur(12px) brightness(.65);clip-path:url(#photo-bubble-clip)}
.glass-photo.thrones-photo:not(.built-in-bubble):not(.fitted-logo) img{object-fit:contain;object-position:50% 55%;padding:11%}

/* Fit the complete Marching Dragons logo on a white bubble interior. */
.glass-photo.white-logo:not(.built-in-bubble):not(.fitted-logo) img{object-fit:contain;object-position:center;padding:16%;background:#fff}

/* Equal-width navigation artwork keeps the six menu items evenly spaced. */
.inside .bubbles{max-width:1280px;margin-inline:auto;column-gap:18px}
.inside .bubble{grid-template-rows:180px auto;justify-items:center}
.inside .bubble img{width:180px;max-width:100%;height:auto;max-height:180px;align-self:center;justify-self:center}
@media(max-width:1100px){.inside .bubbles{max-width:760px}.inside .bubble{grid-template-rows:145px auto}.inside .bubble img{width:155px;max-height:145px}}
@media(max-width:620px){.inside .bubble{grid-template-rows:125px auto}.inside .bubble img{width:140px;max-height:125px}}
/* Blend the portrait into its extended backdrop above Shade's hat. */
.glass-photo.family-photo:not(.built-in-bubble):not(.fitted-logo):before{filter:blur(18px);background-position:50% 12%}
.glass-photo.family-photo:not(.built-in-bubble):not(.fitted-logo) img{-webkit-mask-image:linear-gradient(to bottom,transparent 17%,#000 22%,#000 94%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 17%,#000 22%,#000 94%,transparent 100%)}

/* Shared advocacy group crop includes Mera on the left and the gentleman on the right. */
.glass-photo:not(.built-in-bubble):not(.fitted-logo) img.advocacy-group-photo{object-position:90% 50%}
