/* Theme 03. Every image is a replaceable asset; all content remains real text. */
html[data-portal-theme="event"]{--event-bg:#faf5ec;--event-red:#822f3c;--event-ink:#30261e;--event-sage:#646d56}
html[data-portal-theme="event"] body{background-color:var(--event-bg);background-image:var(--event-paper,none);background-size:512px;color:var(--event-ink)}
html[data-portal-theme="event"] .hero{display:none}
html[data-portal-theme="event"] .site-header{background:#faf7f0;border-bottom:1px solid #cbb7aa;position:relative}
html[data-portal-theme="event"] .header-inner{max-width:1440px;padding:20px 40px;gap:24px}
html[data-portal-theme="event"] .brand-name{color:var(--event-red);font-size:clamp(23px,2.2vw,32px)}
html[data-portal-theme="event"] .brand-sub{display:none}
html[data-portal-theme="event"] .site-nav a{color:var(--event-ink);font-size:15px}
html[data-portal-theme="event"] .site-nav .nav-enroll{background:var(--event-red);color:#fff;border:0}
#event-theme-root{position:relative;max-width:1440px;margin:auto;isolation:isolate;overflow:hidden}
#event-theme-root *,#event-theme-root *::before{box-sizing:border-box}
.event-feature{display:grid;grid-template-columns:minmax(0,38%) minmax(0,62%);grid-template-rows:1fr auto;align-items:center;position:relative;padding:30px 36px 24px 48px}
.event-copy{grid-column:1;grid-row:1;padding:0 0 16px;z-index:2}
.event-eyebrow{font-size:16px;font-weight:700;letter-spacing:3px;color:var(--event-sage);margin:0 0 18px}
#event-theme-title{font-family:var(--display-serif,"Songti SC",serif);color:var(--event-red);font-size:clamp(38px,5.2vw,74px);line-height:1.18;font-weight:700;letter-spacing:-1px;margin:0 0 16px;overflow-wrap:anywhere}
#event-theme-title span{display:block}
.event-subtitle{font:600 clamp(19px,2.05vw,28px)/1.5 var(--display-serif,"Songti SC",serif);color:var(--event-sage);margin:0 0 10px}
.event-intro{font-size:17px;line-height:1.75;margin:0 0 18px;color:var(--event-ink)}.event-intro-mobile{display:none}
.event-facts{display:grid;gap:9px;margin:16px 0 0;font-size:16px;line-height:1.6}
.event-facts>div{display:grid;grid-template-columns:38px 1fr;gap:10px}.event-facts dt{color:var(--event-red);font-weight:700}.event-facts dd{margin:0;overflow-wrap:anywhere}
.event-art{grid-column:2;grid-row:1/3;margin:0 -36px 0 6px;position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;z-index:1}
.event-art picture{display:block;width:100%}.event-art img{display:block;width:100%;height:auto;object-fit:contain;max-height:630px}.event-art figcaption{font-size:12px;line-height:1.5;text-align:right;color:#6e6459;padding:0 20px 4px}
.event-cta{grid-column:1;grid-row:2;display:flex;gap:14px;z-index:2;padding:6px 0 8px;flex-wrap:wrap}
.event-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;min-width:165px;padding:12px 22px;border:1.5px solid var(--event-red);border-radius:5px;color:var(--event-red);font-size:18px;font-weight:700;text-decoration:none;background:#faf5ec}
.event-button-primary{background:var(--event-red);color:#fff}.event-button:hover{box-shadow:0 0 0 3px #822f3c20}.event-button:focus-visible,.event-services a:focus-visible{outline:3px solid #626e4a;outline-offset:4px}
.event-program{position:relative;z-index:2;padding:12px 52px 25px}
.event-program h2{font:700 33px/1.4 var(--display-serif,"Songti SC",serif);color:var(--event-red);text-align:center;margin:8px 0 28px}
.event-timeline{display:flex;list-style:none;padding:0;margin:0;gap:0}
.event-timeline li{position:relative;flex:1;min-width:0;text-align:center;border-top:1px solid #ac716d;padding:15px 9px 0}
.event-timeline li::before{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--event-red);top:-5px;left:calc(50% - 4px)}
.event-timeline time{font-weight:700;font-size:20px;color:var(--event-red)}
.event-timeline h3{font-size:18px;line-height:1.5;margin:4px 0 0;font-weight:600}.event-timeline p{font-size:14px;line-height:1.6;color:#75675c;margin:8px 0 0}
.event-full-flow{display:block;width:fit-content;margin:18px 0 0 auto;color:var(--event-sage);font-weight:600;text-underline-offset:5px;font-size:16px;padding:8px 0}
.event-services{display:grid;grid-template-columns:1fr 1fr;gap:0;position:relative;z-index:2;margin:0 48px;padding:22px 0;border-block:1px solid #d8c8ba;background:#ffffff45}
.event-services a{display:grid;gap:5px;color:var(--event-ink);text-decoration:none;padding:0 30px}.event-services a+a{border-left:1px solid #d8c8ba}
.event-services strong{font:700 26px/1.3 var(--display-serif,"Songti SC",serif);color:var(--event-red)}.event-services span{font-size:15px;line-height:1.6}
.event-principles{position:relative;z-index:2;color:var(--event-sage);font-size:16px;text-align:center;letter-spacing:3px;margin:0;padding:24px 20px}
.event-ornament{position:absolute;pointer-events:none;width:175px;z-index:0}.event-ornament-top{right:-22px;top:-6px}.event-ornament-bottom{left:-66px;bottom:-35px;transform:rotate(180deg);width:125px}
.event-image-unavailable picture{display:none}.event-image-unavailable{min-height:200px}
@media(max-width:1100px) and (min-width:768px){html[data-portal-theme="event"] .header-inner{padding:16px 24px;display:block}html[data-portal-theme="event"] .site-nav{justify-content:flex-start;margin-top:12px}.event-feature{padding-left:28px}.event-button{font-size:16px;min-width:140px;padding-inline:14px}.event-program{padding-inline:28px}}
@media(max-width:767px){
 html[data-portal-theme="event"] .header-inner{padding:16px 20px 10px;display:block}
 html[data-portal-theme="event"] .brand-row{align-items:flex-start}html[data-portal-theme="event"] .brand-logo:not([src]){display:none}
 html[data-portal-theme="event"] .brand-name{font-size:22px;line-height:1.28;max-width:250px;white-space:normal}
 html[data-portal-theme="event"] .brand-sub{display:block;color:#75675c;font-size:13px;margin-top:4px}
 html[data-portal-theme="event"] .brand{display:flex;flex-wrap:wrap;gap:3px;min-width:0}html[data-portal-theme="event"] .brand-logo{flex-shrink:0}
 html[data-portal-theme="event"] .header-action{font-size:13px;min-height:40px;padding:8px 11px;background:var(--event-red);color:#fff;border:0}
 html[data-portal-theme="event"] .site-nav{display:flex;overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start;gap:7px;margin-top:14px;padding-bottom:4px;scrollbar-width:thin}
 html[data-portal-theme="event"] .site-nav a{font-size:14px;padding:8px 7px;white-space:nowrap;flex:0 0 auto;min-height:44px}
 html[data-portal-theme="event"] .site-nav .nav-enroll{display:none}
 .event-feature{display:flex;flex-direction:column;align-items:stretch;padding:22px 20px 18px}
 .event-copy{padding:0}.event-eyebrow{font-size:14px;margin-bottom:14px;letter-spacing:2px}
 #event-theme-title{font-size:clamp(30px,10.2vw,40px);line-height:1.24;letter-spacing:0;margin-bottom:12px}
 .event-subtitle{font-size:19px;color:var(--event-ink);margin-bottom:10px}.event-intro{font-size:15px;line-height:1.6;margin-bottom:12px}
 .event-facts{font-size:15px;gap:8px;margin-top:12px}.event-facts>div{grid-template-columns:30px 1fr;gap:6px}
 .event-art{margin:16px -20px 0;display:block}.event-art img{aspect-ratio:4/3;object-fit:contain;max-height:none}.event-art figcaption{font-size:11px;padding:0 16px 0}
 .event-intro-desktop{display:none}.event-intro-mobile{display:block;text-align:center;font:600 17px/1.65 var(--display-serif,"Songti SC",serif);margin:12px 0 0}
 .event-cta{padding:16px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .event-button{min-width:0;min-height:48px;font-size:15px;padding:10px 7px;text-align:center}
 .event-program{padding:14px 22px 18px}.event-program h2{font-size:26px;line-height:1.4;text-align:left;margin:0 0 23px}
 .event-timeline{display:grid;gap:0}.event-timeline li[data-mobile-highlight="false"]{display:none}
 .event-timeline li{display:grid;grid-template-columns:58px 1fr;text-align:left;gap:14px;border-top:0;border-left:1px solid #c99d89;padding:0 0 20px 16px;margin-left:5px}
 .event-timeline li::before{top:8px;left:-5px}.event-timeline time{font-size:18px}.event-timeline h3{font-size:17px;margin:0}.event-timeline p{font-size:14px;line-height:1.5;margin:3px 0 0}
 .event-full-flow{margin-top:0;font-size:15px}.event-services{margin:0 20px;padding:17px 0;grid-template-columns:1fr;gap:0}.event-services a{padding:0 8px}.event-services a+a{display:none}.event-services strong{font-size:22px}.event-services span{font-size:14px}
 .event-principles{font-size:12px;letter-spacing:1px;padding:20px 10px}.event-ornament-top{width:115px;right:-28px;top:0;opacity:.7}.event-ornament-bottom{width:100px;left:-45px;bottom:-30px}
}
