/* Public visual theme only. Admin/CMS chrome is unchanged.
   Loaded after styles.css on public pages and applied inside #page-preview. */

:root{
  --efhs-navy:#002142;
  --efhs-navy-deep:#001326;
  --efhs-blue:#0b63d6;
  --efhs-blue-bright:#3c8bff;
  --efhs-silver:#c9d4e4;
  /* Home Game Performance (4): CMS photo 86, 1468x788. Students sit ~20–68% from the top. */
  --efhs-hero-photo:url("/assets/efhs-home-hero.jpg?v=hero-kids-frame-20260918");
  /* Header wordmark row only — not the homepage hero. */
  --efhs-header-banner:url("/assets/header-banner-gen.jpg?v=home-redesign-20261002");
  --efhs-page-photo:none;
  --efhs-card-photo-1:none;
  --efhs-card-photo-2:none;
  --efhs-card-photo-3:none;
  --efhs-display:"Oswald","Work Sans",system-ui,sans-serif;
}

body.efhs-theme{
  background:#fff;
  color:#142033;
}

body.efhs-theme .hero,
body.efhs-theme .page-hero,
body.efhs-theme .section-head h2,
body.efhs-theme .page-title h1,
#page-preview .hero,
#page-preview .page-hero,
#page-preview .section-head h2,
#page-preview .page-title h1{
  font-family:var(--efhs-display);
}

/* ---------- Utility bar ---------- */
body.efhs-theme .utility{
  background:var(--efhs-navy-deep);
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:700;
  margin:0;
  padding:0;
  border:0;
  line-height:1.25;
}
body.efhs-theme .utility .wrap{
  max-width:1240px;
  justify-content:space-between;
  align-items:center;
  padding:5px 20px;
  gap:16px;
}
body.efhs-theme .utility-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:16px;
}
body.efhs-theme .utility a{
  text-decoration:none;
  color:#d5e4f7;
}
body.efhs-theme .utility a:hover,
body.efhs-theme .utility a:focus-visible{
  color:#fff;
  outline:none;
}
body.efhs-theme .utility a.utility-auth:focus-visible{
  outline:2px solid #fff;
  outline-offset:3px;
}

