/* ===== styles.css ===== */
:root {
    --burgundy: #9E1B32;
    --burgundy-dark: #5D0000;
    --sky: #A57D22;
    --sky-soft: #D2B36B;
    --white: #FFFFFF;
    --light-bg: #F8F8F8;
    --gray-light: #E8E8E8;
    --gray-medium: #CCCCCC;
    --text-dark: #333333;
    --text-light: #FFFFFF;
    --shadow: 0 2px 8px rgba(158, 27, 50, 0.15);
    --shadow-md: 0 4px 12px rgba(158, 27, 50, 0.2);
    --shadow-lg: 0 6px 16px rgba(158, 27, 50, 0.25);
    --font-main: Arial, 'Segoe UI', sans-serif;
    --font-heading: Georgia, 'Times New Roman', serif;
    --transition: all 0.3s ease;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html {
    scroll-behavior: smooth;
    font-size: 16px;
    overflow-y: scroll;
}

body {
    font-family: var(--font-main);
    background-color: var(--white);
    color: var(--text-dark);
    line-height: 1.6;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    margin: 0;
    padding: 0;
}

main {
    flex: 1;
    width: 100%;
    margin-top: 0;
    padding-top: 0;
    min-height: 400px;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ==================== HEADER ==================== */
.header {
    background-color: var(--white);
    padding: 12px 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    z-index: 101;
    border-bottom: 2px solid var(--burgundy);
    width: 100%;
}

.header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.logo-section {
    display: flex;
    align-items: center;
    gap: 12px;
}

.logo-section img {
    max-height: 140px;
    width: auto;
    filter: drop-shadow(0 2px 6px rgba(158, 27, 50, 0.3));
    transition: var(--transition);
}

.logo-section img:hover {
    transform: scale(1.02);
    filter: drop-shadow(0 4px 10px rgba(212, 175, 55, 0.4));
}

.main-nav {
    display: flex;
    gap: 25px;
    flex-wrap: wrap;
    justify-content: center;
    flex: 1;
    align-items: center;
}

.main-nav a {
    text-decoration: none;
    color: var(--text-dark);
    font-weight: 600;
    font-size: 14px;
    padding: 8px 0;
    position: relative;
    transition: var(--transition);
}

.main-nav a:after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--burgundy);
    transition: width 0.3s ease;
}

.main-nav a:hover {
    color: var(--burgundy);
}

.main-nav a:hover:after {
    width: 100%;
}

.dropdown {
    position: relative;
}

.dropdown-menu {
    display: none;
    position: absolute;
    background: var(--white);
    min-width: 200px;
    box-shadow: var(--shadow-lg);
    z-index: 200;
    top: 100%;
    left: 0;
    border-top: 3px solid var(--burgundy);
}

.dropdown:hover .dropdown-menu {
    display: block;
}

.dropdown-menu a {
    color: var(--text-dark);
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    font-weight: 500;
    font-size: 13px;
    border-bottom: 1px solid var(--gray-light);
    transition: var(--transition);
}

.dropdown-menu a:last-child {
    border-bottom: none;
}

.dropdown-menu a:hover {
    background: var(--light-bg);
    color: var(--burgundy);
    padding-left: 18px;
}

.donate-btn {
    background: var(--burgundy);
    color: var(--text-light);
    border: none;
    padding: 12px 24px;
    border-radius: 3px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
    white-space: nowrap;
}

.donate-btn:hover {
    background: var(--burgundy-dark);
    box-shadow: var(--shadow-lg);
    transform: translateY(-1px);
}

.mobile-menu-toggle {
    display: none;
    background: var(--burgundy);
    color: var(--text-light);
    border: none;
    padding: 10px 15px;
    font-size: 20px;
    cursor: pointer;
    border-radius: 3px;
}

/* ==================== BUTTONS ==================== */
.btn-primary {
    background: var(--burgundy);
    color: var(--text-light);
    text-decoration: none;
    padding: 12px 28px;
    border-radius: 3px;
    font-weight: 700;
    font-size: 15px;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
    display: inline-block;
    border: none;
    cursor: pointer;
}

.btn-primary:hover {
    background: var(--burgundy-dark);
    box-shadow: var(--shadow-lg);
    transform: translateY(-1px);
}

.btn-secondary {
    background: var(--white);
    color: var(--burgundy);
    border: 2px solid var(--burgundy);
    padding: 10px 26px;
    border-radius: 3px;
    font-weight: 700;
    font-size: 15px;
    cursor: pointer;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
    text-decoration: none;
    display: inline-block;
}

.btn-secondary:hover {
    background: var(--burgundy);
    color: var(--text-light);
    box-shadow: var(--shadow-lg);
    transform: translateY(-1px);
}

/* ==================== CONTENT SECTIONS ==================== */
.section-title {
    color: var(--burgundy);
    font-size: 28px;
    font-weight: 700;
    margin: 30px 0 20px;
    padding-bottom: 10px;
    border-bottom: 3px solid var(--sky);
    position: relative;
}

.page-title {
    color: var(--burgundy);
    font-size: 38px;
    font-weight: 900;
    margin: 20px 0;
    line-height: 1.2;
}

.page-intro {
    color: var(--gray-medium);
    font-size: 16px;
    max-width: 800px;
    margin-bottom: 30px;
    line-height: 1.7;
}

.grid-2 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin: 30px 0;
}

.grid-item {
    background: #F0F0F0;
    padding: 25px;
    border-radius: 3px;
    box-shadow: var(--shadow);
    border-left: 4px solid var(--burgundy);
    transition: var(--transition);
}

.grid-item:hover {
    box-shadow: var(--shadow-lg);
    transform: translateY(-2px);
}

.grid-item h3 {
    color: #5D0000;
    font-size: 18px;
    margin-bottom: 12px;
    font-weight: 700;
}

.grid-item p {
    color: #2C2C2C;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 8px;
    font-weight: 500;
}

.grid-item strong {
    color: #5D0000;
    font-weight: 700;
}

.card {
    background: #F0F0F0;
    padding: 25px;
    border-radius: 3px;
    box-shadow: var(--shadow);
    border-top: 3px solid var(--burgundy);
    transition: var(--transition);
}

.card:hover {
    box-shadow: var(--shadow-lg);
    transform: translateY(-3px);
}

.card h3 {
    color: #5D0000;
    font-size: 18px;
    margin-bottom: 12px;
    font-weight: 700;
}

.card p {
    color: #2C2C2C;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 15px;
    font-weight: 500;
}

.card a {
    color: #9E1B32;
    text-decoration: none;
    font-weight: 600;
    transition: var(--transition);
}

.card a:hover {
    color: #5D0000;
}

/* ==================== INFO BOX ==================== */
.info-box {
    background: #F0F0F0;
    border-left: 4px solid var(--burgundy);
    padding: 25px;
    border-radius: 3px;
    margin: 25px 0;
    box-shadow: var(--shadow);
}

.info-box h3 {
    color: #5D0000;
    font-size: 18px;
    margin: 0 0 12px 0;
    font-weight: 700;
}

.info-box p {
    color: #2C2C2C;
    font-size: 14px;
    margin: 0;
    line-height: 1.7;
    font-weight: 500;
}

.info-box ul li {
    color: #2C2C2C;
    font-weight: 500;
}

.info-box strong {
    color: #5D0000;
    font-weight: 700;
}

/* ==================== FOOTER ==================== */
footer {
    background: var(--burgundy-dark);
    color: var(--text-light);
    padding: 50px 0 20px;
    border-top: 3px solid var(--sky);
    margin-top: 0;
    width: 100%;
    clear: both;
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    margin-bottom: 30px;
}

.footer-section h3 {
    color: var(--sky);
    font-size: 16px;
    margin-bottom: 16px;
    font-weight: 700;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--sky);
}

.footer-section p {
    color: rgba(255, 255, 255, 0.9);
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 8px;
    font-weight: 500;
}

.footer-section strong {
    color: rgba(255, 255, 255, 0.9);
    font-weight: 600;
}

.footer-section ul {
    list-style: none;
}

.footer-section ul li {
    margin-bottom: 8px;
}

.footer-section ul li a {
    color: rgba(255, 255, 255, 0.9);
    text-decoration: none;
    font-size: 14px;
    transition: var(--transition);
}

.footer-section ul li a:hover {
    color: rgba(255, 255, 255, 1);
}

footer a {
    color: rgba(255, 255, 255, 0.9) !important;
    text-decoration: none;
}

footer a:hover {
    color: rgba(255, 255, 255, 1) !important;
}

.footer-bottom {
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid rgba(212, 175, 55, 0.2);
    font-size: 14px;
    color: rgba(255, 255, 255, 0.9);
}

/* ==================== MODAL ==================== */
.modal {
    display: none;
    position: fixed;
    z-index: 2000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
}

.modal.active {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.modal-content {
    background: var(--white);
    padding: 35px;
    border-radius: 3px;
    max-width: 500px;
    width: 100%;
    max-height: 80vh;
    overflow-y: auto;
    box-shadow: var(--shadow-lg);
    position: relative;
    border-top: 4px solid var(--burgundy);
}

.modal-content h2 {
    color: var(--burgundy);
    font-size: 24px;
    margin-bottom: 20px;
    text-align: center;
}

.modal-info-block {
    margin-bottom: 20px;
    padding: 20px;
    background: #F0F0F0;
    border-radius: 3px;
    border-left: 3px solid var(--sky);
}

.modal-info-block h3 {
    color: #5D0000;
    font-size: 16px;
    margin: 0 0 10px 0;
    font-weight: 600;
}

.modal-info-block p {
    color: #2C2C2C;
    font-size: 13px;
    margin: 0;
    line-height: 1.6;
    font-weight: 500;
}

.modal-close-btn {
    display: block;
    margin: 20px auto 0;
    background: var(--burgundy);
    color: var(--text-light);
    border: none;
    padding: 12px 30px;
    border-radius: 3px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: var(--transition);
    width: 100%;
}

.modal-close-btn:hover {
    background: var(--burgundy-dark);
}

/* ==================== SCROLL TO TOP ==================== */
.scroll-top-btn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 45px;
    height: 45px;
    background: var(--burgundy);
    color: var(--text-light);
    border: none;
    border-radius: 3px;
    font-size: 18px;
    cursor: pointer;
    box-shadow: var(--shadow-lg);
    opacity: 0;
    visibility: hidden;
    transition: var(--transition);
    z-index: 1000;
}

.scroll-top-btn.visible {
    opacity: 1;
    visibility: visible;
}

.scroll-top-btn:hover {
    background: var(--burgundy-dark);
    transform: translateY(-2px);
}

/* ==================== ANIMATIONS ==================== */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in-up {
    animation: fadeInUp 0.6s ease-out;
}

/* ==================== FORMS ==================== */
.form-group {
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
}

.form-group label {
    color: #5D0000;
    font-weight: 600;
    margin-bottom: 8px;
    font-size: 14px;
}

.form-group input,
.form-group textarea {
    padding: 12px 14px;
    border: 1px solid var(--gray-medium);
    border-radius: 3px;
    font-family: var(--font-main);
    font-size: 14px;
    color: var(--text-dark);
    background: var(--white);
    transition: var(--transition);
}

.form-group input:focus,
.form-group textarea:focus {
    outline: none;
    border-color: var(--burgundy);
    box-shadow: 0 0 0 3px rgba(158, 27, 50, 0.1);
}

.form-group textarea {
    resize: vertical;
    min-height: 120px;
}

.btn-submit {
    background: var(--burgundy);
    color: var(--text-light);
    border: none;
    padding: 14px 32px;
    border-radius: 3px;
    font-weight: 700;
    font-size: 15px;
    cursor: pointer;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
    width: 100%;
}

.btn-submit:hover {
    background: var(--burgundy-dark);
    box-shadow: var(--shadow-lg);
    transform: translateY(-1px);
}

.btn-submit:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ==================== RESPONSIVE ==================== */

@media (max-width: 991px) {
    .main-nav {
        gap: 15px;
    }
    
    .main-nav a {
        font-size: 13px;
    }
    
    .donate-btn {
        padding: 10px 20px;
        font-size: 13px;
    }
}

@media (max-width: 767px) {
    .header .container {
        gap: 12px;
    }
    
    .logo-section {
        flex: 1;
        justify-content: center;
    }
    
    .logo-section img {
        max-height: 100px;
    }
    
    .main-nav {
        display: none !important;
    }
    
    .donate-btn {
        display: none !important;
    }
    
    .mobile-menu-toggle {
        display: block;
    }
    
    .grid-2 {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .grid-item,
    .card,
    .info-box {
        padding: 20px;
        font-size: 13px;
    }
    
    .grid-item h3,
    .card h3 {
        font-size: 16px;
    }
    
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .footer-section h3 {
        font-size: 14px;
    }
    
    .footer-section p {
        font-size: 12px;
    }
    
    .scroll-top-btn {
        bottom: 15px;
        right: 15px;
        width: 38px;
        height: 38px;
        font-size: 14px;
    }
    
    .modal-content {
        padding: 25px;
        max-width: 90%;
    }
    
    .modal-content h2 {
        font-size: 20px;
    }
    
    .form-group input,
    .form-group textarea {
        font-size: 16px;
        padding: 12px 12px;
    }
    
    .btn-submit {
        padding: 12px 20px;
        font-size: 14px;
        width: 100%;
    }
}

@media (max-width: 479px) {
    html {
        font-size: 14px;
    }
    
    .header .container {
        gap: 0;
    }
    
    .logo-section {
        width: auto;
        flex-shrink: 0;
    }
    
    .logo-section img {
        max-height: 50px;
    }
    
    .main-nav {
        display: none !important;
    }
    
    .donate-btn {
        display: none !important;
    }
    
    .grid-2 {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    
    .grid-item,
    .card,
    .info-box {
        padding: 15px;
        font-size: 12px;
    }
    
    .grid-item h3,
    .card h3 {
        font-size: 14px;
        margin-bottom: 10px;
    }
    
    .grid-item p,
    .card p {
        font-size: 12px;
    }
    
    .form-group {
        margin-bottom: 15px;
    }
    
    .form-group label {
        font-size: 13px;
    }
    
    .form-group input,
    .form-group textarea {
        font-size: 16px;
        padding: 11px 10px;
    }
    
    .form-group textarea {
        min-height: 100px;
    }
    
    .btn-submit {
        padding: 11px 16px;
        font-size: 13px;
    }
    
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .footer-section h3 {
        font-size: 13px;
        margin-bottom: 12px;
    }
    
    .footer-section p {
        font-size: 11px;
    }
    
    .footer-bottom {
        font-size: 11px;
        padding-top: 15px;
    }
    
    .scroll-top-btn {
        bottom: 12px;
        right: 12px;
        width: 36px;
        height: 36px;
        font-size: 12px;
    }
    
    .modal-content {
        padding: 20px;
        max-width: 95%;
    }
    
    .modal-content h2 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    
    .modal-info-block {
        margin-bottom: 15px;
        padding: 15px;
    }
    
    .modal-info-block h3 {
        font-size: 14px;
        margin-bottom: 8px;
    }
    
    .modal-info-block p {
        font-size: 12px;
    }
    
    .modal-close-btn {
        padding: 10px 20px;
        font-size: 12px;
        margin-top: 15px;
    }
    
    .dropdown-menu {
        min-width: 150px;
    }
    
    .dropdown-menu a {
        padding: 10px 14px;
        font-size: 12px;
    }
}

/* ==================== HEADER TOP ==================== */
.header-top {
    background: linear-gradient(90deg, var(--burgundy-dark) 0%, var(--burgundy) 100%);
    padding: 12px 0;
    border-bottom: 3px solid var(--sky);
    position: sticky;
    top: 0;
    z-index: 102;
    width: 100%;
}

.header-top .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.header-top-left {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

#accessibilityBtn {
    background: var(--sky);
    color: var(--burgundy);
    border: 2px solid var(--sky);
    padding: 8px 16px;
    border-radius: 3px;
    cursor: pointer;
    font-size: 12px;
    font-weight: 700;
    transition: var(--transition);
    white-space: nowrap;
}

#accessibilityBtn:hover {
    background: var(--burgundy);
    color: var(--sky);
    border-color: var(--sky);
}

.font-size-label {
    color: var(--sky);
    font-weight: 600;
    font-size: 12px;
}

.font-size-controls {
    display: flex;
    gap: 6px;
}

.font-size-controls button {
    background: transparent;
    color: var(--sky);
    border: 2px solid var(--sky);
    padding: 5px 10px;
    border-radius: 3px;
    cursor: pointer;
    font-size: 11px;
    font-weight: 700;
    transition: var(--transition);
}

.font-size-controls button:hover {
    background: var(--sky);
    color: var(--burgundy);
}

.search-box {
    display: flex;
    align-items: center;
}

.search-box input {
    background: var(--white);
    color: var(--text-dark);
    border: 2px solid var(--sky);
    padding: 8px 14px;
    border-radius: 3px;
    font-size: 12px;
    font-family: var(--font-main);
    transition: var(--transition);
    min-width: 180px;
}

.search-box input:focus {
    outline: none;
    border-color: var(--sky-soft);
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.2);
    background: var(--light-bg);
}

