/* Header + hero refinement. Prefixed with .public-shell to win over component-level CSS loaded later. */
.bkm-seal{background:none!important;overflow:visible!important;border-radius:50%}
.bkm-seal>img{position:static!important;width:100%!important;height:100%!important;left:auto!important;top:auto!important;object-fit:contain}

.public-shell .topline{padding:9px max(24px,calc((100% - 1320px)/2));font-size:13px;letter-spacing:.9px;font-weight:500;color:#dfe5d6;background:var(--ink);border-bottom:1px solid #ffffff1a}
.public-shell .topline-right{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 20px;margin-left:auto}
.public-shell .topline-account{display:inline-flex;align-items:center;gap:8px;font-size:14px;white-space:nowrap}

.public-shell .site-header{background:var(--ink);border-bottom:1px solid #ffffff24;box-shadow:none}
.public-shell .nav-wrap{height:92px;gap:24px}
.public-shell .site-header .brand,.public-shell .site-footer .brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.public-shell .brand .bkm-seal{--seal-size:60px;margin:0}
.public-shell .brand-wordmark{display:block;height:56px;width:auto;filter:none}
.public-shell .brand .main-brand-logo{max-width:min(190px,32vw);object-fit:contain;object-position:left center}
.public-shell .site-footer .brand .bkm-seal{--seal-size:72px}
.public-shell .site-footer .brand-wordmark{height:60px;filter:none}

.public-shell .site-header .nav-links{gap:22px;margin-right:6px}
.public-shell .site-header .nav-links>a{font-size:16px;font-weight:500;color:#f7f4e9;transition:color .2s ease}
.public-shell .site-header .nav-links>a:hover{color:#f2cf63}
.public-shell .site-header .nav-links>a.active{color:#f2cf63;font-weight:650}
.public-shell .nav-menu-cta{display:none}
.public-shell .site-header .nav-cta{font-size:15px;font-weight:600;gap:12px;padding:13px 18px;border-radius:999px;background:#ebc656;color:#101d18;transition:background .2s ease,transform .2s ease;white-space:nowrap}
.public-shell .site-header .nav-cta:hover{background:#f7d979;transform:translateY(-1px)}
.public-shell .language-switch{font-size:15px;gap:2px;padding:3px;border:1px solid #536157;border-radius:999px;background:#20352b}
.public-shell .language-switch>span{display:none}
.public-shell .site-header .language-switch button{padding:7px 12px;border-radius:999px;font-size:14px;font-weight:550;color:#f7f4e9;transition:background .2s ease,color .2s ease;min-height:36px}
.public-shell .site-header .language-switch button.active{background:#ebc656;color:#101d18;font-weight:650}
.public-shell .site-header .menu-toggle{width:44px;height:44px;border-radius:50%;border:1px solid #536157!important;color:#f7f4e9}
.public-shell .header-socials{display:flex;align-items:center;gap:20px;border-left:1px solid #ffffff38;padding-left:24px;flex-shrink:0;color:#f6f3e9}
.public-shell .header-social-link{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;transition:color .15s}
.public-shell a.header-social-link:hover{color:#ebc656}
.public-shell .header-social-link.unavailable{cursor:not-allowed}

/* Hero */
.public-shell .hero{gap:72px;padding-top:72px;padding-bottom:88px;min-height:0;align-items:center}
.public-shell .hero .eyebrow{font-size:14px;letter-spacing:2.2px;font-weight:600;color:#8a5e17;display:inline-flex;align-items:center;gap:12px}
.public-shell .hero .eyebrow:before{content:'';width:32px;height:2px;background:var(--yellow)}
.public-shell .hero h1{font-size:clamp(52px,5.6vw,88px);letter-spacing:-.035em;line-height:1.02;margin:26px 0 28px}
.public-shell .hero h1 em{letter-spacing:-.02em;color:var(--green)}
.public-shell .hero-description{font-size:19px;line-height:1.7;max-width:500px;color:#4f5a51}
.public-shell .hero-actions{gap:28px;margin-top:38px}
.public-shell .hero-actions .button{font-size:16px;font-weight:600;gap:18px;padding:17px 26px;min-height:58px;border-radius:999px}
.public-shell .hero-actions .quiet-link{font-size:16px;font-weight:600}
.public-shell .hero-actions .quiet-link>span{width:42px;height:42px}
.public-shell .hero-location{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);max-width:500px;align-items:flex-start;color:var(--green)}
.public-shell .hero-location>span{font-size:16px;font-weight:600;color:var(--ink)}
.public-shell .hero-location small{font-size:15px;margin-top:6px}
.public-shell .hero-visual{min-height:560px;padding:0}
.public-shell .hero-photo{min-height:560px;border-radius:28px;box-shadow:0 30px 60px -30px rgb(20 48 36 / 45%)}
.public-shell .hero-photo>img{filter:saturate(.85)}
.public-shell .photo-caption{left:32px;bottom:30px;right:32px}
.public-shell .photo-caption>span{font-size:13px;letter-spacing:2px;font-weight:600}
.public-shell .photo-caption p{font-size:36px}

/* Footer */
.public-shell .site-footer{background:var(--ink)}
.public-shell .invitation-wordmark{width:180px;height:auto;object-fit:contain;flex-shrink:0;animation:none}
@media(max-width:800px){
  .public-shell .invitation-wordmark{width:120px}
}
@media(max-width:600px){
  .public-shell .invitation-layout{gap:20px}
  .public-shell .invitation-wordmark{width:85px}
  .public-shell .invitation-layout>div{margin-left:105px}
}
.public-shell .public-footer-middle{font-size:16px}
.public-shell .public-footer-middle nav a{font-size:16px}
.public-shell .footer-bottom{font-size:14px}
.public-shell .footer-bottom a{font-size:14px}
.public-shell .en-about-manifesto-note,
.public-shell .en-about-kicker,
.public-shell .en-about-culture-photo figcaption>span,
.public-shell .en-about-culture-photo figcaption a{font-size:14px}
.public-shell .visual-credit p,
.public-shell .visual-credit-links,
.public-shell .visual-credits-intro,
.public-shell .photo-source-note{font-size:15px}

@media(max-width:1180px){
  .public-shell .site-header .nav-links{gap:14px}
  .public-shell .site-header .nav-links>a{font-size:15px}
  .public-shell .nav-wrap{gap:14px}
  .public-shell .header-socials{gap:12px;padding-left:14px}
  .public-shell .site-header .nav-cta{display:none}
  .public-shell .brand-wordmark{height:46px}
  .public-shell .brand .bkm-seal{--seal-size:52px}
}
@media(max-width:960px){
  .public-shell .nav-wrap{min-height:78px;height:auto;padding-block:12px;gap:12px;display:grid;grid-template-columns:auto minmax(0,1fr) 44px}
  .public-shell .site-header .brand{margin-right:0}
  .public-shell .menu-toggle{display:grid!important;place-items:center;background:transparent;padding:0}
  .public-shell .site-header .nav-links{position:absolute;top:100%;left:0;right:0;display:none;margin:0;padding:12px 24px 26px;background:var(--ink);border-bottom:1px solid #536157;box-shadow:0 20px 30px -20px rgb(19 38 28 / 25%)}
  .public-shell .site-header .nav-links.open{display:flex;flex-direction:column;align-items:stretch;gap:0;animation:menuIn .22s ease both}
  .public-shell .site-header .nav-links>a{font-size:19px;padding:14px 0;border-bottom:1px solid #34443b}
  .public-shell .site-header .nav-links>a.active:after{display:none}
  .public-shell .site-header .nav-links>a.nav-menu-cta{display:flex;justify-content:space-between;align-items:center;margin-top:18px;padding:16px 20px;border:0;border-radius:999px;background:#ebc656;color:#101d18;font-size:17px;font-weight:600}
  .public-shell .site-header .language-switch{margin:0;justify-self:end;gap:2px}
  .public-shell .hero{grid-template-columns:1fr;gap:40px;padding-top:48px;padding-bottom:64px}
  .public-shell .hero-visual,.public-shell .hero-photo{min-height:420px}
}
@media(max-width:600px){
  .public-shell .topline{font-size:12px;letter-spacing:.5px;padding:8px 16px;gap:10px;flex-wrap:wrap}
  .public-shell .topline>span{font-size:12px}
  .public-shell .topline-right{gap:8px 12px}
  .public-shell .topline-account{font-size:13px}
  .public-shell .header-social-link{font-size:13px;gap:6px}
  .public-shell .nav-wrap{width:calc(100% - 28px);height:auto;min-height:70px;gap:8px}
  .public-shell .site-header .nav-links{top:100%;padding-inline:18px}
  .public-shell .brand{gap:8px}
  .public-shell .brand .bkm-seal{--seal-size:44px}
  .public-shell .brand-wordmark{height:40px}
  .public-shell .language-switch button{font-size:14px;padding:6px 9px}
  .public-shell .hero{padding-top:36px;gap:32px}
  .public-shell .hero .eyebrow{font-size:13px;letter-spacing:1.6px}
  .public-shell .hero h1{font-size:clamp(44px,12.5vw,60px);margin:20px 0 22px}
  .public-shell .hero h1 em{white-space:normal}
  .public-shell .hero-description{font-size:17px}
  .public-shell .hero-actions{gap:20px}
  .public-shell .hero-actions .button{font-size:16px;width:100%}
  .public-shell .hero-location{display:flex;margin-top:32px}
  .public-shell .hero-visual,.public-shell .hero-photo{min-height:380px;height:380px;max-width:none;margin:0}
  .public-shell .hero-photo{border-radius:20px}
  .public-shell .photo-caption{left:22px;bottom:22px}
  .public-shell .photo-caption p{font-size:28px}
  .public-shell .site-footer .brand .bkm-seal{--seal-size:58px}
  .public-shell .site-footer .brand-wordmark{height:48px}
  .public-shell .footer-bottom,.public-shell .footer-bottom a{font-size:14px}
}
@media(max-width:370px){
  .public-shell .topline>span{display:none}
  .public-shell .brand .bkm-seal{--seal-size:40px}
  .public-shell .brand-wordmark{height:36px}
  .public-shell .site-header .language-switch button{padding:6px 7px;font-size:13.5px}
}

/* Remove redundant small section labels and keep the homepage compact. */
.public-shell main .eyebrow{display:none!important}
.public-shell .home-page>.hero{padding-block:28px 36px;gap:40px}
.public-shell .home-page .hero h1{margin:0 0 18px}
.public-shell .home-page .hero-actions{margin-top:24px;gap:20px}
.public-shell .home-page .hero-location{margin-top:24px;padding-top:16px}
.public-shell .home-page .hero-visual{min-height:0}
.public-shell .home-page .hero-photo{height:480px;min-height:0}
.public-shell .home-page>.section,
.public-shell .home-page>.about-section,
.public-shell .home-page>.home-discovery,
.public-shell .home-page>.invitation{padding-block:36px}
.public-shell .home-page .section-heading{margin-bottom:24px}
.public-shell .home-page .section-heading h2,
.public-shell .home-page .about-copy h2,
.public-shell .home-page .discovery-copy h2,
.public-shell .home-page .home-children h2,
.public-shell .home-page .home-questions h2{margin-top:0}
.public-shell .home-page .discovery-results{min-height:0}
@media(max-width:960px){
  .public-shell .home-page>.hero{gap:28px;padding-block:24px 28px}
  .public-shell .home-page .hero-photo{height:400px}
}
@media(max-width:600px){
  .public-shell .home-page>.section,
  .public-shell .home-page>.about-section,
  .public-shell .home-page>.home-discovery,
  .public-shell .home-page>.invitation{padding-block:28px}
  .public-shell .home-page .hero-visual{height:360px}
  .public-shell .home-page .hero-photo{height:360px}
  .public-shell .home-page .section-heading{margin-bottom:20px}
}
@keyframes menuIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.public-shell *{animation:none!important;transition:none!important}}