/* ---------- Header / nav: one row, generated night-stadium banner, cover (no stretch) ---------- */
body.efhs-theme header.site-header{
  background-color:#01244a;
  border-bottom:0;
  border-top:1px solid #fff;
  margin:0;
  backdrop-filter:none;
  color:#fff;
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-start;
  column-gap:18px;
  row-gap:0;
  padding:0 28px;
  min-height:84px;
  overflow:visible;
  box-shadow:0 8px 24px rgba(0,19,38,.35);
  background-image:
    linear-gradient(180deg,rgba(0,18,40,.30) 0%,rgba(0,20,44,.24) 48%,rgba(1,36,74,.36) 100%),
    var(--efhs-header-banner);
  background-size:cover;
  background-position:center 20%;
  background-repeat:no-repeat;
}
body.efhs-theme .site-chrome{
  margin-top:0;
}
body.efhs-theme .site-chrome header.site-header{
  background-color:#01244a;
  margin:0;
  top:auto;
}
body.maintenance-preview.efhs-theme .site-chrome header.site-header{
  top:auto;
}
body.efhs-theme .header-inner{
  width:auto;
  flex:0 0 auto;
  justify-content:flex-start;
  padding:0;
  min-height:84px;
  box-sizing:border-box;
  column-gap:0;
  background:none;
}
body.efhs-theme .brand{
  margin:0;
  justify-content:flex-start;
  gap:8px;
  color:#fff;
  text-align:left;
}
body.efhs-theme .brand .brand-logo{
  width:auto;
  height:44px;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.5));
}
body.efhs-theme .brand .brand-mark{
  width:48px;
  height:48px;
  margin-inline-start:0;
  background:transparent;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.65));
}
body.efhs-theme header.site-header .brand span,
body.efhs-theme header.site-header .brand [data-site-field="title"]{
  font-family:var(--efhs-display);
  font-size:1.12rem!important;
  line-height:1.05;
  text-align:left;
  color:#fff;
  letter-spacing:.06em;
  text-transform:uppercase;
  max-width:none;
  width:max-content;
  flex:0 1 auto;
  min-width:0;
  text-shadow:0 1px 2px rgba(0,0,0,.82),0 0 16px rgba(0,8,20,.55);
}
body.efhs-theme header.site-header .brand [data-site-field="title"]{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
body.efhs-theme header.site-header .brand .brand-title-rest::before{
  content:none;
}
body.efhs-theme header.site-header .brand [data-site-field="title"] small{
  display:block;
  font-size:inherit;
  font-weight:inherit;
  letter-spacing:inherit;
  color:inherit;
  font-family:inherit;
  line-height:inherit;
}
body.efhs-theme header.site-header nav{
  flex:1 1 auto;
  width:auto;
  max-width:none;
  justify-content:flex-end;
  border-top:0;
  padding:0;
  gap:2px;
  overflow:visible;
  background:transparent;
  flex-wrap:nowrap;
}
body.efhs-theme .header-donate{
  display:none;
  flex:0 0 auto;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:9px 16px;
  border-radius:6px;
  font-size:.74rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  box-shadow:0 10px 26px rgba(253,215,3,.28);
}
body.efhs-theme header.site-header > .header-donate{display:none!important}
body.efhs-theme .header-donate .ic{
  width:1.05em;
  height:1.05em;
  fill:currentColor;
}
body.efhs-theme header.site-header nav a,
body.efhs-theme header.site-header nav .nav-notify-me,
body.efhs-theme header.site-header nav .nav-support-toggle{
  color:#eaf2ff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:8px 6px;
  border-radius:0;
  white-space:nowrap;
  text-shadow:0 1px 2px rgba(0,0,0,.82),0 0 16px rgba(0,8,20,.55);
}
body.efhs-theme header.site-header nav a:hover,
body.efhs-theme header.site-header nav a:focus-visible,
body.efhs-theme header.site-header nav .nav-notify-me:hover,
body.efhs-theme header.site-header nav .nav-notify-me:focus-visible,
body.efhs-theme header.site-header nav .nav-support-toggle:hover,
body.efhs-theme header.site-header nav .nav-support-toggle:focus-visible{
  background:transparent;
  color:#fff;
  box-shadow:inset 0 -2px 0 var(--efhs-blue-bright);
}
body.efhs-theme header.site-header nav a[aria-current="page"],
body.efhs-theme .nav-support.is-current > .nav-support-toggle{
  color:#fff;
  box-shadow:inset 0 -2px 0 #fff;
}
body.efhs-theme header.site-header nav .nav-notify-me.is-enabled{
  background:rgba(255,255,255,.08);
}
body.efhs-theme .nav-support-toggle{
  font-family:inherit;
  font-weight:800;
}
body.efhs-theme .nav-support-toggle:focus-visible{
  outline:2px solid var(--efhs-blue-bright);
  outline-offset:3px;
}
body.efhs-theme .nav-support-menu{
  top:calc(100% + 4px);
  left:50%;
  transform:translateX(-50%);
  min-width:13.5rem;
  padding:8px 0;
  background:var(--efhs-navy-deep);
  border:1px solid rgba(255,255,255,.14);
  border-radius:10px;
  box-shadow:0 18px 40px rgba(0,12,28,.42);
}
body.efhs-theme .nav-support-menu a{
  display:block;
  width:100%;
  padding:10px 16px;
  color:#eaf2ff;
  box-shadow:none;
  border-radius:0;
  font-size:.76rem;
}
body.efhs-theme .nav-support-menu a:hover,
body.efhs-theme .nav-support-menu a:focus-visible{
  background:rgba(60,139,255,.2);
  color:#fff;
  box-shadow:none;
}
body.efhs-theme .nav-support-menu a[aria-current="page"]{
  background:rgba(255,255,255,.08);
  color:#fff;
  box-shadow:inset 3px 0 0 #fff;
}
body.efhs-theme .mobile-nav-tray{
  display:none;
}

/* ---------- Hero ---------- */
body.efhs-theme .hero,
#page-preview .hero{
  min-height:min(82vh,820px);
  color:#fff;
  isolation:isolate;
  /* Navy / royal panel behind the left slash; photo is clipped in on the right. */
  background:
    radial-gradient(ellipse 48% 62% at 14% 42%,rgba(18,92,214,.48),transparent 68%),
    radial-gradient(ellipse 28% 36% at 8% 16%,rgba(110,180,255,.2),transparent 62%),
    linear-gradient(108deg,#00080f 0%,#00101f 30%,#001a38 40%,#073a86 46%,#1a6adf 50%,#0a4cb3 55%,#001326 100%);
}
body.efhs-theme .hero:before,
#page-preview .hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  opacity:1;
  pointer-events:none;
  background-color:#001326;
  background-image:
    radial-gradient(ellipse 36% 42% at 86% 6%,rgba(255,255,255,.58),transparent 60%),
    radial-gradient(ellipse 24% 32% at 94% 12%,rgba(180,220,255,.5),transparent 58%),
    radial-gradient(ellipse 18% 24% at 76% 5%,rgba(140,196,255,.34),transparent 62%),
    radial-gradient(circle 90px at 82% 7%,rgba(255,255,255,.72),transparent 70%),
    linear-gradient(108deg,rgba(0,10,22,.96) 0%,rgba(0,19,38,.9) 22%,rgba(7,58,134,.38) 32%,rgba(80,170,255,.12) 38%,transparent 44%),
    linear-gradient(180deg,rgba(8,30,70,.08) 0%,transparent 22%,transparent 80%,rgba(0,16,36,.12) 100%),
    var(--efhs-hero-photo, none);
  background-repeat:no-repeat;
  /* Restore original Home Game Performance (4) framing: 125% width, kids in the slash. */
  background-size:100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,125% auto;
  background-position:center,center,center,center,center,center,46% 44%;
  transform:none;
  -webkit-mask-image:linear-gradient(108deg,transparent 0%,transparent 18%,rgba(0,0,0,.4) 30%,#000 40%,#000 100%);
  mask-image:linear-gradient(108deg,transparent 0%,transparent 18%,rgba(0,0,0,.4) 30%,#000 40%,#000 100%);
}
body.efhs-theme .hero:after,
#page-preview .hero:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:102px;
  z-index:1;
  pointer-events:none;
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120' preserveAspectRatio='none'><path fill='%23ffffff' d='M0 62c42-26 78 18 118 2 46-18 72 32 118 6 44-24 86 26 128 4 48-24 76 30 124 8 46-22 90 24 132 2 44-22 78 32 122 8 48-26 84 18 126 0 40-18 74 28 114 8 36-18 60 16 90 4 26-10 46 14 68 6V120H0z'/></svg>") center bottom / 100% 100% no-repeat;
}
body.efhs-theme .hero .wrap,
#page-preview .hero .wrap{
  z-index:2;
  max-width:1240px;
  padding:64px 20px 120px;
  gap:28px;
  align-items:center;
}
body.efhs-theme .hero .wrap{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left;
  grid-template-columns:none;
}
#page-preview .hero .wrap{
  text-align:left;
  justify-items:start;
}
body.efhs-theme .hero .wrap > div{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  width:min(100%,46rem);
  max-width:46rem;
}
#page-preview .hero .wrap > div{
  text-align:left;
}
body.efhs-theme .hero .eyebrow,
#page-preview .hero .eyebrow{
  justify-content:flex-start;
}
body.efhs-theme .hero h1,
#page-preview .hero h1{
  text-align:left;
}
body.efhs-theme .hero > .wrap > div p,
body.efhs-theme .hero p.lead,
#page-preview .hero > .wrap > div p,
#page-preview .hero p.lead{
  margin-left:0;
  margin-right:0;
}
body.efhs-theme .hero .button-row,
#page-preview .hero .button-row{
  justify-content:flex-start;
}
/* Public homepage only: keep the CMS card in admin preview, hide it from visitors.
   Join / coming-soon pages reuse .hero-card as a visible content card. */