.search-box input::placeholder {
    color: var(--gray-medium);
}

@media (max-width: 767px) {
    .header-top-left {
        flex: 1;
        justify-content: space-between;
    }
    
    #accessibilityBtn {
        padding: 7px 12px;
        font-size: 11px;
    }
    
    .font-size-label {
        font-size: 11px;
    }
    
    .font-size-controls button {
        padding: 4px 8px;
        font-size: 10px;
    }
    
    .search-box input {
        padding: 7px 12px;
        font-size: 11px;
        min-width: 140px;
    }
}

@media (max-width: 479px) {
    .header-top .container {
        flex-direction: column;
        gap: 10px;
    }
    
    .header-top-left {
        width: 100%;
        flex-direction: column;
        gap: 8px;
    }
    
    .search-box {
        width: 100%;
    }
    
    .search-box input {
        width: 100%;
        min-width: unset;
    }
    
    #accessibilityBtn {
        width: 100%;
        text-align: center;
    }
}

/* ==================== EXTRA RESPONSIVE ==================== */

/* iPhone SE, iPhone 13 mini (375px) */
@media (max-width: 374px) {
    .container { padding: 0 12px; }
    html { font-size: 13px; }
    .header .container { padding: 0 10px; }
    .logo-section img { max-height: 40px; }
    .main-nav { display: none !important; }
    .donate-btn { display: none !important; }
    .header-top .container { padding: 0 10px; }
    #accessibilityBtn { padding: 6px 10px; font-size: 10px; }
    .font-size-label { display: none; }
    .font-size-controls { display: none; }
    .search-box input { min-width: 120px; font-size: 10px; }
}

/* Tablets (600px - 1024px) */
@media (min-width: 600px) and (max-width: 1024px) {
    .container { max-width: 100%; padding: 0 30px; }
    .main-nav { gap: 20px; }
    .main-nav a { font-size: 14px; }
}

/* Large Tablets (1025px+) */
@media (min-width: 1025px) {
    .container { max-width: 1200px; }
    .main-nav { gap: 25px; }
}

/* Landscape Mode */
@media (max-height: 500px) and (orientation: landscape) {
    .header { padding: 8px 0; }
    .logo-section img { max-height: 50px; }
    main { margin-top: 0; }
}

/* iPhone X, 11, 12, 13 (390px - 430px) */
@media (min-width: 375px) and (max-width: 430px) {
    html { font-size: 14px; }
    .container { padding: 0 15px; }
    #accessibilityBtn { padding: 7px 12px; font-size: 11px; }
    .search-box input { min-width: 130px; font-size: 11px; }
}

/* Android Large (480px - 600px) */
@media (min-width: 480px) and (max-width: 600px) {
    html { font-size: 15px; }
    .container { padding: 0 18px; }
    .header-top-left { gap: 10px; }
}

/* Retina Displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    body { -webkit-font-smoothing: antialiased; }
}

/* Touch Devices */
@media (hover: none) and (pointer: coarse) {
    .btn-primary, .btn-secondary, .donate-btn, #accessibilityBtn {
        padding: 14px 28px;
        font-size: 16px;
        min-height: 44px;
    }
    .font-size-controls button {
        padding: 10px 14px;
        min-height: 44px;
    }
    .search-box input {
        padding: 12px 16px;
        min-height: 44px;
    }
}


