:root{--bg:#38234b;--panel:#2b193c;--purple:#38234b;--gold:#e3a73b;--text:#f1ead7;--muted:#d8cce0;--heading:'Barlow Condensed','BSR Display',Arial,sans-serif}
.mission-photo{position:relative;margin:42px 0 8px;padding:10px 10px 24px;background:#fffdf5;box-shadow:0 8px 20px #38234b20;transform:rotate(-3deg)}
.mission-photo::before{content:'';position:absolute;z-index:1;top:-12px;left:34%;width:32%;height:27px;background:#d99a2cd9;transform:rotate(4deg)}
.mission-photo img{display:block;width:100%;height:auto}
@media(max-width:760px){.mission-photo{max-width:360px;margin:30px auto 12px;transform:rotate(-2deg)}}
.mission-resilience{margin-top:28px;padding-top:24px;border-top:1px solid #38234b30}
.mission-resilience h3{font-size:21px;line-height:1.35;font-weight:700;color:var(--team-purple);margin-bottom:15px}
.resilience-source{display:inline-block;margin-top:15px;font-size:11px;line-height:1.6;color:#725441;text-decoration:underline;text-underline-offset:3px}
.resilience-source:hover{color:var(--team-purple)}
.sidebar-resizer{display:none}
@media(min-width:761px){
  body{--sidebar:var(--desktop-sidebar,104px)}
  .sidebar{padding-top:21px;justify-content:flex-start}
  .sidebar .brand{margin-top:10px}
  .sidebar nav{position:absolute;top:50%;left:11px;width:calc(100% - 22px);transform:translateY(-50%)}
  .sidebar-social{margin-top:auto}
  .sidebar-resizer{display:block;position:fixed;z-index:44;left:calc(var(--sidebar) - 4px);top:52px;bottom:16px;width:8px;cursor:ew-resize;touch-action:none}
  .sidebar-resizer:hover,.sidebar-resizer:focus-visible{background:#e3a73b70;outline:none}
  .sidebar-resizing,.sidebar-resizing *{cursor:ew-resize!important;user-select:none!important}
}
@media(min-width:761px) and (max-height:760px){
  .sidebar{padding-top:8px}
  .sidebar .language-switch{padding-block:3px}
  .sidebar .brand{margin-top:5px}
  .sidebar .brand img{width:58px;height:58px;margin-inline:auto}
  .sidebar nav a{padding-block:8px}
}
@media(min-width:761px) and (max-height:620px){
  .sidebar nav{position:static;transform:none;width:100%;margin:18px 0}
  .sidebar-social{margin-top:0}
}
.portrait-card[data-dialog=pr] img{object-position:50% 67%}
.portrait-card[data-dialog=members] img{object-position:50% 55%}
body{background:var(--team-purple);color:var(--paper)}
h1,h2{font-family:var(--heading);font-weight:800}
.section h2,.journey-section h2,.sponsors-section h2,.support-section h2,html[lang=en] .faq-intro h2{font-size:clamp(40px,4.8vw,66px);line-height:1.02;letter-spacing:-.02em}
.sidebar,footer{background:#281a36}
.mobile-bar{background:#281a36f5}
.sidebar{border-right-color:#f1ead722}
.sidebar nav a,.sidebar-social>span{color:#e5dce9}
.hero{background:var(--team-purple)}
.hero h1{font-family:var(--heading);font-weight:800;font-size:clamp(78px,11.5vw,168px);line-height:.9;letter-spacing:-.025em}
.hero h1 .title-line{color:var(--paper)}
.hero::before{background:linear-gradient(180deg,#38234b20 20%,#38234b44 70%,#38234bcc)}
.hero-eyebrow,.hero-topline,.hero-bottom{color:var(--paper)}
.button{border-radius:2px}
.hero-actions .button-white,.button-gold{background:var(--gold);border-color:var(--gold);color:var(--paper-ink)}
.hero-actions .button-outline{border-color:#f1ead799;background:#38234b99;color:var(--paper)}
.story-album{height:490px}
.album-frc{top:15px;right:2%;width:73%;transform:rotate(4deg)}
.album-fll{left:1%;bottom:7px;width:69%;transform:rotate(-4deg)}
.story-years{margin-top:45px}
.story-mission{box-shadow:0 7px 0 var(--mustard)}
.team-section,.projects-section,.sponsors-section,.faq-section{background:var(--paper);color:var(--paper-ink);--gold:#855713;padding-top:70px;padding-bottom:70px}
.team-section .button-outline{color:var(--team-purple);background:transparent;border-color:#38234b70;box-shadow:none}
.team-section .button-outline:hover{background:#38234b0e}
.portrait-card{border:7px solid #fffbef;box-shadow:0 5px 12px #38234b16;background:var(--team-purple)}
.portrait-label{color:var(--paper);background:linear-gradient(transparent,#281a36ed)}
.portrait-label strong{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:24px;letter-spacing:.1px}
html[lang=en] .portrait-label strong{font-size:21px}
.portrait-label i{color:var(--paper)}
.journey-section{background:#38234b;color:var(--paper);padding-block:75px}
.competition-feature{border:9px solid var(--paper);box-shadow:0 7px 0 #d99a2c}
.competition-feature h3,.achievement strong{font-family:'Barlow Condensed',sans-serif;font-weight:800}
.competition-feature h3{font-size:37px;line-height:1}
.filter-tabs button{border:1px solid #f1ead74d;color:var(--paper)}
.filter-tabs button[aria-selected=true]{background:var(--paper);color:var(--paper-ink)}
.timeline-row>span{color:#efbb62;font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:800}
.timeline-row h3{color:var(--paper)}
.timeline-row p,.competition-feature p{color:#e5d9eb}
.result-badge,.result-badge.award{color:#efbb62}
.achievement strong,.achievement.wide strong{color:var(--paper)}
.achievement span,.achievement p{color:#e0d2e8}
.project-image{border:7px solid #fffbef;box-shadow:0 4px 12px #38234b12}
.project-info>span,.project-card:not(:first-child) .project-info>span{color:#73543b}
.project-info h3{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:31px;color:var(--paper-ink);letter-spacing:0}
.project-image>i{color:var(--paper);background:var(--team-purple)}
.project-card:hover .project-image>i{background:var(--mustard);color:var(--paper-ink)}
.impact-strip{border-top-color:#38234b30;color:#594637}
.impact-strip strong{color:var(--paper-ink)}
.projects-section .circle-button{color:var(--team-purple);border-color:#38234b70;background:transparent}
.gallery-section{background:var(--team-purple);padding-block:70px}
.gallery-card{border:8px solid var(--paper);border-bottom-width:23px;aspect-ratio:1.2;box-shadow:0 5px 12px #180b2825}
.gallery-card img{height:100%;object-fit:cover}
.gallery-section .text-link{color:var(--paper);border-color:#b59dc5}
.gallery-controls{color:var(--paper)}
.circle-button{border-color:#f1ead777;color:var(--paper)}
.sponsors-section{padding-bottom:35px}
.sponsor-grid{background:transparent;gap:12px;padding:0}
.sponsor{background:#fffdf7;border:1px solid #38234b16}
.faq-section{padding-top:45px}
.faq-list,.faq-list details{border-color:#38234b35}
.faq-list summary{color:var(--paper-ink)}
.faq-list summary:hover,.faq-list details[open]>summary{color:#71440c}
.faq-answer{color:#594b40}
.faq-answer strong,.faq-answer p a,.faq-intro .text-link{color:var(--team-purple)}
.faq-source{color:#725441;border-color:#977e62}
.faq-source:hover{color:var(--team-purple)}
.faq-intro .text-link{border-color:#977e62}
.support-section{background:var(--mustard);color:var(--paper-ink);padding-block:70px}
.support-section p{color:#402a18}
.support-actions .button-gold{background:var(--team-purple);color:var(--paper);border:1px solid var(--team-purple)}
.support-actions .button-gold:hover{background:#281a36}
.support-actions .button-outline{background:transparent;color:var(--paper-ink);border-color:#4e331f;box-shadow:none}
.support-actions .button-outline:hover{background:#f1ead733}
.support-section :focus-visible{outline-color:var(--team-purple)}
footer{color:var(--paper);border-color:#f1ead733}
.footer-brand{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:36px}
.footer-bottom{color:#d2bfdc}
dialog{background:var(--paper);color:var(--paper-ink);border:1px solid #38234b40}
.dialog-close{background:var(--team-purple);color:var(--paper)}
.dialog-text h2,.members-content h2,.sponsor-dialog h2{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:42px;line-height:1.05}
.dialog-text p:not(.subtitle),.sponsor-dialog>p,.sponsor-option p{color:#594b40}
.dialog-text .subtitle,.members-content .subtitle,.sponsor-dialog .subtitle,.sponsor-dialog .contact-line{color:#744b16}
.dialog-text .text-link{color:var(--team-purple);border-color:#947955}
.members-columns h3,.sponsor-option h3{color:var(--team-purple);border-color:#38234b35}
.members-columns li,.sponsor-option{border-color:#38234b25}
dialog :focus-visible{outline-color:var(--team-purple)}
#photo-dialog{background:var(--team-purple);color:var(--paper)}
#lightbox-image{background:#281a36}
@media(max-width:1100px){.story-album{height:420px}.portrait-label strong,html[lang=en] .portrait-label strong{font-size:19px}}
@media(max-width:760px){
  .hero h1{font-size:clamp(62px,16vw,112px)}
  .section h2,.journey-section h2,.sponsors-section h2,.support-section h2,html[lang=en] .faq-intro h2{font-size:42px}
  .story-intro h2,html[lang=en] .story-intro h2{font-size:clamp(46px,12.8vw,75px)}
  .story-album{height:410px;max-width:420px;margin-top:10px}
  .album-frc{top:10px;right:3%;width:80%}
  .album-fll{bottom:8px;left:3%;width:77%}
  .story-years{margin-top:35px}
  .team-section,.projects-section,.gallery-section,.journey-section{padding-block:50px}
  .sponsors-section{padding-block:45px 25px}
  .faq-section{padding-block:35px 50px}
  .portrait-card{border-width:5px}
  .portrait-label strong,html[lang=en] .portrait-label strong{font-size:18px}
  .portrait-label{padding-inline:9px}
  .project-info h3{font-size:25px}
  .competition-feature{border-width:6px}
  .competition-feature h3{font-size:33px}
  .gallery-card{border-width:6px;border-bottom-width:19px}
  .support-section{padding-block:48px}
  .dialog-text h2,.members-content h2,.sponsor-dialog h2{font-size:34px}
}
@media(max-width:380px){.story-album{height:370px}.section h2,html[lang=en] .faq-intro h2{font-size:38px}}