body.efhs-theme.home-page .hero-card,
body.efhs-theme .home-redesign .hero-card{
  display:none!important;
}
body.efhs-theme.coming-soon-page .hero-card,
body.visual-page-join .hero-card{
  display:block!important;
}
body.efhs-theme .eyebrow,
#page-preview .eyebrow{
  color:#cfe3ff;
  letter-spacing:.22em;
  font-size:.7rem;
  font-weight:700;
}
body.efhs-theme .eyebrow:before,
#page-preview .eyebrow:before{
  background:var(--efhs-blue-bright);
}
body.efhs-theme .hero h1,
#page-preview .hero h1{
  max-width:9.1em;
  margin:10px 0 16px;
  font-size:clamp(2.7rem,6.8vw,6.1rem);
  font-weight:700;
  font-style:italic;
  line-height:.82;
  letter-spacing:-.02em;
  text-transform:uppercase;
  text-wrap:wrap;
  color:#4da3ff;
  text-shadow:0 10px 28px rgba(0,8,24,.45);
}
body.efhs-theme .hero h1::first-line,
#page-preview .hero h1::first-line{
  color:#fff;
}
body.efhs-theme .hero > .wrap > div p,
body.efhs-theme .hero p.lead,
#page-preview .hero > .wrap > div p,
#page-preview .hero p.lead{
  max-width:28rem;
  margin-left:0;
  margin-right:0;
  color:#d5e4f7;
  font-family:"Work Sans",system-ui,sans-serif;
  font-size:clamp(.98rem,1.5vw,1.12rem);
  line-height:1.45;
}
body.efhs-theme .hero-card,
#page-preview .hero-card{
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.5);
  border-radius:18px;
  padding:22px 22px 18px;
  box-shadow:0 24px 50px rgba(0,10,24,.28);
}
body.efhs-theme .hero-card h2,
#page-preview .hero-card h2{
  font-family:var(--efhs-display);
  letter-spacing:.04em;
  text-transform:uppercase;
}

/* ---------- Buttons ---------- */
body.efhs-theme .btn,
#page-preview .btn{
  border-radius:4px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
  min-height:44px;
  padding:12px 18px;
  gap:8px;
}
body.efhs-theme .btn.primary,
#page-preview .btn.primary{
  background:var(--efhs-blue);
  border-color:var(--efhs-blue);
  color:#fff;
}
body.efhs-theme .btn.primary:hover,
#page-preview .btn.primary:hover{
  background:#094fb0;
}
body.efhs-theme .hero .btn.primary,
body.efhs-theme .hero .btn.secondary,
body.efhs-theme .hero .btn.gold,
#page-preview .hero .btn.primary,
#page-preview .hero .btn.secondary,
#page-preview .hero .btn.gold{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.42);
  box-shadow:none;
}
body.efhs-theme .hero .btn.primary:hover,
body.efhs-theme .hero .btn.secondary:hover,
body.efhs-theme .hero .btn.gold:hover,
#page-preview .hero .btn.primary:hover,
#page-preview .hero .btn.secondary:hover,
#page-preview .hero .btn.gold:hover{
  background:rgba(255,255,255,.1);
  border-color:#fff;
  color:#fff;
}
body.efhs-theme .hero .button-row .btn::after,
#page-preview .hero .button-row .btn::after{
  content:"";
  width:.72em;
  height:.72em;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%23000' d='M2 7.25h9.2L8.1 4.15 9.15 3.1 14 8l-4.85 4.9-1.05-1.05L11.2 8.75H2z'/></svg>") center / contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%23000' d='M2 7.25h9.2L8.1 4.15 9.15 3.1 14 8l-4.85 4.9-1.05-1.05L11.2 8.75H2z'/></svg>") center / contain no-repeat;
}
body.efhs-theme .btn.outline,
#page-preview .btn.outline{
  border-radius:4px;
}

/* ---------- Sections / cards ---------- */
body.efhs-theme main section,
#page-preview main section,
#page-preview section{
  padding:64px 20px;
}
body.efhs-theme .wrap,
#page-preview .wrap{
  max-width:1240px;
}
body.efhs-theme .kicker,
#page-preview .kicker{
  color:var(--efhs-blue);
  letter-spacing:.18em;
}
body.efhs-theme .section-head h2,
#page-preview .section-head h2{
  text-transform:uppercase;
  letter-spacing:.02em;
}
body.efhs-theme .soft,
#page-preview .soft{
  background:linear-gradient(180deg,#f3f6fb 0%,#fff 70%);
}
body.efhs-theme .card,
#page-preview .card{
  border-radius:16px;
  overflow:hidden;
  border:1px solid #dbe4f0;
  box-shadow:0 16px 36px rgba(0,33,66,.08);
  transition:transform .22s ease, box-shadow .22s ease;
}
body.efhs-theme .card:hover,
#page-preview .card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 40px rgba(0,33,66,.14);
}
body.efhs-theme .card h3,
#page-preview .card h3{
  font-family:var(--efhs-display);
  text-transform:uppercase;
  letter-spacing:.04em;
}
body.efhs-theme .red-card,
#page-preview .red-card{
  border-top:0;
  color:#fff;
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:
    linear-gradient(180deg,rgba(0,19,38,.18) 0%,rgba(0,19,38,.88) 72%),
    var(--efhs-card-photo-1, none);
  background-color:var(--efhs-navy);
  background-size:cover;
  background-position:center;
}
body.efhs-theme .grid.cards .red-card:nth-child(2),
#page-preview .grid.cards .red-card:nth-child(2){
  background-image:
    linear-gradient(180deg,rgba(0,19,38,.18) 0%,rgba(0,19,38,.88) 72%),
    var(--efhs-card-photo-2, none);
}
body.efhs-theme .grid.cards .red-card:nth-child(3),
#page-preview .grid.cards .red-card:nth-child(3){
  background-image:
    linear-gradient(180deg,rgba(0,19,38,.18) 0%,rgba(0,19,38,.88) 72%),
    var(--efhs-card-photo-3, none);
}
body.efhs-theme .red-card h3,
body.efhs-theme .red-card p,
body.efhs-theme .red-card .tag,
#page-preview .red-card h3,
#page-preview .red-card p,
#page-preview .red-card .tag{
  color:#fff;
}
body.efhs-theme .red-card .tag,
#page-preview .red-card .tag{
  background:rgba(255,255,255,.16);
}
body.efhs-theme .accent-card,
#page-preview .accent-card{
  background:linear-gradient(160deg,#01244a,#001326);
}