/* ==================== FINAL POLISH 2026-07 ==================== */
html{scroll-padding-top:120px}body{background:linear-gradient(180deg,#fff 0%,#fff 55%,#faf8f4 100%)}.container{width:min(100% - 32px,1200px);padding-left:0;padding-right:0}.header{backdrop-filter:saturate(140%) blur(10px);background:rgba(255,255,255,.96)}.header-top{background:linear-gradient(90deg,var(--burgundy-dark),var(--burgundy));color:#fff}.header-top button,.font-size-controls button{min-height:32px}.main-nav a{letter-spacing:.01em}.dropdown-menu{border:1px solid rgba(158,27,50,.12);border-top:3px solid var(--sky);box-shadow:0 14px 32px rgba(0,0,0,.12);transform:translateY(6px)}.section-header{text-align:center;max-width:820px;margin:48px auto 28px}.section-header h2{font-family:var(--font-heading);letter-spacing:.01em}.section-header p{color:#666;max-width:680px;margin:8px auto 0}.hero-carousel{min-height:clamp(380px,52vw,560px);height:auto;isolation:isolate}.hero-carousel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(165,125,34,.22),transparent 34%),linear-gradient(135deg,rgba(93,0,0,.34),rgba(158,27,50,.12));pointer-events:none}.carousel-slide{z-index:1}.carousel-slide h2{font-size:clamp(30px,5vw,56px);max-width:900px}.carousel-slide p{font-size:clamp(16px,2vw,20px)}.carousel-dot{cursor:pointer}.features-grid,.activities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0 48px}.activity-item,.feature-card,.info-box,.card,.document-card,.contact-card{border:1px solid rgba(158,27,50,.10);border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(93,0,0,.06)}.feature-card,.activity-item{padding:28px}.feature-card-icon{font-size:34px;margin-bottom:12px}.stats-section{border-radius:16px;overflow:hidden;margin:40px 0}.president-highlight{border-radius:16px;overflow:hidden;gap:32px}.president-highlight-image img{border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.16)}.cta-section{border-radius:18px;position:relative;overflow:hidden}.cta-section::after{content:"";position:absolute;inset:auto -10% -35% auto;width:340px;height:340px;border-radius:50%;background:rgba(165,125,34,.12);pointer-events:none}.btn-primary,.btn-secondary,.donate-btn,.modal-close-btn,.btn-submit{border-radius:8px}.scroll-top-btn{border-radius:50%}.modal-content{border-radius:14px}.search-box input{border-radius:8px;min-height:38px}.logo-section img{height:auto!important;max-height:120px}.footer-grid{align-items:start}footer{margin-top:56px}
@media (max-width:991px){.features-grid,.activities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header .container{gap:14px}.logo-section img{max-height:92px}.hero-carousel{min-height:420px}}
@media (max-width:767px){html{scroll-padding-top:86px}.container{width:min(100% - 28px,1200px)}.header{padding:8px 0}.header .container{justify-content:space-between;flex-wrap:nowrap}.logo-section{justify-content:flex-start}.logo-section img{max-height:72px}.mobile-menu-toggle{min-width:44px;min-height:44px;border-radius:8px}.header-top-container{gap:10px;align-items:flex-start}.header-top-left{flex-wrap:wrap}.search-box{width:100%}.hero-carousel{min-height:390px}.carousel-slide{padding:28px 18px 64px}.carousel-controls{bottom:22px}.features-grid,.activities-grid{grid-template-columns:1fr;gap:16px}.section-header{margin:36px auto 20px}.feature-card,.activity-item,.grid-item,.card,.info-box{padding:22px}.president-highlight{grid-template-columns:1fr!important;padding:22px}.cta-section{padding:34px 18px}.cta-buttons{gap:12px}.footer-grid{grid-template-columns:1fr}.modal.active{align-items:flex-end}.modal-content{max-height:88vh;border-radius:16px 16px 0 0}}
@media (max-width:430px){.container{width:min(100% - 24px,1200px)}.hero-carousel{min-height:360px}.carousel-slide h2{font-size:28px}.carousel-slide p{font-size:15px}.section-title{font-size:24px}.header-top{font-size:12px}.logo-section img{max-height:62px}}

/* Final readability fixes */
.section-header p{color:#5f5b56!important}.cta-section{overflow:hidden}.cta-section::after{width:260px;height:260px;right:-70px;bottom:-90px}.hero-carousel{background:linear-gradient(135deg,#a11d33 0%,#760514 55%,#5d0000 100%)!important}.hero-carousel::before{opacity:.75}.carousel-slide h2{text-wrap:balance}.carousel-slide p{text-wrap:pretty}.feature-card,.activity-item{overflow:hidden}.mobile-nav-dropdown-toggle{appearance:none}.font-size-controls button{font-weight:800}.header-top-container{padding:10px 0}.search-box input{border:2px solid rgba(165,125,34,.85)}
@media (max-width:767px){.section-header p{font-size:15px;line-height:1.65}.header-top-container{justify-content:center}.header-top-left{justify-content:center}.search-box input{width:100%}.cta-section::after{display:none}.cta-section{overflow:hidden}.hero-carousel{min-height:360px}.carousel-slide{padding-top:46px}.feature-card-icon{width:72px;height:72px;margin:0 auto 16px;display:grid;place-items:center;border-radius:50%;background:var(--burgundy);color:#fff;box-shadow:0 10px 24px rgba(93,0,0,.16)}}

/* ==================== HERITAGE BRAND PASS ==================== */
:root{--victory-red:#a01824;--deep-red:#64030b;--ribbon-orange:#765716;--sky-accent:#A57D22;--paper:#FBF8F1;--ink:#765716;--muted-ink:#6b6258;--hairline:rgba(100,3,11,.14)}
body{color:var(--ink);background:linear-gradient(180deg,#fff 0%,#FBF8F1 48%,#f7f0e2 100%)}
.header-top{background:linear-gradient(100deg,#6a020b 0%,#971727 55%,#b24a18 100%)}
.header{border-bottom:3px solid var(--sky-accent);box-shadow:0 6px 24px rgba(70,20,10,.08)}
.logo-section a{background:#fff;padding:8px 12px;border-radius:14px;border:1px solid rgba(165,125,34,.35);box-shadow:0 8px 28px rgba(100,3,11,.10)}
.logo-section img{max-height:116px!important;max-width:220px;object-fit:contain;filter:none!important}
.main-nav a{color:#33251e}.main-nav a:hover{color:var(--victory-red)}.main-nav a:after{background:linear-gradient(90deg,var(--victory-red),var(--sky-accent))}.donate-btn,.btn-primary{background:linear-gradient(135deg,var(--victory-red),#7e0a15);box-shadow:0 10px 22px rgba(100,3,11,.18)}.donate-btn:hover,.btn-primary:hover{background:linear-gradient(135deg,#7e0a15,var(--deep-red))}.btn-secondary{color:var(--victory-red);border-color:var(--victory-red)}
.hero-carousel{background:radial-gradient(circle at 50% 25%,rgba(165,125,34,.20),transparent 34%),linear-gradient(135deg,#8e1720 0%,#6c040d 58%,#3f0005 100%)!important;border-bottom:4px solid var(--sky-accent)}.hero-carousel::before{background:linear-gradient(90deg,rgba(0,0,0,.12),transparent 28%,rgba(165,125,34,.08) 50%,transparent 72%,rgba(0,0,0,.12)),radial-gradient(circle at 15% 20%,rgba(165,125,34,.18),transparent 28%)}.carousel-slide h2{color:#D2B36B;text-shadow:0 2px 16px rgba(0,0,0,.26);font-family:Georgia,'Times New Roman',serif}.carousel-slide p{font-size:18px;color:rgba(255,255,255,.94)}.carousel-dot{border-color:#D2B36B}.carousel-dot.active{background:#D2B36B}
.section-header h2,.section-title{color:var(--victory-red);font-family:Georgia,'Times New Roman',serif}.section-header h2:after{content:"";display:block;width:92px;height:3px;margin:16px auto 0;background:linear-gradient(90deg,var(--victory-red),var(--sky-accent));border-radius:99px}.feature-card,.activity-item,.info-box,.card,.document-card,.contact-card{background:rgba(255,255,255,.92);border:1px solid var(--hairline);border-top:4px solid var(--victory-red);box-shadow:0 1px 2px rgba(0,0,0,.04),0 16px 36px rgba(100,3,11,.07)}.feature-card h3,.activity-item h4,.card h3,.info-box h3{color:var(--victory-red)}.feature-card-icon{background:linear-gradient(135deg,var(--victory-red),var(--deep-red))!important;color:#fff;border:3px solid rgba(165,125,34,.65)}
.stats-section{background:linear-gradient(135deg,#7d0712,#a01824)!important;border:1px solid rgba(165,125,34,.5)}.stat-number{color:#D2B36B!important}.president-highlight{background:linear-gradient(135deg,#fff 0%,#FBF8F1 100%);border:1px solid var(--hairline);border-left:6px solid var(--sky-accent)}.cta-section{background:linear-gradient(135deg,#71050d 0%,#a01824 55%,#765716 140%)!important;border:1px solid rgba(165,125,34,.55)}footer{background:linear-gradient(135deg,#3f0005,#68040d);border-top:4px solid var(--sky-accent)}
@media (max-width:767px){.logo-section a{padding:6px 8px;border-radius:10px}.logo-section img{max-height:70px!important;max-width:128px}.hero-carousel{min-height:380px}.carousel-slide h2{font-size:25px;line-height:1.18}.carousel-slide p{font-size:14px}.section-header h2{font-size:26px;line-height:1.2}.header-top-container{padding:12px 0}.mobile-menu-toggle{background:linear-gradient(135deg,var(--victory-red),var(--deep-red))}}
@media (max-width:430px){.logo-section img{max-height:62px!important;max-width:112px}.hero-carousel{min-height:360px}}

/* ==================== RESPONSIVE PHOTO SYSTEM ==================== */
/* Автоподстройка фотографий разных размеров и форматов */
.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;align-items:stretch}.photo-card{position:relative;overflow:hidden!important;border-radius:14px;background:#fff;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;border:1px solid rgba(160,24,36,.14)}.photo-card img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center;display:block;border-radius:0!important}.photo-card.contain-photo img,.photo-card.portrait-photo img{object-fit:contain;background:#FBF8F1;padding:8px}.photo-card::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(165,125,34,.22)}
.president-highlight-image,.president-main-photo{overflow:hidden;border-radius:14px;background:#FBF8F1}.president-highlight-image img{width:100%!important;height:100%!important;min-height:320px;object-fit:cover;object-position:center}.president-main-photo img{width:100%!important;max-width:720px!important;max-height:720px;object-fit:contain;background:#FBF8F1}
.content-image-frame{width:100%;border-radius:14px;overflow:hidden;background:#FBF8F1;display:flex;align-items:center;justify-content:center}.content-image-frame img{width:100%;height:auto;max-height:760px;object-fit:contain}
@media(max-width:768px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photo-card{aspect-ratio:1/1}.president-highlight-image img{min-height:260px}.president-main-photo img{max-height:560px}}
@media(max-width:480px){.photo-grid{grid-template-columns:1fr}.photo-card{aspect-ratio:4/3}.president-main-photo img{max-height:460px}}
.accessibility-mode .photo-card,.accessibility-mode .content-image-frame,.accessibility-mode .president-main-photo{border:3px solid #000!important;background:#fff!important}

/* Expanded president merits */
.merit-section,.honor-section{margin:42px 0;padding:42px;border-radius:18px;background:#fff;border:1px solid rgba(160,24,36,.14);box-shadow:0 14px 34px rgba(100,3,11,.07)}.merit-section h2,.honor-section h2{font-family:Georgia,'Times New Roman',serif;color:var(--victory-red);font-size:clamp(28px,4vw,42px);line-height:1.15;margin:0 0 18px}.merit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}.merit-list article{position:relative;padding:26px 26px 24px 30px;border-radius:14px;background:linear-gradient(135deg,#fff 0%,#FBF8F1 100%);border:1px solid rgba(165,125,34,.35);overflow:hidden}.merit-list article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--victory-red),var(--sky-accent))}.merit-list h3{color:var(--victory-red);font-size:1.15rem;margin:0 0 10px}.merit-list p,.honor-section p{line-height:1.82;color:#3e3129;margin-bottom:14px}.honor-section{background:linear-gradient(135deg,#FBF8F1 0%,#fff 100%);border-left:6px solid var(--sky-accent)}.honor-section h2:after{content:"";display:block;width:110px;height:3px;margin:16px 0 0;background:linear-gradient(90deg,var(--victory-red),var(--sky-accent));border-radius:99px}.accessibility-mode .merit-section,.accessibility-mode .honor-section,.accessibility-mode .merit-list article{background:#fff!important;color:#000!important;border:3px solid #000!important}.accessibility-mode .merit-section h2,.accessibility-mode .honor-section h2,.accessibility-mode .merit-list h3,.accessibility-mode .merit-list p,.accessibility-mode .honor-section p{color:#000!important}@media(max-width:900px){.merit-list{grid-template-columns:1fr}.merit-section,.honor-section{padding:28px}}@media(max-width:480px){.merit-section,.honor-section{padding:22px}.merit-list article{padding:22px 20px 20px 24px}}

/* ==================== GLOBAL FONT SCALING FIX ==================== */
/* Делает кнопки размера шрифта реально влияющими на весь контент сайта */
html[data-font-size="small"] body{--scale-font:1}
html[data-font-size="normal"] body{--scale-font:1.125}
html[data-font-size="large"] body{--scale-font:1.32}
html[data-font-size="xlarge"] body{--scale-font:1.5}
html[data-font-size] body,
html[data-font-size] main,
html[data-font-size] p,
html[data-font-size] li,
html[data-font-size] a,
html[data-font-size] button,
html[data-font-size] input,
html[data-font-size] textarea,
html[data-font-size] label,
html[data-font-size] .footer-section p,
html[data-font-size] .footer-section a,
html[data-font-size] .info-box,
html[data-font-size] .card,
html[data-font-size] .feature-card,
html[data-font-size] .activity-item,
html[data-font-size] .document-card,
html[data-font-size] .contact-card{
  font-size:calc(16px * var(--scale-font,1.125))!important;
}
html[data-font-size] h1{font-size:calc(38px * var(--scale-font,1.125))!important;line-height:1.12!important}
html[data-font-size] h2{font-size:calc(28px * var(--scale-font,1.125))!important;line-height:1.18!important}
html[data-font-size] h3{font-size:calc(21px * var(--scale-font,1.125))!important;line-height:1.25!important}
html[data-font-size] h4{font-size:calc(18px * var(--scale-font,1.125))!important;line-height:1.3!important}
html[data-font-size] .hero-carousel h2{font-size:clamp(28px,calc(42px * var(--scale-font,1.125)),72px)!important}
html[data-font-size] .hero-carousel p{font-size:calc(18px * var(--scale-font,1.125))!important}
html[data-font-size] .section-header p,
html[data-font-size] .tribute-lead,
html[data-font-size] .merit-list p,
html[data-font-size] .honor-section p{font-size:calc(17px * var(--scale-font,1.125))!important;line-height:1.85!important}
html[data-font-size="large"] .main-nav,
html[data-font-size="xlarge"] .main-nav{gap:14px;flex-wrap:wrap}
html[data-font-size="large"] .container,
html[data-font-size="xlarge"] .container{width:min(100% - 40px,1320px)}
html[data-font-size="xlarge"] .grid-2,
html[data-font-size="xlarge"] .features-grid,
html[data-font-size="xlarge"] .activities-grid,
html[data-font-size="xlarge"] .merit-list{grid-template-columns:1fr!important}

/* ==================== ACCESSIBILITY MODE GLOBAL FIX ==================== */
/* Спецверсия теперь перекрашивает весь сайт, включая inline-style блоки */
body.accessibility-mode,
body.accessibility-mode main,
body.accessibility-mode section,
body.accessibility-mode div:not(.header-top):not(.header):not(.hero-carousel):not(.cta-section):not(.stats-section):not(.modal):not(.mobile-nav):not(.nav-overlay),
body.accessibility-mode article,
body.accessibility-mode aside{
  background:#fff!important;
  color:#000!important;
}
body.accessibility-mode .header-top,
body.accessibility-mode .header,
body.accessibility-mode .hero-carousel,
body.accessibility-mode footer,
body.accessibility-mode .cta-section,
body.accessibility-mode .stats-section,
body.accessibility-mode .mobile-nav{
  background:#000!important;
  color:#fff!important;
  border-color:#D2B36B!important;
}
body.accessibility-mode h1,
body.accessibility-mode h2,
body.accessibility-mode h3,
body.accessibility-mode h4,
body.accessibility-mode h5,
body.accessibility-mode h6,
body.accessibility-mode p,
body.accessibility-mode li,
body.accessibility-mode span,
body.accessibility-mode strong,
body.accessibility-mode em,
body.accessibility-mode label,
body.accessibility-mode .section-header p,
body.accessibility-mode .tribute-lead,
body.accessibility-mode .merit-list p,
body.accessibility-mode .honor-section p{
  color:#000!important;
  text-shadow:none!important;
}
body.accessibility-mode .header-top *,
body.accessibility-mode .header *,
body.accessibility-mode .hero-carousel *,
body.accessibility-mode footer *,
body.accessibility-mode .cta-section *,
body.accessibility-mode .stats-section *,
body.accessibility-mode .mobile-nav *{
  color:#fff!important;
}
body.accessibility-mode a{color:#A57D22!important;text-decoration:underline!important}
body.accessibility-mode .header a,
body.accessibility-mode footer a,
body.accessibility-mode .mobile-nav a{color:#D2B36B!important}
body.accessibility-mode button,
body.accessibility-mode .btn-primary,
body.accessibility-mode .btn-secondary,
body.accessibility-mode .donate-btn,
body.accessibility-mode .mobile-menu-toggle,
body.accessibility-mode #accessibilityBtn,
body.accessibility-mode .font-size-controls button{
  background:#000!important;
  color:#D2B36B!important;
  border:3px solid #D2B36B!important;
  box-shadow:none!important;
}
body.accessibility-mode .font-size-controls button.active{background:#D2B36B!important;color:#000!important}
body.accessibility-mode input,
body.accessibility-mode textarea{
  background:#fff!important;
  color:#000!important;
  border:3px solid #000!important;
}
body.accessibility-mode .info-box,
body.accessibility-mode .card,
body.accessibility-mode .feature-card,
body.accessibility-mode .activity-item,
body.accessibility-mode .document-card,
body.accessibility-mode .contact-card,
body.accessibility-mode .president-tribute,
body.accessibility-mode .merit-section,
body.accessibility-mode .honor-section,
body.accessibility-mode .photo-card{
  background:#fff!important;
  color:#000!important;
  border:3px solid #000!important;
  box-shadow:none!important;
}
@media(max-width:767px){
  html[data-font-size="xlarge"] body{--scale-font:1.32}
  html[data-font-size] h1{font-size:calc(30px * var(--scale-font,1.125))!important}
  html[data-font-size] h2{font-size:calc(23px * var(--scale-font,1.125))!important}
  html[data-font-size] .hero-carousel h2{font-size:calc(24px * var(--scale-font,1.125))!important}
}

/* ==================== ELEGANT RUSSIAN FLAG ACCENTS ==================== */
.ru-flag-accent{display:inline-flex;align-items:center;gap:10px}.ru-flag-mark{display:inline-block;width:42px;height:28px;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.14);border:1px solid rgba(100,3,11,.16);background:linear-gradient(180deg,#fff 0 33.33%,#0039A6 33.33% 66.66%,#d52b1e 66.66% 100%);position:relative;overflow:hidden;vertical-align:middle}.ru-flag-mark:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent,rgba(255,255,255,.32),transparent);transform:translateX(-120%);animation:flagSheen 5.5s ease-in-out infinite}.ru-flag-panel{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;padding:24px;border-radius:16px;background:linear-gradient(135deg,#fff 0%,#FBF8F1 100%);border:1px solid rgba(160,24,36,.14);box-shadow:0 12px 28px rgba(100,3,11,.07)}.ru-flag-panel .ru-flag-mark{width:86px;height:58px;border-radius:8px}.ru-flag-panel h3{margin:0 0 6px;color:var(--victory-red)}.ru-flag-panel p{margin:0;line-height:1.7;color:#3f332b}.hero-flag-corner{position:absolute;right:38px;top:34px;width:96px;height:64px;border-radius:10px;opacity:.82;background:linear-gradient(180deg,#fff 0 33.33%,#0039A6 33.33% 66.66%,#d52b1e 66.66% 100%);box-shadow:0 14px 32px rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.55);overflow:hidden;z-index:3}.hero-flag-corner:after{content:"";position:absolute;inset:-20%;background:linear-gradient(110deg,transparent,rgba(255,255,255,.45),transparent);transform:translateX(-120%);animation:flagSheen 6s ease-in-out infinite}.footer-flag-line{height:5px;border-radius:99px;background:linear-gradient(90deg,#fff 0 33.33%,#0039A6 33.33% 66.66%,#d52b1e 66.66% 100%);margin:18px 0;opacity:.95}@keyframes flagSheen{0%,55%{transform:translateX(-130%)}78%,100%{transform:translateX(130%)}}
.accessibility-mode .ru-flag-mark,.accessibility-mode .hero-flag-corner,.accessibility-mode .footer-flag-line{display:none!important}.accessibility-mode .ru-flag-panel{background:#fff!important;color:#000!important;border:3px solid #000!important}
@media(max-width:767px){.hero-flag-corner{width:62px;height:42px;right:18px;top:18px;border-radius:7px}.ru-flag-panel{grid-template-columns:1fr;text-align:center}.ru-flag-panel .ru-flag-mark{margin:0 auto;width:72px;height:48px}.ru-flag-mark{width:34px;height:23px}}

/* ==================== CLAUDE + WEBILD PREMIUM REDESIGN ==================== */
:root{--premium-red:#920917;--premium-red-2:#bd2032;--premium-sky:#A57D22;--premium-cream:#FBF8F1;--premium-ink:#765716;--premium-blue:#A57D22}.hero-carousel{min-height:680px!important;height:auto!important;background:radial-gradient(circle at 18% 20%,rgba(165,125,34,.26),transparent 26%),radial-gradient(circle at 88% 16%,rgba(118,87,22,.16),transparent 20%),linear-gradient(135deg,#65020a 0%,#9c1424 48%,#541016 100%)!important}.hero-carousel:before{opacity:.18!important}.hero-carousel .carousel-slide>div{max-width:980px;padding:42px;border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.035));border:1px solid rgba(165,125,34,.28);backdrop-filter:blur(4px);box-shadow:0 24px 70px rgba(0,0,0,.22)}.hero-carousel h2{font-size:clamp(42px,6.5vw,84px)!important;line-height:1.02!important;letter-spacing:-.035em;color:#FBF8F1!important;text-wrap:balance}.hero-carousel p{font-size:clamp(18px,2.1vw,25px)!important;max-width:820px!important;line-height:1.55!important}.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:28px}.hero-pill-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:18px}.hero-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(165,125,34,.35);color:#fff;font-weight:800;font-size:14px}.btn-hero-secondary{background:rgba(255,255,255,.08)!important;color:#fff!important;border:2px solid rgba(165,125,34,.85)!important}.impact-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:-54px auto 54px;position:relative;z-index:5}.impact-card{padding:24px 18px;border-radius:18px;background:#fff;border:1px solid rgba(160,24,36,.12);box-shadow:0 22px 48px rgba(100,3,11,.12);text-align:center}.impact-card strong{display:block;font-family:Georgia,serif;font-size:34px;color:var(--premium-red);line-height:1}.impact-card span{display:block;margin-top:8px;color:#5f5148;font-weight:700}.story-section{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center;margin:70px 0;padding:46px;border-radius:26px;background:linear-gradient(135deg,#fff 0%,#FBF8F1 100%);border:1px solid rgba(165,125,34,.38);box-shadow:0 22px 56px rgba(100,3,11,.08)}.story-section h2,.application-section h2{font-family:Georgia,serif;color:var(--premium-red);font-size:clamp(32px,4vw,54px);line-height:1.08;margin-bottom:18px}.story-section p{font-size:18px;line-height:1.85;color:#3a2d26}.story-marks{display:grid;gap:14px}.story-mark{padding:18px 20px;border-radius:16px;background:#fff;border-left:6px solid var(--premium-sky);box-shadow:0 10px 26px rgba(100,3,11,.07)}.story-mark b{color:var(--premium-red)}.application-section{margin:80px 0;padding:52px;border-radius:30px;background:radial-gradient(circle at 15% 20%,rgba(165,125,34,.24),transparent 28%),linear-gradient(135deg,#68030c,#a91829);color:#fff;position:relative;overflow:hidden}.application-section h2,.application-section p{color:#fff!important}.application-section p{font-size:18px;line-height:1.7;max-width:760px}.application-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}.application-form input,.application-form textarea,.application-form select{width:100%;padding:16px 18px;border-radius:12px;border:2px solid rgba(165,125,34,.6);background:#fff;color:#211;font:600 16px/1.3 var(--font-main)}.application-form textarea{grid-column:1/-1;min-height:116px;resize:vertical}.application-form .form-submit-row{grid-column:1/-1;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.application-form small{color:rgba(255,255,255,.78);max-width:560px;line-height:1.5}.feature-card,.activity-item{position:relative;overflow:hidden}.feature-card:after,.activity-item:after{content:"";position:absolute;inset:auto 18px 0;height:4px;background:linear-gradient(90deg,var(--premium-red),var(--premium-sky));border-radius:99px 99px 0 0;opacity:.8}.section-header{margin-top:72px!important}.section-header h2{font-size:clamp(32px,4vw,48px)!important}.president-highlight{grid-template-columns:1.1fr .9fr!important;border-radius:26px!important;padding:54px!important}.president-highlight-text h2{font-size:clamp(32px,4vw,50px)!important;line-height:1.1}.accessibility-mode .hero-carousel .carousel-slide>div,.accessibility-mode .impact-card,.accessibility-mode .story-section,.accessibility-mode .story-mark,.accessibility-mode .application-section{background:#fff!important;color:#000!important;border:3px solid #000!important;box-shadow:none!important}.accessibility-mode .application-section h2,.accessibility-mode .application-section p{color:#000!important}@media(max-width:900px){.impact-strip{grid-template-columns:repeat(2,1fr);margin-top:28px}.story-section{grid-template-columns:1fr}.application-form{grid-template-columns:1fr}.president-highlight{grid-template-columns:1fr!important}}@media(max-width:560px){.hero-carousel{min-height:560px!important}.hero-carousel .carousel-slide>div{padding:26px 18px}.impact-strip{grid-template-columns:1fr}.story-section,.application-section{padding:28px 20px;border-radius:20px}.hero-actions .btn-primary{width:100%;text-align:center}.application-form .btn-primary{width:100%}}

/* Final hero content visibility fix */
.hero-carousel .carousel-slide.active{opacity:1!important;z-index:4}.hero-carousel .carousel-slide>div{color:#fff!important}.hero-carousel .hero-pill,.hero-carousel .hero-actions{opacity:1!important;visibility:visible!important}.hero-carousel .btn-primary{display:inline-block!important}.logo-section a{min-width:118px;min-height:118px;display:flex!important;align-items:center;justify-content:center}.logo-section img{display:block!important;opacity:1!important;background:#fff}
@media(max-width:767px){.logo-section a{min-width:74px;min-height:74px}.hero-carousel .carousel-slide>div{max-width:94%;}.hero-pill-row{gap:6px}.hero-pill{font-size:12px;padding:6px 9px}}

/* ==================== FINAL MASTER POLISH ==================== */
/* Чистый, торжественный стиль без визуального шума */
.header::after, footer::before, .hero-carousel .container::before, main .container::before, .cta-section::before{display:none!important}.hero-carousel{min-height:640px!important;background:radial-gradient(circle at 18% 22%,rgba(165,125,34,.20),transparent 30%),linear-gradient(135deg,#6f0710 0%,#a51526 48%,#58040b 100%)!important}.hero-carousel::before{background:linear-gradient(180deg,rgba(255,255,255,.08) 0 33.33%,rgba(118,87,22,.06) 33.33% 66.66%,rgba(213,43,30,.07) 66.66% 100%)!important;opacity:.42!important;animation:none!important}.hero-carousel .carousel-slide>div{background:rgba(72,4,11,.30)!important;border:1px solid rgba(165,125,34,.32)!important;box-shadow:0 30px 80px rgba(0,0,0,.24)!important}.hero-carousel h2{color:#D2B36B!important;text-shadow:0 3px 18px rgba(0,0,0,.34)!important}.hero-flag-corner{opacity:.68!important;box-shadow:0 10px 26px rgba(0,0,0,.18)!important}.section-header::before,.president-tribute::before{display:none!important}.section-header h2:after{width:120px!important;height:4px!important;background:linear-gradient(90deg,#a01824 0 35%,#A57D22 35% 65%,#a01824 65% 100%)!important}.ru-flag-panel{border-radius:20px!important}.feature-card,.activity-item,.impact-card,.story-section,.application-section,.president-highlight{box-shadow:0 20px 52px rgba(100,3,11,.08)!important}.logo-section a{box-shadow:0 10px 30px rgba(100,3,11,.10)!important}

/* Final master polish: remove road-tape effect */
.header::after, footer::before, .hero-carousel .container::before, main .container::before, .cta-section::before{display:none!important}.hero-carousel{min-height:640px!important;background:radial-gradient(circle at 18% 22%,rgba(165,125,34,.20),transparent 30%),linear-gradient(135deg,#6f0710 0%,#a51526 48%,#58040b 100%)!important}.hero-carousel::before{background:linear-gradient(180deg,rgba(255,255,255,.08) 0 33.33%,rgba(118,87,22,.06) 33.33% 66.66%,rgba(213,43,30,.07) 66.66% 100%)!important;opacity:.42!important;animation:none!important}.hero-carousel .carousel-slide>div{background:rgba(72,4,11,.30)!important;border:1px solid rgba(165,125,34,.32)!important;box-shadow:0 30px 80px rgba(0,0,0,.24)!important}.hero-carousel h2{color:#D2B36B!important;text-shadow:0 3px 18px rgba(0,0,0,.34)!important}.section-header::before,.president-tribute::before{display:none!important}.section-header h2:after{width:120px!important;height:4px!important;background:linear-gradient(90deg,#a01824 0 35%,#A57D22 35% 65%,#a01824 65% 100%)!important}.feature-card,.activity-item,.impact-card,.story-section,.application-section,.president-highlight{box-shadow:0 20px 52px rgba(100,3,11,.08)!important}


/* Final master polish: remove road-tape effect */
.header::after, footer::before, .hero-carousel .container::before, main .container::before, .cta-section::before{display:none!important}.hero-carousel{min-height:640px!important;background:radial-gradient(circle at 18% 22%,rgba(165,125,34,.20),transparent 30%),linear-gradient(135deg,#6f0710 0%,#a51526 48%,#58040b 100%)!important}.hero-carousel::before{background:linear-gradient(180deg,rgba(255,255,255,.08) 0 33.33%,rgba(118,87,22,.06) 33.33% 66.66%,rgba(213,43,30,.07) 66.66% 100%)!important;opacity:.42!important;animation:none!important}.hero-carousel .carousel-slide>div{background:rgba(72,4,11,.30)!important;border:1px solid rgba(165,125,34,.32)!important;box-shadow:0 30px 80px rgba(0,0,0,.24)!important}.hero-carousel h2{color:#D2B36B!important;text-shadow:0 3px 18px rgba(0,0,0,.34)!important}.section-header::before,.president-tribute::before{display:none!important}.section-header h2:after{width:120px!important;height:4px!important;background:linear-gradient(90deg,#a01824 0 35%,#A57D22 35% 65%,#a01824 65% 100%)!important}.feature-card,.activity-item,.impact-card,.story-section,.application-section,.president-highlight{box-shadow:0 20px 52px rgba(100,3,11,.08)!important}

/* Final clarity pass */
.hero-carousel .carousel-slide.active>div{opacity:1!important;background:rgba(80,6,13,.48)!important}.hero-carousel .carousel-slide.active h2,.hero-carousel .carousel-slide.active p,.hero-carousel .hero-pill,.hero-carousel .hero-actions{opacity:1!important;color:inherit}.hero-carousel .carousel-slide.active h2{color:#FBF8F1!important}.hero-carousel .carousel-slide.active p{color:#fff!important}.impact-strip{z-index:8!important}.impact-card{opacity:1!important;background:#fff!important}.hero-carousel .sg-ribbon-pin{bottom:44px!important;width:150px!important;height:12px!important;opacity:.72!important;box-shadow:0 5px 14px rgba(118,87,22,.16),inset 0 1px 0 rgba(239,228,202,.42)!important}.hero-flag-corner{width:76px!important;height:50px!important;opacity:.62!important}.carousel-controls{bottom:80px!important}.sg-ribbon-pin{background:linear-gradient(180deg,rgba(255,255,255,.30),transparent 48%,rgba(0,0,0,.14)),repeating-linear-gradient(90deg,#765716 0 10px,#765716 10px 20px)!important}
@media(max-width:767px){.carousel-controls{bottom:58px!important}.hero-carousel .sg-ribbon-pin{bottom:28px!important;width:108px!important;height:10px!important}.hero-flag-corner{width:54px!important;height:36px!important}}

/* ==================== ALIGNMENT & COLOR BALANCE PASS ==================== */
/* Более строгая сетка, ровные отступы, та же красно-золотая гамма — спокойнее и чище */
:root{--align-container:1180px;--surface-warm:#FBF8F1;--surface-clean:#ffffff;--red-balanced:#8f0b18;--red-soft:#b21d2e;--sky-balanced:#A57D22;--ink-balanced:#765716;--muted-balanced:#655a52}
.container{max-width:var(--align-container)!important}.header .container{display:grid!important;grid-template-columns:auto 1fr auto auto;align-items:center!important;gap:28px!important}.logo-section{justify-content:flex-start!important}.main-nav{justify-content:center!important;gap:24px!important}.donate-btn{justify-self:end}.mobile-menu-toggle{justify-self:end}.header-top-container{display:grid!important;grid-template-columns:1fr auto;align-items:center!important;gap:24px!important}.header-top-left{align-items:center!important}.search-box input{width:220px}.hero-carousel{display:grid!important;place-items:center!important;padding:72px 20px 86px!important}.hero-carousel .carousel-slide{padding:0 24px!important}.hero-carousel .carousel-slide>div{width:min(100%,980px)!important;margin:0 auto!important;text-align:center!important}.hero-actions{align-items:center!important}.carousel-controls{left:50%!important;transform:translateX(-50%)!important}.impact-strip{width:min(100% - 40px,var(--align-container))!important;gap:18px!important;align-items:stretch!important}.impact-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:112px;padding:24px 18px!important}.section-header{max-width:820px!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important}.section-header p{margin-left:auto!important;margin-right:auto!important}.features-grid,.activities-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;align-items:stretch!important}.feature-card,.activity-item{height:100%;display:flex;flex-direction:column;align-items:center;text-align:center}.activity-item{align-items:flex-start;text-align:left}.feature-card p,.activity-item p{max-width:48ch}.story-section,.president-highlight,.contract-benefits-section{width:100%;margin-left:auto!important;margin-right:auto!important}.story-section{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)!important}.story-marks{align-self:stretch;display:flex!important;flex-direction:column;justify-content:center}.ru-flag-panel{margin:34px 0!important}.stats-section{margin:54px 0!important}.stats-grid{max-width:860px;margin:0 auto}.president-highlight{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)!important}.president-highlight-text{max-width:620px}.president-highlight-image{justify-self:center;width:100%;max-width:460px}.application-section,.cta-section{max-width:1120px;margin-left:auto!important;margin-right:auto!important}.application-form{max-width:900px}.footer-grid{grid-template-columns:1.2fr .8fr 1fr!important;align-items:start!important}.footer-bottom{text-align:center!important}
/* Цветовой баланс без смены палитры: глубже красный, теплее фон, меньше кислотности */
body{color:var(--ink-balanced)!important;background:linear-gradient(180deg,#fff 0%,#FBF8F1 58%,#f8f0df 100%)!important}.header-top{background:linear-gradient(100deg,#760611 0%,var(--red-balanced) 58%,#a34218 100%)!important}.header{background:rgba(255,255,255,.985)!important}.hero-carousel{background:radial-gradient(circle at 18% 22%,rgba(214,171,58,.18),transparent 30%),linear-gradient(135deg,#690711 0%,#971325 50%,#56050d 100%)!important}.hero-carousel .carousel-slide>div{background:rgba(70,5,12,.42)!important;border-color:rgba(214,171,58,.30)!important}.hero-carousel h2{color:#f1c956!important}.btn-primary,.donate-btn{background:linear-gradient(135deg,var(--red-balanced),#700712)!important}.btn-primary:hover,.donate-btn:hover{background:linear-gradient(135deg,#780814,#52050b)!important}.btn-hero-secondary{background:rgba(255,255,255,.08)!important;border-color:rgba(214,171,58,.90)!important;color:#fff!important}.feature-card,.activity-item,.impact-card,.story-section,.president-highlight,.ru-flag-panel,.info-box,.card,.document-card,.contact-card{background:rgba(255,255,255,.96)!important;border-color:rgba(143,11,24,.13)!important}.story-mark,.merit-list article{background:linear-gradient(135deg,#fff 0%,var(--surface-warm) 100%)!important}.section-header h2,.feature-card h3,.activity-item h4,.president-highlight-text h2{color:var(--red-balanced)!important}.section-header p,.feature-card p,.activity-item p,.story-section p{color:var(--muted-balanced)!important}.feature-card-icon{background:linear-gradient(135deg,var(--red-balanced),#640711)!important;border-color:rgba(214,171,58,.72)!important}.cta-section,.application-section{background:radial-gradient(circle at 18% 18%,rgba(214,171,58,.22),transparent 28%),linear-gradient(135deg,#670711 0%,#971425 62%,#ad4d1a 145%)!important}
@media(max-width:1050px){.header .container{grid-template-columns:auto 1fr auto!important;gap:18px!important}.main-nav{gap:16px!important}.features-grid,.activities-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.story-section,.president-highlight{grid-template-columns:1fr!important}.president-highlight-text{max-width:none}.president-highlight-image{max-width:560px}.footer-grid{grid-template-columns:1fr 1fr!important}}
@media(max-width:767px){.header-top-container{grid-template-columns:1fr!important;text-align:center!important}.header-top-left{justify-content:center!important}.search-box{justify-content:center!important}.search-box input{width:min(100%,320px)!important}.header .container{grid-template-columns:auto auto!important;justify-content:space-between!important}.main-nav,.donate-btn{display:none!important}.hero-carousel{padding:52px 12px 72px!important}.hero-carousel .carousel-slide{padding:0!important}.impact-strip{grid-template-columns:1fr!important;width:min(100% - 28px,var(--align-container))!important}.features-grid,.activities-grid{grid-template-columns:1fr!important}.activity-item{text-align:center;align-items:center}.story-section,.president-highlight,.application-section,.cta-section{padding:28px 20px!important}.footer-grid{grid-template-columns:1fr!important;text-align:left}.ru-flag-panel{grid-template-columns:1fr!important;text-align:center!important}.ru-flag-panel .ru-flag-mark{margin:0 auto}}

/* ==================== 3D SAAS-STYLE PATRIOTIC LANDING ==================== */
:root{--depth-shadow:0 30px 80px rgba(64,3,10,.20);--glass-border:rgba(165,125,34,.28)}
body{perspective:1200px}.hero-carousel{isolation:isolate;overflow:hidden!important;background:radial-gradient(circle at var(--hero-x,50%) var(--hero-y,40%),rgba(165,125,34,.24),transparent 24%),radial-gradient(circle at 82% 18%,rgba(255,255,255,.12),transparent 20%),linear-gradient(135deg,#650611,#a91427 55%,#4c050b)!important}.hero-carousel:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 35%,rgba(255,255,255,.08) 48%,transparent 62%);transform:translateX(-18%);pointer-events:none;mix-blend-mode:screen}.hero-carousel .carousel-slide>div{transform-style:preserve-3d;box-shadow:var(--depth-shadow),inset 0 1px 0 rgba(255,255,255,.16)!important}.hero-carousel h2{transform:translateZ(42px)}.hero-carousel p,.hero-actions,.hero-pill-row{transform:translateZ(28px)}.hero-3d-medal{position:absolute;left:8%;top:18%;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#FBF8F1 0 10%,#A57D22 22%,#9f1121 23% 46%,#D2B36B 47% 55%,#7a0610 56% 100%);box-shadow:0 28px 60px rgba(0,0,0,.28),inset 0 3px 10px rgba(255,255,255,.45);animation:medalFloat 7s ease-in-out infinite;z-index:2;opacity:.85}.hero-3d-medal:before{content:"★";position:absolute;inset:0;display:grid;place-items:center;color:#FBF8F1;font-size:72px;text-shadow:0 3px 8px rgba(0,0,0,.28)}.hero-3d-ribbon{position:absolute;right:8%;bottom:20%;width:210px;height:34px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.32),transparent 45%,rgba(0,0,0,.20)),repeating-linear-gradient(90deg,#765716 0 18px,#765716 18px 36px);box-shadow:0 22px 42px rgba(0,0,0,.22),inset 0 1px 0 rgba(239,228,202,.45);transform:rotate(-12deg);animation:ribbon3d 8s ease-in-out infinite;z-index:2;opacity:.78}.hero-3d-ribbon:before,.hero-3d-ribbon:after{content:"";position:absolute;top:50%;width:54px;height:28px;background:inherit;border-radius:999px;filter:brightness(.92);box-shadow:inherit}.hero-3d-ribbon:before{left:-30px;transform:translateY(-50%) rotate(18deg)}.hero-3d-ribbon:after{right:-30px;transform:translateY(-50%) rotate(-18deg)}@keyframes medalFloat{0%,100%{transform:translate3d(0,0,0) rotateY(-10deg) rotateX(6deg)}50%{transform:translate3d(0,-18px,30px) rotateY(14deg) rotateX(-4deg)}}@keyframes ribbon3d{0%,100%{transform:rotate(-12deg) translateY(0)}50%{transform:rotate(-8deg) translateY(-16px)}}.tilt-3d{transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateZ(0);transition:transform .18s ease,box-shadow .25s ease;position:relative}.tilt-3d:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.22),transparent 34%);opacity:0;transition:opacity .2s ease;pointer-events:none}.tilt-3d:hover{box-shadow:0 34px 72px rgba(100,3,11,.16)!important}.tilt-3d:hover:before{opacity:1}.feature-card-icon,.ru-flag-mark,.hero-flag-corner{transform:translateZ(20px)}.impact-card strong,.feature-card h3,.activity-item h4{transform:translateZ(18px);position:relative}.application-section{position:relative;overflow:hidden}.application-section:after{content:"";position:absolute;right:-80px;bottom:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,#A57D22 0 3px,transparent 4px);background-size:22px 22px;opacity:.16;transform:rotateX(58deg) rotateZ(-18deg);pointer-events:none}.story-section{position:relative;overflow:hidden}.story-section:after{content:"";position:absolute;right:28px;top:28px;width:120px;height:80px;border-radius:12px;background:linear-gradient(180deg,#fff 0 33%,#0039A6 33% 66%,#d52b1e 66%);box-shadow:0 18px 40px rgba(0,0,0,.12);transform:rotate(-4deg) translateZ(20px);opacity:.20;pointer-events:none}@media(max-width:900px){.hero-3d-medal{width:90px;height:90px;left:4%;top:14%}.hero-3d-medal:before{font-size:46px}.hero-3d-ribbon{width:140px;height:22px;right:5%;bottom:16%}}@media(max-width:600px){.hero-3d-medal,.hero-3d-ribbon{display:none}.tilt-3d{transform:none!important}.hero-carousel h2,.hero-carousel p,.hero-actions,.hero-pill-row{transform:none}}@media(prefers-reduced-motion:reduce){.hero-3d-medal,.hero-3d-ribbon{animation:none!important}.tilt-3d{transform:none!important}}


/* ==================== 3D SAAS-STYLE PATRIOTIC LANDING ==================== */
:root{--depth-shadow:0 30px 80px rgba(64,3,10,.20);--glass-border:rgba(165,125,34,.28)}body{perspective:1200px}.hero-carousel{isolation:isolate;overflow:hidden!important;background:radial-gradient(circle at var(--hero-x,50%) var(--hero-y,40%),rgba(165,125,34,.24),transparent 24%),radial-gradient(circle at 82% 18%,rgba(255,255,255,.12),transparent 20%),linear-gradient(135deg,#650611,#a91427 55%,#4c050b)!important}.hero-carousel:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 35%,rgba(255,255,255,.08) 48%,transparent 62%);transform:translateX(-18%);pointer-events:none;mix-blend-mode:screen}.hero-carousel .carousel-slide>div{transform-style:preserve-3d;box-shadow:var(--depth-shadow),inset 0 1px 0 rgba(255,255,255,.16)!important}.hero-carousel h2{transform:translateZ(42px)}.hero-carousel p,.hero-actions,.hero-pill-row{transform:translateZ(28px)}.hero-3d-medal{position:absolute;left:8%;top:18%;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#FBF8F1 0 10%,#A57D22 22%,#9f1121 23% 46%,#D2B36B 47% 55%,#7a0610 56% 100%);box-shadow:0 28px 60px rgba(0,0,0,.28),inset 0 3px 10px rgba(255,255,255,.45);animation:medalFloat 7s ease-in-out infinite;z-index:2;opacity:.85}.hero-3d-medal:before{content:"★";position:absolute;inset:0;display:grid;place-items:center;color:#FBF8F1;font-size:72px;text-shadow:0 3px 8px rgba(0,0,0,.28)}.hero-3d-ribbon{position:absolute;right:8%;bottom:20%;width:210px;height:34px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.32),transparent 45%,rgba(0,0,0,.20)),repeating-linear-gradient(90deg,#765716 0 18px,#765716 18px 36px);box-shadow:0 22px 42px rgba(0,0,0,.22),inset 0 1px 0 rgba(239,228,202,.45);transform:rotate(-12deg);animation:ribbon3d 8s ease-in-out infinite;z-index:2;opacity:.78}.hero-3d-ribbon:before,.hero-3d-ribbon:after{content:"";position:absolute;top:50%;width:54px;height:28px;background:inherit;border-radius:999px;filter:brightness(.92);box-shadow:inherit}.hero-3d-ribbon:before{left:-30px;transform:translateY(-50%) rotate(18deg)}.hero-3d-ribbon:after{right:-30px;transform:translateY(-50%) rotate(-18deg)}@keyframes medalFloat{0%,100%{transform:translate3d(0,0,0) rotateY(-10deg) rotateX(6deg)}50%{transform:translate3d(0,-18px,30px) rotateY(14deg) rotateX(-4deg)}}@keyframes ribbon3d{0%,100%{transform:rotate(-12deg) translateY(0)}50%{transform:rotate(-8deg) translateY(-16px)}}.tilt-3d{transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateZ(0);transition:transform .18s ease,box-shadow .25s ease;position:relative}.tilt-3d:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.22),transparent 34%);opacity:0;transition:opacity .2s ease;pointer-events:none}.tilt-3d:hover{box-shadow:0 34px 72px rgba(100,3,11,.16)!important}.tilt-3d:hover:before{opacity:1}.feature-card-icon,.ru-flag-mark,.hero-flag-corner{transform:translateZ(20px)}.impact-card strong,.feature-card h3,.activity-item h4{transform:translateZ(18px);position:relative}.application-section{position:relative;overflow:hidden}.application-section:after{content:"";position:absolute;right:-80px;bottom:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,#A57D22 0 3px,transparent 4px);background-size:22px 22px;opacity:.16;transform:rotateX(58deg) rotateZ(-18deg);pointer-events:none}.story-section{position:relative;overflow:hidden}.story-section:after{content:"";position:absolute;right:28px;top:28px;width:120px;height:80px;border-radius:12px;background:linear-gradient(180deg,#fff 0 33%,#0039A6 33% 66%,#d52b1e 66%);box-shadow:0 18px 40px rgba(0,0,0,.12);transform:rotate(-4deg) translateZ(20px);opacity:.20;pointer-events:none}@media(max-width:900px){.hero-3d-medal{width:90px;height:90px;left:4%;top:14%}.hero-3d-medal:before{font-size:46px}.hero-3d-ribbon{width:140px;height:22px;right:5%;bottom:16%}}@media(max-width:600px){.hero-3d-medal,.hero-3d-ribbon{display:none}.tilt-3d{transform:none!important}.hero-carousel h2,.hero-carousel p,.hero-actions,.hero-pill-row{transform:none}}@media(prefers-reduced-motion:reduce){.hero-3d-medal,.hero-3d-ribbon{animation:none!important}.tilt-3d{transform:none!important}}

/* ==================== INDIVIDUAL PATRIOTIC PAGE ANIMATIONS ==================== */
.patriotic-layer{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}.header,.header-top,main,footer,.hero-carousel{position:relative;z-index:2}.reveal-patriotic{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.reveal-patriotic.is-visible{opacity:1;transform:translateY(0)}
.anim-memory-stars span{position:absolute;width:8px;height:8px;top:calc(14% + (var(--i)*37px));background:#A57D22;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 56%,79% 91%,50% 70%,21% 91%,32% 56%,2% 35%,39% 35%);opacity:.22;animation:memoryStar 9s ease-in-out infinite;animation-delay:calc(var(--i)*-.45s)}@keyframes memoryStar{0%,100%{transform:translateY(0) scale(.75) rotate(0);opacity:.14}50%{transform:translateY(-22px) scale(1.15) rotate(18deg);opacity:.34}}
.anim-laurel-orbit span{position:absolute;width:36px;height:12px;border-radius:100% 0 100% 0;background:linear-gradient(135deg,#A57D22,#fff2a8);left:calc(5% + var(--i)*7%);top:calc(18% + (var(--i)%5)*12%);opacity:.18;transform:rotate(calc(var(--i)*22deg));animation:laurelFloat 10s ease-in-out infinite;animation-delay:calc(var(--i)*-.33s)}@keyframes laurelFloat{50%{transform:translateY(-18px) rotate(calc(var(--i)*22deg + 8deg));opacity:.32}}
.anim-medal-salute span{position:absolute;width:28px;height:28px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff6b8,#A57D22 45%,#8f0b18 48%);left:calc(4% + var(--i)*8%);top:calc(20% + (var(--i)%4)*16%);opacity:.17;box-shadow:0 12px 26px rgba(100,3,11,.18);animation:medalDrift 11s ease-in-out infinite;animation-delay:calc(var(--i)*-.5s)}@keyframes medalDrift{50%{transform:translate3d(10px,-24px,0) rotateY(28deg);opacity:.30}}
.anim-document-ribbons span{position:absolute;width:160px;height:10px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.25),transparent),repeating-linear-gradient(90deg,#765716 0 10px,#765716 10px 20px);left:calc(-10% + var(--i)*13%);top:calc(16% + (var(--i)%6)*12%);opacity:.16;transform:rotate(calc(-10deg + var(--i)*2deg));animation:docRibbon 12s ease-in-out infinite;animation-delay:calc(var(--i)*-.4s)}@keyframes docRibbon{50%{transform:translateY(-18px) rotate(calc(-6deg + var(--i)*2deg));opacity:.28}}
.anim-signal-lines span{position:absolute;width:180px;height:3px;border-radius:999px;background:linear-gradient(90deg,transparent,#A57D22,transparent);left:calc(5% + var(--i)*10%);top:calc(18% + var(--i)*8%);opacity:.20;animation:signalMove 5s ease-in-out infinite;animation-delay:calc(var(--i)*-.28s)}@keyframes signalMove{50%{transform:translateX(28px);opacity:.38}}
body[data-page="index"] .feature-card:nth-child(1),body[data-page="privacy-policy"] .feature-card:nth-child(1){animation-delay:.04s}body[data-page="about"] .info-box{border-left-color:#A57D22!important}body[data-page="president"] .president-tribute{box-shadow:0 24px 70px rgba(143,11,24,.12)!important}body[data-page="documents"] .document-card,body[data-page="documents"] .info-box{border-top:4px solid #A57D22!important}body[data-page="contacts"] .contact-card,body[data-page="contacts"] .info-box{border-top:4px solid #A57D22!important}
.accessibility-mode .patriotic-layer{display:none!important}.accessibility-mode .reveal-patriotic{opacity:1!important;transform:none!important;transition:none!important}@media(max-width:767px){.patriotic-layer span{opacity:.08!important}.reveal-patriotic{opacity:1;transform:none;transition:none}}


/* ==================== ДОРАБОТКА v2: изображения без обрезки + аккуратные акценты ==================== */
/* Любое изображение подстраивается под контейнер БЕЗ обрезки (пользователь добавит свои фото позже) */
img{max-width:100%;height:auto}

/* Фотогалереи: карточка подстраивается под пропорции фото, без кадрирования */
.photo-card{aspect-ratio:auto!important;height:auto!important;display:block!important;padding:0!important;background:#fff}
.photo-card img{width:100%!important;height:auto!important;max-width:none!important;object-fit:contain!important;object-position:center;display:block;border-radius:14px!important}
.photo-card.portrait-photo img,.photo-card.contain-photo img{padding:0!important;background:#fff}

/* Портрет в тизере на главной и на странице президента — целиком, без обрезки */
.president-highlight-image{background:#fff}
.president-highlight-image img{width:100%!important;height:auto!important;min-height:0!important;object-fit:contain!important}
.president-main-photo img{height:auto!important;max-height:none!important}
.content-image-frame img{height:auto!important}

/* Компактный блок руководства на странице «О фонде» */
.leadership-grid{display:grid;grid-template-columns:220px 1fr;gap:32px;align-items:center}
.leadership-photo{background:#fff;border-radius:10px;overflow:hidden}
.leadership-photo img{width:100%;height:auto;display:block;border-radius:10px;border:3px solid var(--sky);box-shadow:0 6px 18px rgba(158,27,50,.18)}
@media(max-width:640px){.leadership-grid{grid-template-columns:1fr;text-align:center}.leadership-photo{max-width:240px;margin:0 auto}}

/* Карточки законов: равная высота, ссылка прижата вниз */
.law-card{display:flex!important;flex-direction:column}

/* Декоративная 3D-графика — сдержаннее и благороднее (та же красно-золотая гамма) */
.hero-3d-medal{width:120px!important;height:120px!important;opacity:.72!important;
  background:radial-gradient(circle at 38% 30%, #fff6c8 0 8%, #ecc44e 20%, #c39a34 36%, #9E1B32 37% 60%, #7a0f22 61% 100%)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.28), inset 0 2px 8px rgba(255,255,255,.55), inset 0 -6px 14px rgba(0,0,0,.26)!important;
  border:2px solid rgba(165,125,34,.6)!important}
.hero-3d-medal:before{font-size:54px!important;color:#f4d873!important;text-shadow:0 2px 5px rgba(0,0,0,.4)!important}
.hero-3d-ribbon{opacity:.55!important;height:30px!important;box-shadow:0 16px 30px rgba(0,0,0,.20),inset 0 1px 0 rgba(239,228,202,.4)!important}
.patriotic-layer span{opacity:.09!important}
@media(max-width:600px){.hero-3d-medal,.hero-3d-ribbon{display:none!important}}

/* Надёжность: контент никогда не скрыт анимацией появления */
.reveal-patriotic{opacity:1!important;transform:none!important}

/* Скрытый визуально, доступный для SEO/скринридеров заголовок */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}


/* ==================== РЕАЛИСТИЧНАЯ ГЕОРГИЕВСКАЯ ЛЕНТА ==================== */
/* Аутентичный узор: 3 чёрные + 2 оранжевые продольные полосы, шёлковый блеск и тканое переплетение */
.sg-ribbon-pin,
.hero-3d-ribbon,
.hero-3d-ribbon::before,
.hero-3d-ribbon::after,
.anim-document-ribbons span{
  background:
    repeating-linear-gradient(90deg, rgba(0,0,0,.07) 0 1px, rgba(255,255,255,.05) 1px 3px),
    linear-gradient(180deg, rgba(255,255,255,.32) 0%, rgba(255,255,255,0) 24%, rgba(0,0,0,.10) 70%, rgba(0,0,0,.30) 100%),
    linear-gradient(180deg,
      #1b1712 0 20%, #e89a2b 20% 40%, #1b1712 40% 60%, #e89a2b 60% 80%, #1b1712 80% 100%) !important;
  border: none !important;
  box-shadow: 0 5px 14px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.22), inset 0 -1px 0 rgba(0,0,0,.30) !important;
}
.sg-ribbon-pin{ border-radius: 2px !important; }
.hero-3d-ribbon{ opacity: .92 !important; border-radius: 3px !important; }
.hero-3d-ribbon::before,.hero-3d-ribbon::after{ border-radius: 2px !important; }
.hero-carousel .sg-ribbon-pin{ opacity: .9 !important; }
.anim-document-ribbons span{ border-radius: 2px !important; }
.accessibility-mode .sg-ribbon-pin,.accessibility-mode .hero-3d-ribbon{ display:none !important; }


/* ==================== СОГЛАСИЕ НА ОБРАБОТКУ ПДн + УВЕДОМЛЕНИЕ О COOKIE (152-ФЗ) ==================== */
.consent-row{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;margin:6px 0;color:inherit;cursor:pointer}
.consent-row input[type="checkbox"]{margin-top:2px;flex:0 0 auto;width:16px;height:16px;accent-color:var(--sky)}
.consent-row a{color:inherit;text-decoration:underline;font-weight:700}
.contacts-page .consent-row,.application-form ~ .consent-row{color:#333}

.pd-cookie-notice{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:linear-gradient(135deg,var(--burgundy),var(--burgundy-dark));color:#fff;border-top:3px solid var(--sky);box-shadow:0 -6px 24px rgba(0,0,0,.22);padding:16px 20px;display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap;transition:transform .4s ease,opacity .4s ease}
.pd-cookie-notice p{margin:0;font-size:14px;line-height:1.55;max-width:820px;color:#fff}
.pd-cookie-notice a{color:var(--sky);text-decoration:underline;font-weight:700}
.pd-cookie-accept{background:var(--sky);color:var(--burgundy);border:none;padding:10px 26px;border-radius:4px;font-weight:800;font-size:14px;cursor:pointer;white-space:nowrap;flex:0 0 auto}
.pd-cookie-accept:hover{filter:brightness(1.06)}
.pd-cookie-notice.pd-hide{transform:translateY(110%);opacity:0}
.accessibility-mode .pd-cookie-notice{background:#fff;color:#000;border-top:3px solid #000}
.accessibility-mode .pd-cookie-notice p{color:#000}
.accessibility-mode .pd-cookie-notice a{color:#000}
.accessibility-mode .pd-cookie-accept{background:#000;color:#fff}
@media(max-width:600px){.pd-cookie-notice{padding:12px 14px;gap:12px}.pd-cookie-notice p{font-size:12.5px}}


/* ==================== ЕДИНЫЙ СТИЛЬ САЙТА v3 (как на странице руководителя) ==================== */
.page-hero{position:relative;overflow:hidden;border-bottom:4px solid var(--sky);padding:74px 0;text-align:center;background:radial-gradient(circle at 15% 22%,rgba(165,125,34,.22),transparent 34%),linear-gradient(135deg,#6f0710 0%,#9E1B32 52%,#5D0000 100%)}
.page-hero .page-kicker{display:inline-block;letter-spacing:.22em;text-transform:uppercase;font-size:12px;font-weight:800;color:#765716;background:linear-gradient(135deg,#A57D22,#A57D22);padding:6px 15px;border-radius:999px;margin-bottom:16px}
.page-hero h1{font-family:Georgia,'Times New Roman',serif;color:#FBF8F1;font-size:clamp(30px,4.6vw,50px);line-height:1.08;margin:0;text-shadow:0 3px 16px rgba(0,0,0,.30)}
.page-hero .page-hero-sub{color:rgba(255,255,255,.95);font-size:17px;line-height:1.6;margin:14px auto 0;max-width:720px;padding:0 16px}

/* Единая типографика заголовков (засечный шрифт, как в профиле руководителя) */
main h2, .info-box h3, .card h3, .feature-card h3, .activity-item h4, .president-highlight-text h2{font-family:Georgia,'Times New Roman',serif}
.section-header h2{font-family:Georgia,'Times New Roman',serif!important}

/* Единый стиль информационных панелей-карточек */
.info-box{background:#fff!important;border:1px solid rgba(160,24,36,.12)!important;border-top:4px solid var(--sky)!important;border-radius:16px!important;box-shadow:0 12px 30px rgba(100,3,11,.08)!important;padding:26px 30px!important;margin:22px 0!important}

/* Переиспользуемые компоненты */
.pres-section-title{font-family:Georgia,'Times New Roman',serif;color:var(--burgundy);font-size:clamp(26px,3.4vw,36px);text-align:center;margin:60px 0 8px}
.pres-section-sub{text-align:center;color:#7a6a5e;max-width:720px;margin:0 auto 30px;line-height:1.7}
.pres-lead{font-size:19px;line-height:1.9;color:#3a2d26;max-width:900px;margin:0 auto;text-align:center}
.pres-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:-40px auto 8px;position:relative;z-index:6}
.pres-stat{background:#fff;border:1px solid rgba(160,24,36,.12);border-top:4px solid var(--sky);border-radius:14px;padding:22px 14px;text-align:center;box-shadow:0 16px 36px rgba(100,3,11,.10)}
.pres-stat b{display:block;font-family:Georgia,serif;font-size:24px;color:var(--burgundy);line-height:1.15}
.pres-stat span{display:block;margin-top:8px;color:#655a52;font-weight:700;font-size:13px}
.pres-quote{position:relative;max-width:920px;margin:56px auto;background:linear-gradient(135deg,#fff 0%,#FBF8F1 100%);border:1px solid rgba(165,125,34,.45);border-radius:20px;padding:46px 50px 40px}
.pres-quote::before{content:"\201C";position:absolute;left:24px;top:4px;font-family:Georgia,serif;font-size:92px;color:var(--sky);opacity:.55;line-height:1}
.pres-quote p{margin:0 0 14px;font-size:17px;line-height:1.9;color:#3a2d26}
.pres-quote p:last-child{margin-bottom:0}
@media(max-width:860px){.page-hero{padding:52px 0}.pres-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.pres-stats{grid-template-columns:1fr}.pres-quote{padding:32px 22px}}

/* Якоря не прячутся под липкой шапкой (в т.ч. на мобильных) */
:target{scroll-margin-top:96px}
#leadership,#programs,#application{scroll-margin-top:96px}

/* Fix: шапка и её выпадающее меню всегда выше баннера-героя на главной
   (ранее .header получал z-index:2, равный .hero-carousel, и меню пряталось под ним) */
.header{z-index:100!important}
.header-top{z-index:100!important}

/* ===== animations.css ===== */
/* ==================== REFINED MOTION SYSTEM ==================== */
:root{--motion-fast:160ms;--motion:240ms;--motion-slow:420ms;--ease-out:cubic-bezier(.2,.8,.2,1);--ease-soft:cubic-bezier(.22,1,.36,1)}
@keyframes calmFadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes calmFade{from{opacity:0}to{opacity:1}}
.hero-carousel,.section-header,.president-highlight,.cta-section,footer{animation:calmFade var(--motion-slow) var(--ease-out) both}.feature-card,.activity-item,.card,.grid-item,.news-card,.info-box,.stat-box,.document-card,.contact-card{animation:calmFadeUp var(--motion-slow) var(--ease-out) both}.feature-card:nth-child(2),.activity-item:nth-child(2){animation-delay:50ms}.feature-card:nth-child(3),.activity-item:nth-child(3){animation-delay:90ms}.activity-item:nth-child(n+4){animation-delay:120ms}
.btn-primary,.btn-secondary,.donate-btn,.mobile-menu-toggle,.scroll-top-btn,.card,.grid-item,.news-card,.feature-card,.activity-item,.info-box,.stat-box,.document-card,.contact-card,.main-nav a,.dropdown-menu a,.logo-section img,a,button{transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion) var(--ease-out),background-color var(--motion) ease,color var(--motion) ease,border-color var(--motion) ease,opacity var(--motion) ease}
.card:hover,.grid-item:hover,.news-card:hover,.feature-card:hover,.activity-item:hover,.document-card:hover,.contact-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(93,0,0,.14)}.stat-box:hover{transform:translateY(-2px)}.general-badge:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(165,125,34,.25)}
.btn-primary:hover,.btn-secondary:hover,.donate-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(93,0,0,.22)}.btn-primary:active,.btn-secondary:active,.donate-btn:active,.mobile-menu-toggle:active{transform:translateY(0)}.logo-section img:hover{transform:scale(1.015);filter:drop-shadow(0 3px 8px rgba(165,125,34,.25))}.main-nav a:after{transition:width var(--motion) var(--ease-out),background-color var(--motion) ease}.dropdown-menu{transition:opacity var(--motion-fast) ease,visibility var(--motion-fast) ease,transform var(--motion-fast) var(--ease-out)}.dropdown:hover .dropdown-menu{transform:translateY(0)}
.carousel-slide{transition:opacity 700ms ease}.carousel-slide.active h2,.carousel-slide.active p{animation:calmFadeUp 520ms var(--ease-soft) both}.carousel-slide.active p{animation-delay:80ms}.carousel-dot{transition:background-color var(--motion) ease,transform var(--motion-fast) ease,border-color var(--motion) ease}.carousel-dot:hover{transform:scale(1.12)}
img{transition:filter var(--motion) ease,opacity var(--motion) ease}.president-highlight-image img,.photo-card img{transition:transform 360ms var(--ease-out),filter 360ms ease}.photo-card:hover img{transform:scale(1.015)}
.scroll-top-btn{transition:opacity var(--motion) ease,visibility var(--motion) ease,transform var(--motion-fast) var(--ease-out),background-color var(--motion) ease}.modal{transition:opacity var(--motion) ease}.modal.active .modal-content{animation:calmFadeUp 260ms var(--ease-out) both}
:focus-visible{outline:3px solid rgba(165,125,34,.65);outline-offset:3px;border-radius:6px}
@media (hover:none){.card:hover,.grid-item:hover,.news-card:hover,.feature-card:hover,.activity-item:hover,.document-card:hover,.contact-card:hover,.btn-primary:hover,.btn-secondary:hover,.donate-btn:hover,.logo-section img:hover{transform:none;box-shadow:var(--shadow-md)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ===== patriotic-animations.css ===== */
/* Refined patriotic motion: elegant, restrained */
:root{--pa-orange:#765716;--pa-black:#765716;--pa-ease:cubic-bezier(.22,1,.36,1)}
@keyframes softHeroBreath{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes fadeRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes sheen{0%,60%{transform:translateX(-130%)}90%,100%{transform:translateX(130%)}}
@keyframes ribbonSway{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-4px) rotate(1deg)}}
body:not(.accessibility-mode) .header-top,body:not(.accessibility-mode) .hero-carousel{background-size:180% 180%!important;animation:softHeroBreath 20s ease-in-out infinite}
body:not(.accessibility-mode) .carousel-slide.active>div,body:not(.accessibility-mode) .section-header,body:not(.accessibility-mode) .impact-card,body:not(.accessibility-mode) .feature-card,body:not(.accessibility-mode) .activity-item,body:not(.accessibility-mode) .story-section,body:not(.accessibility-mode) .president-highlight,body:not(.accessibility-mode) .application-section,body:not(.accessibility-mode) .info-box{animation:fadeRise .7s var(--pa-ease) both}
.btn-primary,.btn-secondary,.donate-btn,.mobile-menu-toggle{position:relative;overflow:hidden}.btn-primary:before,.btn-secondary:before,.donate-btn:before,.mobile-menu-toggle:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent,rgba(255,255,255,.30),transparent);transform:translateX(-130%);pointer-events:none}.btn-primary:hover:before,.btn-secondary:hover:before,.donate-btn:hover:before,.mobile-menu-toggle:hover:before{animation:sheen .8s var(--pa-ease)}
.ru-flag-mark,.hero-flag-corner{position:relative;overflow:hidden}.ru-flag-mark:after,.hero-flag-corner:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent,rgba(255,255,255,.28),transparent);transform:translateX(-130%);animation:sheen 7s ease-in-out infinite}
.logo-section img{transition:transform .35s var(--pa-ease),filter .35s ease}.logo-section img:hover{transform:scale(1.025)}.photo-card img{transition:transform .55s var(--pa-ease),filter .55s ease}.photo-card:hover img{transform:scale(1.025);filter:saturate(1.04) contrast(1.03)}
.sg-ribbon-pin{display:inline-block;width:108px;height:22px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.32),transparent 42%,rgba(0,0,0,.18)),repeating-linear-gradient(90deg,var(--pa-black) 0 13px,var(--pa-orange) 13px 26px);box-shadow:0 8px 20px rgba(118,87,22,.18),inset 0 1px 0 rgba(239,228,202,.42);border:1px solid rgba(84,43,10,.32);animation:ribbonSway 8s ease-in-out infinite}.hero-carousel .sg-ribbon-pin{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);z-index:6;width:180px;height:18px;opacity:.86}.section-header .sg-ribbon-pin{display:block;margin:0 auto 18px;width:118px;height:14px;opacity:.88}.cta-section .sg-ribbon-pin{display:block;margin:0 auto 22px;width:160px;height:16px}.accessibility-mode .sg-ribbon-pin{display:none!important}@media(max-width:767px){.hero-carousel .sg-ribbon-pin{width:126px;height:14px;bottom:24px}.section-header .sg-ribbon-pin{width:96px;height:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Visibility correction: animations must never hide content on first paint */
@keyframes fadeRiseVisible{from{opacity:.96;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
body:not(.accessibility-mode) .carousel-slide.active>div,
body:not(.accessibility-mode) .section-header,
body:not(.accessibility-mode) .impact-card,
body:not(.accessibility-mode) .feature-card,
body:not(.accessibility-mode) .activity-item,
body:not(.accessibility-mode) .story-section,
body:not(.accessibility-mode) .president-highlight,
body:not(.accessibility-mode) .application-section,
body:not(.accessibility-mode) .info-box{opacity:1!important;animation:fadeRiseVisible .55s var(--pa-ease) both!important}

/* ===== mobile-menu.css ===== */
/* Mobile navigation: calm, accessible, non-intrusive */
.nav-overlay{position:fixed;inset:0;background:rgba(0,0,0,.38);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease;z-index:998}.nav-overlay.active{opacity:1;visibility:visible}.mobile-nav{position:fixed;top:0;right:0;width:min(86vw,360px);height:100dvh;background:#fff;z-index:999;transform:translateX(100%);transition:transform .26s cubic-bezier(.2,.8,.2,1);box-shadow:-12px 0 32px rgba(0,0,0,.18);padding:22px;display:flex;flex-direction:column;gap:6px;overflow-y:auto}.mobile-nav.active{transform:translateX(0)}body.mobile-nav-open{overflow:hidden}.mobile-nav-close{align-self:flex-end;width:44px;height:44px;border:1px solid var(--gray-light);background:#fff;color:var(--burgundy);font-size:22px;border-radius:8px;cursor:pointer}.mobile-nav a,.mobile-nav-dropdown-toggle{min-height:44px;display:flex;align-items:center;width:100%;padding:12px 14px;border:0;border-radius:8px;background:transparent;color:var(--text-dark);font:700 15px/1.3 var(--font-main);text-decoration:none;text-align:left;cursor:pointer}.mobile-nav a:hover,.mobile-nav-dropdown-toggle:hover{background:rgba(158,27,50,.07);color:var(--burgundy)}.mobile-nav-submenu{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.mobile-nav-submenu>*{overflow:hidden}.mobile-nav-dropdown.active .mobile-nav-submenu{grid-template-rows:1fr}.mobile-nav-submenu a{padding-left:28px;font-weight:600;color:#555}.mobile-menu-toggle:focus-visible,.mobile-nav a:focus-visible,.mobile-nav button:focus-visible{outline:3px solid rgba(165,125,34,.65);outline-offset:2px}@media (min-width:768px){.mobile-nav,.nav-overlay{display:none}}@media (prefers-reduced-motion:reduce){.nav-overlay,.mobile-nav,.mobile-nav-submenu{transition:none!important}}

/* ===== refresh.css ===== */
/* Visual refresh — 2026 */
:root{
  --brand:#8b1020;--brand-deep:#4d0710;--brand-bright:#b42335;
  --sky:#A57D22;--sky-soft:#EFE4CA;--ink:#241f1c;--muted:#6f6761;
  --canvas:#fbfaf7;--surface:#fff;--surface-warm:#FBF8F1;--line:#e8dfd2;
  --soft-shadow:0 1px 2px rgba(45,22,18,.04),0 10px 30px rgba(71,26,25,.07);
  --lift-shadow:0 16px 42px rgba(75,15,24,.12);--radius:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--canvas)!important;color:var(--ink)!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;line-height:1.65;text-rendering:optimizeLegibility}
.container{width:min(1180px,calc(100% - 48px))!important;margin-inline:auto!important}
.header-top{background:var(--brand-deep)!important;border-bottom:1px solid rgba(165,125,34,.28)!important}
.header-top-container{min-height:52px!important;gap:20px!important}
.header-top button,.header-top input{min-height:40px;border-radius:8px!important}
.header-top button{font-weight:700!important}
.header{position:sticky!important;top:0;z-index:100;background:rgba(255,255,255,.94)!important;border-bottom:1px solid var(--line)!important;box-shadow:0 6px 24px rgba(54,24,20,.05)!important;backdrop-filter:blur(16px)}
.header .container{min-height:92px!important;padding-block:12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:28px!important}
.logo-section{flex:0 0 auto!important}
.logo-section a{display:block!important;line-height:0}
.logo-section img{height:66px!important;width:190px!important;object-fit:contain!important;object-position:left center!important}
.main-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:wrap!important}
.main-nav a{min-height:44px!important;display:inline-flex!important;align-items:center!important;padding:10px 13px!important;border-radius:8px!important;color:#352d29!important;font-weight:700!important;text-decoration:none!important;transition:background .2s ease,color .2s ease,transform .2s ease!important}
.main-nav a:hover,.main-nav a:focus-visible{background:var(--surface-warm)!important;color:var(--brand)!important;transform:translateY(-1px)}
.main-nav .donate-btn,.donate-btn{background:var(--brand)!important;color:#fff!important;border:1px solid var(--brand)!important;box-shadow:none!important;padding-inline:20px!important}
.main-nav .donate-btn:hover,.donate-btn:hover{background:var(--brand-deep)!important;color:#fff!important}
.hero-carousel{min-height:620px!important;height:auto!important;display:grid!important;place-items:center!important;background:radial-gradient(circle at 82% 22%,rgba(165,125,34,.16),transparent 28%),linear-gradient(135deg,#540913 0%,#8b1020 55%,#6b0b18 100%)!important;border-bottom:4px solid var(--sky)!important;isolation:isolate}
.hero-carousel:before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.05) 48% 49%,transparent 49% 100%)!important;background-size:48px 48px!important;opacity:.32!important}
.hero-carousel:after{display:none!important}
.hero-carousel .carousel-slide>div{max-width:900px!important;padding:56px 64px!important;border-radius:20px!important;background:rgba(59,4,12,.34)!important;border:1px solid rgba(165,125,34,.36)!important;box-shadow:0 24px 70px rgba(30,0,7,.25)!important;backdrop-filter:blur(8px)!important;transform:none!important}
.hero-carousel h2{font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(44px,5.6vw,74px)!important;line-height:1.03!important;letter-spacing:-.025em!important;color:#FBF8F1!important;text-shadow:none!important;transform:none!important;text-wrap:balance}
.hero-carousel p{font-size:clamp(18px,1.65vw,22px)!important;line-height:1.6!important;max-width:760px!important;color:rgba(255,255,255,.92)!important;transform:none!important}
.hero-pill-row,.hero-actions{transform:none!important}
.hero-pill{background:rgba(255,255,255,.08)!important;border:1px solid rgba(165,125,34,.34)!important;color:#fff!important;padding:8px 12px!important}
.hero-actions{gap:12px!important;margin-top:28px!important}
.btn-primary,.btn-secondary{min-height:48px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:8px!important;padding:12px 20px!important;font-weight:750!important;text-decoration:none!important;box-shadow:none!important;transition:transform .2s ease,background .2s ease,border-color .2s ease!important}
.btn-primary{background:var(--brand)!important;border:1px solid var(--brand)!important;color:#fff!important}
.hero-carousel .btn-primary{background:#fff!important;color:var(--brand-deep)!important;border-color:#fff!important}
.hero-carousel .btn-hero-secondary{background:transparent!important;color:#fff!important;border:1px solid rgba(165,125,34,.78)!important}
.btn-primary:hover,.btn-secondary:hover{transform:translateY(-2px)!important}
.hero-3d-medal,.hero-3d-ribbon,.patriotic-layer,.anim-memory-stars{display:none!important}
.impact-strip{margin:-44px auto 64px!important;gap:16px!important}
.impact-card{padding:26px 18px!important;border-radius:14px!important;background:#fff!important;border:1px solid var(--line)!important;box-shadow:var(--soft-shadow)!important}
.impact-card strong{font-family:Georgia,serif!important;color:var(--brand)!important;font-size:36px!important}
.impact-card span{color:var(--muted)!important;font-weight:650!important}
.section-header{margin:76px auto 34px!important;max-width:760px;text-align:center}
.section-header h2{font-family:Georgia,serif!important;color:var(--brand-deep)!important;font-size:clamp(32px,4vw,50px)!important;letter-spacing:-.02em!important;line-height:1.12!important}
.section-header p{color:var(--muted)!important;font-size:18px!important}
.features-grid,.activities-grid{gap:20px!important}
.feature-card,.activity-item,.document-card,.contact-card,.value-card,.memory-card,.award-card,.photo-card{background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;box-shadow:var(--soft-shadow)!important;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease!important}
.feature-card:hover,.activity-item:hover,.document-card:hover,.contact-card:hover,.value-card:hover,.memory-card:hover,.award-card:hover,.photo-card:hover{transform:translateY(-4px)!important;border-color:#dbc48e!important;box-shadow:var(--lift-shadow)!important}
.feature-card,.activity-item{padding:30px!important}
.feature-card:after,.activity-item:after{display:none!important}
.feature-card-icon{width:52px!important;height:52px!important;display:grid!important;place-items:center!important;border-radius:12px!important;background:var(--surface-warm)!important;font-size:26px!important;transform:none!important}
.feature-card h3,.activity-item h4{color:var(--brand-deep)!important;transform:none!important}
.story-section{grid-template-columns:1.05fr .95fr!important;gap:40px!important;margin:72px 0!important;padding:52px!important;border-radius:20px!important;background:linear-gradient(135deg,#fff,#FBF8F1)!important;border:1px solid var(--line)!important;box-shadow:var(--soft-shadow)!important}
.story-section:after{display:none!important}
.story-section h2,.application-section h2{font-family:Georgia,serif!important;letter-spacing:-.02em!important}
.story-mark{padding:18px 20px!important;border-radius:10px!important;border:1px solid var(--line)!important;border-left:4px solid var(--sky)!important;box-shadow:none!important}
.president-highlight{padding:48px!important;border-radius:20px!important;background:#fff!important;border:1px solid var(--line)!important;box-shadow:var(--soft-shadow)!important;gap:40px!important}
.president-highlight-image img{border-radius:14px!important;box-shadow:none!important}
.application-section,.cta-section{padding:52px!important;border-radius:20px!important;background:linear-gradient(135deg,#520913,#8d1122)!important;border:1px solid rgba(165,125,34,.28)!important;box-shadow:none!important;color:#fff!important;overflow:hidden!important}
.application-section:after{display:none!important}
.application-form input,.application-form textarea,.application-form select{border:1px solid rgba(255,255,255,.45)!important;border-radius:8px!important;background:#fff!important;padding:15px 16px!important;outline:none!important}
.application-form input:focus,.application-form textarea:focus,.application-form select:focus{border-color:var(--sky-soft)!important;box-shadow:0 0 0 3px rgba(165,125,34,.22)!important}
footer{margin-top:80px!important;background:#281d1b!important;color:rgba(255,255,255,.78)!important;border-top:4px solid var(--sky)!important}
footer .container{padding-block:56px 28px!important}
.footer-grid{gap:44px!important}
.footer-section h3{color:#fff!important;font-family:Georgia,serif!important}
.footer-section a{color:rgba(255,255,255,.78)!important;text-decoration:none!important}
.footer-section a:hover{color:var(--sky-soft)!important}
.footer-flag-line{height:2px!important;background:linear-gradient(90deg,#fff 0 33%,#0039A6 33% 66%,#bd2737 66%)!important;opacity:.7}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12)!important;margin-top:36px!important;padding-top:24px!important}
.tilt-3d,.tilt-3d:hover{transform:none!important}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #A57D22!important;outline-offset:3px!important}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:980px){.header .container{min-height:80px!important}.main-nav{display:none!important}.logo-section img{height:58px!important}.hero-carousel{min-height:560px!important}.hero-carousel .carousel-slide>div{padding:44px 34px!important}.story-section{grid-template-columns:1fr!important}.president-highlight{grid-template-columns:1fr!important}.container{width:min(100% - 36px,1180px)!important}}
@media(max-width:640px){.container{width:min(100% - 28px,1180px)!important}.header-top-container{padding-block:10px!important}.header-top-left{gap:8px!important}.header-top input{display:none!important}.hero-carousel{min-height:520px!important}.hero-carousel .carousel-slide>div{padding:32px 20px!important;border-radius:14px!important}.hero-carousel h2{font-size:clamp(38px,12vw,54px)!important}.hero-carousel p{font-size:17px!important}.hero-actions{flex-direction:column!important}.hero-actions a{width:100%!important}.impact-strip{grid-template-columns:1fr 1fr!important;margin-top:24px!important}.impact-card{padding:20px 12px!important}.story-section,.president-highlight,.application-section,.cta-section{padding:30px 20px!important;border-radius:14px!important}.section-header{margin-top:56px!important}.footer-grid{grid-template-columns:1fr!important}.application-form{grid-template-columns:1fr!important}.application-form>*{grid-column:1!important}}
/* Defensive fallbacks for incomplete image bundles */
img:not([src="images/fund-logo.jpg"]){background:linear-gradient(145deg,#FBF8F1,#EFE4CA);color:transparent!important}
body{overflow-x:hidden!important}
.carousel-track,.carousel-slide,main,section{max-width:100%!important}
@media(max-width:640px){.header-top-container{flex-wrap:wrap!important;justify-content:center!important}.header-top-left{justify-content:center!important;flex-wrap:wrap!important}.application-section,.cta-section{width:auto!important;margin-inline:0!important}.carousel-slide{min-width:100%!important;width:100%!important}.pd-cookie-notice{max-width:calc(100vw - 24px)!important}}
@media(max-width:420px){.impact-strip{grid-template-columns:1fr!important}.logo-section img{width:168px!important}.hero-pill-row{display:none!important}}

/* Timeline photo pairs */
.tl-item-with-photos .tl-body{padding-bottom:18px!important}
.tl-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.tl-photo-pair figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--soft-shadow)}
.tl-photo-pair img{display:block;width:100%;height:260px;object-fit:cover;object-position:center 18%;background:#FBF8F1!important;color:transparent!important;filter:grayscale(1) contrast(1.03)}
.tl-photo-pair figcaption{padding:10px 12px;color:var(--muted);font-size:14px;font-weight:650;text-align:center;border-top:1px solid var(--line)}
@media(max-width:640px){.tl-photo-pair{grid-template-columns:1fr}.tl-photo-pair img{height:auto;max-height:440px;object-fit:contain;background:#FBF8F1!important}}

.logo-section img[src="images/fund-logo.jpg"]{width:168px!important;height:auto!important;max-height:112px!important;object-fit:contain!important;border-radius:10px;box-shadow:0 8px 24px rgba(39,12,6,.22);background:transparent!important}
@media(max-width:760px){.logo-section img[src="images/fund-logo.jpg"]{width:132px!important;max-height:99px!important}}

/* ===== BLUE / SKY THEME ===== */
:root{
  --brand:#765716;--brand-deep:#765716;--brand-bright:#A57D22;
  --burgundy:#765716;--burgundy-dark:#765716;
  --sky:#A57D22;--sky-soft:#EFE4CA;--sky-accent:#A57D22;
  --premium-sky:#A57D22;--sky-balanced:#A57D22;
  --ink:#765716;--muted:#A57D22;--canvas:#FBF8F1;--surface:#fff;
  --surface-warm:#FBF8F1;--line:#EFE4CA;
  --soft-shadow:0 1px 2px rgba(118,87,22,.04),0 12px 32px rgba(118,87,22,.08);
  --lift-shadow:0 18px 46px rgba(118,87,22,.16);
}
body{background:linear-gradient(180deg,#FBF8F1 0%,#FBF8F1 58%,#FBF8F1 100%)!important;color:var(--ink)!important}
body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle at 18% 14%,rgba(165,125,34,.08),transparent 25%),radial-gradient(circle at 84% 42%,rgba(118,87,22,.07),transparent 24%)}
.header-top{background:linear-gradient(90deg,#765716,#765716 55%,#765716)!important;border-bottom:1px solid rgba(165,125,34,.32)!important}
.header{background:rgba(255,255,255,.95)!important;border-bottom:1px solid #EFE4CA!important;box-shadow:0 7px 28px rgba(118,87,22,.09)!important}
.logo-section img[src="images/fund-logo.jpg"]{box-shadow:0 8px 24px rgba(118,87,22,.18)!important;border:1px solid #EFE4CA!important}
.main-nav a{color:#765716!important}
.main-nav a:hover,.main-nav a:focus-visible{background:#FBF8F1!important;color:#765716!important}
.main-nav a:after{background:linear-gradient(90deg,#765716,#A57D22)!important}
.main-nav .donate-btn,.donate-btn,.btn-primary,.btn-submit,.modal-close-btn{background:linear-gradient(135deg,#765716,#765716)!important;border-color:#765716!important;color:#fff!important;box-shadow:0 8px 20px rgba(118,87,22,.18)!important}
.main-nav .donate-btn:hover,.donate-btn:hover,.btn-primary:hover,.btn-submit:hover{background:linear-gradient(135deg,#765716,#765716)!important;color:#fff!important}
.btn-secondary{background:#fff!important;color:#765716!important;border:1px solid #A57D22!important}
.hero-carousel,.page-hero,.pres-hero{background:radial-gradient(circle at 82% 18%,rgba(165,125,34,.28),transparent 28%),radial-gradient(circle at 16% 76%,rgba(165,125,34,.16),transparent 30%),linear-gradient(135deg,#765716 0%,#765716 48%,#765716 100%)!important;border-bottom:4px solid #A57D22!important}
.hero-carousel:before,.page-hero:before,.pres-hero:before{background-image:linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.07) 48% 49%,transparent 49% 100%)!important;background-size:42px 42px!important;opacity:.38!important}
.hero-carousel .carousel-slide>div{background:rgba(118,87,22,.42)!important;border:1px solid rgba(165,125,34,.42)!important;box-shadow:0 28px 76px rgba(118,87,22,.34)!important}
.hero-carousel h2,.page-hero h1,.pres-hero-text h1{color:#fff!important;text-shadow:0 2px 20px rgba(0,0,0,.22)!important}
.hero-carousel .btn-primary{background:#fff!important;color:#765716!important;border-color:#fff!important;box-shadow:none!important}
.hero-carousel .btn-hero-secondary{background:rgba(255,255,255,.06)!important;color:#fff!important;border:1px solid #D2B36B!important}
.hero-pill,.page-kicker,.pres-rank,.mf-years{background:rgba(165,125,34,.16)!important;border:1px solid rgba(165,125,34,.56)!important;color:#FBF8F1!important}
.carousel-dot{border-color:#D2B36B!important}.carousel-dot.active{background:#D2B36B!important}
.hero-3d-medal,.hero-3d-ribbon,.sg-ribbon-pin,.patriotic-layer,.anim-memory-stars{display:none!important}
.section-header h2,.section-title,.pres-section-title,.story-section h2,.application-section h2,.memorial-card h3,.mf-name{color:#765716!important}
.section-header h2:after,.pres-section-title:after{background:linear-gradient(90deg,#765716,#A57D22)!important}
.impact-card,.feature-card,.activity-item,.document-card,.contact-card,.value-card,.memory-card,.award-card,.card,.info-box,.memorial-card,.merit-card,.pres-stat{background:#fff!important;border:1px solid #EFE4CA!important;border-top:4px solid #A57D22!important;box-shadow:var(--soft-shadow)!important}
.feature-card:hover,.activity-item:hover,.document-card:hover,.contact-card:hover,.value-card:hover,.memory-card:hover,.award-card:hover,.card:hover{border-color:#D2B36B!important;box-shadow:var(--lift-shadow)!important}
.feature-card-icon{background:linear-gradient(135deg,#FBF8F1,#EFE4CA)!important;color:#765716!important;border:1px solid #EFE4CA!important}
.feature-card h3,.activity-item h4,.card h3,.info-box h3,.impact-card strong{color:#765716!important}
.story-section,.president-highlight,.memorial-featured,.pres-quote,.honor-section,.merit-list article{background:linear-gradient(135deg,#fff 0%,#FBF8F1 100%)!important;border:1px solid #EFE4CA!important;box-shadow:var(--soft-shadow)!important}
.story-mark{background:#fff!important;border:1px solid #EFE4CA!important;border-left:5px solid #A57D22!important}
.application-section,.cta-section,.memorial-cta{background:radial-gradient(circle at 12% 16%,rgba(165,125,34,.24),transparent 28%),linear-gradient(135deg,#765716,#765716 62%,#765716)!important;border:1px solid rgba(165,125,34,.42)!important;color:#fff!important}
.application-section h2,.application-section p,.cta-section h2,.cta-section p,.memorial-cta h2,.memorial-cta p{color:#fff!important}
.application-form input,.application-form textarea,.application-form select{border:1px solid #EFE4CA!important}
.application-form input:focus,.application-form textarea:focus,.application-form select:focus{border-color:#A57D22!important;box-shadow:0 0 0 4px rgba(165,125,34,.20)!important}
.stats-section{background:linear-gradient(135deg,#765716,#765716)!important;border:1px solid #A57D22!important}
.stat-number{color:#FBF8F1!important}
.president-highlight{border-left:6px solid #A57D22!important}
.page-hero .page-kicker,.pres-rank{background:#FBF8F1!important;border-color:#EFE4CA!important;color:#765716!important}
.pres-hero-photo img,.memorial-featured .mf-photo img,.leadership-photo img{border-color:#A57D22!important;box-shadow:0 18px 42px rgba(118,87,22,.22)!important}
.timeline:before{background:linear-gradient(180deg,#765716,#A57D22)!important}
.tl-year{color:#765716!important}.tl-year:after{background:#A57D22!important;box-shadow:0 0 0 3px rgba(165,125,34,.24)!important;border-color:#fff!important}
.tl-body{background:#fff!important;border-color:#EFE4CA!important;box-shadow:var(--soft-shadow)!important}
.tl-photo-pair figure{border-color:#EFE4CA!important}.tl-photo-pair img{filter:none!important;background:#FBF8F1!important;transition:transform .3s ease!important}.tl-photo-pair figure:hover img{transform:scale(1.02)}
.tl-photo-pair figcaption{background:#FBF8F1!important;color:#765716!important;border-color:#EFE4CA!important}
.mf-rank,.memorial-card .mc-years{color:#765716!important}.memorial-card:nth-child(even){border-top-color:#A57D22!important}
.merit-list article:before{background:linear-gradient(180deg,#765716,#A57D22)!important}.honor-section{border-left:6px solid #A57D22!important}
.pres-quote:before{color:#A57D22!important}
footer{background:linear-gradient(135deg,#765716,#765716 55%,#765716)!important;border-top:4px solid #A57D22!important;color:rgba(255,255,255,.80)!important}
.footer-section a:hover{color:#EFE4CA!important}
.footer-flag-line{background:linear-gradient(90deg,#fff 0 33%,#0039A6 33% 66%,#b8243a 66%)!important}
.scroll-top-btn{background:#765716!important;border-color:#A57D22!important;color:#fff!important}
.pd-cookie-notice{background:linear-gradient(135deg,#765716,#765716)!important;border-top-color:#A57D22!important}.pd-cookie-notice a{color:#EFE4CA!important}.pd-cookie-accept{background:#fff!important;color:#765716!important}
input[type="checkbox"]{accent-color:#765716!important}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #A57D22!important;outline-offset:3px!important}
img:not([src="images/fund-logo.jpg"]){background:linear-gradient(145deg,#FBF8F1,#EFE4CA)!important}
@media(max-width:640px){.tl-photo-pair img{background:#FBF8F1!important}.hero-carousel,.page-hero,.pres-hero{background:linear-gradient(145deg,#765716,#765716)!important}}

/* Mobile overflow correction: keep the closed drawer out of layout bounds */
@media(max-width:767px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:clip!important}
  .mobile-nav{display:none!important;transform:none!important;right:0!important;max-width:86vw!important}
  .mobile-nav.active{display:flex!important}
  .nav-overlay{display:none!important}
  .nav-overlay.active{display:block!important}
  .application-section,.cta-section,.page-hero,.pres-hero{max-width:100%!important;overflow:clip!important}
}

/* ===== HERITAGE HYBRID THEME ===== */
:root{
  --brand:#8f1022;--brand-deep:#4f0711;--brand-bright:#b3263b;
  --burgundy:#8f1022;--burgundy-dark:#4f0711;
  --sky:#A57D22;--sky-soft:#FBF8F1;--sky-accent:#A57D22;
  --ink:#2c2020;--muted:#71635f;--canvas:#fbf7f2;--surface:#fff;
  --surface-warm:#f5ece5;--line:#eadbd2;
  --soft-shadow:0 2px 4px rgba(72,24,27,.04),0 13px 34px rgba(93,16,29,.08);
  --lift-shadow:0 20px 50px rgba(93,16,29,.15);
}
body{background:linear-gradient(180deg,#fff 0%,#fbf7f2 46%,#f5edf0 100%)!important;color:var(--ink)!important}
body:before{background-image:radial-gradient(circle at 12% 18%,rgba(143,16,34,.055),transparent 24%),radial-gradient(circle at 88% 45%,rgba(118,87,22,.055),transparent 22%)!important}
.header-top{background:linear-gradient(90deg,#41070f,#720c1a 52%,#97172a)!important;border-bottom:1px solid rgba(255,255,255,.18)!important}
.header{border-bottom:1px solid #eadbd2!important;box-shadow:0 7px 28px rgba(78,15,24,.09)!important}
.logo-section img[src="images/fund-logo.jpg"]{border-color:#eadbd2!important;box-shadow:0 8px 24px rgba(78,15,24,.15)!important}
.main-nav a{color:#3a2927!important}.main-nav a:hover,.main-nav a:focus-visible{background:#f6ece7!important;color:#8f1022!important}.main-nav a:after{background:#8f1022!important}
.main-nav .donate-btn,.donate-btn,.btn-primary,.btn-submit,.modal-close-btn{background:linear-gradient(135deg,#9c172b,#6e0a18)!important;border-color:#8f1022!important;color:#fff!important;box-shadow:0 9px 22px rgba(111,10,24,.19)!important}
.main-nav .donate-btn:hover,.donate-btn:hover,.btn-primary:hover,.btn-submit:hover{background:linear-gradient(135deg,#6e0a18,#4f0711)!important}
.btn-secondary{background:#fff!important;color:#8f1022!important;border-color:#b3263b!important}
.hero-carousel,.page-hero,.pres-hero{background:radial-gradient(circle at 82% 18%,rgba(165,125,34,.20),transparent 25%),radial-gradient(circle at 17% 78%,rgba(255,255,255,.09),transparent 28%),linear-gradient(135deg,#4b0710 0%,#8f1022 52%,#64101d 100%)!important;border-bottom:4px solid #A57D22!important}
.hero-carousel .carousel-slide>div{background:rgba(53,4,12,.40)!important;border:1px solid rgba(255,255,255,.24)!important;box-shadow:0 28px 76px rgba(43,0,8,.32)!important}
.hero-carousel h2,.page-hero h1,.pres-hero-text h1{color:#fff!important}
.hero-carousel .btn-primary{background:#fff!important;color:#710c1a!important;border-color:#fff!important}.hero-carousel .btn-hero-secondary{border-color:#D2B36B!important}
.hero-pill,.page-kicker,.pres-rank{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.38)!important;color:#fff!important}
.carousel-dot{border-color:#D2B36B!important}.carousel-dot.active{background:#D2B36B!important}
.section-header h2,.section-title,.pres-section-title,.story-section h2,.application-section h2,.memorial-card h3,.mf-name{color:#7d0d1d!important}
.section-header h2:after,.pres-section-title:after{background:linear-gradient(90deg,#8f1022 0 62%,#A57D22 62% 100%)!important}
.impact-card,.feature-card,.activity-item,.document-card,.contact-card,.value-card,.memory-card,.award-card,.card,.memorial-card,.merit-card,.pres-stat{border:1px solid #eadbd2!important;border-top:4px solid #9e1b32!important;box-shadow:var(--soft-shadow)!important}
.feature-card:nth-child(3n),.activity-item:nth-child(3n),.document-card:nth-child(3n),.memorial-card:nth-child(3n){border-top-color:#A57D22!important}
.feature-card:hover,.activity-item:hover,.document-card:hover,.contact-card:hover,.value-card:hover,.memory-card:hover,.award-card:hover,.card:hover{border-color:#d7b7af!important;box-shadow:var(--lift-shadow)!important}
.feature-card-icon{background:linear-gradient(135deg,#f8e9e8,#f2dedd)!important;color:#8f1022!important;border-color:#e8c9c6!important}
.feature-card:nth-child(3n) .feature-card-icon{background:#FBF8F1!important;color:#765716!important;border-color:#EFE4CA!important}
.feature-card h3,.activity-item h4,.card h3,.impact-card strong{color:#8f1022!important}
.info-box{background:linear-gradient(135deg,#FBF8F1,#FBF8F1)!important;border:1px solid #EFE4CA!important;border-left:5px solid #A57D22!important;border-top:1px solid #EFE4CA!important;box-shadow:0 12px 30px rgba(118,87,22,.08)!important}.info-box h3{color:#765716!important}
.story-section,.president-highlight,.memorial-featured,.pres-quote,.honor-section,.merit-list article{background:linear-gradient(135deg,#fff 0%,#f7efe9 100%)!important;border-color:#eadbd2!important}
.story-mark{background:#fff!important;border-color:#eadbd2!important;border-left-color:#8f1022!important}.story-mark:nth-child(even){border-left-color:#A57D22!important;background:#FBF8F1!important}
.application-section,.cta-section,.memorial-cta{background:radial-gradient(circle at 86% 18%,rgba(165,125,34,.18),transparent 25%),linear-gradient(135deg,#4f0711,#8f1022 62%,#64101d)!important;border-color:rgba(255,255,255,.2)!important}
.application-form input:focus,.application-form textarea:focus,.application-form select:focus{border-color:#A57D22!important;box-shadow:0 0 0 4px rgba(118,87,22,.16)!important}
.stats-section{background:linear-gradient(135deg,#5b0815,#97172a)!important;border:1px solid #7b1020!important}.stat-number{color:#fff!important}
.president-highlight{border-left-color:#8f1022!important}.pres-hero-photo img,.memorial-featured .mf-photo img,.leadership-photo img{border-color:#fff!important;box-shadow:0 18px 44px rgba(43,0,8,.28)!important}
.timeline:before{background:linear-gradient(180deg,#8f1022 0 55%,#A57D22 55% 100%)!important}.tl-year{color:#7d0d1d!important}.tl-year:after{background:#8f1022!important;box-shadow:0 0 0 3px rgba(143,16,34,.16)!important}.tl-item:nth-child(3n) .tl-year:after{background:#A57D22!important;box-shadow:0 0 0 3px rgba(118,87,22,.16)!important}
.tl-body{border-color:#eadbd2!important}.tl-photo-pair figcaption{background:#FBF8F1!important;color:#765716!important}
.mf-rank,.memorial-card .mc-years{color:#A57D22!important}.memorial-card:nth-child(even){border-top-color:#A57D22!important}
.merit-list article:before{background:#8f1022!important}.honor-section{border-left-color:#A57D22!important}.pres-quote:before{color:#8f1022!important}
footer{background:linear-gradient(135deg,#2c1115,#4f0711 58%,#67101b)!important;border-top:4px solid #A57D22!important}.footer-section a:hover{color:#EFE4CA!important}
.scroll-top-btn{background:#8f1022!important;border-color:#b3263b!important}.pd-cookie-notice{background:linear-gradient(135deg,#4f0711,#8f1022)!important;border-top-color:#A57D22!important}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#A57D22!important}
@media(max-width:640px){.hero-carousel,.page-hero,.pres-hero{background:linear-gradient(145deg,#4f0711,#8f1022)!important}}

/* ===== ERROR AND COLOR CORRECTIONS ===== */
:root{--brand:#8f1022;--brand-deep:#4f0711;--brand-bright:#b3263b;--burgundy:#8f1022;--burgundy-dark:#4f0711;--sky:#765716;--sky-soft:#FBF8F1;--sky-accent:#A57D22;--ink:#2b2221;--muted:#695d59;--canvas:#fbf7f3;--surface:#fff;--surface-warm:#f5ece6;--line:#e5d8d0}
body{background:linear-gradient(180deg,#fff 0%,#fbf7f3 55%,#f7eff0 100%)!important;color:var(--ink)!important}
.header-top{background:linear-gradient(90deg,#41070f,#720c1a 52%,#97172a)!important;border-bottom-color:rgba(255,255,255,.18)!important}.header{border-bottom-color:var(--line)!important;box-shadow:0 7px 28px rgba(78,15,24,.09)!important}.main-nav a{color:#392b29!important}.main-nav a:hover,.main-nav a:focus-visible{background:#f6ece7!important;color:var(--brand)!important}.main-nav a:after{background:var(--brand)!important}
.main-nav .donate-btn,.donate-btn,.btn-primary,.btn-submit,.modal-close-btn{background:linear-gradient(135deg,#9c172b,#6e0a18)!important;border-color:var(--brand)!important;color:#fff!important}.btn-secondary{background:#fff!important;color:#7d0d1d!important;border-color:#a92337!important}
.hero-carousel,.page-hero,.pres-hero{background:linear-gradient(135deg,#4b0710 0%,#8f1022 52%,#64101d 100%)!important;border-bottom-color:var(--sky)!important}.hero-carousel h2,.page-hero h1,.pres-hero-text h1{color:#fff!important}.hero-carousel .btn-primary{background:#fff!important;color:#710c1a!important;border-color:#fff!important}.hero-carousel .btn-hero-secondary{border-color:#EFE4CA!important}.hero-pill,.page-kicker,.pres-rank{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.38)!important;color:#fff!important}
.section-header h2,.section-title,.pres-section-title,.story-section h2,.memorial-card h3,.mf-name{color:#7d0d1d!important}.section-header h2:after,.pres-section-title:after{background:var(--brand)!important}.impact-card,.feature-card,.activity-item,.document-card,.contact-card,.value-card,.memory-card,.award-card,.card,.memorial-card,.merit-card,.pres-stat{background:#fff!important;border-color:var(--line)!important;border-top-color:#9e1b32!important}.feature-card-icon{background:#f6e7e5!important;color:var(--brand)!important;border-color:#e7c9c5!important}.feature-card h3,.activity-item h4,.card h3,.impact-card strong{color:var(--brand)!important}
.info-box{background:linear-gradient(135deg,#FBF8F1,#FBF8F1)!important;border:1px solid #EFE4CA!important;border-left:5px solid var(--sky)!important;box-shadow:0 12px 30px rgba(118,87,22,.08)!important}.info-box h3,.tl-year,.mf-rank,.memorial-card .mc-years{color:#765716!important}.story-section,.president-highlight,.memorial-featured,.pres-quote,.honor-section,.merit-list article{background:linear-gradient(135deg,#fff 0%,#f7efe9 100%)!important;border-color:var(--line)!important}.story-mark{background:#fff!important;border-color:var(--line)!important;border-left-color:var(--brand)!important}
.application-section,.cta-section,.memorial-cta{background:linear-gradient(135deg,#4f0711,#8f1022 62%,#64101d)!important;border-color:rgba(255,255,255,.18)!important}.application-section h2,.application-section p,.cta-section h2,.cta-section p,.memorial-cta h2,.memorial-cta p{color:#fff!important}.application-form input:focus,.application-form textarea:focus,.application-form select:focus{border-color:var(--sky)!important;box-shadow:0 0 0 4px rgba(118,87,22,.17)!important}.stats-section{background:linear-gradient(135deg,#5b0815,#97172a)!important;border-color:#7b1020!important}.stat-number{color:#fff!important}
.timeline:before{background:var(--brand)!important}.tl-year:after{background:var(--brand)!important;box-shadow:0 0 0 3px rgba(143,16,34,.16)!important}.tl-photo-pair img{filter:none!important}.tl-photo-pair figcaption{background:#FBF8F1!important;color:#765716!important}.memorial-card:nth-child(even){border-top-color:#9e1b32!important}.merit-list article:before{background:var(--brand)!important}.honor-section{border-left-color:var(--sky)!important}.pres-quote:before{color:var(--brand)!important}
footer{background:linear-gradient(135deg,#2c1115,#4f0711 58%,#67101b)!important;border-top-color:var(--sky)!important}.footer-section a:hover{color:#EFE4CA!important}.scroll-top-btn{background:var(--brand)!important;border-color:#b3263b!important}.pd-cookie-notice{background:linear-gradient(135deg,#4f0711,#8f1022)!important;border-top-color:var(--sky)!important}.pd-cookie-notice a{color:#FBF8F1!important}.pd-cookie-accept{background:#fff!important;color:#6e0a18!important}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:var(--sky)!important}
img:not([src="images/fund-logo.jpg"]){background:#f1eeec!important}.mf-photo img,.mc-photo img{background:#765716!important}.award-img{object-fit:cover!important}
@media(max-width:767px){html,body{width:100%!important;max-width:100%!important;overflow-x:clip!important}.mobile-nav{display:none!important;transform:none!important;right:0!important;max-width:86vw!important}.mobile-nav.active{display:flex!important}.nav-overlay{display:none!important}.nav-overlay.active{display:block!important}.application-section,.cta-section,.page-hero,.pres-hero{max-width:100%!important;overflow:clip!important}}
