.brand{width:360px;min-width:360px;gap:0}
.brand img{width:330px;height:auto;max-height:none;object-fit:contain;object-position:left center}
.brand:after{display:block;width:330px;max-width:none;margin-top:4px;text-align:justify;text-align-last:justify;white-space:nowrap}
@media(max-width:720px){
  html,body{max-width:100%;overflow-x:hidden}
  .site-header{height:126px}
  .nav{position:relative;padding:0 10px;gap:0}
  .brand{width:calc(100vw - 56px);max-width:none;min-width:0}
  .brand img{width:min(330px,calc(100vw - 70px));max-width:none;min-width:0}
  .brand{gap:0;padding-right:4px}
  .brand img{height:auto;max-height:none;object-fit:contain;object-position:left center}
  .brand:after{width:min(330px,calc(100vw - 70px));max-width:none;margin-top:3px;font-size:clamp(7.2px,2.25vw,8.8px);letter-spacing:.01em;line-height:1.1;text-align:justify;text-align-last:justify;white-space:nowrap}
  .language{position:absolute;right:10px;top:auto;bottom:12px;margin:0;transform:none}
  .lang-toggle{width:auto;height:30px;padding:0 7px;border-color:rgba(230,220,235,.28);border-radius:4px;background:rgba(230,220,235,.05);color:rgba(230,220,235,.82);font-size:9px;letter-spacing:.08em;box-shadow:none}
  .lang-toggle:after{content:"⌄";display:inline-block;margin-left:3px;font-size:9px;line-height:1;opacity:.55;transform:translateY(-1px)}
  .lang-toggle:hover,.lang-toggle:focus-visible{background:rgba(230,220,235,.1);color:var(--lav);border-color:rgba(230,220,235,.45)}
  .lang-menu{top:36px;min-width:62px;border-color:rgba(230,220,235,.18);border-radius:4px;box-shadow:0 12px 28px rgba(0,0,0,.22)}
  .lang-menu button{text-align:center;font-size:10px}
  .mobile-panel.open{top:126px;padding:28px 22px;gap:0;border-top:1px solid rgba(230,220,235,.14)}
  .mobile-panel a{padding:15px 0;border-bottom:1px solid rgba(230,220,235,.12);font-size:14px}
  .hero{min-height:auto;padding-top:72px;padding-bottom:78px}
  .page-hero{padding-top:70px;padding-bottom:62px}
  .hero h1,.page-hero h1,.association-hero h1,.projects-hero h1{max-width:100%;font-size:clamp(42px,12.5vw,56px);line-height:.96;letter-spacing:-.045em;white-space:normal;overflow-wrap:break-word}
  .hero p,.page-hero p,.association-hero p,.projects-hero p{max-width:100%;font-size:17px;line-height:1.55;white-space:normal}
  .section{padding-top:68px;padding-bottom:68px}
  .section-title{font-size:clamp(40px,12vw,56px);line-height:1.02}
  .intro{font-size:clamp(25px,7.5vw,34px);line-height:1.16}
  .body-copy{max-width:100%;font-size:16px;line-height:1.7}
  .grid{grid-template-columns:1fr;gap:15px;margin-top:34px}
  .card{min-height:auto;padding:25px}
  .card h2,.card h3{font-size:31px}
  .values{font-size:clamp(38px,11vw,54px);line-height:1.02;overflow-wrap:break-word}
  .project-art{font-size:clamp(39px,12vw,54px);min-height:260px}
  .project-copy h2{font-size:38px;overflow-wrap:anywhere}
  .cta{padding:58px 20px}
  .cta h2{font-size:clamp(36px,10vw,48px)}
  .button{max-width:100%;padding:14px 17px;text-align:center;white-space:normal}
  .footer{padding-left:20px;padding-right:20px}
  .footer-logo{font-size:34px}
  .team-intro .section-title{font-size:clamp(48px,14vw,64px)}
  .team-intro p{font-size:15px;line-height:1.65}
  .team-card{min-height:330px}
  .definitions-words{font-size:clamp(34px,10vw,48px);overflow-wrap:break-word}
  .profile-copy h1{font-size:clamp(62px,18vw,86px)}
  .profile-bio{font-size:20px;line-height:1.55}
  .definition-entry h2{font-size:clamp(42px,13vw,58px)}
  .definition-intro{font-size:19px;line-height:1.6}
}
@media(max-width:380px){
  .site-header{height:132px}
  .brand{width:calc(100vw - 52px)}
  .brand img{width:min(300px,calc(100vw - 66px))}
  .brand:after{width:min(300px,calc(100vw - 66px));max-width:none;margin-top:3px;font-size:7.2px;letter-spacing:0}
  .language{bottom:11px}
  .mobile-panel.open{top:132px}
  .lang-toggle{height:28px;padding:0 6px}
  .hero h1,.page-hero h1,.association-hero h1,.projects-hero h1{font-size:clamp(38px,12vw,46px)}
}