/* ---------- Events ---------- */
body.efhs-theme .event,
#page-preview .event{
  border-radius:14px;
  overflow:hidden;
  border:1px solid #d7e1ee;
}
body.efhs-theme .datebox,
#page-preview .datebox{
  background:linear-gradient(180deg,#0b63d6,#002142);
  border-radius:0;
}
body.efhs-theme .datebox span,
#page-preview .datebox span{
  color:#fff;
}

/* ---------- Gallery ---------- */
body.efhs-theme .gallery,
#page-preview .gallery{
  gap:14px;
}
body.efhs-theme .gallery-item,
body.efhs-theme .photo-gallery .gallery-item,
#page-preview .gallery-item{
  border-radius:8px;
  border:0;
  box-shadow:0 12px 28px rgba(0,20,40,.16);
}
body.efhs-theme .gallery-item img,
#page-preview .gallery-item img{
  height:210px;
  transition:transform .35s ease, filter .35s ease;
}
body.efhs-theme .gallery-item:hover img,
#page-preview .gallery-item:hover img{
  transform:scale(1.06);
  filter:saturate(1.08);
}
body.efhs-theme .gallery-item figcaption,
#page-preview .gallery-item figcaption{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  margin:0;
  padding:28px 14px 12px;
  color:#fff;
  background:linear-gradient(180deg,transparent,rgba(0,16,32,.82));
  font-size:.86rem;
}
body.efhs-theme .gallery-item,
#page-preview .gallery-item{
  position:relative;
}
body.efhs-theme .photo-gallery,
#page-preview .photo-gallery{
  display:block;
  columns:3;
  column-gap:14px;
}
body.efhs-theme .photo-gallery .gallery-item,
#page-preview .photo-gallery .gallery-item{
  display:inline-block;
  width:100%;
  margin:0 0 14px;
  break-inside:avoid;
}
body.efhs-theme .photo-gallery .gallery-item img,
#page-preview .photo-gallery .gallery-item img{
  height:auto;
  min-height:180px;
  max-height:420px;
  object-fit:cover;
}
body.efhs-theme .photo-gallery .gallery-item:nth-child(3n) img,
#page-preview .photo-gallery .gallery-item:nth-child(3n) img{
  min-height:240px;
}
body.efhs-theme .photo-gallery-section,
#page-preview .photo-gallery-section{
  background:#f4f7fb;
}

/* ---------- Page headers ---------- */
body.efhs-theme .page-hero,
#page-preview .page-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:240px;
  padding:72px 20px 92px;
  background:var(--efhs-navy-deep);
  color:#fff;
}
body.efhs-theme .page-hero:before,
#page-preview .page-hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(115deg,rgba(0,19,38,.94) 0%,rgba(0,33,66,.78) 42%,rgba(11,99,214,.22) 70%,rgba(0,19,38,.2) 100%),
    var(--efhs-page-photo, var(--efhs-hero-photo, none));
  background-color:#001326;
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center;
}
body.efhs-theme .page-hero:after,
#page-preview .page-hero:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:72px;
  z-index:1;
  pointer-events:none;
  background:#fff;
  clip-path:polygon(0 58%,8% 40%,16% 72%,26% 38%,38% 76%,50% 44%,62% 70%,74% 36%,86% 66%,100% 48%,100% 100%,0 100%);
}
body.efhs-theme .page-title,
#page-preview .page-title{
  position:relative;
  z-index:2;
  max-width:1240px;
  padding:0;
}
body.efhs-theme .page-title .kicker,
#page-preview .page-title .kicker{
  color:#9ec4ff;
}
body.efhs-theme .page-title h1,
#page-preview .page-title h1{
  color:#fff;
  text-transform:uppercase;
  letter-spacing:.02em;
  font-size:clamp(2.6rem,7vw,5.4rem);
  line-height:.9;
}
body.efhs-theme .page-title p,
#page-preview .page-title p{
  color:#d5e4f6;
  font-family:"Work Sans",system-ui,sans-serif;
  max-width:38rem;
}
body.efhs-theme .sponsor-hero,
#page-preview .sponsor-hero{
  background:none;
}

/* ---------- Staff ---------- */
body.efhs-theme .directory,
#page-preview .directory{
  gap:22px;
}
body.efhs-theme .person,
#page-preview .person{
  align-items:stretch;
  gap:0;
  padding:0;
  overflow:hidden;
  border-radius:16px;
  border:1px solid #d7e1ee;
  box-shadow:0 14px 30px rgba(0,33,66,.08);
}
body.efhs-theme .person .avatar,
#page-preview .person .avatar{
  flex:0 0 168px;
  width:168px;
  height:auto;
  min-height:180px;
  border-radius:0;
}
body.efhs-theme .person .avatar img,
#page-preview .person .avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}
body.efhs-theme .person-copy,
#page-preview .person-copy{
  padding:20px 20px 18px;
}
body.efhs-theme .person h3,
#page-preview .person h3{
  font-family:var(--efhs-display);
  text-transform:uppercase;
  letter-spacing:.03em;
}
body.efhs-theme .person-role,
#page-preview .person-role{
  color:var(--efhs-blue);
}

/* ---------- Sponsors ---------- */
body.efhs-theme .sponsor-card,
#page-preview .sponsor-card{
  border-radius:14px;
}
body.efhs-theme .sponsor-cta,
#page-preview .sponsor-cta{
  border-radius:14px;
}

