/* Header: the admin-bar offsets prevent overlap with the WordPress toolbar. */
:root { --v6-header-height:76px; }
.site-header { position:fixed; top:0; right:0; left:0; z-index:9999; border-bottom:1px solid rgba(24,33,29,.13); background:rgba(255,255,255,.96); }
body.admin-bar .site-header { top:32px; }
body { padding-top:var(--v6-header-height); }
.header-inner { display:grid; grid-template-columns:minmax(220px,1fr) auto minmax(100px,1fr); align-items:center; width:min(1240px,calc(100% - 48px)); min-height:var(--v6-header-height); margin:0 auto; }
.header-logo a { display:inline-flex; flex-direction:column; text-decoration:none; }
.logo-main { color:#18211d; font-family:Georgia,"Hiragino Mincho ProN",serif; font-size:20px; font-weight:600; letter-spacing:.13em; line-height:1.25; }
.logo-sub { margin-top:4px; color:#176e61; font-size:9px; font-weight:700; letter-spacing:.17em; line-height:1; }
.global-nav { justify-self:center; }
.nav-menu { display:flex; gap:26px; margin:0; padding:0; list-style:none; }
.nav-menu a { color:#28322d; font-size:13px; font-weight:700; text-decoration:none; }
.nav-menu a:hover { color:#176e61; }
.header-cta { justify-self:end; }
.join-button { display:inline-flex; align-items:center; gap:14px; padding:11px 16px; background:#176e61; color:#fff; font-size:12px; font-weight:700; text-decoration:none; }
.join-button:hover { background:#0e5146; color:#fff; }
.menu-toggle { display:none; border:0; background:transparent; }
.menu-toggle span { display:block; width:22px; height:1px; margin:5px; background:#18211d; }
@media (max-width:960px) { .header-inner { grid-template-columns:1fr auto; } .global-nav,.header-cta { display:none; } .menu-toggle { display:block; } }
@media (max-width:782px) { body.admin-bar .site-header { top:46px; } }
@media (max-width:520px) { :root { --v6-header-height:64px; } .header-inner { width:calc(100% - 32px); min-height:var(--v6-header-height); } .logo-main { font-size:16px; } .logo-sub { font-size:8px; } }

/* Version7 event panel: dates and participation details must remain legible. */
#version7-primary .v7-upcoming__label,
#version7-primary .v7-upcoming__next p {
    font-size:14px !important;
    letter-spacing:.14em !important;
}

#version7-primary .v7-upcoming__date {
    position:relative !important;
    top:auto !important;
    right:auto !important;
    display:block !important;
    margin:28px 0 10px !important;
    font-size:clamp(44px,5vw,68px) !important;
    font-weight:700 !important;
    line-height:1.1 !important;
}

#version7-primary .v7-upcoming__meta {
    font-size:18px !important;
    line-height:1.5 !important;
    letter-spacing:.04em !important;
}

#version7-primary .v7-upcoming__theme {
    font-size:15px !important;
}

#version7-primary .v7-upcoming__theme strong {
    margin-top:6px !important;
    font-size:clamp(24px,2.3vw,34px) !important;
}

#version7-primary .v7-upcoming a {
    margin-top:32px !important;
    font-size:17px !important;
}

#version7-primary .v7-upcoming__next > span {
    margin-top:32px !important;
    font-size:clamp(38px,3.6vw,56px) !important;
    font-weight:700 !important;
    line-height:1.2 !important;
}

#version7-primary .v7-upcoming__next small {
    font-size:13px !important;
}

@media (max-width:520px) {
    #version7-primary .v7-upcoming__date { font-size:42px !important; }
    #version7-primary .v7-upcoming__meta { font-size:16px !important; }
    #version7-primary .v7-upcoming__next > span { font-size:36px !important; }
}

/* Parent theme link color must not hide the final application button. */
#version7-primary .v7-join a {
    color:#176e61 !important;
}
