@font-face {
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('/assets/fonts/manrope-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('/assets/fonts/manrope-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Plus Jakarta Sans';
    font-style: normal;
    font-weight: 500 800;
    font-display: swap;
    src: url('/assets/fonts/plus-jakarta-sans-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Plus Jakarta Sans';
    font-style: normal;
    font-weight: 500 800;
    font-display: swap;
    src: url('/assets/fonts/plus-jakarta-sans-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --theme-primary: #AB5A39;
    --theme-primary-rgb: 171, 90, 57;
    --theme-header-background: #FFFDF9;
    --theme-header-background-rgb: 255, 253, 249;
    --theme-header-text: #1D1815;
    --theme-header-text-rgb: 29, 24, 21;
    --theme-header-link: #655D57;
    --theme-header-link-rgb: 101, 93, 87;
    --theme-header-link-hover: #30231D;
    --theme-header-link-hover-rgb: 48, 35, 29;
    --theme-header-link-active: #AB5A39;
    --theme-header-link-active-rgb: 171, 90, 57;
    --theme-mobile-menu-background: #FFFDF9;
    --theme-mobile-menu-background-rgb: 255, 253, 249;
    --theme-mobile-menu-text: #655D57;
    --theme-mobile-menu-text-rgb: 101, 93, 87;
    --theme-mobile-menu-button: #FFFDF9;
    --theme-mobile-menu-button-rgb: 255, 253, 249;
    --theme-page-background: #F3EEE7;
    --theme-page-background-rgb: 243, 238, 231;
    --theme-surface: #FFFBF5;
    --theme-surface-rgb: 255, 251, 245;
    --theme-text: #1D1815;
    --theme-text-rgb: 29, 24, 21;
    --theme-muted-text: #655D57;
    --theme-muted-text-rgb: 101, 93, 87;
    --theme-border: #D8CDBC;
    --theme-border-rgb: 216, 205, 188;
    --theme-link: #30231D;
    --theme-link-rgb: 48, 35, 29;
    --theme-link-hover: #AB5A39;
    --theme-link-hover-rgb: 171, 90, 57;
    --theme-button-primary: #30231D;
    --theme-button-primary-rgb: 48, 35, 29;
    --theme-button-primary-text: #FFFDF9;
    --theme-button-primary-text-rgb: 255, 253, 249;
    --theme-button-primary-hover: #AB5A39;
    --theme-button-primary-hover-rgb: 171, 90, 57;
    --theme-focus: #AB5A39;
    --theme-focus-rgb: 171, 90, 57;
    --theme-footer-background: #211B17;
    --theme-footer-background-rgb: 33, 27, 23;
    --theme-footer-text: #F7F0E7;
    --theme-footer-text-rgb: 247, 240, 231;
    --theme-logo-max-height: 112px;
    --color-primary: #30231D;
    --color-primary-hover: #AB5A39;
    --color-primary-contrast: #FFFDF9;
    --color-secondary: #655D57;
    --color-secondary-hover: #30231D;
    --color-secondary-contrast: #FFFDF9;
    --color-accent: #AB5A39;
    --color-accent-hover: #30231D;
    --color-accent-contrast: #FFFDF9;
    --color-page-background: var(--theme-page-background);
    --color-surface: var(--theme-surface);
    --color-surface-alt: #FFFDF9;
    --color-text: var(--theme-text);
    --color-text-muted: var(--theme-muted-text);
    --color-heading: #30231D;
    --color-link: var(--theme-link);
    --color-link-hover: var(--theme-link-hover);
    --color-border: var(--theme-border);
    --color-border-strong: #C4B6A0;
    --color-success: #255B2B;
    --color-warning: #674C19;
    --color-danger: #7A2F27;
    --color-info: #2C5C4C;
    --color-focus: var(--theme-focus);
    --color-header-background: var(--theme-header-background);
    --color-header-text: var(--theme-header-text);
    --color-header-link: var(--theme-header-link);
    --color-header-link-hover: var(--theme-header-link-hover);
    --color-header-link-active: var(--theme-header-link-active);
    --color-footer-background: var(--theme-footer-background);
    --color-footer-text: var(--theme-footer-text);
    --color-footer-link: var(--theme-footer-text);
    --color-admin-background: #F3EEE7;
    --color-admin-surface: #FFFDF9;
    --color-admin-header-background: #30231D;
    --color-admin-header-text: #FFFDF9;
}

:focus-visible {
    outline: 3px solid var(--color-focus);
    outline-offset: 2px;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

img,
svg,
video,
iframe {
    max-width: 100%;
}

img,
video {
    height: auto;
}

.content img,
.content video,
.content iframe,
.intro img,
.intro video,
.intro iframe,
.footer-copy img,
.footer-copy video,
.footer-copy iframe {
    max-width: 100%;
}

.content iframe,
.intro iframe,
.footer-copy iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.content table,
.intro table,
.footer-copy table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.content pre,
.intro pre,
.footer-copy pre {
    max-width: 100%;
    overflow-x: auto;
}

.header-band {
    background: var(--color-header-background);
    color: var(--color-header-text);
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 18px;
}

.topbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 136px;
    margin: 0;
    padding: 12px 0 8px;
}

.brand {
    display: inline-flex;
    align-items: center;
    flex: 0 1 auto;
    max-width: min(320px, 40vw);
    min-width: 0;
}

.brand-logo {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: var(--theme-logo-max-height);
    object-fit: contain;
}

.nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
}

.nav a {
    color: var(--color-header-link);
    text-decoration: none;
    font-weight: 800;
    border-bottom: 2px solid transparent;
    padding: 8px 2px;
}

.nav a:hover,
.nav a:focus-visible {
    color: var(--color-header-link-hover);
}

.nav a.active,
.nav a[aria-current="page"] {
    color: var(--color-header-link-active);
    border-bottom-color: currentColor;
}

.nav-toggle {
    display: none;
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius, 0.375rem);
    background: var(--color-primary);
    color: var(--color-primary-contrast);
    padding: 10px 14px;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}

.btn,
button,
input[type="submit"] {
    border-radius: var(--radius, 0.375rem);
}

@media (max-width: 900px) {
    .topbar {
        min-height: auto;
        padding: 16px 0;
        align-items: center;
    }

    .brand {
        max-width: min(220px, 65vw);
    }

    .nav-toggle {
        display: inline-flex;
    }

    .nav {
        display: none;
        flex-basis: 100%;
        width: 100%;
        justify-content: flex-start;
        align-items: stretch;
        gap: 6px;
        padding-top: 12px;
    }

    .nav.is-open {
        display: grid;
    }

    .nav a {
        padding: 10px 0;
    }
}

/* Shared utilities migrated from inline styles. */
.u-actions-mt-14 { margin-top: 14px !important; margin-bottom: 0 !important; }
.legend-color-event { background: #8a3f2d; }
.legend-color-space { background: #2c5c4c; }
.legend-color-manual { background: #8b7758; }
.error.success { background: #dceedd; color: #255b2b; border-color: #a7cda9; }

.u-m-0 { margin: 0 !important; }
.u-heading-tight { margin: 0 0 12px !important; }
.u-text-14 { font-size: 14px !important; }
.u-admin-link { color: #2c5c4c; text-decoration: none; font-weight: 700; }
.u-actions-mt-20 { margin-top: 20px !important; margin-bottom: 0 !important; }

.u-mt-0 { margin-top: 0 !important; }
.u-mt-4 { margin-top: 4px !important; }
.u-mt-6 { margin-top: 6px !important; }
.u-mt-8 { margin-top: 8px !important; }
.u-mt-10 { margin-top: 10px !important; }
.u-mt-12 { margin-top: 12px !important; }
.u-mt-14 { margin-top: 14px !important; }
.u-mt-16 { margin-top: 16px !important; }
.u-mt-18 { margin-top: 18px !important; }
.u-mt-20 { margin-top: 20px !important; }
.u-mt-22 { margin-top: 22px !important; }
.u-mt-24 { margin-top: 24px !important; }
.u-mt-28 { margin-top: 28px !important; }
.u-mb-0 { margin-bottom: 0 !important; }
.u-mb-6 { margin-bottom: 6px !important; }
.u-mb-12 { margin-bottom: 12px !important; }
.u-mb-14 { margin-bottom: 14px !important; }
.u-mb-16 { margin-bottom: 16px !important; }
.u-mb-18 { margin-bottom: 18px !important; }
.u-mb-20 { margin-bottom: 20px !important; }
.u-mb-22 { margin-bottom: 22px !important; }
.u-mb-24 { margin-bottom: 24px !important; }
.u-w-100 { width: 100% !important; }
.u-inline-label { display: inline !important; font-weight: 400 !important; }
.u-checkbox-auto { width: auto !important; margin: 0 !important; }
.u-checkbox-mr-6 { width: auto !important; margin-right: 6px !important; }
.u-checkbox-mr-8 { width: auto !important; margin-right: 8px !important; }
.u-actions-compact { margin-top: 0 !important; margin-bottom: 0 !important; }
.u-actions-mb-0 { margin-bottom: 0 !important; }
.u-actions-mt-8 { margin-top: 8px !important; }
.u-actions-mt-12 { margin-top: 12px !important; margin-bottom: 0 !important; }
.u-actions-mt-18 { margin-top: 18px !important; margin-bottom: 0 !important; }
.u-form-section { margin-top: 28px !important; }
.u-panel { border: 1px solid #eadfce; border-radius: var(--radius); padding: 14px; background: #fffdf8; margin-bottom: 12px; }
.u-filter-form { margin-bottom: 24px !important; }
.u-filter-grid { display: grid !important; grid-template-columns: 1.2fr 1fr 1fr 1fr auto auto; gap: 12px; align-items: end; }
.u-filter-label { display: block; font-size: 13px; text-transform: uppercase; letter-spacing: .06em; color: #6d5e4c; margin-bottom: 6px; }
.u-filter-control { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid #cdbb9d; border-radius: .375rem; font: inherit; background: #fff; }
.u-filter-button { display: inline-block; padding: 10px 14px; border-radius: .375rem; border: none; background: #2c5c4c; color: #fffaf2; font: inherit; cursor: pointer; }
.u-checkbox-row { display: flex; gap: 18px; flex-wrap: wrap; padding-top: 6px; }
.u-choice-label { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--text); font-size: .98rem; font-weight: 600; letter-spacing: 0; text-transform: none; }
.u-placeholder-icon { width: 18px; flex: 0 0 18px; }
.u-hr { border: none; border-top: 1px solid #eadfce; margin: 22px 0; }
.u-profile-form { padding: 0 0 16px; margin-bottom: 16px; border-bottom: 1px solid #eadfce; }
.u-align-end { align-self: end; padding-bottom: 10px; }
.u-table-product { width: 22%; }
.u-table-description { width: 24%; }
.u-table-qty { width: 10%; }
.u-table-price { width: 12%; }
.u-table-total { width: 12%; }
@media (max-width: 900px) { .u-filter-grid { grid-template-columns: 1fr; } }

/* event-detail.php */

:root {
            --bg: #f3eee7;
            --surface: rgba(var(--theme-surface-rgb), 0.9);
            --surface-strong: #fffdf9;
            --line: #d8cdbc;
            --text: #1d1815;
            --muted: #655d57;
            --accent: #ab5a39;
            --accent-deep: #30231d;
            --accent-soft: #ede1d2;
            --footer-bg: #211b17;
            --footer-line: rgba(255, 248, 238, 0.12);
            --footer-text: #f7f0e7;
            --radius: 0.375rem;
            --shadow: 0 18px 44px rgba(50, 35, 24, 0.07);
        }
body.view-event-detail * { box-sizing: border-box; }
body.view-event-detail {
            margin: 0;
            font-family: 'Manrope', sans-serif;
            font-size: 15px;
            color: var(--text);
            background:
                radial-gradient(circle at top left, rgba(var(--theme-primary-rgb), 0.08), transparent 26%),
                radial-gradient(circle at top right, rgba(var(--theme-button-primary-rgb), 0.07), transparent 24%),
                var(--bg);
        }
body.view-event-detail .layout { max-width: 1280px; margin: 0 auto; padding: 0 24px 56px; }
body.view-event-detail .band {
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
        }
body.view-event-detail .band-inner {
            max-width: 1280px;
            margin: 0 auto;
            padding-left: 24px;
            padding-right: 24px;
        }
body.view-event-detail .flash {
            padding: 14px 16px;
            border-radius: var(--radius);
            margin-bottom: 18px;
            background: #f8dfdc;
            color: #7a2f27;
            border: 1px solid #dfaea8;
        }
body.view-event-detail .hero {
            display: grid;
            grid-template-columns: 1.05fr .95fr;
            gap: 24px;
            align-items: start;
        }
body.view-event-detail .panel, body.view-event-detail .visual {
            background: var(--surface);
            border: 1px solid rgba(216, 205, 188, 0.92);
            border-radius: var(--radius);
            box-shadow: var(--shadow);
        }
body.view-event-detail .panel { min-width: 0; padding: 28px; }
body.view-event-detail .visual { padding: 16px; }
body.view-event-detail .panel h1 {
            margin: 0 0 10px;
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: clamp(2.2rem, 4vw, 4rem);
            font-weight: 800;
            line-height: 0.94;
            letter-spacing: -0.06em;
        }
body.view-event-detail .cover-wrap {
            position: relative;
            width: 100%;
            border-radius: calc(var(--radius) - 0.05rem);
            aspect-ratio: 3 / 4;
            overflow: hidden;
            background: #ddd1c3;
        }
body.view-event-detail .cover {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: var(--cover-x, 50%) var(--cover-y, 50%);
            display: block;
        }
body.view-event-detail .cover.is-contain { object-fit: contain; }
body.view-event-detail .category-row {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin: 0 0 14px;
        }
body.view-event-detail .category, body.view-event-detail .status {
            display: inline-block;
            padding: 0.42rem 0.62rem;
            border-radius: var(--radius);
            font-size: 0.74rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
        }
body.view-event-detail .category {
            background: var(--accent-soft);
            color: var(--accent);
        }
body.view-event-detail .status { margin-bottom: 12px; }
body.view-event-detail .status.cancelled { background: #f7d7d2; color: #8a2e25; }
body.view-event-detail .status.soldout { background: #efe2c8; color: #6a4c16; }
body.view-event-detail .performer {
            margin: -4px 0 14px;
            color: #43372f;
            font-weight: 700;
            font-size: 1rem;
        }
body.view-event-detail .meta-list { display: grid; gap: 8px; margin: 14px 0 18px; }
body.view-event-detail .meta-item {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            color: var(--muted);
        }
body.view-event-detail .meta-item svg {
            flex: 0 0 18px;
            width: 18px;
            height: 18px;
            stroke: var(--accent);
        }
body.view-event-detail .meta-icon {
            width: 18px;
            height: 18px;
            display: inline-block;
            object-fit: contain;
            flex: 0 0 18px;
        }
body.view-event-detail .meta-item span { min-width: 0; line-height: 1.45; }
body.view-event-detail .description {
            margin: 0;
            color: var(--muted);
            line-height: 1.75;
            white-space: normal;
            max-width: 100%;
            word-break: normal;
            overflow-wrap: break-word;
            word-wrap: break-word;
            hyphens: auto;
        }
body.view-event-detail .description a {
            white-space: normal;
            max-width: 100%;
            word-break: normal;
            overflow-wrap: break-word;
            word-wrap: break-word;
            hyphens: auto;
        }
body.view-event-detail .share-block {
            margin-top: 22px;
            padding-top: 18px;
            border-top: 1px solid rgba(216, 205, 188, 0.92);
        }
body.view-event-detail .share-label {
            margin: 0 0 10px;
            color: var(--muted);
            font-size: 0.82rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
        }
body.view-event-detail .share-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
        }
body.view-event-detail .share-actions button, body.view-event-detail .share-actions a {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 0.8rem 1rem;
            border-radius: var(--radius);
            border: 1px solid rgba(216, 205, 188, 0.92);
            background: var(--surface-strong);
            color: var(--text);
            text-decoration: none;
            font: inherit;
            font-weight: 700;
            cursor: pointer;
        }
body.view-event-detail .share-actions button:hover, body.view-event-detail .share-actions a:hover {
            background: var(--accent-soft);
        }
body.view-event-detail .share-feedback {
            min-height: 20px;
            margin-top: 10px;
            color: var(--muted);
            font-size: 0.92rem;
        }
body.view-event-detail .tickets { display: grid; gap: 12px; margin: 24px 0; }
body.view-event-detail .sales-info {
            margin-top: 22px;
            padding: 18px;
            border-radius: var(--radius);
            background: rgba(237, 225, 210, 0.68);
            border: 1px solid rgba(196, 182, 160, 0.85);
        }
body.view-event-detail .sales-info h2 {
            margin: 0 0 8px;
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 1.2rem;
            font-weight: 800;
            letter-spacing: -0.03em;
        }
body.view-event-detail .sales-info p {
            margin: 0;
            color: var(--muted);
            line-height: 1.7;
        }
body.view-event-detail .ticket {
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 16px;
            align-items: center;
            padding: 16px;
            border-radius: var(--radius);
            background: rgba(255, 253, 249, 0.92);
            border: 1px solid rgba(216, 205, 188, 0.92);
        }
body.view-event-detail .ticket.error { border-color: #d7a39e; background: #fff3f1; }
body.view-event-detail .grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
body.view-event-detail label {
            display: block;
            margin-bottom: 6px;
            color: var(--muted);
            font-size: 0.82rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
        }
body.view-event-detail .layout input {
            width: 100%;
            padding: 0.85rem 0.9rem;
            border: 1px solid var(--line);
            border-radius: var(--radius);
            font: inherit;
            background: var(--surface-strong);
        }
body.view-event-detail .layout input.error { border-color: #d7a39e; background: #fff7f6; }
body.view-event-detail .full { grid-column: 1 / -1; }
body.view-event-detail .actions { display: flex; gap: 12px; margin-top: 18px; flex-wrap: wrap; }
body.view-event-detail .layout button, body.view-event-detail .layout a.btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 0.95rem 1.2rem;
            border-radius: var(--radius);
            border: none;
            text-decoration: none;
            font: inherit;
            font-weight: 700;
            cursor: pointer;
        }
body.view-event-detail .layout button {
            background: var(--accent-deep);
            color: var(--footer-text);
        }
body.view-event-detail .layout a.btn {
            background: #8b7758;
            color: #fff8ef;
        }
body.view-event-detail .muted { color: var(--muted); }
body.view-event-detail .small { font-size: 0.92rem; }
body.view-event-detail .error-text { color: #8b2f26; font-size: 0.92rem; margin-top: 6px; }
body.view-event-detail .summary {
            display: grid;
            gap: 14px;
            margin: 18px 0 8px;
            padding: 18px;
            border-radius: var(--radius);
            background: rgba(237, 225, 210, 0.68);
            border: 1px solid rgba(196, 182, 160, 0.85);
        }
body.view-event-detail .summary-lines {
            display: grid;
            gap: 6px;
        }
body.view-event-detail .summary-line {
            display: flex;
            justify-content: space-between;
            gap: 18px;
            color: var(--muted);
            font-size: 0.95rem;
        }
body.view-event-detail .summary-line strong {
            font-family: 'Manrope', sans-serif;
            font-size: 1rem;
            font-weight: 700;
            letter-spacing: 0;
            color: var(--text);
        }
body.view-event-detail .summary-total {
            display: flex;
            justify-content: space-between;
            align-items: baseline;
            gap: 18px;
            padding-top: 10px;
            border-top: 1px solid rgba(196, 182, 160, 0.7);
        }
body.view-event-detail .summary-total strong {
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 1.45rem;
            font-weight: 700;
            letter-spacing: -0.03em;
            color: var(--text);
        }
body.view-event-detail .discount-feedback {
            min-height: 20px;
            margin-top: 6px;
            font-size: 0.92rem;
        }
body.view-event-detail .discount-feedback.ok { color: #2f5f45; }
body.view-event-detail .discount-feedback.error { color: #8b2f26; }
@media (max-width: 980px) {
body.view-event-detail .hero, body.view-event-detail .grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
body.view-event-detail { font-size: 14px; }
body.view-event-detail .layout { padding: 0 14px 34px; }
body.view-event-detail .band-inner { padding-left: 14px; padding-right: 14px; }
body.view-event-detail .panel, body.view-event-detail .visual { padding: 16px; }
body.view-event-detail .hero { gap: 16px; }
body.view-event-detail .panel h1 { font-size: 2rem; }
body.view-event-detail .ticket { grid-template-columns: 1fr; gap: 12px; }
body.view-event-detail .summary-total {
                flex-direction: column;
                align-items: flex-start;
                gap: 6px;
            }
body.view-event-detail .summary-total strong { display: block; font-size: 1.25rem; }
body.view-event-detail .actions { flex-direction: column; }
body.view-event-detail .layout button, body.view-event-detail .layout a.btn { width: 100%; }

}

/* home.php */

:root {
            --bg: #f3eee7;
            --surface: rgba(255, 251, 245, 0.86);
            --surface-strong: #fffdf9;
            --line: #d8cdbc;
            --line-strong: #c4b6a0;
            --text: #1d1815;
            --muted: #655d57;
            --accent: #ab5a39;
            --accent-deep: #30231d;
            --accent-soft: #ede1d2;
            --footer-bg: #211b17;
            --footer-line: rgba(255, 248, 238, 0.12);
            --footer-text: #f7f0e7;
            --radius: 0.375rem;
            --shadow: 0 18px 44px rgba(50, 35, 24, 0.07);
        }
body.view-home * { box-sizing: border-box; }
body.view-home {
            margin: 0;
            font-family: 'Manrope', sans-serif;
            font-size: 15px;
            color: var(--text);
            background:
                radial-gradient(circle at top left, rgba(171, 90, 57, 0.08), transparent 26%),
                radial-gradient(circle at top right, rgba(48, 35, 29, 0.07), transparent 24%),
                var(--bg);
        }
body.view-home a { color: inherit; }
body.view-home .wrap { max-width: 1280px; margin: 0 auto; padding: 0 24px 56px; }
body.view-home .band {
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
        }
body.view-home .band-inner {
            max-width: 1280px;
            margin: 0 auto;
            padding-left: 24px;
            padding-right: 24px;
        }
body.view-home .flash {
            padding: 14px 16px;
            border-radius: var(--radius);
            margin-bottom: 18px;
            background: #f8dfdc;
            color: #7a2f27;
            border: 1px solid #dfaea8;
        }
body.view-home .agenda-tools {
            display: grid;
            grid-template-columns: 1.2fr .9fr .9fr auto;
            gap: 14px;
            align-items: end;
            margin-bottom: 22px;
            margin-top: 30px;
            padding: 18px;
            background: rgba(255, 251, 245, 0.7);
            border: 1px solid rgba(216, 205, 188, 0.88);
            border-radius: var(--radius);
            box-shadow: var(--shadow);
        }
body.view-home .agenda-tools label {
            display: block;
            margin-bottom: 6px;
            color: var(--muted);
            font-size: 0.78rem;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }
body.view-home .agenda-tools select {
            width: 100%;
            padding: 0.85rem 0.9rem;
            border: 1px solid var(--line);
            border-radius: var(--radius);
            font: inherit;
            background: var(--surface-strong);
            color: var(--text);
        }
body.view-home .agenda-tools .hint {
            color: var(--muted);
            font-size: 0.88rem;
            line-height: 1.55;
        }
body.view-home .filter-reset {
            display: inline-block;
            width: 100%;
            padding: 0.85rem 1rem;
            border: 1px solid var(--line);
            border-radius: var(--radius);
            background: var(--surface-strong);
            color: var(--text);
            font: inherit;
            font-weight: 600;
            cursor: pointer;
        }
body.view-home .cards {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 22px;
            align-items: stretch;
        }
body.view-home .card {
            display: flex;
            flex-direction: column;
            height: 100%;
            background: var(--surface-strong);
            border: 1px solid rgba(216, 205, 188, 0.92);
            border-radius: var(--radius);
            overflow: hidden;
            box-shadow: var(--shadow);
        }
body.view-home .card.placeholder {
            display: none;
            min-height: 490px;
            background:
                linear-gradient(180deg, rgba(255, 251, 245, 0.85), rgba(246, 240, 230, 0.55));
            border-style: dashed;
            box-shadow: none;
        }
body.view-home .cover {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: var(--cover-x, 50%) var(--cover-y, 50%);
            display: block;
        }
body.view-home .cover.is-contain { object-fit: contain; }
body.view-home .cover-wrap {
            position: relative;
            width: 100%;
            aspect-ratio: 3 / 4;
            overflow: hidden;
            background: #e6ddd1;
        }
body.view-home .event-image-link {
            display: block;
            width: 100%;
            height: 100%;
            color: inherit;
            text-decoration: none;
        }
body.view-home .event-image-link .cover {
            transition: opacity .18s ease, transform .18s ease;
        }
body.view-home .event-image-link:hover .cover {
            opacity: .92;
            transform: scale(1.02);
        }
body.view-home .event-image-link:focus-visible {
            outline: 3px solid var(--theme-focus);
            outline-offset: -3px;
        }
@media (prefers-reduced-motion: reduce) {
body.view-home .event-image-link .cover {
            transition: none;
        }
body.view-home .event-image-link:hover .cover {
            transform: none;
        }

}
body.view-home .cancelled-ribbon {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 145%;
            transform: translate(-50%, -50%) rotate(-18deg);
            padding: 0.72rem 1rem;
            background: rgba(138, 46, 37, 0.9);
            color: #fffaf2;
            text-align: center;
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 1.45rem;
            font-weight: 800;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            box-shadow: 0 10px 24px rgba(50, 35, 24, 0.22);
            pointer-events: none;
        }
body.view-home .body {
            display: flex;
            flex: 1 1 auto;
            flex-direction: column;
            padding: 20px;
        }
body.view-home .meta-list { display: grid; gap: 8px; margin: 12px 0 16px; }
body.view-home .meta-item {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            color: var(--muted);
        }
body.view-home .meta-item svg {
            flex: 0 0 18px;
            width: 18px;
            height: 18px;
            stroke: var(--accent);
        }
body.view-home .meta-icon {
            width: 18px;
            height: 18px;
            display: inline-block;
            object-fit: contain;
            flex: 0 0 18px;
        }
body.view-home .meta-item span { min-width: 0; line-height: 1.45; }
body.view-home .performer {
            margin: -4px 0 12px;
            color: #43372f;
            font-weight: 700;
            font-size: 0.94rem;
        }
body.view-home .category-row {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin: 0 0 14px;
        }
body.view-home .category, body.view-home .status {
            display: inline-block;
            padding: 0.42rem 0.62rem;
            border-radius: var(--radius);
            font-size: 0.74rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
        }
body.view-home .category {
            background: var(--accent-soft);
            color: var(--accent);
        }
body.view-home .status { margin-bottom: 12px; }
body.view-home .status.cancelled { background: #f7d7d2; color: #8a2e25; }
body.view-home .status.soldout { background: #efe2c8; color: #6a4c16; }
body.view-home h2 {
            margin: 0 0 10px;
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 1.6rem;
            font-weight: 800;
            line-height: 1;
            letter-spacing: -0.05em;
        }
body.view-home .summary-copy {
            margin: 0 0 18px;
            color: var(--muted);
            line-height: 1.7;
            font-size: 0.95rem;
        }
body.view-home .row {
            display: flex;
            justify-content: flex-start;
            gap: 12px;
            align-items: center;
            margin-top: auto;
            padding-top: 18px;
        }
body.view-home .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 0.45rem;
            padding: 0.9rem 1.1rem;
            border-radius: var(--radius);
            text-decoration: none;
            background: var(--accent-deep);
            color: var(--footer-text);
            font-size: 0.94rem;
            font-weight: 700;
            letter-spacing: 0.01em;
            transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease;
        }
body.view-home .btn:hover {
            background: #45342b;
            transform: translateY(-1px);
            box-shadow: 0 12px 22px rgba(48, 35, 29, 0.18);
        }
body.view-home .btn.disabled {
            background: #b8ab9a;
            color: #fffaf2;
            pointer-events: none;
            box-shadow: none;
        }
body.view-home .empty-state {
            display: none;
            padding: 18px;
            margin-top: 18px;
            border-radius: var(--radius);
            background: var(--surface-strong);
            border: 1px solid rgba(216, 205, 188, 0.92);
            color: var(--muted);
            box-shadow: var(--shadow);
        }
body.view-home .more-row {
            display: flex;
            justify-content: center;
            margin-top: 24px;
        }
body.view-home .more-btn {
            display: none;
            padding: 0.92rem 1.2rem;
            border: none;
            border-radius: var(--radius);
            background: var(--accent);
            color: #fffaf2;
            font: inherit;
            font-weight: 700;
            cursor: pointer;
            transition: background-color .18s ease, transform .18s ease;
        }
body.view-home .more-btn:hover {
            background: #934c2f;
            transform: translateY(-1px);
        }
@media (max-width: 1180px) {
body.view-home .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }

}
@media (max-width: 900px) {
body.view-home .agenda-tools { grid-template-columns: 1fr 1fr; }

}
@media (max-width: 640px) {
body.view-home { font-size: 14px; }
body.view-home .wrap { padding: 0 14px 34px; }
body.view-home .band-inner { padding-left: 14px; padding-right: 14px; }
body.view-home .intro-main, body.view-home .intro-side, body.view-home .agenda-tools { padding: 18px 16px; }
body.view-home .agenda-tools { grid-template-columns: 1fr; gap: 12px; }
body.view-home .cards { grid-template-columns: 1fr; gap: 16px; }
body.view-home .cancelled-ribbon { font-size: 1.15rem; padding: 0.62rem 1rem; }
body.view-home .body { padding: 16px; }
body.view-home h2 { font-size: 1.5rem; }
body.view-home .summary-copy { font-size: 0.92rem; }
body.view-home .row { justify-content: stretch; }
body.view-home .btn { width: 100%; }
body.view-home .card.placeholder { display: none !important; }

}

/* login.php */

:root {
            --bg: #f3eee7;
            --surface: rgba(255, 251, 245, 0.92);
            --line: #d8cdbc;
            --text: #1d1815;
            --muted: #655d57;
            --accent: #30231d;
            --footer-bg: #211b17;
            --footer-line: rgba(255, 248, 238, 0.12);
            --footer-text: #f7f0e7;
            --radius: 0.375rem;
            --shadow: 0 18px 44px rgba(50, 35, 24, 0.07);
        }
body.view-login * { box-sizing: border-box; }
body.view-login {
            margin: 0;
            font-family: 'Manrope', sans-serif;
            font-size: 15px;
            color: var(--text);
            background:
                radial-gradient(circle at top left, rgba(171, 90, 57, 0.08), transparent 26%),
                radial-gradient(circle at top right, rgba(48, 35, 29, 0.07), transparent 24%),
                var(--bg);
        }
body.view-login .layout { max-width: 1280px; margin: 0 auto; padding: 0 24px 56px; }
body.view-login .band { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
body.view-login .band-inner { max-width: 1280px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
body.view-login .login-wrap { max-width: 540px; margin: 48px auto 0; }
body.view-login .panel { background: var(--surface); border: 1px solid rgba(216, 205, 188, 0.92); border-radius: var(--radius); box-shadow: var(--shadow); padding: 28px; }
body.view-login h1 { margin: 0 0 8px; font-family: 'Plus Jakarta Sans', sans-serif; font-size: 2.4rem; line-height: 1; letter-spacing: -0.05em; }
body.view-login .intro { margin: 0 0 22px; color: var(--muted); line-height: 1.6; }
body.view-login .error { margin: 0 0 18px; padding: 14px 16px; border-radius: var(--radius); background: #f8dfdc; color: #7a2f27; border: 1px solid #dfaea8; }
body.view-login label { display: block; margin-bottom: 6px; color: var(--muted); font-size: 0.82rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
body.view-login .layout input { width: 100%; padding: 0.85rem 0.9rem; border: 1px solid var(--line); border-radius: var(--radius); font: inherit; background: #fffdf9; margin-bottom: 16px; }
body.view-login .layout button { display: inline-flex; align-items: center; justify-content: center; padding: 0.95rem 1.2rem; border-radius: var(--radius); border: none; background: var(--accent); color: var(--footer-text); font: inherit; font-weight: 700; cursor: pointer; }
@media (max-width: 640px) {
body.view-login .layout { padding: 0 14px 34px; }
body.view-login .band-inner { padding-left: 14px; padding-right: 14px; }
body.view-login .panel { padding: 18px 16px; }
body.view-login h1 { font-size: 2rem; }
body.view-login .layout button { width: 100%; }

}

/* page.php */

:root {
            --bg: #f3eee7;
            --surface: rgba(255, 251, 245, 0.9);
            --surface-strong: #fffdf9;
            --line: #d8cdbc;
            --text: #1d1815;
            --muted: #655d57;
            --accent: #ab5a39;
            --accent-deep: #30231d;
            --footer-bg: #211b17;
            --footer-line: rgba(255, 248, 238, 0.12);
            --footer-text: #f7f0e7;
            --radius: 0.375rem;
            --shadow: 0 18px 44px rgba(50, 35, 24, 0.07);
        }
body.view-page * { box-sizing: border-box; }
body.view-page {
            margin: 0;
            font-family: 'Manrope', sans-serif;
            font-size: 15px;
            color: var(--text);
            background:
                radial-gradient(circle at top left, rgba(171, 90, 57, 0.08), transparent 26%),
                radial-gradient(circle at top right, rgba(48, 35, 29, 0.07), transparent 24%),
                var(--bg);
        }
body.view-page .layout { max-width: 1180px; margin: 0 auto; padding: 0 24px 56px; }
body.view-page .band {
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
        }
body.view-page .band-inner {
            max-width: 1180px;
            margin: 0 auto;
            padding-left: 24px;
            padding-right: 24px;
        }
body.view-page .page-gallery {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 14px;
            margin: 24px 0;
        }
body.view-page .page-gallery img {
            display: block;
            width: 100%;
            aspect-ratio: 4 / 3;
            object-fit: cover;
            border-radius: var(--radius);
        }
body.view-page .flash {
            padding: 14px 16px;
            border-radius: var(--radius);
            margin-bottom: 18px;
        }
body.view-page .flash.success { background: #dceedd; color: #255b2b; border: 1px solid #a7cda9; }
body.view-page .flash.error { background: #f8dfdc; color: #7a2f27; border: 1px solid #dfaea8; }
body.view-page .panel {
            background: var(--surface);
            border: 1px solid rgba(216, 205, 188, 0.92);
            border-radius: var(--radius);
            padding: 30px;
            box-shadow: var(--shadow);
            min-width: 0;
        }
body.view-page .panel h1 {
            margin: 0 0 12px;
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: clamp(2.1rem, 4vw, 3.8rem);
            font-weight: 800;
            line-height: 1;
            letter-spacing: -0.06em;
        }
body.view-page .intro {
            margin: 0 0 24px;
            color: #43372f;
            font-size: 1.08rem;
            line-height: 1.65;
            white-space: normal;
            max-width: 100%;
            word-break: normal;
            overflow-wrap: break-word;
            word-wrap: break-word;
            hyphens: auto;
        }
body.view-page .content {
            color: var(--muted);
            line-height: 1.85;
            font-size: 1rem;
            white-space: normal;
            max-width: 100%;
            word-break: normal;
            overflow-wrap: break-word;
            word-wrap: break-word;
            hyphens: auto;
        }
body.view-page .form-card {
            margin-top: 30px;
            padding-top: 24px;
            border-top: 1px solid rgba(216, 205, 188, 0.92);
        }
body.view-page .form-layout {
            display: grid;
            grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.95fr);
            gap: 18px;
            margin-top: 30px;
        }
body.view-page .mini-card {
            padding: 22px;
            border: 1px solid rgba(216, 205, 188, 0.92);
            border-radius: var(--radius);
            background: rgba(255, 253, 249, 0.85);
        }
body.view-page .mini-card h2 {
            margin-top: 0;
            margin-bottom: 10px;
        }
body.view-page .mini-card p {
            margin-top: 0;
            color: var(--muted);
            line-height: 1.75;
        }
body.view-page .grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
body.view-page label {
            display: block;
            margin-bottom: 6px;
            color: var(--muted);
            font-size: 0.82rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
        }
body.view-page .layout input, body.view-page .layout textarea {
            width: 100%;
            padding: 0.85rem 0.9rem;
            border: 1px solid var(--line);
            border-radius: var(--radius);
            font: inherit;
            background: var(--surface-strong);
        }
body.view-page .layout textarea { min-height: 120px; resize: vertical; }
body.view-page .full { grid-column: 1 / -1; }
body.view-page .actions { display: flex; gap: 12px; margin-top: 18px; flex-wrap: wrap; }
body.view-page .layout button, body.view-page .layout a.btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 0.95rem 1.2rem;
            border-radius: var(--radius);
            border: none;
            text-decoration: none;
            font: inherit;
            font-weight: 700;
            cursor: pointer;
        }
body.view-page .layout button {
            background: var(--accent-deep);
            color: var(--footer-text);
        }
body.view-page .layout a.btn {
            background: #8b7758;
            color: #fff8ef;
        }
body.view-page h2 {
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-weight: 800;
            letter-spacing: -0.04em;
        }
@media (max-width: 920px) {
body.view-page .grid { grid-template-columns: 1fr; }
body.view-page .form-layout { grid-template-columns: 1fr; }
body.view-page .page-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }

}
@media (max-width: 640px) {
body.view-page { font-size: 14px; }
body.view-page .layout { padding: 0 14px 34px; }
body.view-page .band-inner { padding-left: 14px; padding-right: 14px; }
body.view-page .panel { padding: 20px 16px; }
body.view-page .panel h1 { font-size: 2rem; }
body.view-page .intro { font-size: 1rem; }
body.view-page .content { line-height: 1.75; }
body.view-page .page-gallery { grid-template-columns: 1fr; }
body.view-page .actions { flex-direction: column; }
body.view-page .layout button, body.view-page .layout a.btn { width: 100%; }

}

/* reservation-success.php */

:root {
            --bg: #f3eee7;
            --surface: rgba(255, 251, 245, 0.92);
            --line: #d8cdbc;
            --text: #1d1815;
            --muted: #655d57;
            --accent-deep: #30231d;
            --accent-soft: #ede1d2;
            --radius: 0.375rem;
            --shadow: 0 18px 44px rgba(50, 35, 24, 0.07);
        }
body.view-reservation-success * { box-sizing: border-box; }
body.view-reservation-success {
            margin: 0;
            font-family: 'Manrope', sans-serif;
            font-size: 15px;
            color: var(--text);
            background:
                radial-gradient(circle at top left, rgba(171, 90, 57, 0.08), transparent 26%),
                radial-gradient(circle at top right, rgba(48, 35, 29, 0.07), transparent 24%),
                var(--bg);
        }
body.view-reservation-success .wrap { max-width: 960px; margin: 0 auto; padding: 36px 24px 56px; }
body.view-reservation-success .card {
            background: var(--surface);
            border: 1px solid rgba(216, 205, 188, 0.92);
            border-radius: var(--radius);
            padding: 30px;
            box-shadow: var(--shadow);
        }
body.view-reservation-success h1 {
            margin: 0 0 12px;
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: clamp(2rem, 4vw, 3.5rem);
            font-weight: 800;
            line-height: 1;
            letter-spacing: -0.06em;
        }
body.view-reservation-success .lead { color: #43372f; line-height: 1.7; }
body.view-reservation-success table { width: 100%; border-collapse: collapse; margin-top: 18px; }
body.view-reservation-success table { max-width: 100%; }
body.view-reservation-success th, body.view-reservation-success td { text-align: left; padding: 12px 8px; border-bottom: 1px solid #eadfce; }
body.view-reservation-success th {
            color: var(--muted);
            font-size: 0.78rem;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }
body.view-reservation-success .actions { display: flex; gap: 12px; margin-top: 20px; flex-wrap: wrap; }
body.view-reservation-success .wrap a {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 0.95rem 1.2rem;
            border-radius: var(--radius);
            text-decoration: none;
            background: var(--accent-deep);
            color: #fffaf2;
            font-weight: 700;
        }
body.view-reservation-success .muted { color: var(--muted); line-height: 1.7; }
body.view-reservation-success .status {
            display: inline-block;
            padding: 0.42rem 0.62rem;
            margin-right: 8px;
            border-radius: var(--radius);
            background: var(--accent-soft);
            color: #6a4c16;
            font-size: 0.74rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
        }
@media (max-width: 640px) {
body.view-reservation-success { font-size: 14px; }
body.view-reservation-success .wrap { padding: 18px 14px 34px; }
body.view-reservation-success .card { padding: 20px 16px; }
body.view-reservation-success h1 { font-size: 2rem; }
body.view-reservation-success table, body.view-reservation-success thead, body.view-reservation-success tbody, body.view-reservation-success th, body.view-reservation-success td, body.view-reservation-success tr { display: block; }
body.view-reservation-success thead { display: none; }
body.view-reservation-success tr { padding: 12px 0; border-bottom: 1px solid #eadfce; }
body.view-reservation-success td { padding: 4px 0; border: 0; }
body.view-reservation-success .actions { flex-direction: column; }
body.view-reservation-success .wrap a { width: 100%; }

}

/* volunteer-my-duties.php */

:root {
            --bg: #f3eee7;
            --surface: rgba(255, 251, 245, 0.9);
            --line: #d8cdbc;
            --text: #1d1815;
            --muted: #655d57;
            --accent-deep: #30231d;
            --accent-soft: #8b7758;
            --footer-bg: #211b17;
            --footer-line: rgba(255, 248, 238, 0.12);
            --footer-text: #f7f0e7;
            --radius: 0.375rem;
            --shadow: 0 18px 44px rgba(50, 35, 24, 0.07);
        }
body.view-volunteer-my-duties * { box-sizing: border-box; }
body.view-volunteer-my-duties { margin: 0; font-family: 'Manrope', sans-serif; font-size: 15px; color: var(--text); background: radial-gradient(circle at top left, rgba(171, 90, 57, 0.08), transparent 26%), radial-gradient(circle at top right, rgba(48, 35, 29, 0.07), transparent 24%), var(--bg); }
body.view-volunteer-my-duties .layout { max-width: 1180px; margin: 0 auto; padding: 0 24px 56px; }
body.view-volunteer-my-duties .band { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
body.view-volunteer-my-duties .band-inner { max-width: 1180px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
body.view-volunteer-my-duties .hero { padding: 34px 0 24px; }
body.view-volunteer-my-duties .hero h1 { margin: 0 0 10px; font-family: 'Plus Jakarta Sans', sans-serif; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1; letter-spacing: -0.06em; }
body.view-volunteer-my-duties .hero p { margin: 0; color: var(--muted); line-height: 1.7; }
body.view-volunteer-my-duties .flash { padding: 14px 16px; border-radius: var(--radius); margin-bottom: 18px; }
body.view-volunteer-my-duties .flash.success { background: #dceedd; color: #255b2b; border: 1px solid #a7cda9; }
body.view-volunteer-my-duties .flash.error { background: #f8dfdc; color: #7a2f27; border: 1px solid #dfaea8; }
body.view-volunteer-my-duties .list { display: grid; gap: 18px; }
body.view-volunteer-my-duties .card { background: var(--surface); border: 1px solid rgba(216, 205, 188, 0.92); border-radius: var(--radius); padding: 22px; box-shadow: var(--shadow); }
body.view-volunteer-my-duties .eyebrow { margin-bottom: 6px; color: #7b6759; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
body.view-volunteer-my-duties .card h2 { margin: 0 0 10px; font-family: 'Plus Jakarta Sans', sans-serif; font-size: 1.35rem; line-height: 1.15; letter-spacing: -0.04em; }
body.view-volunteer-my-duties .meta { color: var(--muted); line-height: 1.7; }
body.view-volunteer-my-duties .link-btn { display: inline-flex; align-items: center; justify-content: center; margin-top: 14px; padding: 0.9rem 1.15rem; border-radius: var(--radius); border: none; background: var(--accent-soft); color: var(--footer-text); font: inherit; font-weight: 700; text-decoration: none; }
@media (max-width: 780px) {
body.view-volunteer-my-duties .layout { padding: 0 14px 34px; }
body.view-volunteer-my-duties .band-inner { padding-left: 14px; padding-right: 14px; }

}

/* volunteer-open-tasks.php */

:root {
            --bg: #f3eee7;
            --surface: rgba(255, 251, 245, 0.9);
            --line: #d8cdbc;
            --text: #1d1815;
            --muted: #655d57;
            --accent-deep: #30231d;
            --accent-soft: #8b7758;
            --footer-bg: #211b17;
            --footer-line: rgba(255, 248, 238, 0.12);
            --footer-text: #f7f0e7;
            --radius: 0.375rem;
            --shadow: 0 18px 44px rgba(50, 35, 24, 0.07);
        }
body.view-volunteer-open-tasks * { box-sizing: border-box; }
body.view-volunteer-open-tasks { margin: 0; font-family: 'Manrope', sans-serif; font-size: 15px; color: var(--text); background: radial-gradient(circle at top left, rgba(171, 90, 57, 0.08), transparent 26%), radial-gradient(circle at top right, rgba(48, 35, 29, 0.07), transparent 24%), var(--bg); }
body.view-volunteer-open-tasks .layout { max-width: 1180px; margin: 0 auto; padding: 0 24px 56px; }
body.view-volunteer-open-tasks .band { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
body.view-volunteer-open-tasks .band-inner { max-width: 1180px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
body.view-volunteer-open-tasks .hero { padding: 34px 0 24px; }
body.view-volunteer-open-tasks .hero h1 { margin: 0 0 10px; font-family: 'Plus Jakarta Sans', sans-serif; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1; letter-spacing: -0.06em; }
body.view-volunteer-open-tasks .hero p { margin: 0; color: var(--muted); line-height: 1.7; }
body.view-volunteer-open-tasks .flash { padding: 14px 16px; border-radius: var(--radius); margin-bottom: 18px; }
body.view-volunteer-open-tasks .flash.success { background: #dceedd; color: #255b2b; border: 1px solid #a7cda9; }
body.view-volunteer-open-tasks .flash.error { background: #f8dfdc; color: #7a2f27; border: 1px solid #dfaea8; }
body.view-volunteer-open-tasks .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
body.view-volunteer-open-tasks .card { background: var(--surface); border: 1px solid rgba(216, 205, 188, 0.92); border-radius: var(--radius); padding: 22px; box-shadow: var(--shadow); }
body.view-volunteer-open-tasks .eyebrow { margin-bottom: 6px; color: #7b6759; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
body.view-volunteer-open-tasks .card h2 { margin: 0 0 10px; font-family: 'Plus Jakarta Sans', sans-serif; font-size: 1.4rem; line-height: 1.15; letter-spacing: -0.04em; }
body.view-volunteer-open-tasks .meta { color: var(--muted); line-height: 1.65; margin-bottom: 14px; }
body.view-volunteer-open-tasks .actions { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
body.view-volunteer-open-tasks .layout button, body.view-volunteer-open-tasks .layout .link-btn { display: inline-flex; align-items: center; justify-content: center; padding: 0.9rem 1.15rem; border-radius: var(--radius); border: none; background: var(--accent-deep); color: var(--footer-text); font: inherit; font-weight: 700; text-decoration: none; cursor: pointer; }
body.view-volunteer-open-tasks .link-btn { background: var(--accent-soft); }
body.view-volunteer-open-tasks .badge { display: inline-block; padding: 0.3rem 0.55rem; border-radius: var(--radius); background: #efe2c8; color: #674c19; font-size: 0.82rem; }
@media (max-width: 780px) {
body.view-volunteer-open-tasks .layout { padding: 0 14px 34px; }
body.view-volunteer-open-tasks .band-inner { padding-left: 14px; padding-right: 14px; }
body.view-volunteer-open-tasks .grid { grid-template-columns: 1fr; }
body.view-volunteer-open-tasks .actions { flex-direction: column; align-items: stretch; }
body.view-volunteer-open-tasks .layout button, body.view-volunteer-open-tasks .layout .link-btn { width: 100%; }

}

/* volunteer-profile.php */

:root {
            --bg: #f3eee7;
            --surface: rgba(255, 251, 245, 0.9);
            --line: #d8cdbc;
            --text: #1d1815;
            --muted: #655d57;
            --accent-deep: #30231d;
            --accent-soft: #8b7758;
            --footer-bg: #211b17;
            --footer-line: rgba(255, 248, 238, 0.12);
            --footer-text: #f7f0e7;
            --radius: 0.375rem;
            --shadow: 0 18px 44px rgba(50, 35, 24, 0.07);
        }
body.view-volunteer-profile * { box-sizing: border-box; }
body.view-volunteer-profile { margin: 0; font-family: 'Manrope', sans-serif; font-size: 15px; color: var(--text); background: radial-gradient(circle at top left, rgba(171, 90, 57, 0.08), transparent 26%), radial-gradient(circle at top right, rgba(48, 35, 29, 0.07), transparent 24%), var(--bg); }
body.view-volunteer-profile .layout { max-width: 1180px; margin: 0 auto; padding: 0 24px 56px; }
body.view-volunteer-profile .band { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
body.view-volunteer-profile .band-inner { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
body.view-volunteer-profile .hero { padding: 34px 0 24px; }
body.view-volunteer-profile .hero h1 { margin: 0 0 10px; font-family: 'Plus Jakarta Sans', sans-serif; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1; letter-spacing: -0.06em; }
body.view-volunteer-profile .hero p { margin: 0; color: var(--muted); line-height: 1.7; }
body.view-volunteer-profile .profile-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 18px; align-items: start; }
body.view-volunteer-profile .card { background: var(--surface); border: 1px solid rgba(216, 205, 188, 0.92); border-radius: var(--radius); padding: 22px; box-shadow: var(--shadow); }
body.view-volunteer-profile .card h2 { margin: 0 0 14px; font-family: 'Plus Jakarta Sans', sans-serif; font-size: 1.35rem; }
body.view-volunteer-profile .details { display: grid; grid-template-columns: 110px 1fr; gap: 10px 14px; line-height: 1.55; }
body.view-volunteer-profile .details dt { color: var(--muted); }
body.view-volunteer-profile .details dd { margin: 0; overflow-wrap: anywhere; }
body.view-volunteer-profile .actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
body.view-volunteer-profile .action { display: flex; flex-direction: column; min-height: 150px; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius); color: var(--text); text-decoration: none; background: #fffdf9; }
body.view-volunteer-profile .action strong { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 1.2rem; margin-bottom: 8px; }
body.view-volunteer-profile .action span { color: var(--muted); line-height: 1.55; }
body.view-volunteer-profile .action .count { margin-top: auto; padding-top: 18px; color: var(--accent-deep); font-weight: 800; }
@media (max-width: 780px) {
body.view-volunteer-profile .layout { padding: 0 14px 34px; }
body.view-volunteer-profile .band-inner { padding-left: 14px; padding-right: 14px; }
body.view-volunteer-profile .profile-layout, body.view-volunteer-profile .actions { grid-template-columns: 1fr; }
body.view-volunteer-profile .details { grid-template-columns: 1fr; gap: 2px; }
body.view-volunteer-profile .details dd { margin-bottom: 10px; }

}

/* partials/frontend-footer.php */
.site-footer {
            margin-top: 32px;
            padding: 18px 0;
            background: var(--footer-bg);
            color: var(--footer-text);
        }
.site-footer-inner {
            max-width: 1280px;
            margin: 0 auto;
            padding: 18px 28px;
            background: var(--footer-bg);
            color: var(--footer-text);
        }
.footer-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.footer-block {
            border: 1px solid var(--footer-line);
            border-radius: var(--radius);
            padding: 14px;
            background: rgba(255, 248, 238, 0.04);
            min-width: 0;
        }
.footer-block h3 {
            margin: 0 0 10px;
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 1rem;
            font-weight: 800;
            letter-spacing: -0.03em;
            color: var(--footer-text);
        }
.footer-copy {
            line-height: 1.7;
            color: rgba(247, 240, 231, 0.8);
            white-space: normal;
            max-width: 100%;
            word-break: normal;
            overflow-wrap: break-word;
            word-wrap: break-word;
            hyphens: auto;
        }
.footer-copy a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.footer-block-links { display: grid; gap: 8px; margin-top: 12px; }
.footer-block-links a { color: inherit; text-decoration: underline; text-underline-offset: .2em; overflow-wrap: anywhere; }
@media (max-width: 980px) {
.footer-grid { grid-template-columns: 1fr 1fr; }

}
@media (max-width: 640px) {
.site-footer { margin-top: 24px; padding: 14px 0; }
.site-footer-inner { padding: 14px 16px; }
.footer-grid { grid-template-columns: 1fr; gap: 14px; }
.footer-block { padding: 16px; }

}
.footer-newsletter {
            display: grid;
            grid-template-columns: minmax(220px, 1fr) minmax(220px, 320px) auto auto;
            align-items: center;
            gap: 10px;
            margin-top: 14px;
            padding-top: 12px;
            border-top: 1px solid var(--footer-line);
        }
.footer-newsletter-text { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: baseline; min-width: 0; }
.footer-newsletter-text strong { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 1rem; color: var(--footer-text); }
.footer-newsletter-text span { color: rgba(247, 240, 231, 0.78); line-height: 1.45; }
.footer-newsletter input {
            width: 100%;
            min-width: 0;
            padding: 0.7rem 0.8rem;
            border: 1px solid var(--footer-line);
            border-radius: var(--radius);
            background: rgba(255, 248, 238, 0.08);
            color: var(--footer-text);
            font: inherit;
        }
.footer-newsletter input::placeholder { color: rgba(247, 240, 231, 0.58); }
.footer-newsletter button {
            padding: 0.72rem 0.9rem;
            border: 1px solid #f7f0e7;
            border-radius: var(--radius);
            background: #f7f0e7;
            color: #211b17;
            font: inherit;
            font-weight: 700;
            cursor: pointer;
        }
.footer-newsletter a { color: inherit; font-size: 0.9rem; text-decoration: underline; text-underline-offset: .2em; white-space: nowrap; }
.footer-page-links {
            display: flex;
            flex-wrap: wrap;
            gap: 8px 16px;
            margin-top: 12px;
            padding-top: 12px;
            border-top: 1px solid var(--footer-line);
        }
.footer-page-links a { color: inherit; font-size: 0.9rem; text-decoration: underline; text-underline-offset: .2em; }
.u-sr-only {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0;
        }
@media (max-width: 640px) {
.footer-newsletter { grid-template-columns: 1fr; align-items: stretch; }
.footer-newsletter-text { display: grid; gap: 4px; }
.footer-newsletter a { white-space: normal; }

}
.footer-document-link { display: inline-flex; gap: .35rem; align-items: center; margin-top: .75rem; color: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: .2em; }
.cookie-banner[hidden] { display: none; }
.cookie-banner { position: fixed; z-index: 1000; left: 1rem; right: 1rem; bottom: 1rem; max-width: 760px; margin: auto; padding: 1rem 1.1rem; border: 1px solid rgba(255,255,255,.18); border-radius: .5rem; background: #211b17; color: #f7f0e7; box-shadow: 0 16px 50px rgba(0,0,0,.3); font-family: inherit; }
.cookie-banner p { margin: 0; line-height: 1.55; }
.cookie-banner-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: .9rem; }
.cookie-banner button { border: 1px solid #f7f0e7; border-radius: .375rem; padding: .65rem .9rem; font: inherit; font-weight: 700; cursor: pointer; }
.cookie-accept { background: #f7f0e7; color: #211b17; }
.cookie-decline { background: transparent; color: #f7f0e7; }
.cookie-settings-link { margin-top: 1rem; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-decoration: underline; text-underline-offset: .2em; cursor: pointer; }
.cookie-manage { background: transparent; color: #f7f0e7; }
.cookie-modal[hidden] { display: none; }
.cookie-modal { position: fixed; z-index: 1100; inset: 0; display: grid; place-items: center; padding: 1rem; background: rgba(20,16,13,.68); }
.cookie-modal-panel { width: min(620px, 100%); max-height: calc(100vh - 2rem); overflow: auto; padding: 1.4rem; border-radius: .5rem; background: #fffaf2; color: #211b17; box-shadow: 0 20px 70px rgba(0,0,0,.35); }
.cookie-modal-panel h2 { margin: 0 0 .55rem; }
.cookie-modal-panel > p { margin: 0 0 1.1rem; line-height: 1.55; }
.cookie-option { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-top: 1px solid #ddceb4; }
.cookie-option strong { display: block; margin-bottom: .3rem; }
.cookie-option small { display: block; line-height: 1.45; color: #5f5140; }
.cookie-option input { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; accent-color: #2c5c4c; }
.cookie-modal-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.cookie-modal-actions button { padding: .7rem .95rem; border: 1px solid #2c5c4c; border-radius: .375rem; font: inherit; font-weight: 700; cursor: pointer; }
.cookie-save { background: #2c5c4c; color: #fff; }
.cookie-cancel { background: transparent; color: #2c5c4c; }

body.view-anbi-page .anbi-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem 1.2rem; margin: 0; }
body.view-anbi-page .anbi-details div { padding: .85rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface-strong); }
body.view-anbi-page .anbi-details dt { margin-bottom: .35rem; color: var(--muted); font-size: .85rem; font-weight: 800; }
body.view-anbi-page .anbi-details dd { margin: 0; line-height: 1.55; }
body.view-anbi-page .anbi-public-documents { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; }
body.view-anbi-page .anbi-public-document { padding: 1rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface-strong); }
body.view-anbi-page .anbi-public-document h3 { margin-top: 0; font-size: 1.05rem; }
body.view-anbi-page .anbi-public-document h3 a { display: inline-flex; gap: .55rem; align-items: center; color: inherit; font-weight: 800; }
body.view-anbi-page .anbi-public-document h3 span { display: inline-flex; align-items: center; justify-content: center; min-width: 2.4rem; padding: .18rem .35rem; border-radius: var(--radius); background: var(--accent-soft); color: var(--accent-deep); font-size: .72rem; }
@media (max-width: 700px) {
body.view-anbi-page .anbi-details { grid-template-columns: 1fr; }
}

/* Central public header overrides. */
body .header-band {
    background: var(--color-header-background);
    color: var(--color-header-text);
    border-bottom-color: var(--color-border);
}

body {
    background-color: var(--theme-page-background);
    color: var(--theme-text);
}

html,
body.view-home,
body.view-event-detail,
body.view-page,
body.view-anbi-page,
body.view-login,
body.view-volunteer-my-duties,
body.view-volunteer-open-tasks,
body.view-volunteer-profile {
    background-color: var(--theme-page-background);
}

body .topbar a,
body .wrap a,
body .layout a {
    color: var(--theme-link);
}

body .topbar a:hover,
body .topbar a:focus-visible,
body .wrap a:hover,
body .wrap a:focus-visible,
body .layout a:hover,
body .layout a:focus-visible {
    color: var(--theme-link-hover);
}

body .topbar button,
body .wrap button,
body .layout button,
body .wrap input[type="submit"],
body .layout input[type="submit"],
body .wrap .btn,
body .layout .btn,
body .wrap a.btn,
body .layout a.btn,
body .wrap .link-btn,
body .layout .link-btn {
    background-color: var(--theme-button-primary);
    color: var(--theme-button-primary-text);
}

body .topbar button:hover,
body .topbar button:focus-visible,
body .wrap button:hover,
body .wrap button:focus-visible,
body .layout button:hover,
body .layout button:focus-visible,
body .wrap input[type="submit"]:hover,
body .wrap input[type="submit"]:focus-visible,
body .layout input[type="submit"]:hover,
body .layout input[type="submit"]:focus-visible,
body .wrap .btn:hover,
body .wrap .btn:focus-visible,
body .layout .btn:hover,
body .layout .btn:focus-visible,
body .wrap a.btn:hover,
body .wrap a.btn:focus-visible,
body .layout a.btn:hover,
body .layout a.btn:focus-visible,
body .wrap .link-btn:hover,
body .wrap .link-btn:focus-visible,
body .layout .link-btn:hover,
body .layout .link-btn:focus-visible {
    background-color: var(--theme-button-primary-hover);
    color: var(--theme-button-primary-text);
}

body .topbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 136px;
    margin: 0;
    padding: 12px 0 8px;
}

body .topbar .nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
}

body .topbar .nav a {
    color: var(--theme-header-link);
    border-bottom: 2px solid transparent;
}

body .topbar .nav a:hover,
body .topbar .nav a:focus-visible {
    background: rgba(var(--theme-surface-rgb), 0.72);
    border-color: rgba(var(--theme-border-rgb), 0.85);
    color: var(--theme-header-link-hover);
}

body .topbar .nav a.active,
body .topbar .nav a[aria-current="page"] {
    color: var(--theme-header-link-active);
    border-bottom-color: currentColor;
}

body.view-home .card,
body.view-home .agenda-tools,
body.view-home .empty-state,
body.view-event-detail .panel,
body.view-event-detail .visual,
body.view-event-detail .ticket,
body.view-page .panel,
body.view-page .form-card,
body.view-page .mini-card,
body.view-login .panel,
body.view-volunteer-my-duties .card,
body.view-volunteer-open-tasks .card,
body.view-volunteer-profile .card,
body.view-volunteer-profile .action,
body.view-anbi-page .anbi-details div,
body.view-anbi-page .anbi-public-document {
    background-color: var(--theme-surface);
    border-color: var(--theme-border);
    color: var(--theme-text);
}

body.view-home .wrap a:not(.btn):not(.brand),
body.view-event-detail .layout a:not(.btn):not(.brand),
body.view-page .layout a:not(.btn):not(.brand),
body.view-anbi-page .layout a:not(.btn):not(.brand),
body.view-login .layout a:not(.btn):not(.brand),
body.view-volunteer-my-duties .layout a:not(.link-btn):not(.brand),
body.view-volunteer-open-tasks .layout a:not(.link-btn):not(.brand),
body.view-volunteer-profile .layout a:not(.action):not(.brand) {
    color: var(--theme-link);
}

body.view-home .wrap a:not(.btn):not(.brand):hover,
body.view-home .wrap a:not(.btn):not(.brand):focus-visible,
body.view-event-detail .layout a:not(.btn):not(.brand):hover,
body.view-event-detail .layout a:not(.btn):not(.brand):focus-visible,
body.view-page .layout a:not(.btn):not(.brand):hover,
body.view-page .layout a:not(.btn):not(.brand):focus-visible,
body.view-anbi-page .layout a:not(.btn):not(.brand):hover,
body.view-anbi-page .layout a:not(.btn):not(.brand):focus-visible,
body.view-login .layout a:not(.btn):not(.brand):hover,
body.view-login .layout a:not(.btn):not(.brand):focus-visible,
body.view-volunteer-my-duties .layout a:not(.link-btn):not(.brand):hover,
body.view-volunteer-my-duties .layout a:not(.link-btn):not(.brand):focus-visible,
body.view-volunteer-open-tasks .layout a:not(.link-btn):not(.brand):hover,
body.view-volunteer-open-tasks .layout a:not(.link-btn):not(.brand):focus-visible,
body.view-volunteer-profile .layout a:not(.action):not(.brand):hover,
body.view-volunteer-profile .layout a:not(.action):not(.brand):focus-visible {
    color: var(--theme-link-hover);
}

body .topbar .nav-toggle {
    display: none;
    width: auto;
    background: var(--theme-button-primary);
    color: var(--theme-mobile-menu-button);
}

.header-band + .wrap > :first-child,
.header-band + .layout > :first-child {
    margin-top: 0;
}

@media (max-width: 900px) {
    body .topbar {
        min-height: auto;
        padding: 16px 0;
    }

    body .topbar .nav-toggle {
        display: inline-flex;
    }

    body .topbar .nav {
        display: none;
        flex-basis: 100%;
        width: 100%;
        justify-content: flex-start;
        align-items: stretch;
        gap: 6px;
        padding-top: 12px;
        background: var(--theme-mobile-menu-background);
        color: var(--theme-mobile-menu-text);
    }

    body .topbar .nav.is-open {
        display: grid;
    }

    body .topbar .nav a {
        padding: 10px 0;
        color: var(--theme-mobile-menu-text);
    }

    body input,
    body select,
    body textarea,
    body button {
        font-size: 16px;
    }

    body.view-event-detail .layout input,
    body.view-event-detail .layout select,
    body.view-event-detail .layout textarea,
    body.view-event-detail .layout button,
    body.view-page .layout input,
    body.view-page .layout select,
    body.view-page .layout textarea,
    body.view-page .layout button,
    body.view-login .layout input,
    body.view-login .layout select,
    body.view-login .layout textarea,
    body.view-login .layout button,
    body.view-reservation-success .wrap input,
    body.view-reservation-success .wrap select,
    body.view-reservation-success .wrap textarea,
    body.view-reservation-success .wrap button,
    body.view-volunteer-my-duties .layout input,
    body.view-volunteer-my-duties .layout select,
    body.view-volunteer-my-duties .layout textarea,
    body.view-volunteer-my-duties .layout button,
    body.view-volunteer-open-tasks .layout input,
    body.view-volunteer-open-tasks .layout select,
    body.view-volunteer-open-tasks .layout textarea,
    body.view-volunteer-open-tasks .layout button,
    body.view-volunteer-profile .layout input,
    body.view-volunteer-profile .layout select,
    body.view-volunteer-profile .layout textarea,
    body.view-volunteer-profile .layout button {
        font-size: 16px;
    }
}