/* ---------- Calendar ---------- */
body.efhs-theme.caldev-body{
  background:#f4f7fb;
}
body.efhs-theme .caldev-toolbar{
  background:linear-gradient(180deg,#fff,#f7fafc);
  border-color:#cfd9e8;
  border-radius:14px;
}
body.efhs-theme .caldev-range-title{
  font-family:var(--efhs-display);
  text-transform:uppercase;
  letter-spacing:.04em;
}
body.efhs-theme .caldev-month,
body.efhs-theme .caldev-board{
  background:#fff;
  border-radius:14px;
}
body.efhs-theme .caldev-day{
  border-radius:8px;
}
body.efhs-theme .caldev-event-chip{
  border-radius:4px;
  font-weight:800;
}
body.efhs-theme .caldev-rundown-item{
  border-radius:12px;
  border:1px solid #d7e1ee;
}

/* ---------- Footer ---------- */
body.efhs-theme .footer{
  background:
    linear-gradient(180deg,rgba(0,16,32,.82),rgba(0,10,20,.94)),
    var(--efhs-page-photo, var(--efhs-hero-photo, none));
  background-color:#07182a;
  background-size:cover;
  background-position:center;
  color:#d7e3f3;
  padding:56px 20px 42px;
}
body.efhs-theme .footer .wrap{
  max-width:1240px;
}
body.efhs-theme .footer h3{
  font-family:var(--efhs-display);
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.95rem;
}

/* ---------- Motion ---------- */
@media (prefers-reduced-motion:reduce){
  body.efhs-theme .card,
  body.efhs-theme .gallery-item img,
  #page-preview .card,
  #page-preview .gallery-item img{
    transition:none;
  }
  body.efhs-theme .card:hover,
  #page-preview .card:hover{
    transform:none;
  }
  body.efhs-theme .nav-support-caret{
    transition:none;
  }
}

/* Mid-width desktop, including phone "Desktop site" (~980px): brand row + full nav row.
   Single-row title+links does not fit until ~1200px and would overflow. */
@media (min-width:768px) and (max-width:1199px){
  body.efhs-theme header.site-header{
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:stretch;
    justify-content:center;
    min-height:0;
    height:auto;
    max-height:none;
    padding:8px 16px 6px;
    column-gap:0;
    row-gap:2px;
  }
  body.efhs-theme .header-inner{
    width:100%;
    justify-content:center;
    min-height:64px;
  }
  body.efhs-theme .brand{
    justify-content:center;
  }
  body.efhs-theme header.site-header nav,
  body.efhs-theme header.site-header #site-nav{
    width:100%;
    max-width:100%;
    justify-content:center;
    flex-wrap:nowrap;
    padding:0 0 4px;
    gap:0;
    overflow:visible;
  }
  body.efhs-theme header.site-header nav a,
  body.efhs-theme header.site-header nav .nav-notify-me,
  body.efhs-theme header.site-header nav .nav-support-toggle{
    font-size:12px;
    letter-spacing:.04em;
    padding:6px 5px;
  }
  body.efhs-theme .header-donate{
    display:none;
  }
}

/* Desktop header no longer reserves a Donate slot. Keep a single-row nav
   between 1200 and 1339 so Notify Me stays right-aligned with no empty gap. */
@media (min-width:1200px) and (max-width:1339px){
  body.efhs-theme header.site-header nav,
  body.efhs-theme header.site-header #site-nav{
    max-width:none;
    justify-content:flex-end;
  }
  body.efhs-theme .header-donate{
    display:none;
  }
}

/* Compact header on real narrow widths: hamburger | page-centered title | login + bell */
@media (max-width:767px){
  body.efhs-theme header.site-header,
  body.efhs-theme .site-chrome{
    position:relative;
    top:auto;
    margin:0;
  }
  body.efhs-theme header.site-header{
    display:grid;
    grid-template-columns:minmax(4.5rem,1fr) auto minmax(4.5rem,1fr);
    grid-template-areas:"menu brand actions";
    align-items:center;
    height:clamp(56px,14vw,72px);
    min-height:56px;
    max-height:72px;
    padding:0 clamp(4px,1.6vw,12px);
    column-gap:4px;
    border-top:1px solid #fff;
    background-image:
      linear-gradient(180deg,rgba(0,18,40,.34) 0%,rgba(1,36,74,.40) 100%),
      var(--efhs-header-banner);
    background-size:cover;
    background-position:center 50%;
    background-repeat:no-repeat;
  }
  body.efhs-theme .menu-button{
    display:inline-flex;
    grid-area:menu;
    justify-self:start;
    align-self:center;
    margin:0;
    z-index:95;
    width:clamp(32px,8vw,40px);
    height:clamp(32px,8vw,40px);
    flex:0 0 auto;
  }
  body.efhs-theme .header-inner{
    grid-area:brand;
    justify-self:center;
    align-self:center;
    justify-content:center;
    padding:0;
    height:auto;
    min-height:0;
    width:auto;
    min-width:0;
    max-width:100%;
    flex:0 0 auto;
    overflow:visible;
    background:none;
  }
  body.efhs-theme .brand{
    justify-content:center;
    gap:clamp(3px,1vw,8px);
    min-width:0;
    flex:0 0 auto;
    max-width:100%;
  }
  body.efhs-theme .brand .brand-logo{
    height:clamp(18px,5.2vw,28px);
    width:auto;
    flex:0 0 auto;
  }
  body.efhs-theme .brand .brand-mark{
    height:clamp(20px,6vw,32px);
    width:clamp(20px,6vw,32px);
    flex:0 0 auto;
    margin-inline-start:0;
  }
  body.efhs-theme .header-quick-actions .nav-notify-me,
  body.efhs-theme .header-quick-actions .nav-add-home{
    width:clamp(32px,8vw,40px);
    height:clamp(32px,8vw,40px);
    flex:0 0 auto;
  }
  body.efhs-theme .header-quick-actions{gap:0}
  body.efhs-theme .header-quick-actions .utility-auth{
    color:#eaf2ff;
    height:clamp(32px,8vw,40px);
    padding:0 clamp(2px,.8vw,8px);
    letter-spacing:.04em;
    font-size:clamp(.52rem,2vw,.68rem);
    text-transform:uppercase;
  }
  body.efhs-theme .header-quick-actions .utility-auth:hover,
  body.efhs-theme .header-quick-actions .utility-auth:focus-visible{
    color:#fff;
    background:rgba(255,255,255,.12);
    outline:2px solid #fff;
    outline-offset:2px;
  }
  body.efhs-theme header.site-header .brand span,
  body.efhs-theme header.site-header .brand [data-site-field="title"]{
    text-align:left;
    max-width:none;
    min-width:0;
    flex:0 1 auto;
    font-size:clamp(.58rem,2.35vw,.82rem)!important;
    line-height:1.02;
    letter-spacing:.02em;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    overflow:visible;
    white-space:normal;
  }
  body.efhs-theme header.site-header .brand [data-site-field="title"] small{
    display:block;
    font-family:"Work Sans",system-ui,sans-serif;
    font-size:clamp(.46rem,1.7vw,.58rem)!important;
    font-weight:800;
    letter-spacing:.08em;
    line-height:1.1;
    color:#4da3ff;
    white-space:nowrap;
  }
  body.efhs-theme header.site-header .brand .brand-title-rest{
    display:block;
    font-size:clamp(.58rem,2.35vw,.82rem)!important;
    font-weight:700;
    letter-spacing:.01em;
    line-height:1.02;
    color:#fff;
    white-space:nowrap;
  }
  body.efhs-theme header.site-header .brand .brand-title-rest::before{
    content:none;
  }
  body.efhs-theme .mobile-nav-tray{
    display:flex;
    grid-area:actions;
    justify-self:end;
    align-self:center;
    width:auto;
    min-height:0;
    margin-left:0;
    padding:0;
    background:transparent;
    border:0;
    justify-content:flex-end;
  }
  body.efhs-theme .header-donate{display:none!important}
  body.efhs-theme header.site-header nav .header-donate,
  body.efhs-theme header.site-header #site-nav .header-donate{
    display:inline-flex!important;
    margin:4px 4px 8px;
    width:calc(100% - 8px);
    justify-content:center;
    order:-1;
    text-shadow:none;
  }
  body.efhs-theme header.site-header nav .nav-notify-me,
  body.efhs-theme header.site-header nav .nav-add-home,
  body.efhs-theme header.site-header nav .utility-auth,
  body.efhs-theme header.site-header #site-nav .nav-notify-me,
  body.efhs-theme header.site-header #site-nav .nav-add-home,
  body.efhs-theme header.site-header #site-nav .utility-auth{
    display:flex!important;
    width:100%;
    justify-content:flex-start;
    align-items:center;
    gap:10px;
    padding:12px 4px;
    color:var(--efhs-navy);
    background:transparent;
    box-shadow:none;
    text-shadow:none;
    font-size:.95rem;
    font-weight:800;
    border-radius:12px;
  }
  body.efhs-theme header.site-header nav .nav-notify-label,
  body.efhs-theme header.site-header #site-nav .nav-notify-label{display:inline}
  body.efhs-theme header.site-header nav .nav-add-home::after,
  body.efhs-theme header.site-header #site-nav .nav-add-home::after{
    content:attr(title);
  }
  /* Drawer list only: white panel + navy links. Keep the navy title tray/close button. */
  body.efhs-theme header.site-header nav,
  body.efhs-theme header.site-header #site-nav{
    width:100%;
    justify-content:flex-start;
    overflow:auto;
    background:#fff;
    color:var(--efhs-navy);
  }
  body.efhs-theme header.site-header nav a,
  body.efhs-theme header.site-header nav .nav-support-toggle,
  body.efhs-theme header.site-header #site-nav a,
  body.efhs-theme header.site-header #site-nav .nav-support-toggle{
    color:var(--efhs-navy);
    background:transparent;
    box-shadow:none;
    text-shadow:none;
  }
  body.efhs-theme header.site-header nav a:hover,
  body.efhs-theme header.site-header nav a:focus-visible,
  body.efhs-theme header.site-header nav .nav-support-toggle:hover,
  body.efhs-theme header.site-header nav .nav-support-toggle:focus-visible,
  body.efhs-theme header.site-header #site-nav a:hover,
  body.efhs-theme header.site-header #site-nav a:focus-visible,
  body.efhs-theme header.site-header #site-nav .nav-support-toggle:hover,
  body.efhs-theme header.site-header #site-nav .nav-support-toggle:focus-visible{
    background:#eef3fa;
    color:var(--efhs-navy);
    box-shadow:none;
  }
  body.efhs-theme header.site-header nav a[aria-current="page"],
  body.efhs-theme header.site-header #site-nav a[aria-current="page"],
  body.efhs-theme .nav-support.is-current > .nav-support-toggle{
    color:var(--efhs-navy);
    background:#eef3fa;
    box-shadow:inset 3px 0 0 var(--efhs-blue);
  }
  body.efhs-theme .nav-support-toggle:focus-visible{
    outline:2px solid var(--efhs-blue);
    outline-offset:2px;
  }
  body.efhs-theme .nav-support-menu{
    transform:none;
    left:auto;
    background:transparent;
    border:0;
    border-left:3px solid var(--efhs-blue);
    border-radius:0;
    box-shadow:none;
    min-width:0;
    padding:0 0 4px 10px;
    margin:0 0 6px 8px;
  }
  body.efhs-theme .nav-support-menu a,
  body.efhs-theme .nav-support-menu a:hover,
  body.efhs-theme .nav-support-menu a:focus-visible{
    color:var(--efhs-navy);
    background:transparent;
    box-shadow:none;
    font-size:.88rem;
    padding:10px 8px;
    border-radius:10px;
  }
  body.efhs-theme .nav-support-menu a:hover,
  body.efhs-theme .nav-support-menu a:focus-visible{
    background:#eef3fa;
  }
  body.efhs-theme .nav-support-menu a[aria-current="page"]{
    background:#eef3fa;
    color:var(--efhs-navy);
    box-shadow:inset 3px 0 0 var(--efhs-blue);
  }
}

/* Extra-narrow phones: keep the same 3-column balance, just shrink chrome. */
@media (max-width:360px){
  body.efhs-theme header.site-header{
    grid-template-columns:minmax(3.75rem,1fr) minmax(0,auto) minmax(3.75rem,1fr);
    padding:0 4px;
    column-gap:2px;
  }
  body.efhs-theme .header-quick-actions .nav-add-home{display:none!important}
  body.efhs-theme header.site-header .brand span,
  body.efhs-theme header.site-header .brand [data-site-field="title"],
  body.efhs-theme header.site-header .brand .brand-title-rest{
    font-size:clamp(.52rem,2.2vw,.72rem)!important;
  }
}

/* Landscape phones: shorter header so the title row does not eat the viewport. */
@media (max-width:767px) and (max-height:500px) and (orientation:landscape){
  body.efhs-theme header.site-header{
    height:clamp(48px,18vh,58px);
    min-height:48px;
    max-height:58px;
    padding:0 clamp(6px,1.4vw,14px);
  }
  body.efhs-theme .brand .brand-logo{
    height:clamp(16px,4.4vw,24px);
  }
  body.efhs-theme .brand .brand-mark{
    height:clamp(18px,5vw,26px);
    width:clamp(18px,5vw,26px);
  }
}

/* Short landscape (844x390, 740x360, 915x412, and short desktop windows):
   hamburger + drawer so links are not clipped behind the logo. Tall 768+
   desktops keep the full inline nav from the default rules. */
@media (orientation:landscape) and (max-height:500px){
  body.efhs-theme .site-chrome,
  body.efhs-theme header.site-header{
    position:relative;
    top:auto;
  }
  body.efhs-theme header.site-header{
    display:grid;
    grid-template-columns:minmax(4.25rem,1fr) auto minmax(4.25rem,1fr);
    grid-template-areas:"menu brand actions";
    align-items:center;
    min-height:48px;
    height:52px;
    max-height:52px;
    padding:0 12px;
    column-gap:8px;
    row-gap:0;
  }
  body.efhs-theme .menu-button{
    display:inline-flex;
    grid-area:menu;
    justify-self:start;
    width:36px;
    height:36px;
    z-index:95;
  }
  body.efhs-theme .header-inner{
    grid-area:brand;
    justify-self:center;
    min-height:0;
    width:auto;
    flex:0 0 auto;
  }
  body.efhs-theme .mobile-nav-tray{
    display:flex;
    grid-area:actions;
    justify-self:end;
    width:auto;
    min-height:0;
    padding:0;
    background:transparent;
    border:0;
  }
  body.efhs-theme .header-quick-actions{display:inline-flex;gap:0}
  body.efhs-theme .header-quick-actions .nav-notify-me,
  body.efhs-theme .header-quick-actions .nav-add-home{
    width:clamp(32px,8vw,40px);
    height:clamp(32px,8vw,40px);
    flex:0 0 auto;
  }
  body.efhs-theme .header-quick-actions .utility-auth{
    color:#eaf2ff;
    height:clamp(32px,8vw,40px);
    padding:0 clamp(2px,.8vw,8px);
    font-family:"Work Sans",system-ui,sans-serif;
    letter-spacing:.04em;
    font-size:clamp(.52rem,2vw,.68rem);
    font-weight:800;
    text-transform:uppercase;
  }
  body.efhs-theme .header-quick-actions .utility-auth:hover,
  body.efhs-theme .header-quick-actions .utility-auth:focus-visible{
    color:#fff;
    background:rgba(255,255,255,.12);
    outline:2px solid #fff;
    outline-offset:2px;
  }
  body.efhs-theme header.site-header nav,
  body.efhs-theme header.site-header #site-nav{
    width:max-content;
    max-width:min(92vw,20rem);
    justify-content:flex-start;
    overflow:auto;
    background:#fff;
    color:var(--efhs-navy);
  }
  body.efhs-theme header.site-header nav a,
  body.efhs-theme header.site-header nav .nav-support-toggle,
  body.efhs-theme header.site-header #site-nav a,
  body.efhs-theme header.site-header #site-nav .nav-support-toggle,
  body.efhs-theme header.site-header nav .nav-notify-me,
  body.efhs-theme header.site-header nav .nav-add-home,
  body.efhs-theme header.site-header nav .utility-auth,
  body.efhs-theme header.site-header #site-nav .nav-notify-me,
  body.efhs-theme header.site-header #site-nav .nav-add-home,
  body.efhs-theme header.site-header #site-nav .utility-auth{
    color:var(--efhs-navy);
    background:transparent;
    font-size:.95rem;
    padding:12px 4px;
    text-shadow:none;
    box-shadow:none;
  }
  body.efhs-theme .header-donate{
    display:none!important;
  }
  body.efhs-theme header.site-header nav .header-donate,
  body.efhs-theme header.site-header #site-nav .header-donate{
    display:inline-flex!important;
    margin:4px 4px 8px;
    width:calc(100% - 8px);
    justify-content:center;
    order:-1;
    text-shadow:none;
  }
  body.efhs-theme header.site-header nav .nav-notify-me,
  body.efhs-theme header.site-header nav .nav-add-home,
  body.efhs-theme header.site-header nav .utility-auth,
  body.efhs-theme header.site-header #site-nav .nav-notify-me,
  body.efhs-theme header.site-header #site-nav .nav-add-home,
  body.efhs-theme header.site-header #site-nav .utility-auth{
    display:flex!important;
    width:100%;
    justify-content:flex-start;
    align-items:center;
    gap:10px;
    border-radius:12px;
  }
  body.efhs-theme header.site-header nav .nav-notify-label,
  body.efhs-theme header.site-header #site-nav .nav-notify-label{display:inline}
  body.efhs-theme header.site-header nav .nav-add-home::after,
  body.efhs-theme header.site-header #site-nav .nav-add-home::after{
    content:attr(title);
  }
  body.home-page.efhs-theme header.site-header nav,
  body.efhs-theme.home-page header.site-header nav,
  body.efhs-theme.home-page header.site-header #site-nav{
    max-height:calc(100dvh - 52px - 6.75rem);
    padding-bottom:8px;
  }
}

/* Phone page/hero layout only. Header/drawer rules live in the 767 compact block. */
@media (max-width:760px){
  body.efhs-theme .photo-gallery,
  #page-preview .photo-gallery{
    columns:1;
  }
  body.efhs-theme .hero .wrap,
  #page-preview .hero .wrap{
    grid-template-columns:1fr;
    padding:36px 16px 96px;
  }
  body.efhs-theme .hero .wrap{
    align-items:flex-start;
    text-align:left;
  }
  body.efhs-theme .hero .wrap > div,
  #page-preview .hero .wrap > div{
    max-width:100%;
  }
  body.efhs-theme .hero,
  #page-preview .hero{
    min-height:min(88vh,740px);
    background:
      radial-gradient(ellipse 70% 55% at 12% 28%,rgba(18,92,214,.42),transparent 70%),
      linear-gradient(125deg,#00080f 0%,#001326 38%,#073a86 52%,#001326 72%);
  }
  body.efhs-theme .hero:before,
  #page-preview .hero:before{
    /* Cover the tall phone hero with the student cluster, not bleachers/sky. */
    background-size:100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,cover;
    background-position:center,center,center,center,center,center,50% 46%;
    -webkit-mask-image:linear-gradient(125deg,transparent 0%,transparent 8%,rgba(0,0,0,.35) 28%,#000 48%,#000 100%);
    mask-image:linear-gradient(125deg,transparent 0%,transparent 8%,rgba(0,0,0,.35) 28%,#000 48%,#000 100%);
  }
  body.efhs-theme .hero h1,
  #page-preview .hero h1{
    max-width:10.5em;
    font-size:clamp(2.35rem,12vw,3.5rem);
  }
  body.efhs-theme .page-hero,
  #page-preview .page-hero{
    padding:48px 16px 72px;
    min-height:180px;
  }
  body.efhs-theme .person,
  #page-preview .person{
    flex-direction:column;
  }
  body.efhs-theme .person .avatar,
  #page-preview .person .avatar{
    flex-basis:auto;
    width:100%;
    min-height:220px;
  }
  body.efhs-theme .directory,
  #page-preview .directory{
    grid-template-columns:1fr;
  }
}

html.nav-use-hamburger body.efhs-theme header.site-header{
  display:grid;
  grid-template-columns:minmax(4.5rem,1fr) auto minmax(4.5rem,1fr);
  grid-template-areas:"menu brand actions";
  align-items:center;
  height:auto;
  min-height:64px;
  max-height:none;
  padding:0 12px;
}
html.nav-use-hamburger body.efhs-theme .menu-button{
  display:inline-flex;
  grid-area:menu;
  justify-self:start;
  z-index:95;
}
html.nav-use-hamburger body.efhs-theme .header-inner{
  grid-area:brand;
  justify-self:center;
  width:auto;
  min-height:0;
}
html.nav-use-hamburger body.efhs-theme .mobile-nav-tray{
  display:flex;
  grid-area:actions;
  justify-self:end;
}
html.nav-use-hamburger body.efhs-theme .header-quick-actions{
  display:inline-flex;
  gap:0;
}
html.nav-use-hamburger body.efhs-theme .header-quick-actions .nav-notify-me,
html.nav-use-hamburger body.efhs-theme .header-quick-actions .nav-add-home{
  width:clamp(32px,8vw,40px);
  height:clamp(32px,8vw,40px);
  flex:0 0 auto;
}
html.nav-use-hamburger body.efhs-theme .header-quick-actions .utility-auth{
  color:#eaf2ff;
  height:clamp(32px,8vw,40px);
  padding:0 clamp(2px,.8vw,8px);
  font-family:"Work Sans",system-ui,sans-serif;
  letter-spacing:.04em;
  font-size:clamp(.52rem,2vw,.68rem);
  font-weight:800;
  text-transform:uppercase;
}
html.nav-use-hamburger body.efhs-theme .header-quick-actions .utility-auth:hover,
html.nav-use-hamburger body.efhs-theme .header-quick-actions .utility-auth:focus-visible{
  color:#fff;
  background:rgba(255,255,255,.12);
  outline:2px solid #fff;
  outline-offset:2px;
}
html.nav-use-hamburger body.efhs-theme .header-donate{display:none!important}
html.nav-use-hamburger body.efhs-theme header.site-header nav,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav{
  width:max-content;
  max-width:min(92vw,20rem);
  justify-content:flex-start;
  overflow:auto;
  background:#fff;
  color:var(--efhs-navy);
}
html.nav-use-hamburger body.efhs-theme header.site-header nav a,
html.nav-use-hamburger body.efhs-theme header.site-header nav .nav-support-toggle,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav a,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .nav-support-toggle,
html.nav-use-hamburger body.efhs-theme header.site-header nav .nav-notify-me,
html.nav-use-hamburger body.efhs-theme header.site-header nav .nav-add-home,
html.nav-use-hamburger body.efhs-theme header.site-header nav .utility-auth,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .nav-notify-me,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .nav-add-home,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .utility-auth{
  color:var(--efhs-navy);
  background:transparent;
  font-size:.95rem;
  padding:12px 4px;
  text-shadow:none;
  box-shadow:none;
}
html.nav-use-hamburger body.efhs-theme header.site-header nav .header-donate,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .header-donate{
  display:inline-flex!important;
  margin:4px 4px 8px;
  width:calc(100% - 8px);
  justify-content:center;
  order:-1;
  text-shadow:none;
}
html.nav-use-hamburger body.efhs-theme header.site-header nav .nav-notify-me,
html.nav-use-hamburger body.efhs-theme header.site-header nav .nav-add-home,
html.nav-use-hamburger body.efhs-theme header.site-header nav .utility-auth,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .nav-notify-me,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .nav-add-home,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .utility-auth{
  display:flex!important;
  width:100%;
  justify-content:flex-start;
  align-items:center;
  gap:10px;
  border-radius:12px;
}
html.nav-use-hamburger body.efhs-theme header.site-header nav .nav-notify-label,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .nav-notify-label{display:inline}
html.nav-use-hamburger body.efhs-theme header.site-header nav .nav-add-home::after,
html.nav-use-hamburger body.efhs-theme header.site-header #site-nav .nav-add-home::after{
  content:attr(title);
}

body.efhs-theme .footer .footer-disclaimer{
  max-width:1240px;
  color:rgba(215,227,243,.66);
  letter-spacing:.01em;
}
