.harthwyn-hero{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:24px;background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 8px 24px rgba(15,23,42,.05);margin-bottom:24px}.harthwyn-hero-media img{width:140px;height:140px;object-fit:cover;border-radius:18px;display:block}.harthwyn-hero-title{margin:0 0 8px;font-size:32px;line-height:1.15}.harthwyn-badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:12px;font-weight:600;margin-bottom:10px}.harthwyn-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:24px}.harthwyn-panel{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:20px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.harthwyn-meta-list,.harthwyn-relation-list,.harthwyn-content-list,.harthwyn-event-list{list-style:none;padding:0;margin:0}.harthwyn-meta-list li,.harthwyn-relation-list li,.harthwyn-content-list li,.harthwyn-event-list li{padding:8px 0;border-bottom:1px solid #edf2f7}.harthwyn-form{display:grid;gap:14px}.harthwyn-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.harthwyn-field label{display:block;font-weight:600;margin-bottom:6px}.harthwyn-field input,.harthwyn-field textarea,.harthwyn-field select{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;font:inherit;box-sizing:border-box}.harthwyn-field textarea{min-height:120px;resize:vertical}.harthwyn-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.harthwyn-button{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:0;border-radius:10px;background:#111827;color:#fff;text-decoration:none;cursor:pointer;font-weight:600}.harthwyn-button.is-secondary{background:#e5e7eb;color:#111827}.harthwyn-inline-note{font-size:13px;color:#475569}.harthwyn-search-form{display:grid;gap:14px;margin-bottom:24px}


.harthwyn-media-uploader-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.harthwyn-media-uploader-card{display:grid;gap:12px;padding:14px;border:1px solid var(--fp-color-border,#e2e8f0);border-radius:16px;background:var(--fp-color-surface-soft,#f8fafc)}
.harthwyn-media-uploader-card h4{margin:0}
.harthwyn-media-preview{border:1px dashed var(--fp-color-border,#e2e8f0);border-radius:14px;background:var(--fp-color-surface,#fff);min-height:180px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.harthwyn-media-preview.has-media{border-style:solid}
.harthwyn-media-preview--image img,.harthwyn-media-preview--cover img{width:100%;height:180px;object-fit:cover;display:block}
.harthwyn-media-preview--audio{min-height:90px;padding:14px}
.harthwyn-media-preview--audio audio{width:100%}
.harthwyn-media-preview--video{min-height:140px;padding:10px}
.harthwyn-media-preview--video video{width:100%;max-height:240px;border-radius:12px;display:block}
.harthwyn-media-preview--gallery{min-height:140px;padding:12px;align-items:stretch;justify-content:stretch}
.harthwyn-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px;width:100%}
.harthwyn-gallery-thumb{border-radius:12px;overflow:hidden;background:var(--fp-color-surface-soft,#f8fafc);border:1px solid var(--fp-color-border,#e2e8f0);min-height:90px}
.harthwyn-gallery-thumb img{width:100%;height:100px;object-fit:cover;display:block}
.harthwyn-media-placeholder{padding:18px;text-align:center;color:var(--fp-color-text-soft,#64748b);font-size:14px}
.harthwyn-upload-media-stack{display:grid;gap:18px}
.harthwyn-event-cover{margin:-20px -20px 16px;border-radius:18px 18px 0 0;overflow:hidden}
.harthwyn-event-cover img{width:100%;max-height:360px;object-fit:cover;display:block}
.harthwyn-event-card-media img{height:180px;object-fit:cover}
.harthwyn-upload-v2 .harthwyn-button,.harthwyn-media-uploader-card .harthwyn-button,.harthwyn-event-editor .harthwyn-button{min-height:44px}
@media (max-width:680px){.harthwyn-media-uploader-grid{grid-template-columns:1fr}.harthwyn-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}



/* v4 merged layout fixes */
.harthwyn-search-v2,
.harthwyn-events-hub,
.harthwyn-guide,
.harthwyn-dashboard-home,
.harthwyn-profile{display:block;color:var(--fp-color-text,#1F2A44)}
.harthwyn-search-hero,.harthwyn-events-hero,.harthwyn-dashboard-hero,.harthwyn-guide-hero{background:linear-gradient(135deg,var(--fp-color-surface-soft,#F4EFE7) 0%,var(--fp-color-surface,#fff) 100%)}
.harthwyn-search-filter-bar{display:grid;gap:16px}
.harthwyn-result-card-grid,.harthwyn-guide-grid,.harthwyn-dashboard-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.harthwyn-result-card{height:100%}
.harthwyn-empty-state{text-align:center}
.harthwyn-events-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:20px}
.harthwyn-events-sidebar,.harthwyn-events-stack,.harthwyn-dashboard-mini-stack{display:grid;gap:16px}
.harthwyn-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.harthwyn-calendar-day-name{padding:10px;text-align:center;font-weight:700;border:1px solid var(--fp-color-border,#E6E2DB);border-radius:10px;background:var(--fp-color-surface-soft,#F4EFE7)}
.harthwyn-calendar-cell{min-height:110px;padding:10px;border-radius:14px;border:1px solid var(--fp-color-border,#E6E2DB);background:var(--fp-color-surface,#fff);display:flex;flex-direction:column;gap:8px;box-shadow:0 4px 12px rgba(31,42,68,.04)}
.harthwyn-calendar-cell.is-muted{opacity:.5}
.harthwyn-calendar-cell.is-today{border-color:var(--fp-color-primary,#0055A4);box-shadow:0 0 0 2px rgba(0,85,164,.12)}
.harthwyn-calendar-cell-top{display:flex;align-items:center;justify-content:space-between}
.harthwyn-calendar-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--fp-color-secondary,#C8102E);color:#fff;font-size:12px;font-weight:700}
.harthwyn-calendar-event-list{list-style:none;margin:0;padding:0;font-size:12px;display:grid;gap:4px}
.harthwyn-guide-card,.harthwyn-dashboard-action-card{display:flex;flex-direction:column;gap:10px}
.harthwyn-guide-icon,.harthwyn-dashboard-action-icon{font-size:32px;line-height:1}
.harthwyn-guide-help{margin-top:24px}
.harthwyn-message{padding:12px 16px;border-radius:10px;margin-bottom:16px}
.harthwyn-message.is-success{background:#ecf7ed;border:1px solid #b8dfbc;color:#155724}
.harthwyn-message.is-error{background:#fbeaea;border:1px solid #f1b3b3;color:#7a1f1f}
@media (max-width: 980px){.harthwyn-events-layout{grid-template-columns:1fr}}
@media (max-width: 680px){.harthwyn-calendar-grid{gap:6px}.harthwyn-calendar-cell{min-height:88px;padding:8px}.harthwyn-result-card-grid,.harthwyn-guide-grid,.harthwyn-dashboard-actions-grid{grid-template-columns:1fr}}

/* t5 polish */
:root{--fp-primary:#0055A4;--fp-secondary:#C8102E;--fp-accent:#D7A63B;--fp-success:#4E8B57;--fp-ink:#1F2A44;--fp-soft-ink:#5A6476;--fp-surface:#FFFFFF;--fp-surface-soft:#FAF6EE;--fp-surface-tint:#F4EFE4;--fp-border:#E5DED1;--fp-shadow:0 14px 34px rgba(31,42,68,.08)}
.harthwyn-theme-heritage-classic{--fp-primary:#0055A4;--fp-secondary:#C8102E;--fp-accent:#D7A63B;--fp-surface-soft:#FAF6EE;--fp-surface-tint:#F4EFE4}
.harthwyn-theme-island-celebration{--fp-primary:#2B74B7;--fp-secondary:#C8102E;--fp-accent:#D7A63B;--fp-surface-soft:#F2F8FA;--fp-surface-tint:#EAF2F4}
.harthwyn-theme-elegant-archive{--fp-primary:#1F2A44;--fp-secondary:#8D1F2D;--fp-accent:#C9A35D;--fp-surface-soft:#F7F3EB;--fp-surface-tint:#EFE7DA}
.harthwyn-profile,.harthwyn-search,.harthwyn-event,.harthwyn-events-hub,.harthwyn-dashboard-home,.harthwyn-guide,.harthwyn-upload{color:var(--fp-ink)}
.harthwyn-panel{background:var(--fp-surface);border:1px solid var(--fp-border);box-shadow:var(--fp-shadow);border-radius:22px}
.harthwyn-guide-hero,.harthwyn-dashboard-hero,.harthwyn-events-hero,.harthwyn-search-hero{background:radial-gradient(circle at top right,rgba(215,166,59,.18),transparent 32%),linear-gradient(135deg,var(--fp-surface-soft),var(--fp-surface))}
.harthwyn-button{background:var(--fp-primary);border-radius:14px;padding:12px 18px;font-weight:700;min-height:46px}
.harthwyn-button.is-secondary{background:var(--fp-secondary)}
.harthwyn-inline-note,.harthwyn-panel p,.harthwyn-meta-list li,.harthwyn-relation-list li{color:var(--fp-soft-ink)}
.harthwyn-hero{background:linear-gradient(135deg,var(--fp-surface-soft),var(--fp-surface))}
.harthwyn-badge{background:linear-gradient(135deg,var(--fp-accent),#f0c97a);color:#382f19;box-shadow:0 8px 18px rgba(215,166,59,.18)}
.harthwyn-flag-list{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 10px}
.harthwyn-flag-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:linear-gradient(135deg,var(--fp-surface-soft),var(--fp-surface));border:1px solid var(--fp-border);box-shadow:0 8px 18px rgba(31,42,68,.06);color:var(--fp-ink);font-weight:700;line-height:1.2;white-space:normal}
.harthwyn-result-card,.harthwyn-guide-card,.harthwyn-dashboard-action-card,.harthwyn-event-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.harthwyn-result-card:hover,.harthwyn-guide-card:hover,.harthwyn-dashboard-action-card:hover,.harthwyn-event-card:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(31,42,68,.11);border-color:#d8ccba}
.harthwyn-search-filter-bar{background:linear-gradient(135deg,var(--fp-surface),var(--fp-surface-soft));border:1px solid var(--fp-border)}
.harthwyn-field input,.harthwyn-field textarea,.harthwyn-field select{border:1px solid #d7cfbf;border-radius:14px;min-height:46px;background:#fff}
.harthwyn-field input:focus,.harthwyn-field textarea:focus,.harthwyn-field select:focus{outline:none;border-color:var(--fp-primary);box-shadow:0 0 0 4px rgba(0,85,164,.08)}
.harthwyn-calendar-grid{gap:12px}
.harthwyn-calendar-day-name{background:var(--fp-surface-tint);border:1px solid var(--fp-border);border-radius:12px;font-size:13px}
.harthwyn-calendar-cell{min-height:124px;background:linear-gradient(180deg,var(--fp-surface),var(--fp-surface-soft));border:1px solid var(--fp-border);border-radius:18px}
.harthwyn-calendar-cell.has-events{box-shadow:0 10px 22px rgba(0,85,164,.08)}
.harthwyn-calendar-cell.is-today{border-color:var(--fp-primary);box-shadow:0 0 0 3px rgba(0,85,164,.10)}
.harthwyn-calendar-badge{background:var(--fp-secondary)}
.harthwyn-event-card.is-featured{border-color:var(--fp-accent);box-shadow:0 16px 32px rgba(215,166,59,.18)}
.harthwyn-guide-v2{display:grid;gap:24px}
.harthwyn-guide-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:20px;align-items:stretch}
.harthwyn-guide-lead{font-size:1.08rem;font-weight:600;color:var(--fp-ink)}
.harthwyn-guide-highlight{height:100%;padding:22px;border-radius:18px;background:linear-gradient(145deg,rgba(0,85,164,.95),rgba(43,116,183,.92));color:#fff;box-shadow:0 18px 36px rgba(0,85,164,.22)}
.harthwyn-guide-highlight h3,.harthwyn-guide-highlight p{color:#fff}
.harthwyn-guide-highlight .harthwyn-button{background:#fff;color:var(--fp-primary)}
.harthwyn-guide-highlight-icon{font-size:34px;display:inline-flex;margin-bottom:8px}
.harthwyn-guide-section{display:grid;gap:14px}
.harthwyn-guide-section-heading h3{margin-bottom:6px}
.harthwyn-guide-grid,.harthwyn-dashboard-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.harthwyn-guide-card{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--fp-surface),var(--fp-surface-soft))}
.harthwyn-guide-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,var(--fp-primary),var(--fp-accent))}
.harthwyn-step-card{padding-top:26px}
.harthwyn-step-number{width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--fp-surface-tint);color:var(--fp-primary);font-weight:800;font-size:14px}
.harthwyn-guide-icon,.harthwyn-dashboard-action-icon{width:52px;height:52px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:var(--fp-surface-tint);font-size:26px;line-height:1}
.harthwyn-guide-feature-card,.harthwyn-dashboard-action-card{background:linear-gradient(180deg,var(--fp-surface),var(--fp-surface-soft))}
.harthwyn-guide-upload-panel,.harthwyn-guide-help{background:linear-gradient(135deg,var(--fp-surface),var(--fp-surface-soft))}
.harthwyn-guide-privacy{margin-top:16px;padding-top:16px;border-top:1px solid var(--fp-border)}
.harthwyn-search-results>.harthwyn-panel,.harthwyn-events-sidebar>.harthwyn-panel{background:linear-gradient(180deg,var(--fp-surface),var(--fp-surface-soft))}
.harthwyn-result-card-media img,.harthwyn-event-cover img{border-radius:20px 20px 0 0}
.harthwyn-media-uploader-card{background:linear-gradient(180deg,var(--fp-surface),var(--fp-surface-soft))}
.harthwyn-media-preview{border-radius:18px}
@media (max-width:980px){.harthwyn-guide-hero{grid-template-columns:1fr}}
@media (max-width:680px){.harthwyn-flag-list{gap:10px}.harthwyn-flag-chip{padding:9px 12px;font-size:13px}.harthwyn-guide-grid,.harthwyn-dashboard-actions-grid{grid-template-columns:1fr}.harthwyn-calendar-grid{gap:8px}.harthwyn-calendar-cell{min-height:96px}}


.harthwyn-dashboard-announcements-card { background: linear-gradient(135deg, var(--fp-color-surface) 0%, var(--fp-color-surface-soft) 100%); }
.harthwyn-announcement-card { display:flex; flex-direction:column; gap:10px; height:100%; }
.harthwyn-announcement-card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.harthwyn-announcement-card h4 { margin:0; }


/* t8 fixes */
.harthwyn-dashboard-home,.harthwyn-events-hub,.harthwyn-upload,.harthwyn-profile,.harthwyn-search{width:100%;max-width:100%}
.harthwyn-form-row--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.harthwyn-form-row--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.harthwyn-dashboard-main-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start}
.harthwyn-dashboard-sidebar-stack,.harthwyn-favorites-grid{display:grid;gap:16px}
.harthwyn-favorites-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:18px}
.harthwyn-favorite-card{padding:14px;border:1px solid var(--fp-border);border-radius:16px;background:linear-gradient(180deg,var(--fp-surface),var(--fp-surface-soft))}
.harthwyn-favorite-card h4{margin:0 0 6px;font-size:15px}
.harthwyn-mini-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:10px;margin:12px 0}
.harthwyn-mini-gallery img{width:100%;height:76px;object-fit:cover;border-radius:14px;border:1px solid var(--fp-border)}
.harthwyn-panel-header-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.harthwyn-collapsible-panel summary{cursor:pointer;font-weight:700;list-style:none}
.harthwyn-collapsible-panel summary::-webkit-details-marker{display:none}
.harthwyn-collapsible-body{margin-top:16px}
.harthwyn-calendar-empty{font-size:12px;color:var(--fp-soft-ink);opacity:.7}
.harthwyn-button{background:#fff;color:var(--fp-primary);border:1px solid var(--fp-primary)}
.harthwyn-button:hover,.harthwyn-button:focus{background:#111827;color:#fff;border-color:#111827}
.harthwyn-button.is-secondary{background:#fff;color:var(--fp-secondary);border:1px solid var(--fp-secondary)}
.harthwyn-button.is-secondary:hover,.harthwyn-button.is-secondary:focus{background:#111827;color:#fff;border-color:#111827}
.harthwyn-actions .harthwyn-button[disabled]{opacity:.55}
.harthwyn-media-uploader-card h4{margin-bottom:10px}
.harthwyn-upload-form .harthwyn-panel{overflow:hidden}
@media (max-width: 1024px){.harthwyn-dashboard-main-grid,.harthwyn-events-layout,.harthwyn-guide-hero{grid-template-columns:1fr}.harthwyn-form-row--three,.harthwyn-form-row--two{grid-template-columns:1fr 1fr}.harthwyn-calendar-cell{min-height:102px}}
@media (max-width: 782px){.harthwyn-form-row--three,.harthwyn-form-row--two,.harthwyn-grid,.harthwyn-dashboard-actions-grid,.harthwyn-result-card-grid,.harthwyn-guide-grid{grid-template-columns:1fr}.harthwyn-calendar-grid{gap:6px}.harthwyn-calendar-cell{min-height:86px;padding:8px}.harthwyn-calendar-event-list{display:none}.harthwyn-panel-header-row{align-items:flex-start}}


.harthwyn-protected-media,
.harthwyn-protected-media img {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
}


/* t11 elementor + events + spacing */
.harthwyn-elementor-safe,
.elementor-widget-shortcode .harthwyn-elementor-safe,
.elementor-widget-container .harthwyn-elementor-safe,
.harthwyn-profile,
.harthwyn-dashboard-home,
.harthwyn-guide,
.harthwyn-events-hub {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box;
}

.harthwyn-events-hub .harthwyn-panel,
.harthwyn-profile .harthwyn-panel,
.harthwyn-dashboard-home .harthwyn-panel {
    overflow: hidden;
}

.harthwyn-quick-links {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.harthwyn-quick-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 12px 14px;
    text-align: center;
    text-decoration: none;
    background: #fff;
    color: var(--fp-color-secondary, #C8102E);
    border: 1px solid var(--fp-color-secondary, #C8102E);
    border-radius: 14px;
    font-weight: 600;
}

.harthwyn-quick-link:hover,
.harthwyn-quick-link:focus {
    background: #111827;
    color: #fff;
    border-color: #111827;
}

.harthwyn-profile-save-bar {
    margin: 18px 0 28px;
    padding-top: 8px;
}

.harthwyn-events-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr) !important;
    gap: 20px;
    align-items: start;
}

.harthwyn-events-calendar-panel {
    min-width: 0;
}

.harthwyn-calendar-grid {
    display: grid !important;
    width: 100%;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    gap: 8px;
    align-items: stretch;
}

.harthwyn-calendar-grid-main {
    grid-auto-rows: minmax(110px, auto);
}

.harthwyn-calendar-day-name,
.harthwyn-calendar-cell {
    min-width: 0;
}

.harthwyn-calendar-cell.has-events {
    border-color: var(--fp-color-primary, #0055A4);
    background: linear-gradient(180deg, #fff, #f9fbff);
}

.harthwyn-calendar-event-list li {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.harthwyn-button {
    background: #fff;
    color: var(--fp-color-secondary, #C8102E);
    border: 1px solid var(--fp-color-secondary, #C8102E);
}

.harthwyn-button:hover,
.harthwyn-button:focus {
    background: #111827;
    color: #fff;
    border-color: #111827;
}

.harthwyn-button.is-secondary {
    background: #fff;
    color: var(--fp-color-secondary, #C8102E);
    border: 1px solid var(--fp-color-secondary, #C8102E);
}

.harthwyn-button.is-secondary:hover,
.harthwyn-button.is-secondary:focus {
    background: #111827;
    color: #fff;
    border-color: #111827;
}

.harthwyn-admin-overview-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
    margin: 16px 0 20px;
}
.harthwyn-admin-overview-card {
    background: #fff;
    border: 1px solid #dcdcde;
    border-radius: 16px;
    padding: 18px;
}
.harthwyn-admin-overview-card h3 { margin: 0 0 8px; }
.harthwyn-admin-overview-card p { margin: 0; font-size: 28px; font-weight: 700; }
.harthwyn-admin-actions-row { display:flex; gap:12px; flex-wrap:wrap; margin: 12px 0 18px; }

@media (max-width: 1200px) {
    .harthwyn-events-layout {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 782px) {
    .harthwyn-calendar-grid {
        gap: 6px;
    }
    .harthwyn-calendar-grid-main {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .harthwyn-calendar-days {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .harthwyn-calendar-day-name {
        text-align: left;
    }
    .harthwyn-quick-links {
        grid-template-columns: 1fr;
    }
}


/* t12b events usability */
.harthwyn-calendar-cell{position:relative;text-decoration:none;color:inherit}
.harthwyn-calendar-cell.has-events{cursor:pointer}
.harthwyn-calendar-cell.has-events:hover{border-color:var(--fp-color-secondary,#C8102E);box-shadow:0 0 0 2px rgba(200,16,46,.10),0 6px 16px rgba(31,42,68,.08)}
.harthwyn-calendar-cell.has-events .harthwyn-calendar-event-list li{font-weight:600}
.harthwyn-calendar-open-link{margin-top:auto;font-size:12px;font-weight:700;color:var(--fp-color-secondary,#C8102E)}
.harthwyn-event-settings-row{display:grid;gap:8px;margin-top:8px}
.harthwyn-checkbox-row{display:inline-flex !important;align-items:center;gap:10px;font-weight:600;margin:0}
.harthwyn-checkbox-row input[type="checkbox"]{width:18px;height:18px;margin:0;accent-color:var(--fp-color-primary,#0055A4);flex:0 0 18px}
.harthwyn-sticky-actions{margin-top:18px;margin-bottom:18px}
.harthwyn-sticky-actions .harthwyn-button{min-width:180px}
@media (max-width: 782px){
  .harthwyn-calendar-grid{gap:6px}
  .harthwyn-calendar-cell{min-height:96px;padding:8px}
  .harthwyn-calendar-event-list{display:block}
}

.harthwyn-button{background:#fff;color:#a12626;border:1px solid #a12626}
.harthwyn-button:hover,.harthwyn-button:focus{background:#111827;color:#fff;border-color:#111827}
.harthwyn-button.is-secondary{background:#fff;color:#a12626;border:1px solid #a12626}
.harthwyn-button.is-secondary:hover,.harthwyn-button.is-secondary:focus{background:#111827;color:#fff;border-color:#111827}
.harthwyn-profile .harthwyn-sticky-actions,.harthwyn-profile-save-actions{margin:18px 0 28px}
.harthwyn-calendar-grid-main{grid-template-columns:repeat(7,minmax(0,1fr))}
.harthwyn-calendar-cell{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit;min-height:128px}
.harthwyn-calendar-open-link{margin-top:auto;font-size:12px;font-weight:700;color:#a12626}
.harthwyn-checkbox-row--compact{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #d6d3d1;border-radius:12px;background:#fff;width:auto}
.harthwyn-checkbox-row--compact input{width:18px !important;height:18px !important;min-width:18px;margin:0}
.harthwyn-event-settings-row{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.harthwyn-mini-gallery--interactive{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.harthwyn-image-card{display:grid;gap:8px}
.harthwyn-image-card img{width:100%;height:120px;object-fit:cover;border-radius:14px;border:1px solid #e5e7eb}
.harthwyn-reaction-bar{display:flex;flex-wrap:wrap;gap:8px}
.harthwyn-reaction-button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #d1d5db;border-radius:999px;background:#fff;color:#1f2937;cursor:pointer;font:inherit}
.harthwyn-reaction-button.is-active{border-color:#a12626;color:#a12626;background:#fff5f5}
.harthwyn-reaction-count{font-weight:700}
@media (max-width: 900px){.harthwyn-calendar-grid-main,.harthwyn-calendar-days{grid-template-columns:repeat(7,minmax(0,1fr))}.harthwyn-calendar-cell{min-height:96px}}
@media (max-width: 680px){.harthwyn-calendar-grid-main,.harthwyn-calendar-days{grid-template-columns:repeat(7,minmax(0,1fr))}.harthwyn-calendar-day-name{font-size:12px;padding:8px 4px}.harthwyn-calendar-cell{min-height:84px;padding:8px}.harthwyn-calendar-event-list li{font-size:11px}.harthwyn-calendar-open-link{font-size:11px}}

.harthwyn-button--small{padding:8px 12px;font-size:13px;min-width:auto}
.harthwyn-actions--inline{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.harthwyn-event-settings-row--aligned{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}
.harthwyn-checkbox-row--compact{padding:0;margin:0}
.harthwyn-checkbox-input{width:16px !important;height:16px !important;flex:0 0 16px}
.harthwyn-sticky-actions{margin-top:28px;margin-bottom:32px}
.harthwyn-profile .harthwyn-sticky-actions{padding-top:10px}
.harthwyn-calendar-cell.has-events{cursor:pointer;position:relative}
.harthwyn-calendar-cell.has-events:hover{border-color:var(--fp-primary);box-shadow:0 0 0 2px rgba(0,85,164,.08)}
.harthwyn-calendar-cell.has-events::after{content:'View event →';position:absolute;right:10px;bottom:8px;font-size:11px;color:var(--fp-primary);font-weight:600}
@media (max-width:782px){
    .harthwyn-event-settings-row--aligned{display:grid;grid-template-columns:1fr}
}


.harthwyn-calendar-links {
    display: grid;
    gap: 6px;
    margin-top: 8px;
}

.harthwyn-calendar-open-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    line-height: 1.35;
    color: var(--fp-primary);
    text-decoration: none;
    font-weight: 600;
}

.harthwyn-calendar-open-link:hover,
.harthwyn-calendar-open-link:focus {
    text-decoration: underline;
}

.harthwyn-calendar-event-list {
    margin: 8px 0 0;
    padding: 0;
    list-style: none;
}

.harthwyn-calendar-event-list li {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.harthwyn-calendar-event-dot {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: var(--fp-primary);
    flex: 0 0 7px;
}

.harthwyn-calendar-event-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.harthwyn-events-calendar-header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    flex-wrap: wrap;
}

.harthwyn-button--small {
    padding: 8px 12px;
    min-height: auto;
}

@media (max-width: 782px) {
    .harthwyn-calendar-links {
        display: none;
    }

    .harthwyn-events-calendar-header {
        flex-direction: column;
        align-items: stretch;
    }
}


/* EK-1 phase 3: Elementor compatibility + spacing cleanup */
.harthwyn-elementor-safe,
.harthwyn-elementor-safe * {
	box-sizing: border-box;
}

.harthwyn-elementor-safe {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.elementor .harthwyn-elementor-safe .harthwyn-grid,
.elementor .harthwyn-elementor-safe .harthwyn-result-card-grid,
.elementor .harthwyn-elementor-safe .harthwyn-dashboard-actions-grid,
.elementor .harthwyn-elementor-safe .harthwyn-guide-grid,
.elementor .harthwyn-elementor-safe .harthwyn-form-row,
.elementor .harthwyn-elementor-safe .harthwyn-dashboard-main-grid,
.elementor .harthwyn-elementor-safe .harthwyn-events-layout,
.elementor .harthwyn-elementor-safe .harthwyn-events-sidebar {
	min-width: 0;
	max-width: 100%;
}

.elementor .harthwyn-elementor-safe .harthwyn-panel,
.elementor .harthwyn-elementor-safe .harthwyn-field,
.elementor .harthwyn-elementor-safe .harthwyn-event-card,
.elementor .harthwyn-elementor-safe .harthwyn-guide-card {
	min-width: 0;
}

.elementor .harthwyn-elementor-safe img,
.elementor .harthwyn-elementor-safe video,
.elementor .harthwyn-elementor-safe audio {
	max-width: 100%;
	height: auto;
}

.harthwyn-elementor-safe .harthwyn-button {
	white-space: normal;
	text-align: center;
	line-height: 1.25;
}

.harthwyn-elementor-safe .harthwyn-actions {
	align-items: center;
}

.harthwyn-elementor-safe .harthwyn-panel > h2,
.harthwyn-elementor-safe .harthwyn-panel > h3,
.harthwyn-elementor-safe .harthwyn-panel > h4 {
	margin-top: 0;
	margin-bottom: 12px;
	line-height: 1.25;
}

.harthwyn-profile .harthwyn-sticky-actions {
	margin-top: 4px;
	margin-bottom: 28px;
	padding-top: 8px;
	border-top: 1px solid var(--fp-color-border, #e2e8f0);
}

.harthwyn-profile .harthwyn-sticky-actions .harthwyn-button {
	min-width: 180px;
}

.harthwyn-portal-links-panel {
	margin-bottom: 24px;
}

.harthwyn-quick-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.harthwyn-quick-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 14px;
	border: 1px solid var(--fp-color-border, #e2e8f0);
	border-radius: 999px;
	background: #fff;
	color: var(--fp-color-text, #1f2a44);
	text-decoration: none;
	font-weight: 600;
}

.harthwyn-quick-link:hover,
.harthwyn-quick-link:focus {
	background: #111827;
	color: #fff;
	border-color: #111827;
}

.harthwyn-dashboard-home .harthwyn-panel,
.harthwyn-events-hub .harthwyn-panel,
.harthwyn-guide .harthwyn-panel,
.harthwyn-upload .harthwyn-panel,
.harthwyn-profile .harthwyn-panel {
	overflow: hidden;
}

.harthwyn-dashboard-actions-grid > *,
.harthwyn-result-card-grid > *,
.harthwyn-guide-grid > * {
	min-width: 0;
}

.harthwyn-events-layout {
	align-items: start;
}

.harthwyn-events-calendar-panel {
	min-width: 0;
}

.harthwyn-calendar-grid {
	width: 100%;
}

.harthwyn-calendar-cell {
	min-width: 0;
}

.harthwyn-calendar-event-list a {
	display: inline-block;
	max-width: 100%;
	overflow-wrap: anywhere;
}

.harthwyn-form-row--two,
.harthwyn-form-row--three {
	align-items: start;
}

.harthwyn-upload-form .harthwyn-actions,
.harthwyn-events-hub .harthwyn-actions,
.harthwyn-guide .harthwyn-actions {
	margin-top: 12px;
}

.harthwyn-guide-hero,
.harthwyn-events-hero,
.harthwyn-dashboard-hero {
	gap: 18px;
}

@media (max-width: 1180px) {
	.harthwyn-dashboard-main-grid,
	.harthwyn-events-layout {
		grid-template-columns: 1fr;
	}

	.harthwyn-events-sidebar,
	.harthwyn-dashboard-sidebar-stack {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 900px) {
	.harthwyn-hero {
		grid-template-columns: 1fr;
	}

	.harthwyn-hero-media img {
		width: 120px;
		height: 120px;
	}

	.harthwyn-hero-content {
		min-width: 0;
	}

	.harthwyn-form-row--three,
	.harthwyn-form-row--two {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.harthwyn-elementor-safe .harthwyn-grid,
	.harthwyn-elementor-safe .harthwyn-result-card-grid,
	.harthwyn-elementor-safe .harthwyn-dashboard-actions-grid,
	.harthwyn-elementor-safe .harthwyn-guide-grid,
	.harthwyn-elementor-safe .harthwyn-form-row,
	.harthwyn-elementor-safe .harthwyn-dashboard-main-grid,
	.harthwyn-elementor-safe .harthwyn-events-layout {
		grid-template-columns: 1fr !important;
	}

	.harthwyn-quick-links {
		flex-direction: column;
	}

	.harthwyn-quick-link,
	.harthwyn-elementor-safe .harthwyn-button {
		width: 100%;
	}

	.harthwyn-profile .harthwyn-sticky-actions {
		margin-bottom: 22px;
	}
}

.harthwyn-gallery-grid--social{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:14px 0}
.harthwyn-gallery-item{display:grid;gap:8px}
.harthwyn-gallery-item img{width:100%;height:150px;object-fit:cover;border-radius:16px;border:1px solid #e2e8f0;display:block}
.harthwyn-lightbox-link{display:block;position:relative}
.harthwyn-tag-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 12px}
.harthwyn-tag-chip{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;font-size:13px;font-weight:600;color:#334155}
.harthwyn-inline-comments{margin-top:16px;padding-top:14px;border-top:1px solid #e2e8f0}
.harthwyn-inline-comments h5{margin:0 0 12px;font-size:15px}
.harthwyn-comment-list{display:grid;gap:10px;margin-bottom:14px}
.harthwyn-comment-item{padding:12px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
.harthwyn-comment-item p{margin:8px 0 0}
.harthwyn-inline-comment-form textarea{min-height:96px}
.harthwyn-reaction-bar{display:flex;flex-wrap:wrap;gap:8px}
.harthwyn-reaction-button{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#334155;font-size:12px;font-weight:600;cursor:pointer}
.harthwyn-reaction-button.is-active{background:#111827;color:#fff;border-color:#111827}
.harthwyn-reaction-count{display:inline-flex;min-width:18px;justify-content:center}
.harthwyn-lightbox{position:fixed;inset:0;background:rgba(15,23,42,.88);display:none;align-items:center;justify-content:center;padding:24px;z-index:99999}
.harthwyn-lightbox.is-open{display:flex}
.harthwyn-lightbox-inner{max-width:min(92vw,1000px);max-height:90vh;display:grid;gap:12px}
.harthwyn-lightbox-image{max-width:100%;max-height:78vh;border-radius:18px;display:block;margin:auto}
.harthwyn-lightbox-close{justify-self:end;padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
@media (max-width:782px){.harthwyn-gallery-grid--social{grid-template-columns:repeat(2,minmax(0,1fr))}.harthwyn-gallery-item img{height:132px}.harthwyn-reaction-bar{gap:6px}.harthwyn-reaction-button{padding:7px 8px;font-size:11px}}

.harthwyn-comment-thread{display:grid;gap:12px}
.harthwyn-comment-item{padding:14px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}
.harthwyn-comment-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.harthwyn-comment-children{margin-top:12px;margin-left:18px;display:grid;gap:10px;border-left:2px solid #f1f5f9;padding-left:12px}
.harthwyn-comment-actions{margin-top:8px}
.harthwyn-button--tiny{padding:6px 10px;font-size:12px;line-height:1.2}
.harthwyn-inline-reply-target{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #fecaca;border-radius:12px;background:#fff7f7;margin-bottom:10px}
.harthwyn-comment-mentions{display:grid;gap:8px}
.harthwyn-comment-mention{display:inline-block;padding:1px 6px;border-radius:999px;background:#eef2ff;color:#3730a3;font-weight:600}
.harthwyn-tag-chip--button{cursor:pointer;border:1px solid #fecaca;background:#fff}
.harthwyn-tag-chip--button:hover,.harthwyn-tag-chip--button:focus{background:#111827;color:#fff;border-color:#111827}
.harthwyn-lightbox-overlay{position:fixed;inset:0;background:rgba(15,23,42,.82);display:flex;align-items:center;justify-content:center;padding:24px;z-index:9999}
.harthwyn-lightbox-inner{position:relative;max-width:min(92vw,980px);max-height:88vh}
.harthwyn-lightbox-inner img{max-width:100%;max-height:88vh;border-radius:18px;display:block}
.harthwyn-lightbox-close{position:absolute;top:10px;right:10px;width:40px;height:40px;border-radius:999px;border:0;background:#111827;color:#fff;font-size:28px;line-height:1;cursor:pointer}
body.harthwyn-lightbox-open{overflow:hidden}


.harthwyn-activity-feed-panel{margin-bottom:24px}
.harthwyn-activity-feed-list{display:grid;gap:14px}
.harthwyn-activity-card{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:start;padding:16px;border:1px solid #e2e8f0;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc)}
.harthwyn-activity-icon{width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:26px;background:#fff;border:1px solid #e2e8f0}
.harthwyn-activity-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.harthwyn-activity-content h4{margin:0 0 6px;font-size:18px}
.harthwyn-activity-content p{margin:0 0 10px}
.harthwyn-activity-card--memory .harthwyn-activity-icon{background:#eff6ff}
.harthwyn-activity-card--tribute .harthwyn-activity-icon{background:#fef2f2}
.harthwyn-activity-card--event .harthwyn-activity-icon{background:#ecfdf5}
.harthwyn-activity-card--announcement .harthwyn-activity-icon{background:#fff7ed}
.harthwyn-activity-card--birthday .harthwyn-activity-icon{background:#faf5ff}
@media (max-width: 782px){
  .harthwyn-activity-card{grid-template-columns:1fr}
  .harthwyn-activity-icon{width:48px;height:48px}
}


.harthwyn-notifications-panel {
    margin-bottom: 24px;
}
.harthwyn-notification-list {
    display: grid;
    gap: 14px;
}
.harthwyn-notification-card {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 14px;
    padding: 14px;
    border: 1px solid var(--fp-border);
    border-radius: 16px;
    background: linear-gradient(180deg, var(--fp-surface), var(--fp-surface-soft));
}
.harthwyn-notification-icon {
    width: 48px;
    height: 48px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.75);
    font-size: 24px;
}
.harthwyn-notification-content h4 {
    margin: 8px 0 6px;
}
@media (max-width: 782px) {
    .harthwyn-notification-card {
        grid-template-columns: 40px minmax(0, 1fr);
        padding: 12px;
    }
    .harthwyn-notification-icon {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }
}

.harthwyn-gallery-grid--feature{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
.harthwyn-gallery-feature-card{display:grid;gap:10px;padding:10px;border:1px solid #e2e8f0;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc)}
.harthwyn-gallery-feature-card img{width:100%;height:180px;object-fit:cover;border-radius:14px;display:block}
.harthwyn-gallery-feature-meta{display:grid;gap:8px}
.harthwyn-gallery-title-link{font-weight:700;color:#111827;text-decoration:none}
.harthwyn-gallery-title-link:hover{text-decoration:underline}
.harthwyn-tag-list--linked{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
.harthwyn-tag-chip--linked{text-decoration:none}
.harthwyn-tag-chip--linked:hover{background:#111827;color:#fff}


.harthwyn-social-home .harthwyn-dashboard-hero--social{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:20px;align-items:stretch}
.harthwyn-dashboard-hero-main .harthwyn-actions{margin-top:14px}
.harthwyn-dashboard-hero-side{display:grid;grid-template-columns:1fr;gap:12px}
.harthwyn-social-stat{padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fafc);text-align:center}
.harthwyn-social-stat strong{display:block;font-size:28px;line-height:1;margin-bottom:6px}
.harthwyn-social-stat span{font-size:14px;color:#475569}
.harthwyn-social-top-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr)}
.harthwyn-social-mid-grid{grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr)}
.harthwyn-spotlight-card{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:18px;align-items:stretch}
.harthwyn-spotlight-media{border-radius:18px;overflow:hidden;background:#f8fafc;min-height:220px}
.harthwyn-spotlight-media img{width:100%;height:100%;object-fit:cover;display:block}
.harthwyn-spotlight-content{display:flex;flex-direction:column;justify-content:center}
.harthwyn-share-prompt-list,.harthwyn-popular-list{display:grid;gap:14px}
.harthwyn-share-prompt-card,.harthwyn-popular-card{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:14px;border:1px solid #e2e8f0;border-radius:16px;background:#fff}
.harthwyn-popular-card{grid-template-columns:1fr}
.harthwyn-share-prompt-icon{width:44px;height:44px;border-radius:14px;background:#111827;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px}
.harthwyn-share-prompt-content h4,.harthwyn-popular-card h4,.harthwyn-spotlight-content h4{margin:0 0 6px}
.harthwyn-share-prompt-content p,.harthwyn-popular-card p,.harthwyn-spotlight-content p{margin:0 0 10px}
.harthwyn-activity-feed-list--rich{display:grid;gap:14px}
.harthwyn-activity-card,.harthwyn-notification-card{border:1px solid #e2e8f0;border-radius:16px;padding:14px;background:#fff}
.harthwyn-popular-top{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:8px}
@media (max-width: 1024px){
  .harthwyn-social-home .harthwyn-dashboard-hero--social,
  .harthwyn-social-top-grid,
  .harthwyn-social-mid-grid,
  .harthwyn-spotlight-card{grid-template-columns:1fr}
  .harthwyn-dashboard-hero-side{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 782px){
  .harthwyn-dashboard-hero-side{grid-template-columns:1fr}
  .harthwyn-share-prompt-card{grid-template-columns:1fr}
}

.harthwyn-count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;margin-left:8px;border-radius:999px;background:#111827;color:#fff;font-size:12px;font-weight:700}
.harthwyn-notification-card.is-unread{border-color:#c7d2fe;box-shadow:0 10px 28px rgba(79,70,229,.08);background:linear-gradient(180deg,#fff,#f8faff)}
.harthwyn-notification-card.is-read{opacity:.92}
.harthwyn-unread-dot{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border-radius:999px;background:#dcfce7;color:#166534;font-size:12px;font-weight:700}
.harthwyn-button.is-ghost{background:#fff;color:#111827;border:1px dashed #cbd5e1}
.harthwyn-button.is-ghost:hover,.harthwyn-button.is-ghost:focus{background:#111827;color:#fff;border-color:#111827}
.harthwyn-engagement-panel .harthwyn-activity-card{border:1px solid #e2e8f0;border-radius:16px;padding:14px;background:#fff}
.harthwyn-engagement-panel .harthwyn-activity-card--engagement{display:grid;grid-template-columns:52px 1fr;gap:14px}
.harthwyn-engagement-panel .harthwyn-activity-icon{width:52px;height:52px;border-radius:16px;background:#f8fafc;display:flex;align-items:center;justify-content:center;font-size:24px}


.harthwyn-albums-browser,
.harthwyn-album-detail {
    display: grid;
    gap: 20px;
}

.harthwyn-album-card {
    display: grid;
    gap: 12px;
}

.harthwyn-gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 14px;
}

.harthwyn-gallery-grid img {
    width: 100%;
    height: 140px;
    object-fit: cover;
    border-radius: 16px;
    border: 1px solid var(--fp-border);
}

.harthwyn-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.harthwyn-chip {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--fp-surface-soft);
    border: 1px solid var(--fp-border);
    font-size: 12px;
    line-height: 1.2;
}

.harthwyn-chip--accent {
    background: rgba(0,0,0,0.04);
}

@media (max-width: 782px) {
    .harthwyn-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* EK-3 notification QA + responsive stabilization */
.harthwyn-elementor-safe,
.harthwyn-elementor-safe * {
    box-sizing: border-box;
}

.harthwyn-dashboard-home,
.harthwyn-profile,
.harthwyn-upload,
.harthwyn-guide,
.harthwyn-events-hub,
.harthwyn-search {
    width: 100%;
    max-width: 100%;
}

.harthwyn-panel-header-row .harthwyn-actions,
.harthwyn-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}

.harthwyn-actions .harthwyn-button,
.harthwyn-panel-header-row .harthwyn-button {
    max-width: 100%;
}

.harthwyn-dashboard-hero--social {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(260px, 1fr);
    gap: 18px;
}

.harthwyn-social-top-grid,
.harthwyn-social-mid-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(280px, 1fr);
    gap: 20px;
    align-items: start;
}

.harthwyn-notification-list,
.harthwyn-dashboard-mini-stack,
.harthwyn-activity-list {
    display: grid;
    gap: 14px;
}

.harthwyn-notification-card,
.harthwyn-activity-card,
.harthwyn-announcement-card,
.harthwyn-share-prompt-card,
.harthwyn-spotlight-card,
.harthwyn-guide-card {
    overflow: hidden;
}

.harthwyn-notification-card {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

.harthwyn-notification-content,
.harthwyn-activity-content,
.harthwyn-share-prompt-card > div {
    min-width: 0;
}

.harthwyn-notification-card h4,
.harthwyn-activity-card h4,
.harthwyn-guide-card h4,
.harthwyn-spotlight-card h4 {
    overflow-wrap: anywhere;
}

.harthwyn-hero,
.harthwyn-dashboard-hero,
.harthwyn-events-hero {
    overflow: hidden;
}

.harthwyn-profile .harthwyn-sticky-actions {
    margin: 8px 0 28px;
    padding-top: 8px;
    justify-content: flex-start;
}

.harthwyn-profile .harthwyn-sticky-actions .harthwyn-button {
    min-width: 180px;
}

.harthwyn-quick-links {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.harthwyn-quick-link {
    display: inline-flex;
    align-items: center;
    padding: 9px 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #e2e8f0;
    text-decoration: none;
}

.harthwyn-events-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(300px, 1fr);
    gap: 20px;
    align-items: start;
}

.harthwyn-events-sidebar {
    display: grid;
    gap: 18px;
}

.harthwyn-events-calendar-panel {
    overflow-x: auto;
}

.harthwyn-calendar-grid {
    min-width: 0;
}

.harthwyn-calendar-cell {
    min-height: 120px;
}

.harthwyn-calendar-event-links {
    display: grid;
    gap: 6px;
    margin-top: 10px;
}

.harthwyn-calendar-event-links a {
    font-size: 12px;
    line-height: 1.35;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.harthwyn-gallery-grid,
.harthwyn-mini-gallery {
    align-items: start;
}

.harthwyn-lightbox-inner {
    max-width: min(92vw, 1080px);
    max-height: 90vh;
}

.harthwyn-lightbox-image {
    max-width: 100%;
    max-height: calc(90vh - 60px);
    object-fit: contain;
}

.harthwyn-guide-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(280px, 1fr);
    gap: 20px;
    align-items: start;
}

.harthwyn-guide-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 18px;
}

.harthwyn-form-row > .harthwyn-field {
    min-width: 0;
}

.harthwyn-upload-form .harthwyn-grid,
.harthwyn-profile .harthwyn-grid {
    align-items: start;
}

.harthwyn-chip-row {
    align-items: center;
}

.harthwyn-comment-thread,
.harthwyn-comment-children {
    overflow-wrap: anywhere;
}

.harthwyn-button,
.harthwyn-quick-link {
    white-space: normal;
    text-align: center;
}

@media (max-width: 1280px) {
    .harthwyn-dashboard-hero--social,
    .harthwyn-social-top-grid,
    .harthwyn-social-mid-grid,
    .harthwyn-events-layout,
    .harthwyn-guide-hero {
        grid-template-columns: 1fr;
    }

    .harthwyn-dashboard-hero-side {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .harthwyn-hero {
        grid-template-columns: 112px 1fr;
    }

    .harthwyn-hero-media img {
        width: 112px;
        height: 112px;
    }

    .harthwyn-panel {
        padding: 18px;
    }

    .harthwyn-calendar-cell {
        min-height: 104px;
    }

    .harthwyn-grid,
    .harthwyn-result-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 782px) {
    .harthwyn-grid,
    .harthwyn-result-card-grid,
    .harthwyn-guide-grid,
    .harthwyn-dashboard-actions-grid,
    .harthwyn-social-top-grid,
    .harthwyn-social-mid-grid {
        grid-template-columns: 1fr;
    }

    .harthwyn-hero,
    .harthwyn-notification-card,
    .harthwyn-activity-card--engagement,
    .harthwyn-share-prompt-card {
        grid-template-columns: 1fr;
    }

    .harthwyn-hero-media img {
        width: 96px;
        height: 96px;
    }

    .harthwyn-dashboard-hero-side {
        grid-template-columns: 1fr;
    }

    .harthwyn-profile .harthwyn-sticky-actions .harthwyn-button,
    .harthwyn-actions .harthwyn-button {
        width: 100%;
    }

    .harthwyn-calendar-days {
        display: none;
    }

    .harthwyn-calendar-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .harthwyn-calendar-cell {
        min-height: 92px;
        padding: 10px;
    }

    .harthwyn-calendar-event-list {
        display: none;
    }

    .harthwyn-calendar-event-links a {
        font-size: 11px;
    }
}

@media (max-width: 560px) {
    .harthwyn-panel {
        padding: 16px;
        border-radius: 16px;
    }

    .harthwyn-hero-title,
    .harthwyn-dashboard-hero h2 {
        font-size: 28px;
    }

    .harthwyn-form-row {
        grid-template-columns: 1fr;
    }

    .harthwyn-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .harthwyn-calendar-grid {
        grid-template-columns: 1fr;
    }

    .harthwyn-quick-link,
    .harthwyn-button {
        width: 100%;
        justify-content: center;
    }
}


.harthwyn-brand-row{margin:0 0 18px;display:flex;align-items:center}
.harthwyn-brand-row--center{justify-content:center}
.harthwyn-brand-logo{max-width:320px;width:100%;height:auto;display:block}
.harthwyn-brand-logo--gold{max-width:300px}
@media (max-width:782px){
  .harthwyn-brand-logo,.harthwyn-brand-logo--gold{max-width:220px}
}

.harthwyn-brand-banner{display:flex;justify-content:center;align-items:center;margin:0 auto 20px;padding:12px 16px}
.harthwyn-brand-banner-image{display:block;max-width:min(560px,100%);height:auto}
.harthwyn-brand-banner--compact .harthwyn-brand-banner-image{max-width:min(260px,88vw)}
.harthwyn-direct-upload-input{display:none}
.harthwyn-upload-media-stack{display:grid;gap:18px}
.harthwyn-media-uploader-card .harthwyn-inline-note{margin:.5rem 0 0;color:#6b7280}
@media (max-width: 782px){
  .harthwyn-brand-banner{padding:8px 12px;margin-bottom:16px}
  .harthwyn-brand-banner-image{max-width:min(320px,92vw)}
  .harthwyn-actions{flex-wrap:wrap}
}


.harthwyn-brand-banner{
  width:100%;
  max-width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  margin:0 auto 20px;
  padding:12px 16px;
  box-sizing:border-box;
}
.harthwyn-brand-banner-image{
  display:block;
  width:auto;
  max-width:min(560px,100%);
  height:auto;
}
.harthwyn-brand-banner--compact .harthwyn-brand-banner-image{
  max-width:min(320px,100%);
}
.harthwyn-elementor-safe,
.harthwyn-dashboard-home,
.harthwyn-events-hub,
.harthwyn-guide,
.harthwyn-search,
.harthwyn-profile,
.harthwyn-upload,
.harthwyn-albums-browser{
  width:100%;
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}
@media (max-width: 782px){
  .harthwyn-brand-banner{
    padding:10px 12px;
    margin-bottom:16px;
  }
  .harthwyn-brand-banner-image{
    max-width:min(260px,100%);
  }
  .harthwyn-elementor-safe,
  .harthwyn-dashboard-home,
  .harthwyn-events-hub,
  .harthwyn-guide,
  .harthwyn-search,
  .harthwyn-profile,
  .harthwyn-upload,
  .harthwyn-albums-browser{
    padding-left:12px;
    padding-right:12px;
  }
}


/* v7 shared shell stabilization */
.harthwyn-page-shell{
  width:100%;
  max-width:1200px;
  margin:0 auto 32px;
  padding:0 16px 32px;
  box-sizing:border-box;
}
.harthwyn-theme-heritage-classic,
.harthwyn-theme-heritage-modern,
.harthwyn-theme-heritage-warm,
[class*="harthwyn-theme-"]{
  width:100%;
  max-width:100%;
  display:block;
  box-sizing:border-box;
}
.harthwyn-page-shell .harthwyn-panel,
.harthwyn-page-shell .harthwyn-events-layout,
.harthwyn-page-shell .harthwyn-grid,
.harthwyn-page-shell .harthwyn-guide-grid,
.harthwyn-page-shell .harthwyn-dashboard-actions-grid,
.harthwyn-page-shell .harthwyn-result-card-grid{
  min-width:0;
}
.harthwyn-page-shell .harthwyn-panel{
  overflow-wrap:anywhere;
}
.harthwyn-page-shell .harthwyn-brand-row{
  justify-content:flex-start;
}
.harthwyn-dashboard-home .harthwyn-dashboard-hero,
.harthwyn-guide .harthwyn-guide-hero,
.harthwyn-events-hub .harthwyn-events-hero,
.harthwyn-search-v2 .harthwyn-search-hero,
.harthwyn-upload-v2 .harthwyn-panel:first-child,
.harthwyn-profile .harthwyn-panel:first-child{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.harthwyn-guide .harthwyn-guide-grid,
.harthwyn-guide .harthwyn-grid{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
}
.harthwyn-dashboard-home .harthwyn-grid{
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
}
.harthwyn-events-layout{
  align-items:start;
}
.harthwyn-brand-banner + .harthwyn-page-shell{
  margin-top:0;
}
@media (max-width:1024px){
  .harthwyn-page-shell{
    padding:0 14px 28px;
  }
}
@media (max-width:782px){
  .harthwyn-page-shell{
    padding:0 12px 24px;
    margin-bottom:24px;
  }
  .harthwyn-guide .harthwyn-guide-grid,
  .harthwyn-guide .harthwyn-grid,
  .harthwyn-dashboard-home .harthwyn-grid,
  .harthwyn-result-card-grid,
  .harthwyn-dashboard-actions-grid{
    grid-template-columns:1fr;
  }
  .harthwyn-events-layout{
    grid-template-columns:1fr;
  }
  .harthwyn-panel{
    padding:16px;
  }
}

.harthwyn-moments-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.harthwyn-moment-card img,.harthwyn-moment-card video{width:100%;height:auto;display:block;border-radius:12px}
.harthwyn-notice{margin:0 0 1rem;padding:.75rem 1rem;border:1px solid rgba(0,0,0,.08);border-radius:10px;background:#fff}

.harthwyn-moment-composer{margin-bottom:24px}
.harthwyn-moment-card img,.harthwyn-moment-card video{width:100%;display:block;border-top-left-radius:16px;border-top-right-radius:16px;max-height:420px;object-fit:cover;background:#000}
.harthwyn-moment-comments{margin-top:14px;padding-top:14px;border-top:1px solid #e5e7eb}
.harthwyn-comment-thread{display:grid;gap:10px;margin-bottom:12px}
.harthwyn-comment{padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}
.harthwyn-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.harthwyn-chip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f3f4f6;color:#111827;text-decoration:none;font-size:13px}
.harthwyn-reaction-bar{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.harthwyn-reaction-button{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #e5e7eb;border-radius:999px;background:#fff;cursor:pointer}
.harthwyn-reaction-button.is-active{border-color:#111827}


.harthwyn-guide-step-heading,
.harthwyn-guide-card-heading{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.harthwyn-guide-step-heading h4,
.harthwyn-guide-card-heading h4{
  margin:0;
}
.harthwyn-guide-step-icon{
  flex:0 0 auto;
  width:40px;
  height:40px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid #e5e7eb;
  font-size:20px;
}
.harthwyn-guide-card-icon{
  flex:0 0 auto;
  font-size:22px;
}
.harthwyn-guide-separator{
  height:1px;
  margin:20px 0 24px;
  background:#e5e7eb;
}
.harthwyn-guide-step .harthwyn-button{
  margin-top:8px;
}
.harthwyn-empty-state{
  padding:20px;
  border:1px dashed #d1d5db;
  border-radius:16px;
  background:#fff;
}
.harthwyn-empty-state h4{
  margin-top:0;
  margin-bottom:8px;
}
.harthwyn-panel-header-inline{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:14px;
}
.harthwyn-panel-header-inline h3{
  margin:0;
}
.harthwyn-moments-intro .harthwyn-inline-note--success{
  color:#166534;
}
.harthwyn-moment-upload-hints{
  margin-top:10px;
}
@media (max-width: 782px){
  .harthwyn-panel-header-inline{
    flex-direction:column;
  }
  .harthwyn-guide-step-icon{
    width:36px;
    height:36px;
    font-size:18px;
  }
  .harthwyn-guide-separator{
    margin:16px 0 20px;
  }
}



/* v7.02.9 centered page header */
.harthwyn-page-header-title-wrap{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  margin:-8px auto 28px;
  padding:0 16px;
  box-sizing:border-box;
  text-align:center;
}

.harthwyn-page-header-title-inner{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  flex-wrap:nowrap;
}
.harthwyn-page-header-mark{
  width:30px;
  height:30px;
  object-fit:contain;
  flex:0 0 auto;
  border-radius:8px;
}
.harthwyn-page-header-title{
  margin:0;
  text-align:center;
  font-size:clamp(1.5rem, 2.4vw, 2.2rem);
  line-height:1.2;
  color:#111827;
}
.harthwyn-page-shell > .harthwyn-panel:first-of-type,
.harthwyn-page-shell > section.harthwyn-panel:first-of-type{
  margin-top:0;
}
.harthwyn-guide-step{
  padding:4px 0 10px;
}
.harthwyn-guide-step-heading,
.harthwyn-guide-card-heading{
  gap:14px;
  margin-bottom:14px;
}
.harthwyn-guide-step-icon{
  width:44px;
  height:44px;
}
.harthwyn-guide-separator{
  margin:28px 0;
}
.harthwyn-guide-step .harthwyn-button{
  margin-top:12px;
}
.harthwyn-moment-upload-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}
.harthwyn-moment-upload-actions .harthwyn-button{
  width:auto;
}
.harthwyn-moment-selected-file{
  margin-top:10px;
  color:#374151;
  font-size:.95rem;
}
@media (max-width: 782px){
  .harthwyn-page-header-title-wrap{
    margin:-4px auto 22px;
    padding:0 12px;
  }
  .harthwyn-guide-separator{
    margin:24px 0;
  }
  .harthwyn-moment-upload-actions .harthwyn-button{
    width:100%;
  }
}


/* v7.03.0 support guide redesign */
.harthwyn-support-guide{display:grid;gap:28px}
.harthwyn-support-guide-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;background:linear-gradient(135deg,var(--fp-surface-soft,#FAF6EE) 0%,var(--fp-surface,#fff) 100%)}
.harthwyn-support-guide-copy{max-width:760px}
.harthwyn-support-guide-kicker{display:inline-block;margin-bottom:10px;font-size:.85rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--fp-primary,#0055A4)}
.harthwyn-support-guide-hero h2,
.harthwyn-support-section-heading h2,
.harthwyn-support-help-copy h2,
.harthwyn-support-cta-strip h2{margin:0 0 10px;font-size:clamp(1.55rem,2.2vw,2.1rem);line-height:1.15;color:var(--fp-ink,#1F2A44)}
.harthwyn-support-guide-hero p,
.harthwyn-support-section-heading p,
.harthwyn-support-help-copy p,
.harthwyn-support-card p,
.harthwyn-support-cta-strip p{margin:0;color:var(--fp-soft-ink,#5A6476);line-height:1.75}
.harthwyn-support-guide-actions{display:flex;flex-direction:column;gap:12px;min-width:220px}
.harthwyn-support-section{display:grid;gap:18px}
.harthwyn-support-section-heading{display:grid;gap:8px}
.harthwyn-support-card-grid{display:grid;gap:18px}
.harthwyn-support-card-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.harthwyn-support-card-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.harthwyn-support-card-grid--leadership{grid-template-columns:repeat(4,minmax(0,1fr))}
.harthwyn-support-card{padding:24px}
.harthwyn-support-card--step,
.harthwyn-support-card--action{height:100%}
.harthwyn-support-card-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}
.harthwyn-support-card-icon{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;font-size:1.4rem;line-height:1}
.harthwyn-support-card h3{margin:0;font-size:1.2rem;line-height:1.25;color:var(--fp-ink,#1F2A44)}
.harthwyn-support-card .harthwyn-button{margin-top:18px}
.harthwyn-support-role{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 12px;border-radius:999px;background:var(--fp-surface-soft,#FAF6EE);color:var(--fp-primary,#0055A4);font-size:.85rem;font-weight:700;margin-bottom:14px}
.harthwyn-support-help-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:24px;padding:28px 30px}
.harthwyn-support-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.harthwyn-support-form label{display:grid;gap:8px;font-weight:600;color:var(--fp-ink,#1F2A44)}
.harthwyn-support-form label span{font-size:.95rem}
.harthwyn-support-form label:nth-child(4),
.harthwyn-support-form label:nth-child(5){grid-column:1 / -1}
.harthwyn-support-form input,
.harthwyn-support-form select,
.harthwyn-support-form textarea{width:100%;padding:13px 14px;border:1px solid var(--fp-border,#E5DED1);border-radius:16px;background:var(--fp-surface,#fff);color:var(--fp-ink,#1F2A44);box-sizing:border-box}
.harthwyn-support-form textarea{resize:vertical;min-height:132px}
.harthwyn-support-form .harthwyn-button{justify-self:start}
.harthwyn-support-cta-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 28px}
.harthwyn-support-cta-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
@media (max-width:1180px){
  .harthwyn-support-card-grid--leadership{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:980px){
  .harthwyn-support-guide-hero,
  .harthwyn-support-help-layout,
  .harthwyn-support-cta-strip{grid-template-columns:1fr;display:grid}
  .harthwyn-support-guide-actions,
  .harthwyn-support-cta-actions{justify-content:flex-start}
  .harthwyn-support-card-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:782px){
  .harthwyn-support-guide{gap:22px}
  .harthwyn-support-guide-hero,
  .harthwyn-support-help-layout,
  .harthwyn-support-card,
  .harthwyn-support-cta-strip{padding:20px}
  .harthwyn-support-card-grid--three,
  .harthwyn-support-card-grid--two,
  .harthwyn-support-card-grid--leadership,
  .harthwyn-support-form{grid-template-columns:1fr}
  .harthwyn-support-guide-actions{min-width:0}
  .harthwyn-support-cta-actions .harthwyn-button,
  .harthwyn-support-guide-actions .harthwyn-button,
  .harthwyn-support-form .harthwyn-button{width:100%}
}


/* v7.03.1 event + announcements routing cleanup */
.harthwyn-announcements-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr);gap:20px;align-items:start}
.harthwyn-announcements-hero{margin-bottom:0}
.harthwyn-announcement-detail .harthwyn-content{margin-top:14px}
@media (max-width:980px){
  .harthwyn-announcements-layout{grid-template-columns:1fr}
}


/* v7.03.2 follow foundation */
.harthwyn-profile-follow-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
  padding:18px 20px;
}
.harthwyn-profile-follow-panel h3{
  margin:0 0 8px;
  font-size:1.1rem;
}
.harthwyn-profile-follow-panel p{
  margin:0;
  color:var(--fp-soft-ink,#5A6476);
}
.harthwyn-profile-follow-form{
  flex-shrink:0;
}
@media (max-width:782px){
  .harthwyn-profile-follow-panel{
    flex-direction:column;
    align-items:flex-start;
  }
  .harthwyn-profile-follow-form,
  .harthwyn-profile-follow-form .harthwyn-button{
    width:100%;
  }
}


/* v7.03.3 notifications and calendar polish */
.harthwyn-checkbox-stack{display:grid;gap:10px;margin-top:12px}
.harthwyn-checkbox-row{display:flex;align-items:flex-start;gap:10px;color:var(--fp-ink,#1F2A44)}
.harthwyn-checkbox-row input{margin-top:3px}
.harthwyn-calendar-callout{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:16px;padding:14px 16px;border:1px solid var(--fp-border,#E5DED1);border-radius:18px;background:var(--fp-surface-soft,#FAF6EE)}
.harthwyn-calendar-callout p{margin:0;color:var(--fp-soft-ink,#5A6476)}
@media (max-width:782px){
  .harthwyn-calendar-callout{align-items:flex-start}
  .harthwyn-calendar-callout .harthwyn-button{width:100%}
}

@media (max-width: 782px){
  .harthwyn-page-header-title-inner{
    gap:10px;
  }
  .harthwyn-page-header-mark{
    width:26px;
    height:26px;
  }
}


/* v7.03.6 header system polish + premium branding prep */
.harthwyn-page-header-title-wrap{
  margin:-2px auto 24px;
  padding:0 18px;
}
.harthwyn-page-header-title-inner{
  min-height:40px;
  gap:10px;
}
.harthwyn-page-header-mark{
  width:24px;
  height:24px;
  border-radius:6px;
}
.harthwyn-page-header-title{
  font-size:clamp(1.35rem,2vw,2rem);
  letter-spacing:-0.01em;
}
.harthwyn-page-shell{
  max-width:1160px;
}
.harthwyn-brand-banner{
  margin:0 auto 14px;
}
.harthwyn-support-guide .harthwyn-page-header-title,
.harthwyn-dashboard-home .harthwyn-page-header-title,
.harthwyn-events-hub .harthwyn-page-header-title,
.harthwyn-profile .harthwyn-page-header-title,
.harthwyn-events-hub .harthwyn-page-header-title{
  color:var(--fp-ink,#1F2A44);
}
@media (max-width:782px){
  .harthwyn-page-header-title-wrap{
    margin:0 auto 18px;
    padding:0 12px;
  }
  .harthwyn-page-header-title-inner{
    gap:8px;
  }
  .harthwyn-page-header-mark{
    width:20px;
    height:20px;
    border-radius:5px;
  }
  .harthwyn-page-header-title{
    font-size:clamp(1.2rem,5vw,1.5rem);
  }
}


/* v7.03.7 floating help launcher */
.harthwyn-help-launcher{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}
.harthwyn-help-launcher-toggle{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--fp-border,#E5DED1);
  border-radius:999px;
  background:var(--fp-surface,#fff);
  color:var(--fp-ink,#1F2A44);
  box-shadow:0 14px 34px rgba(31,42,68,.12);
  padding:10px 14px;
  cursor:pointer;
  font:inherit;
  font-weight:700;
}
.harthwyn-help-launcher-toggle img{
  width:24px;
  height:24px;
  display:block;
  border-radius:999px;
}
.harthwyn-help-launcher-panel{
  width:min(320px, calc(100vw - 32px));
  background:var(--fp-surface,#fff);
  border:1px solid var(--fp-border,#E5DED1);
  border-radius:20px;
  box-shadow:0 16px 42px rgba(31,42,68,.16);
  padding:18px;
}
.harthwyn-help-launcher-panel h3{
  margin:0 0 8px;
  font-size:1.05rem;
  color:var(--fp-ink,#1F2A44);
}
.harthwyn-help-launcher-panel p{
  margin:0 0 12px;
  color:var(--fp-soft-ink,#5A6476);
  line-height:1.6;
}
.harthwyn-help-launcher-links{
  display:grid;
  gap:8px;
}
.harthwyn-help-launcher-links a{
  display:block;
  padding:10px 12px;
  border-radius:12px;
  background:var(--fp-surface-soft,#FAF6EE);
  color:var(--fp-primary,#0055A4);
  text-decoration:none;
  font-weight:600;
}
.harthwyn-help-launcher-links a:hover{
  background:var(--fp-surface-tint,#F4EFE4);
}
@media (max-width:782px){
  .harthwyn-help-launcher{
    right:12px;
    bottom:12px;
  }
  .harthwyn-help-launcher-toggle{
    padding:10px 12px;
  }
  .harthwyn-help-launcher-toggle span{
    font-size:.95rem;
  }
}


/* v7.05.6 checkout handoff page */
.harthwyn-license-handoff-card{max-width:920px;margin:0 auto;padding:32px;background:linear-gradient(180deg,#fffdf8 0%,#ffffff 100%)}
.harthwyn-license-handoff-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:8px}
.harthwyn-license-handoff-copy h2{margin:0 0 10px;font-size:clamp(1.7rem,2.4vw,2.3rem);line-height:1.1;color:#0f172a}
.harthwyn-license-handoff-copy p{margin:0;color:#475569;line-height:1.75;max-width:680px}
.harthwyn-license-handoff-badge{display:inline-flex;align-items:center;justify-content:center;min-width:120px;padding:10px 14px;border-radius:999px;background:#fef3c7;color:#92400e;font-weight:700;font-size:.92rem}
.harthwyn-license-handoff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
.harthwyn-license-handoff-stat{display:grid;gap:6px;padding:16px 18px;border:1px solid #e5e7eb;border-radius:18px;background:#fff}
.harthwyn-license-handoff-stat strong{font-size:.92rem;color:#334155}
.harthwyn-license-handoff-stat span{color:#0f172a;font-weight:600}
.harthwyn-license-handoff-stat code{display:block;white-space:normal;word-break:break-word;color:#0f172a;background:#f8fafc;border-radius:12px;padding:10px 12px}
.harthwyn-license-handoff-message{margin-top:4px;padding:16px 18px;border-radius:18px;background:#eff6ff;border:1px solid #bfdbfe}
.harthwyn-license-handoff-message strong{display:block;margin-bottom:6px;color:#1d4ed8}
.harthwyn-license-handoff-message p{margin:0;color:#334155;line-height:1.7}
.harthwyn-license-handoff-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.harthwyn-license-handoff-details{margin-top:20px}
.harthwyn-license-handoff-details summary{cursor:pointer;font-weight:700;color:#0f172a}
.harthwyn-license-handoff-next-steps{margin-top:22px;padding:20px 22px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px}
.harthwyn-license-handoff-next-steps h3{margin:0 0 10px;font-size:1.08rem;color:#0f172a}
.harthwyn-license-handoff-steps{margin:0;padding-left:20px;color:#475569;line-height:1.75}
.harthwyn-license-handoff-steps li+li{margin-top:6px}
.harthwyn-license-handoff-assurance{margin-top:14px;padding:14px 16px;border-left:4px solid #c084fc;background:#faf5ff;border-radius:0 14px 14px 0}
.harthwyn-license-handoff-assurance p{margin:0;color:#5b21b6;line-height:1.7}
@media (max-width:782px){
  .harthwyn-license-handoff-card{padding:22px}
  .harthwyn-license-handoff-hero{display:grid;grid-template-columns:1fr}
  .harthwyn-license-handoff-grid{grid-template-columns:1fr}
  .harthwyn-license-handoff-actions .harthwyn-button{width:100%}
}


/* v7.07.06 Mobile Profile + Dashboard UX Polish */
.harthwyn-profile-primary-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 16px}
.harthwyn-profile-edit-form{scroll-margin-top:24px}
.harthwyn-social-stat--link{text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease}
.harthwyn-social-stat--link:focus,.harthwyn-social-stat--link:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(15,23,42,.08)}
.harthwyn-social-stat--link span::after{content:" →";font-weight:700}
@media (max-width:680px){
  .harthwyn-profile .harthwyn-portal-links-panel{padding:14px;margin-top:12px}
  .harthwyn-profile .harthwyn-portal-links-panel h3{font-size:16px;margin-bottom:10px}
  .harthwyn-profile .harthwyn-quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .harthwyn-profile .harthwyn-quick-link{min-height:42px;padding:10px 12px;text-align:center}
  .harthwyn-profile-primary-actions{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.96);padding:10px;border:1px solid var(--fp-color-border,#e2e8f0);border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.06)}
  .harthwyn-profile-primary-actions .harthwyn-button{flex:1 1 150px}
  .harthwyn-dashboard-hero-side{display:grid;grid-template-columns:1fr;gap:12px}
  .harthwyn-social-stat{min-height:72px}
  .harthwyn-actions{gap:12px}
  .harthwyn-actions .harthwyn-button{margin-bottom:2px}
}


/* Harthwyn v7.07.06 — calendar interaction polish */
.harthwyn-events-calendar-header {
    margin-bottom: 18px;
}

.harthwyn-events-calendar-header .harthwyn-actions--inline {
    gap: 12px;
    justify-content: flex-start;
}

.harthwyn-calendar-cell {
    position: relative;
}

.harthwyn-calendar-cell.has-holidays {
    background: linear-gradient(180deg, var(--fp-surface, #fff), var(--fp-surface-soft, #FAF6EE));
}

.harthwyn-calendar-holiday-list {
    display: grid;
    gap: 4px;
    margin: 4px 0 0;
    padding: 0;
    list-style: none;
    font-size: 12px;
    line-height: 1.35;
}

.harthwyn-calendar-holiday-label {
    display: inline-flex;
    padding: 2px 6px;
    border-radius: 999px;
    background: var(--fp-surface-tint, #F4EFE4);
    color: var(--fp-soft-ink, #5A6476);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.harthwyn-calendar-day-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: auto;
    padding-top: 6px;
}

.harthwyn-calendar-day-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 5px 9px;
    border: 1px solid var(--fp-primary, #0055A4);
    border-radius: 999px;
    background: #fff;
    color: var(--fp-primary, #0055A4);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

.harthwyn-calendar-day-action:hover,
.harthwyn-calendar-day-action:focus {
    background: #111827;
    border-color: #111827;
    color: #fff;
}

@media (max-width: 782px) {
    .harthwyn-events-calendar-header .harthwyn-actions--inline {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        margin-top: 4px;
    }

    .harthwyn-events-calendar-header .harthwyn-button--small {
        width: 100%;
        min-height: 44px;
    }

    .harthwyn-calendar-days .harthwyn-calendar-day-name {
        padding: 8px 2px;
        font-size: 11px;
        border-radius: 8px;
    }

    .harthwyn-calendar-cell {
        min-height: 112px;
        gap: 6px;
    }

    .harthwyn-calendar-holiday-list {
        font-size: 11px;
    }

    .harthwyn-calendar-empty {
        font-size: 11px;
    }

    .harthwyn-calendar-day-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .harthwyn-calendar-day-action {
        min-height: 34px;
    }
}


/* Harthwyn v7.07.06 — profile edit save/exit fix */
.harthwyn-profile-edit-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}
.harthwyn-profile-edit-header h3{
    margin:0 0 6px;
}
.harthwyn-profile-edit-actions{
    margin:0;
    flex:0 0 auto;
}
.harthwyn-profile-save-bar{
    display:flex;
    justify-content:flex-start;
    gap:12px;
}
@media (max-width:680px){
    .harthwyn-profile-edit-header{
        display:grid;
        grid-template-columns:1fr;
        padding:16px;
    }
    .harthwyn-profile-edit-actions,
    .harthwyn-profile-save-bar{
        display:grid;
        grid-template-columns:1fr;
        gap:10px;
        width:100%;
    }
    .harthwyn-profile-edit-actions .harthwyn-button,
    .harthwyn-profile-save-bar .harthwyn-button{
        width:100%;
        min-height:48px;
    }
    .harthwyn-profile-save-bar{
        position:sticky;
        bottom:0;
        z-index:8;
        background:rgba(255,255,255,.98);
        border:1px solid var(--fp-color-border,#e2e8f0);
        border-radius:16px;
        box-shadow:0 -8px 24px rgba(15,23,42,.08);
        padding:12px;
        margin:18px 0 8px;
    }
}

.harthwyn-card-byline{display:flex;align-items:center;gap:8px;margin:4px 0 10px;color:var(--fp-color-text-soft,#64748b);font-size:14px}
.harthwyn-author-byline{display:inline-flex;align-items:center;gap:7px}
.harthwyn-author-byline a{font-weight:700;text-decoration:none;color:inherit}
.harthwyn-author-byline a:hover{text-decoration:underline}
.harthwyn-presence{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;font-size:12px;font-weight:800;line-height:1;background:#111;color:#fff;flex:0 0 auto}
.harthwyn-presence--online{background:#16a34a;box-shadow:0 0 0 3px rgba(34,197,94,.2),0 0 14px rgba(34,197,94,.7)}
.harthwyn-presence--idle{background:#f97316;box-shadow:0 0 0 3px rgba(249,115,22,.18)}
.harthwyn-presence--offline{background:#111827}
@media (max-width:640px){.harthwyn-card-byline{font-size:13px}.harthwyn-presence{width:18px;height:18px;font-size:11px}}



/* v7.07.14 Full Profile Editing + UI Polish */
.harthwyn-button,
.harthwyn-button.is-secondary,
.harthwyn-calendar-open-link,
.harthwyn-quick-link {
    border-color: var(--fp-accent-blue, #2563eb);
    color: var(--fp-accent-blue, #2563eb);
}

.harthwyn-button {
    background: var(--fp-accent-blue, #2563eb);
    color: #fff;
}

.harthwyn-button.is-secondary,
.harthwyn-quick-link {
    background: #fff;
    color: var(--fp-accent-blue, #2563eb);
}

.harthwyn-button:hover,
.harthwyn-button:focus,
.harthwyn-button.is-secondary:hover,
.harthwyn-button.is-secondary:focus,
.harthwyn-quick-link:hover,
.harthwyn-quick-link:focus {
    background: #1d4ed8;
    border-color: #1d4ed8;
    color: #fff;
}

.harthwyn-profile-manager {
    display: grid;
    gap: 14px;
    border-left: 5px solid var(--fp-accent-blue, #2563eb);
}

.harthwyn-profile-manager h3 {
    margin-bottom: 6px;
}

.harthwyn-profile-manager p {
    margin: 0;
    color: #475569;
}

.harthwyn-profile-primary-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
}

.harthwyn-profile-edit-shortcuts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.harthwyn-profile-edit-shortcuts a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 8px 12px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-weight: 700;
    text-decoration: none;
}

.harthwyn-profile-edit-form {
    padding-top: 4px;
}

.harthwyn-profile-edit-grid {
    display: grid;
    gap: 18px;
}

.harthwyn-profile-edit-section {
    scroll-margin-top: 24px;
}

.harthwyn-profile-edit-header {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-start;
    position: sticky;
    top: 0;
    z-index: 3;
    border: 1px solid #bfdbfe;
    box-shadow: 0 8px 24px rgba(37,99,235,.10);
}

.harthwyn-profile-save-bar {
    position: sticky;
    bottom: 0;
    z-index: 4;
    padding: 12px;
    border: 1px solid #bfdbfe;
    border-radius: 16px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 -8px 24px rgba(15,23,42,.08);
}

.harthwyn-presence-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-right: 6px;
    border-radius: 999px;
    vertical-align: middle;
}

.harthwyn-presence-dot.is-online { background: #22c55e; box-shadow: 0 0 0 4px rgba(34,197,94,.18); }
.harthwyn-presence-dot.is-idle { background: #f59e0b; }
.harthwyn-presence-dot.is-offline { background: #111827; }

@media (max-width: 680px) {
    .harthwyn-profile-manager {
        margin-bottom: 14px;
        padding: 16px;
    }

    .harthwyn-profile-primary-actions .harthwyn-button {
        width: 100%;
    }

    .harthwyn-profile-edit-shortcuts {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .harthwyn-profile-edit-shortcuts a {
        justify-content: center;
        text-align: center;
    }

    .harthwyn-profile-edit-header {
        display: grid;
        position: static;
    }

    .harthwyn-profile-edit-actions,
    .harthwyn-profile-save-bar {
        display: grid;
        grid-template-columns: 1fr;
    }

    .harthwyn-profile .harthwyn-portal-links-panel {
        margin-top: 20px;
    }
}


/* Harthwyn v7.07.14: clickable guide cards and trust pages */
.harthwyn-support-card--clickable {
    color: inherit;
    display: block;
    text-decoration: none;
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.harthwyn-support-card--clickable:hover,
.harthwyn-support-card--clickable:focus {
    border-color: #3b82f6;
    box-shadow: 0 14px 32px rgba(37, 99, 235, 0.14);
    color: inherit;
    outline: none;
    transform: translateY(-1px);
}

.harthwyn-card-link-label {
    color: #2563eb;
    display: inline-flex;
    font-weight: 700;
    margin-top: 0.75rem;
}

.harthwyn-trust-page {
    display: grid;
    gap: 1rem;
}

.harthwyn-trust-hero h2 {
    margin-bottom: 0.5rem;
}

.harthwyn-trust-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.harthwyn-trust-nav a {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    color: #1d4ed8;
    font-weight: 700;
    padding: 0.55rem 0.85rem;
    text-decoration: none;
}

.harthwyn-trust-nav a:hover,
.harthwyn-trust-nav a:focus {
    background: #dbeafe;
    color: #1e40af;
}

.harthwyn-trust-grid {
    display: grid;
    gap: 1rem;
}

.harthwyn-trust-card ul {
    margin: 0.75rem 0 0;
    padding-left: 1.25rem;
}

.harthwyn-trust-card li {
    margin-bottom: 0.45rem;
}

.harthwyn-trust-footer-note {
    border-left: 4px solid #3b82f6;
}

@media (min-width: 760px) {
    .harthwyn-trust-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* v7.07.14 What’s New + Smart Refresh Experience */
.harthwyn-update-toast{
	position:fixed;
	right:18px;
	bottom:92px;
	z-index:99998;
	display:grid;
	grid-template-columns:auto minmax(0,1fr);
	gap:14px;
	max-width:420px;
	padding:16px;
	border:1px solid rgba(37,99,235,.22);
	border-radius:20px;
	background:#fff;
	box-shadow:0 20px 60px rgba(15,23,42,.18);
	color:#0f172a;
}
.harthwyn-update-toast[hidden]{display:none}
.harthwyn-update-toast-mark{
	width:44px;
	height:44px;
	border-radius:999px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#2563eb;
	color:#fff;
	font-weight:800;
	box-shadow:0 0 0 6px rgba(37,99,235,.12),0 0 24px rgba(37,99,235,.35);
	animation:familyPortalUpdatePulse 1.8s ease-in-out infinite;
}
.harthwyn-update-toast-body strong{display:block;margin:0 0 4px;font-size:16px}
.harthwyn-update-toast-body p{margin:0 0 12px;color:#475569;font-size:14px;line-height:1.45}
.harthwyn-update-toast-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.harthwyn-update-toast .harthwyn-button{padding:9px 12px;border-radius:999px;background:#2563eb;color:#fff}
.harthwyn-update-toast .harthwyn-button.is-secondary{background:#e0ecff;color:#1d4ed8}
.harthwyn-update-later{
	border:0;
	background:transparent;
	color:#64748b;
	cursor:pointer;
	font-weight:700;
	padding:9px 8px;
}
@keyframes familyPortalUpdatePulse{
	0%,100%{transform:scale(1);box-shadow:0 0 0 6px rgba(37,99,235,.12),0 0 24px rgba(37,99,235,.35)}
	50%{transform:scale(1.04);box-shadow:0 0 0 10px rgba(37,99,235,.08),0 0 32px rgba(37,99,235,.48)}
}
@media (max-width:680px){
	.harthwyn-update-toast{
		left:14px;
		right:14px;
		bottom:82px;
		max-width:none;
		grid-template-columns:1fr;
		text-align:left;
	}
	.harthwyn-update-toast-mark{width:38px;height:38px}
	.harthwyn-update-toast-actions{display:grid}
	.harthwyn-update-toast-actions .harthwyn-button,
	.harthwyn-update-later{width:100%;justify-content:center}
}


/* v7.07.14 Landing Page + Logout Flow */
.harthwyn-landing {
    max-width: 980px;
    margin: 0 auto;
    padding: 24px 16px 48px;
}

.harthwyn-landing-card {
    background: #ffffff;
    border: 1px solid #dbeafe;
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
    padding: 24px;
}

.harthwyn-eyebrow {
    color: #2563eb;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    margin: 0 0 4px;
    text-transform: uppercase;
}

.harthwyn-landing-lede {
    color: #334155;
    font-size: 1.05rem;
    line-height: 1.65;
    margin: 18px 0;
}

.harthwyn-landing-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 20px 0 24px;
}

.harthwyn-button.is-link {
    background: transparent;
    border-color: transparent;
    color: #2563eb;
    box-shadow: none;
}

.harthwyn-landing-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 20px;
}

.harthwyn-landing-grid > div {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    padding: 16px;
}

.harthwyn-landing-grid strong {
    color: #0f172a;
    display: block;
    margin-bottom: 6px;
}

.harthwyn-landing-grid p {
    color: #475569;
    margin: 0;
}

.harthwyn-landing-footer {
    border-top: 1px solid #e2e8f0;
    color: #64748b;
    font-size: 0.92rem;
    margin: 24px 0 0;
    padding-top: 16px;
}

@media (max-width: 720px) {
    .harthwyn-landing {
        padding: 14px 10px 32px;
    }

    .harthwyn-landing-card {
        border-radius: 20px;
        padding: 18px;
    }

    .harthwyn-landing-actions {
        flex-direction: column;
    }

    .harthwyn-landing-actions .harthwyn-button {
        justify-content: center;
        width: 100%;
    }

    .harthwyn-landing-grid {
        grid-template-columns: 1fr;
    }
}


.harthwyn-whats-new-cards{max-width:980px;margin:0 auto;padding:24px 16px 48px}
.harthwyn-whats-new-cards__hero{padding:24px;border-radius:24px;background:linear-gradient(135deg,#f5fbff 0%,#ffffff 48%,#f2f7ff 100%);border:1px solid #d8e7f7;box-shadow:0 12px 30px rgba(52,96,160,.08);margin-bottom:24px}
.harthwyn-whats-new-cards__meta{display:inline-flex;align-items:center;gap:8px;font-size:.95rem;font-weight:700;margin-bottom:10px;color:#31527c}
.harthwyn-whats-new-cards__title{margin:0 0 10px;font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.08;color:#18314f}
.harthwyn-whats-new-cards__intro{margin:0;max-width:70ch;line-height:1.7;font-size:1.04rem;color:#425a74;display:grid;gap:10px}
.harthwyn-whats-new-cards__personal-line{font-weight:700;color:#163252}
.harthwyn-whats-new-cards__personal-line--soft{font-weight:500;color:#4d6480}
.harthwyn-whats-new-cards__timeline{display:grid;gap:18px}
.harthwyn-whats-new-cards__day{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border:1px solid #d8e7f7;border-radius:24px;box-shadow:0 10px 24px rgba(52,96,160,.08);overflow:hidden}
.harthwyn-whats-new-cards__day-summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;background:linear-gradient(180deg,#fff 0%,#f2f8ff 100%);transition:background .2s ease,box-shadow .2s ease}
.harthwyn-whats-new-cards__day-summary:hover{background:linear-gradient(180deg,#fff 0%,#eaf4ff 100%);box-shadow:inset 0 0 0 1px #c8ddf4}
.harthwyn-whats-new-cards__day-summary::-webkit-details-marker{display:none}
.harthwyn-whats-new-cards__day-main{min-width:0}
.harthwyn-whats-new-cards__day-date{display:inline-flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;color:#31527c;margin-bottom:10px}
.harthwyn-whats-new-cards__day-heading{margin:0;font-size:1.75rem;line-height:1.16;color:#18314f}
.harthwyn-whats-new-cards__day-help{margin:10px 0 0;color:#4f647d;font-size:.96rem;line-height:1.5}
.harthwyn-whats-new-cards__day-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:0 0 auto}
.harthwyn-whats-new-cards__count{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border-radius:999px;background:#eaf4ff;border:1px solid #cfe0f4;color:#24486f;font-size:.95rem;font-weight:700;white-space:nowrap}
.harthwyn-whats-new-cards__toggle{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:11px 16px;border-radius:999px;background:#2f6fb2;color:#fff;font-size:.95rem;font-weight:700;box-shadow:0 10px 18px rgba(47,111,178,.2)}
.harthwyn-whats-new-cards__toggle-icon{font-size:1rem;line-height:1;transition:transform .2s ease}
.harthwyn-whats-new-cards__day[open] .harthwyn-whats-new-cards__toggle-icon{transform:rotate(180deg)}
.harthwyn-whats-new-cards__day[open] .harthwyn-whats-new-cards__toggle-text::after{content:" • Expanded";font-weight:600;opacity:.9}
.harthwyn-whats-new-cards__items{padding:0 24px 24px;display:grid;gap:16px;background:#f8fbff}
.harthwyn-whats-new-cards__item{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:18px;border-radius:18px;background:#fff;border:1px solid #dce8f5;box-shadow:0 6px 16px rgba(44,89,140,.05)}
.harthwyn-whats-new-cards__item-icon{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border-radius:16px;background:#edf6ff;border:1px solid #d4e5f7;font-size:1.5rem}
.harthwyn-whats-new-cards__item-title{margin:0 0 8px;font-size:1.3rem;line-height:1.2;color:#163252}
.harthwyn-whats-new-cards__item-text{margin:0;color:#425a74;line-height:1.7}
.harthwyn-whats-new-cards__reactions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.harthwyn-whats-new-cards__reaction{appearance:none;border:1px solid #cfe0f4;background:#fff;color:#24486f;border-radius:999px;min-height:44px;padding:10px 16px;font:inherit;font-weight:700;line-height:1;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}
.harthwyn-whats-new-cards__reaction:hover,.harthwyn-whats-new-cards__reaction.is-selected{transform:translateY(-1px);background:#edf6ff;border-color:#9fc2e8;box-shadow:0 8px 18px rgba(60,116,181,.12)}
.harthwyn-whats-new-cards__reaction:focus{outline:2px solid #2f6fb2;outline-offset:2px}
.harthwyn-whats-new-cards__contact{margin-top:24px;padding:24px;border-radius:24px;border:1px solid #d8e7f7;background:linear-gradient(135deg,#fff 0%,#f6faff 100%);box-shadow:0 10px 24px rgba(52,96,160,.07)}
.harthwyn-whats-new-cards__contact-copy h3{margin:6px 0 10px;color:#163252}
.harthwyn-whats-new-cards__contact-kicker{display:inline-flex;padding:6px 10px;border-radius:999px;background:#edf6ff;color:#31527c;font-size:.85rem;font-weight:700}
.harthwyn-whats-new-cards__contact-form{margin-top:18px}
.harthwyn-whats-new-cards__contact-form label{display:grid;gap:6px}
.harthwyn-whats-new-cards__contact-form input,.harthwyn-whats-new-cards__contact-form select,.harthwyn-whats-new-cards__contact-form textarea{border:1px solid #cfe0f4;border-radius:14px;padding:12px 14px;background:#fff}
.harthwyn-whats-new-cards__contact-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.harthwyn-whats-new-cards__policy-links,.harthwyn-policy-page__footer-links,.harthwyn-global-policy-links__nav{display:flex;flex-wrap:wrap;gap:10px}
.harthwyn-whats-new-cards__policy-links{margin-top:20px}
.harthwyn-whats-new-cards__policy-links a,.harthwyn-policy-page__footer-links a,.harthwyn-global-policy-links__nav a{display:inline-flex;align-items:center;min-height:40px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #d8e7f7;color:#24486f;text-decoration:none;font-weight:700}
.harthwyn-whats-new-cards__policy-links a:hover,.harthwyn-policy-page__footer-links a:hover,.harthwyn-global-policy-links__nav a:hover{background:#edf6ff}
.harthwyn-global-policy-links{padding:18px 16px 28px}
.harthwyn-global-policy-links__inner{max-width:980px;margin:0 auto;padding:16px 18px;border:1px solid #d8e7f7;border-radius:20px;background:#f8fbff}
.harthwyn-global-policy-links__label{display:block;font-size:.9rem;font-weight:700;color:#31527c;margin-bottom:10px}
.harthwyn-policy-page__footer-links{margin-top:24px}
@media (max-width:782px){.harthwyn-whats-new-cards{padding:16px 14px 36px}.harthwyn-whats-new-cards__hero,.harthwyn-whats-new-cards__contact{padding:18px;border-radius:18px}.harthwyn-whats-new-cards__day-summary{padding:18px;flex-direction:column;align-items:flex-start}.harthwyn-whats-new-cards__day-heading{font-size:1.4rem}.harthwyn-whats-new-cards__day-side{width:100%;align-items:stretch}.harthwyn-whats-new-cards__toggle,.harthwyn-whats-new-cards__count{justify-content:center}.harthwyn-whats-new-cards__items{padding:0 18px 18px}.harthwyn-whats-new-cards__item{grid-template-columns:1fr}.harthwyn-global-policy-links{padding:16px 14px 24px}}


/* v7.07.16 Landing + Auth Experience Upgrade */
.harthwyn-welcome{max-width:1100px;margin:0 auto;padding:24px 16px 48px}
.harthwyn-welcome__hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);gap:20px;padding:28px;border-radius:28px;background:linear-gradient(135deg,#f7fbff 0%,#eef6ff 48%,#ffffff 100%);border:1px solid #dbe8f5;box-shadow:0 18px 40px rgba(39,88,144,.08);margin-bottom:24px}
.harthwyn-welcome__eyebrow{margin:0 0 10px;color:#45678c;font-size:.95rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}
.harthwyn-welcome__title{margin:0 0 12px;font-size:clamp(2.15rem,4vw,3.5rem);line-height:1.02;color:#163252}
.harthwyn-welcome__subtitle,.harthwyn-welcome__support{margin:0 0 12px;max-width:62ch;color:#425a74;line-height:1.75;font-size:1.03rem}
.harthwyn-welcome__greeting{display:inline-flex;flex-wrap:wrap;gap:8px 10px;align-items:center;padding:10px 14px;margin:0 0 16px;border-radius:999px;background:#fff;border:1px solid #d7e5f4;color:#21466e;font-size:.98rem}
.harthwyn-welcome__hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.harthwyn-button--primary,.harthwyn-button--secondary,.harthwyn-button--ghost{min-height:48px;padding:12px 18px;border-radius:999px;font-weight:700}
.harthwyn-button--primary{background:#2f6fb2;color:#fff}
.harthwyn-button--primary:hover{background:#255e9b}
.harthwyn-button--secondary{background:#edf6ff;color:#24486f;border:1px solid #cfe0f4}
.harthwyn-button--secondary:hover{background:#e2f0ff}
.harthwyn-button--ghost{background:#fff;color:#24486f;border:1px solid #d8e7f7}
.harthwyn-button--ghost:hover{background:#f8fbff}
.harthwyn-welcome__hero-badge{display:grid;align-content:start;gap:12px;padding:22px;border-radius:24px;background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);border:1px solid #dce9f6}
.harthwyn-welcome__badge-mark{width:64px;height:64px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px;background:#2f6fb2;color:#fff;font-size:1.75rem;font-weight:800;box-shadow:0 14px 24px rgba(47,111,178,.18)}
.harthwyn-welcome__badge-title{margin:0;font-size:1.25rem;font-weight:800;color:#17304f}
.harthwyn-welcome__badge-text{margin:0;color:#4a627d;line-height:1.7}
.harthwyn-welcome__features,.harthwyn-welcome__trust,.harthwyn-auth-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.harthwyn-welcome__features,.harthwyn-auth-grid{margin-bottom:24px}
.harthwyn-welcome__feature-card,.harthwyn-auth-card,.harthwyn-welcome__trust-card{padding:22px;border-radius:24px;background:#fff;border:1px solid #dce8f5;box-shadow:0 10px 24px rgba(39,88,144,.05)}
.harthwyn-welcome__feature-icon,.harthwyn-auth-card__icon{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border-radius:16px;background:#edf6ff;border:1px solid #d4e5f7;font-size:1.45rem;margin-bottom:14px}
.harthwyn-welcome__feature-card h2,.harthwyn-auth-card h2,.harthwyn-welcome__trust-card h2{margin:0 0 8px;font-size:1.35rem;line-height:1.18;color:#163252}
.harthwyn-welcome__feature-card p,.harthwyn-auth-card p,.harthwyn-welcome__trust-card p{margin:0;color:#4b6078;line-height:1.7}
.harthwyn-auth-card{display:grid;gap:18px}
.harthwyn-auth-card.is-active{box-shadow:0 16px 34px rgba(47,111,178,.11);border-color:#bfd7ef}
.harthwyn-auth-card__header{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.harthwyn-auth-form{display:grid;gap:14px}
.harthwyn-auth-checkbox{display:flex;gap:10px;align-items:flex-start;color:#4b6078;font-size:.96rem}
.harthwyn-auth-form__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.harthwyn-auth-link{color:#2f6fb2;font-weight:700;text-decoration:none}
.harthwyn-auth-link:hover{text-decoration:underline}
.harthwyn-auth-notice{margin:0 0 18px;padding:14px 16px;border-radius:16px;border:1px solid #dce8f5}
.harthwyn-auth-notice p{margin:0;line-height:1.6}
.harthwyn-auth-notice--success{background:#f3fbf7;border-color:#cfe9da;color:#23583d}
.harthwyn-auth-notice--error{background:#fff6f6;border-color:#f1d6d6;color:#7a2626}
.harthwyn-legal-links{display:flex;flex-wrap:wrap;gap:10px 14px;justify-content:center;margin-top:24px;padding-top:18px;border-top:1px solid #dce8f5}
.harthwyn-legal-links a{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid #dce8f5;color:#24486f;text-decoration:none;font-weight:700}
.harthwyn-legal-links a:hover{background:#edf6ff}
@media (max-width:900px){.harthwyn-welcome__hero,.harthwyn-auth-grid,.harthwyn-welcome__features,.harthwyn-welcome__trust{grid-template-columns:1fr}}
@media (max-width:782px){.harthwyn-welcome{padding:16px 14px 34px}.harthwyn-welcome__hero,.harthwyn-welcome__feature-card,.harthwyn-auth-card,.harthwyn-welcome__trust-card{padding:18px;border-radius:20px}.harthwyn-welcome__hero-actions,.harthwyn-auth-form__actions{display:grid;grid-template-columns:1fr}.harthwyn-button--primary,.harthwyn-button--secondary,.harthwyn-button--ghost{width:100%}}


/* v7.07.17 Member Experience + Trust Navigation Upgrade */
.harthwyn-button{background:#2f6fb2;color:#fff}
.harthwyn-button:hover{background:#255e9b}
.harthwyn-button.is-secondary{background:#fff;color:#24486f;border:1px solid #cfe0f4}
.harthwyn-button.is-secondary:hover{background:#edf6ff}
.harthwyn-help-launcher-toggle,.harthwyn-help-launcher-links a:first-child{background:#f5b942;color:#2f2200}
.harthwyn-help-launcher-links a:first-child{display:inline-flex;align-items:center;justify-content:center;border-radius:14px;padding:10px 14px;text-decoration:none;font-weight:700}

.harthwyn-managed-page .entry-title,
.harthwyn-managed-page .page-title,
.harthwyn-managed-page .site-main > header,
.harthwyn-managed-page .wp-block-post-title,
.harthwyn-managed-page .elementor-page-title,
.harthwyn-managed-page .ast-article-single .entry-header,
.harthwyn-managed-page .entry-header .entry-title {
    display:none !important;
}

.harthwyn-login-prompt{max-width:640px;margin:18px auto;padding:22px;border-radius:20px;background:linear-gradient(135deg,#f7fbff 0%,#ffffff 100%);border:1px solid #d8e7f7;box-shadow:0 12px 28px rgba(52,96,160,.08)}
.harthwyn-login-prompt__message{margin:0 0 14px;color:#24486f;line-height:1.7;font-size:1rem}
.harthwyn-login-prompt__actions{display:flex;flex-wrap:wrap;gap:12px}

.harthwyn-welcome__hero--compact{grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr)}
.harthwyn-welcome__hero-badge--soft{justify-content:center}
.harthwyn-welcome__hero-badge--soft .harthwyn-welcome__badge-title{margin:0;font-size:1.25rem;color:#163252;font-weight:800}
.harthwyn-welcome__chooser .harthwyn-button.is-active{box-shadow:0 10px 22px rgba(47,111,178,.18)}
.harthwyn-auth-hub{max-width:760px;margin:0 auto 28px}
.harthwyn-auth-card{display:none;padding:22px;border-radius:24px;background:#fff;border:1px solid #d8e7f7;box-shadow:0 14px 32px rgba(52,96,160,.08)}
.harthwyn-auth-card.is-active{display:block}
.harthwyn-auth-form--compact{max-width:520px}
.harthwyn-auth-card--info{display:block}
.harthwyn-auth-card__header h2{margin:0 0 6px;color:#163252}
.harthwyn-auth-card__header p{margin:0;color:#45678c}
.harthwyn-auth-form__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.harthwyn-auth-link{color:#2f6fb2;font-weight:700;text-decoration:none}
.harthwyn-auth-link:hover{text-decoration:underline}

.harthwyn-member-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:999;padding:0 10px calc(env(safe-area-inset-bottom,0px) + 10px)}
.harthwyn-member-bottom-nav__inner{max-width:760px;margin:0 auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px;border-radius:22px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);box-shadow:0 12px 32px rgba(23,49,79,.15);border:1px solid #d8e7f7}
.harthwyn-member-bottom-nav__item{display:grid;justify-items:center;gap:4px;padding:10px 8px;border-radius:16px;text-decoration:none;color:#45678c;font-weight:700;font-size:.82rem}
.harthwyn-member-bottom-nav__item.is-active,.harthwyn-member-bottom-nav__item:hover{background:#edf6ff;color:#163252}
.harthwyn-member-bottom-nav__icon{font-size:1.15rem}
body.harthwyn-member-view{padding-bottom:110px}

@media (min-width: 981px) {
  .harthwyn-member-bottom-nav{display:none}
  body.harthwyn-member-view{padding-bottom:0}
}

@media (max-width: 782px) {
  .harthwyn-welcome__hero--compact{grid-template-columns:1fr}
  .harthwyn-welcome__hero-actions{display:grid}
  .harthwyn-welcome__hero-actions .harthwyn-button{width:100%}
  .harthwyn-auth-hub{margin-bottom:22px}
  .harthwyn-auth-card{padding:18px;border-radius:18px}
  .harthwyn-login-prompt__actions{display:grid}
}

/* v7.07.18 warmth, access, search, events, memories */
.harthwyn-welcome__hero{align-items:start}
.harthwyn-welcome__hero-side{display:grid;gap:14px;align-content:start}
.harthwyn-welcome__weather{margin:0 0 8px;color:#587394;font-size:.92rem;font-weight:700}
.harthwyn-auth-hub--side{max-width:none;margin:0}
.harthwyn-auth-hub--side .harthwyn-auth-card{display:none}
.harthwyn-auth-hub--side .harthwyn-auth-card.is-active{display:block}
.harthwyn-auth-hub--side .harthwyn-auth-form--compact{max-width:100%}
.harthwyn-welcome__chooser .harthwyn-button.is-active{box-shadow:0 0 0 3px rgba(47,111,178,.18)}
.harthwyn-auth-card{max-width:100%}
.harthwyn-welcome__features{display:none}
.harthwyn-login-prompt{padding:20px;border-radius:20px;background:#fff;border:1px solid #dbe8f5;box-shadow:0 12px 30px rgba(39,88,144,.08)}
.harthwyn-login-prompt__actions{display:flex;flex-wrap:wrap;gap:12px}
.harthwyn-search-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.harthwyn-search-jump a,.harthwyn-legal-links a{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;border:1px solid #cfe0f4;background:#fff;text-decoration:none;font-weight:700;color:#24486f}
.harthwyn-search-jump a:hover,.harthwyn-legal-links a:hover{background:#edf6ff}
#members,#events,#announcements,#tributes,#memories,#alert-preferences,#privacy-settings,#sharing-preferences,#visibility-controls{scroll-margin-top:100px}
.harthwyn-search-results h2 a{text-decoration:none;color:inherit}
.harthwyn-search-results h2 a:hover{text-decoration:underline}
.harthwyn-calendar-grid-main a.harthwyn-calendar-cell{color:inherit;text-decoration:none;transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease}
.harthwyn-calendar-grid-main a.harthwyn-calendar-cell:hover{transform:translateY(-1px);border-color:#9fc2e8;box-shadow:0 10px 22px rgba(39,88,144,.08)}
.harthwyn-calendar-empty{color:#5a7391;font-weight:600}
.harthwyn-member-picker{display:grid;gap:10px;padding:14px;border:1px solid #d8e7f7;border-radius:18px;background:#fbfdff}
.harthwyn-member-picker--soft{background:#fffaf6}
.harthwyn-member-picker__search{width:100%;min-height:46px;border:1px solid #cfe0f4;border-radius:14px;padding:10px 14px}
.harthwyn-member-picker__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;max-height:240px;overflow:auto;padding-right:4px}
.harthwyn-member-picker__item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e3edf8;border-radius:14px;background:#fff}
.harthwyn-member-picker__item input{width:18px;height:18px}
.harthwyn-memory-intro{margin-bottom:20px}
.harthwyn-memory-intro h2{margin:0 0 10px;color:#163252}
.harthwyn-memory-intro p{margin:0;color:#425a74;line-height:1.8}
.harthwyn-media-uploader-card h4{font-size:1.2rem}
.harthwyn-media-uploader-card .harthwyn-actions{align-items:center;flex-wrap:wrap}
.harthwyn-media-uploader-card .harthwyn-inline-note{margin:0;color:#5a7391}
.harthwyn-button.is-secondary,.harthwyn-button--secondary{background:#fff;color:#24486f;border:1px solid #cfe0f4}
.harthwyn-button.is-secondary:hover,.harthwyn-button--secondary:hover{background:#edf6ff}
.harthwyn-button:hover{filter:none}
.harthwyn-family-moments .harthwyn-moments-feed,
.harthwyn-family-moments .harthwyn-moments-grid,
.harthwyn-family-moments .harthwyn-feed-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;max-width:760px;margin:0 auto;gap:16px}
.harthwyn-family-moments .harthwyn-moment-card,.harthwyn-family-moments article{width:100%;max-width:none}
.harthwyn-family-moments [class*="moments-layout"]{grid-template-columns:minmax(0,1fr)!important}
.harthwyn-global-policy-links__label{font-weight:800}
@media (min-width:981px){
  .harthwyn-welcome__hero{grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr)}
}
@media (max-width:980px){
  .harthwyn-welcome__hero{grid-template-columns:1fr}
  .harthwyn-welcome__hero-side{order:2}
}


/* v7.07.19 polish */
.harthwyn-brand-banner,
.harthwyn-page-header-title-wrap{display:flex;justify-content:center;text-align:center}
.harthwyn-brand-banner-link{display:inline-flex;justify-content:center}
.harthwyn-page-header-title-inner{justify-content:center;gap:12px}
.harthwyn-page-header-mark{width:22px;height:22px;object-fit:contain}
.harthwyn-welcome__eyebrow,
.harthwyn-welcome__title,
.harthwyn-welcome__subtitle,
.harthwyn-welcome__greeting,
.harthwyn-welcome__support{text-align:center}
.harthwyn-welcome__eyebrow a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.harthwyn-welcome__greeting{display:flex;flex-direction:column;align-items:center;gap:6px}
.harthwyn-welcome__hero-actions{justify-content:center}
.harthwyn-welcome__hero-side{display:flex;flex-direction:column;gap:16px}
.harthwyn-welcome__weather{text-align:center}
.harthwyn-welcome__badge-title{text-align:center}
.harthwyn-welcome__badge-text{text-align:center}
.harthwyn-auth-hub--side{max-width:460px;margin-inline:auto}
#harthwyn-login-card,#harthwyn-invite-card,#harthwyn-password-card{scroll-margin-top:110px}
.harthwyn-login-prompt__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.harthwyn-login-prompt__actions .harthwyn-button{text-decoration:none}
.harthwyn-member-picker{border:1px solid #bdd3ef;border-radius:18px;padding:14px;background:#fff}
.harthwyn-member-picker__search{width:100%;border:1px solid #c9d6ea;border-radius:14px;padding:12px 14px;margin-bottom:12px}
.harthwyn-member-picker__list{max-height:220px;overflow:auto;display:grid;gap:10px}
.harthwyn-member-picker__item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e1e8f4;border-radius:14px;background:#f8fbff}
.harthwyn-member-picker__item input{width:18px;height:18px}
.harthwyn-member-picker__empty{margin:0;padding:16px;color:#5b6c86}
.harthwyn-search-jump-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}
.harthwyn-search-jump-nav a{display:inline-flex;padding:10px 14px;border-radius:999px;border:1px solid #cfe0f4;background:#fff;text-decoration:none}
.harthwyn-search-section{scroll-margin-top:110px}
.harthwyn-member-bottom-nav{background:rgba(255,255,255,.98);backdrop-filter:blur(12px);box-shadow:0 -8px 24px rgba(12,29,58,.12);border-top:1px solid #cfe0f4}
.harthwyn-member-bottom-nav__inner{max-width:760px;margin:0 auto}
.harthwyn-member-bottom-nav__item{color:#27476e;font-weight:700;opacity:.8}
.harthwyn-member-bottom-nav__item.is-active{opacity:1;color:#0f3f7e}
.harthwyn-member-bottom-nav__icon{font-size:1.3rem}
.harthwyn-help-launcher{bottom:88px}
.harthwyn-help-launcher-toggle{box-shadow:0 10px 24px rgba(176,128,20,.28);border:1px solid rgba(169,124,20,.3)}
.harthwyn-help-launcher-panel{bottom:calc(100% + 12px)}
.harthwyn-button,.harthwyn-button:visited{text-decoration:none}
.harthwyn-button--primary,.harthwyn-button:not(.is-secondary):not(.harthwyn-button--ghost){background:#2f6fb2!important;color:#fff!important}
.harthwyn-button--primary:hover,.harthwyn-button:not(.is-secondary):not(.harthwyn-button--ghost):hover{background:#235d99!important}
.harthwyn-button--secondary,.harthwyn-button.is-secondary{background:#fff!important;color:#25517b!important;border:1px solid #b7d0ec}
.harthwyn-button--secondary:hover,.harthwyn-button.is-secondary:hover{background:#edf6ff!important;color:#173e67!important}
.harthwyn-button--ghost{background:#f4f8fd!important;color:#25517b!important;border:1px solid #cfe0f4}
.harthwyn-button--ghost:hover{background:#e8f2fd!important}
.harthwyn-legal-links{justify-content:center}
.harthwyn-panel .harthwyn-button[disabled],.harthwyn-panel .harthwyn-button.is-disabled{opacity:.55}
.harthwyn-moments-layout,.harthwyn-moment-feed .harthwyn-card-grid,.harthwyn-moment-feed .harthwyn-gallery-grid{grid-template-columns:1fr!important}
.harthwyn-moment-feed .harthwyn-card{max-width:860px;margin-inline:auto}
.harthwyn-global-policy-links{margin-bottom:18px}
.harthwyn-global-policy-links__inner{max-width:1040px;margin:0 auto 18px}
.harthwyn-global-policy-links__label{display:block;font-weight:800;margin-bottom:10px}
@media (max-width: 900px){
  .harthwyn-brand-banner,.harthwyn-page-header-title-wrap{text-align:center}
  .harthwyn-page-header-title-inner{flex-direction:row;justify-content:center}
}
@media (max-width: 782px){
  .harthwyn-welcome__hero-copy,
  .harthwyn-welcome__hero-side{width:100%}
  .harthwyn-auth-hub--side{max-width:none}
  .harthwyn-help-launcher{bottom:84px}
  .harthwyn-member-bottom-nav__label{font-size:12px}
}


/* v7.07.20 warmth, navigation, and contrast refinement */
.harthwyn-welcome__hero-copy,
.harthwyn-welcome__hero-copy .harthwyn-welcome__eyebrow,
.harthwyn-welcome__hero-copy .harthwyn-welcome__title,
.harthwyn-welcome__hero-copy .harthwyn-welcome__subtitle,
.harthwyn-welcome__hero-copy .harthwyn-welcome__support{ text-align:center; margin-left:auto; margin-right:auto; }

.harthwyn-welcome__eyebrow a{ color:inherit; text-decoration:none; }
.harthwyn-welcome__eyebrow a:hover{ text-decoration:underline; }

.harthwyn-welcome__greeting{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  text-align:center;
  width:fit-content;
  min-width:min(100%, 320px);
}

.harthwyn-welcome__greeting strong,
.harthwyn-welcome__greeting span{ display:block; width:100%; text-align:center; }

.harthwyn-welcome__hero-actions{ justify-content:center; }
.harthwyn-welcome__hero-actions .harthwyn-button{ justify-content:center; text-align:center; }

.harthwyn-button--secondary,
.harthwyn-button--ghost,
.harthwyn-search-jump a,
.harthwyn-legal-links a,
.harthwyn-whats-new-cards__reaction,
.harthwyn-global-policy-links__nav a,
.harthwyn-policy-page__footer-links a{
  color:#111827;
}
.harthwyn-button--secondary:hover,
.harthwyn-button--secondary:focus,
.harthwyn-button--secondary.is-active,
.harthwyn-button--ghost:hover,
.harthwyn-button--ghost:focus,
.harthwyn-button--ghost.is-active,
.harthwyn-search-jump a:hover,
.harthwyn-search-jump a:focus,
.harthwyn-legal-links a:hover,
.harthwyn-legal-links a:focus,
.harthwyn-global-policy-links__nav a:hover,
.harthwyn-global-policy-links__nav a:focus,
.harthwyn-policy-page__footer-links a:hover,
.harthwyn-policy-page__footer-links a:focus,
.harthwyn-whats-new-cards__reaction:hover,
.harthwyn-whats-new-cards__reaction:focus{
  color:#111827;
}

.harthwyn-help-launcher{
  right:18px;
  bottom:auto;
  top:50%;
  transform:translateY(-50%);
}
.harthwyn-help-launcher-panel{ max-height:min(70vh, 520px); overflow:auto; }

.harthwyn-member-bottom-nav{
  bottom:12px;
  padding-bottom:calc(env(safe-area-inset-bottom,0px) + 18px);
}

.harthwyn-scroll-top{
  position:fixed;
  left:16px;
  bottom:118px;
  z-index:998;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:46px;
  padding:10px 14px;
  border:1px solid #cfe0f4;
  border-radius:999px;
  background:#ffffff;
  color:#111827;
  box-shadow:0 12px 26px rgba(23,49,79,.16);
  font:inherit;
  font-weight:700;
  cursor:pointer;
}
.harthwyn-scroll-top:hover,
.harthwyn-scroll-top:focus{
  background:#edf6ff;
  color:#111827;
}

.harthwyn-global-policy-links{
  order:2;
}

.harthwyn-page-header--centered,
.harthwyn-search-results > header,
.harthwyn-guide-page__hero,
.harthwyn-dashboard-home__hero{
  text-align:center;
}

@media (max-width: 782px) {
  .harthwyn-welcome{ padding:20px 14px 40px; }
  .harthwyn-welcome__hero-actions{
    display:grid;
    justify-content:stretch;
    max-width:420px;
    margin-left:auto;
    margin-right:auto;
  }
  .harthwyn-welcome__hero-actions .harthwyn-button{
    width:min(100%, 320px);
    margin-left:auto;
    margin-right:auto;
  }
  .harthwyn-help-launcher{
    top:auto;
    bottom:140px;
    right:12px;
    transform:none;
  }
  .harthwyn-help-launcher-toggle{
    padding:10px 12px;
  }
  .harthwyn-member-bottom-nav{
    bottom:8px;
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + 14px);
  }
  .harthwyn-scroll-top{
    left:12px;
    bottom:132px;
  }
}


/* v7.07.21 BlueGold illustration system */
.harthwyn-welcome__hero-copy{display:grid;justify-items:center;text-align:center}
.harthwyn-welcome__subtitle,.harthwyn-welcome__support{max-width:58ch;text-align:center}
.harthwyn-welcome__greeting{justify-self:center;display:grid;justify-items:center;text-align:center;gap:4px;padding:14px 18px}
.harthwyn-bluegold{margin:8px auto 4px;max-width:620px;width:100%;display:grid;justify-items:center;gap:10px}
.harthwyn-bluegold__image{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 30px rgba(39,88,144,.10))}
.harthwyn-bluegold__caption{margin:0;color:#587394;font-size:.95rem;font-weight:600;text-align:center}
.harthwyn-welcome__hero-actions{justify-content:center}
.harthwyn-welcome__hero-copy .harthwyn-button{min-width:160px}
@media (max-width: 782px) {
  .harthwyn-bluegold{max-width:440px}
  .harthwyn-bluegold__caption{font-size:.9rem}
}


/* v7.07.23 menu, follow, trust, and mobile navigation polish */
.harthwyn-page-header-title-inner{
  display:flex;
  align-items:center;
  justify-content:center;
}
.harthwyn-page-header-mark{
  display:none;
}
.harthwyn-profile-hero-actions{
  margin-top:14px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.harthwyn-profile-follow-form{
  margin:0;
}
.harthwyn-trust-nav a.is-active,
.harthwyn-global-policy-links__nav a[aria-current="page"]{
  background:#e7f0ff;
  color:#143761;
  border-color:#9ec2f4;
  box-shadow:inset 0 0 0 1px rgba(20,55,97,.06);
}
.harthwyn-help-launcher{
  right:12px;
  bottom:104px;
  gap:8px;
}
.harthwyn-help-launcher-toggle{
  padding:8px 12px;
  min-height:48px;
  background:#f0bc42;
  color:#201a12;
  box-shadow:0 12px 28px rgba(143,104,18,.18);
}
.harthwyn-help-launcher-toggle img{
  width:22px;
  height:22px;
  background:#fff;
  padding:4px;
}
.harthwyn-help-launcher-panel{
  margin-bottom:4px;
}
.harthwyn-member-menu{
  position:fixed;
  top:14px;
  left:14px;
  z-index:10000;
}
.harthwyn-member-menu__toggle{
  width:48px;
  height:48px;
  border:1px solid #d8e7f7;
  border-radius:16px;
  background:rgba(255,255,255,.96);
  color:#163252;
  box-shadow:0 12px 30px rgba(23,49,79,.12);
  font-size:24px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.harthwyn-member-menu__backdrop{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.28);
}
.harthwyn-member-menu__panel{
  position:fixed;
  top:14px;
  left:14px;
  width:min(340px, calc(100vw - 28px));
  max-height:min(78vh, 640px);
  overflow:auto;
  border:1px solid #d8e7f7;
  border-radius:24px;
  background:#fff;
  box-shadow:0 22px 60px rgba(15,23,42,.22);
  padding:16px;
}
.harthwyn-member-menu__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
  color:#163252;
}
.harthwyn-member-menu__close{
  border:0;
  background:#edf6ff;
  color:#163252;
  border-radius:999px;
  width:36px;
  height:36px;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.harthwyn-member-menu__section{
  display:grid;
  gap:8px;
}
.harthwyn-member-menu__section + .harthwyn-member-menu__section{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid #e5edf7;
}
.harthwyn-member-menu__item,
.harthwyn-member-menu__link{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:12px 14px;
  border-radius:16px;
  text-decoration:none;
  color:#24486f;
  background:#f8fbff;
  font-weight:700;
}
.harthwyn-member-menu__item.is-active{
  background:#edf6ff;
  color:#163252;
}
.harthwyn-member-menu__icon{
  width:28px;
  text-align:center;
  font-size:1.15rem;
}
.harthwyn-scroll-top{
  display:none !important;
}
@media (min-width: 981px){
  .harthwyn-member-menu{
    display:none;
  }
}
@media (max-width: 782px){
  .harthwyn-help-launcher{
    right:12px;
    bottom:106px;
  }
  .harthwyn-help-launcher-toggle{
    padding:8px 12px;
    min-height:46px;
  }
}


/* v7.07.25 family rhythm + moments composer */
.harthwyn-moment-upload-actions--stacked{
  display:grid;
  gap:12px;
}
.harthwyn-moment-upload-actions__library,
.harthwyn-moment-upload-actions__text{
  width:100%;
}
.harthwyn-moment-upload-actions__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.harthwyn-moment-upload-actions__grid .harthwyn-button{
  width:100%;
}
.harthwyn-text-moment-badge{
  margin:18px 18px 0;
  padding:10px 14px;
  border-radius:14px;
  background:#edf6ff;
  color:#163252;
  font-weight:700;
  text-align:center;
}
.harthwyn-moment-card--text .harthwyn-card-body{
  padding-top:18px;
}
@media (max-width: 782px){
  .harthwyn-moment-upload-actions__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* v7.07.26a desktop helper + trust center stabilization */
.harthwyn-help-launcher{
  position:fixed !important;
  right:18px !important;
  left:auto !important;
  bottom:18px !important;
  top:auto !important;
  width:auto !important;
  max-width:min(360px, calc(100vw - 36px)) !important;
  align-items:flex-end !important;
}
.harthwyn-help-launcher-toggle{
  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;
  white-space:nowrap;
  background:var(--fp-accent, #d3a72c) !important;
  color:#1F2A44 !important;
  border-color:rgba(31,42,68,.10) !important;
  box-shadow:0 14px 34px rgba(31,42,68,.14) !important;
}
.harthwyn-help-launcher-toggle span:last-child{
  overflow:hidden;
  text-overflow:ellipsis;
}
.harthwyn-help-launcher-panel{
  margin-bottom:4px;
  max-width:min(360px, calc(100vw - 36px));
}
.harthwyn-global-policy-links{
  padding:18px 16px 26px;
}
.harthwyn-global-policy-links__inner{
  max-width:1080px;
}
.harthwyn-global-policy-links__label{
  display:block;
  font-size:1rem;
  font-weight:800;
  color:#31527c;
  margin-bottom:12px;
}
@media (min-width:783px){
  .harthwyn-global-policy-links{
    margin-top:8px;
    margin-bottom:10px;
  }
}
@media (max-width:782px){
  .harthwyn-help-launcher{
    right:12px !important;
    bottom:12px !important;
    max-width:calc(100vw - 24px) !important;
  }
  .harthwyn-help-launcher-toggle{
    width:auto !important;
    max-width:calc(100vw - 24px) !important;
  }
}


/* v7.07.27 homepage, guide, trust, and auth polish */
.harthwyn-welcome__eyebrow a{
  color:#b68a2b;
  font-weight:800;
  text-decoration:none;
}
.harthwyn-welcome__eyebrow a:hover,
.harthwyn-welcome__eyebrow a:focus{
  color:#8a6a20;
  text-decoration:underline;
}
.harthwyn-welcome__greeting{
  display:none !important;
}
.harthwyn-family-avatar-hero{
  margin-top:10px;
  max-width:760px;
}
.harthwyn-family-avatar-hero .harthwyn-bluegold__image{
  border-radius:28px;
  border:1px solid #d8e7f7;
  background:linear-gradient(180deg,#fffdf8 0%,#ffffff 100%);
  box-shadow:0 22px 40px rgba(31,42,68,.10);
}
.harthwyn-bluegold__caption{
  display:none !important;
}
.harthwyn-welcome__hero-context-title{
  margin:0;
  font-size:1.1rem;
  font-weight:800;
  color:#17304f;
}
.harthwyn-welcome__hero-context-meta{
  margin:0;
  color:#45678c;
  line-height:1.5;
}
.harthwyn-welcome__hero-badge{
  gap:8px;
}
.harthwyn-welcome__chooser{
  gap:16px;
}
.harthwyn-welcome__chooser .harthwyn-button--primary:hover,
.harthwyn-welcome__chooser .harthwyn-button--secondary:hover{
  background:#f7f1de;
  border-color:#d7b15d;
  color:#17304f;
  box-shadow:0 12px 22px rgba(182,138,43,.18);
}
.harthwyn-welcome__chooser .harthwyn-button--primary.is-active,
.harthwyn-welcome__chooser .harthwyn-button--secondary.is-active,
.harthwyn-welcome__chooser .harthwyn-button--ghost.is-active{
  box-shadow:0 12px 22px rgba(182,138,43,.18);
}
.harthwyn-auth-card__header--login{
  align-items:center;
}
.harthwyn-auth-card__header--login .harthwyn-auth-card__icon{
  margin-bottom:0;
}
.harthwyn-auth-card__title-wrap{
  min-width:0;
}
.harthwyn-support-guide,
.harthwyn-support-guide .harthwyn-support-card-grid,
.harthwyn-support-guide .harthwyn-support-card-grid--two,
.harthwyn-support-guide .harthwyn-support-card-grid--three,
.harthwyn-support-guide .harthwyn-support-card-grid--leadership{
  grid-template-columns:1fr !important;
}
.harthwyn-support-guide .harthwyn-support-guide-hero{
  display:grid;
  gap:18px;
}
.harthwyn-global-policy-links--prefooter{
  clear:both;
  display:block;
  width:100%;
  margin:32px 0 0;
  padding:18px 16px 8px;
}
.harthwyn-global-policy-links--prefooter .harthwyn-global-policy-links__inner{
  max-width:1200px;
}
.harthwyn-trust-page .harthwyn-trust-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (max-width: 960px){
  .harthwyn-auth-card__header--login{
    grid-template-columns:1fr;
    justify-items:start;
  }
  .harthwyn-auth-card__header--login .harthwyn-auth-card__icon{
    margin-bottom:8px;
  }
}
@media (max-width: 782px){
  .harthwyn-trust-page .harthwyn-trust-grid{
    grid-template-columns:1fr;
  }
}


/* v7.07.35 logged-out homepage and menu correction */
.harthwyn-welcome__hero--compact{align-items:start}
.harthwyn-welcome__hero-copy .harthwyn-welcome__hero-actions{display:none}
.harthwyn-welcome__hero-side{display:grid;gap:16px;align-content:start}
.harthwyn-welcome__hero-badge--soft{gap:8px;padding:18px 20px}
.harthwyn-welcome__hero-context-time{margin:0;font-size:1.6rem;font-weight:800;color:#17304f;line-height:1.1}
.harthwyn-welcome__hero-context-note{margin:0;color:#54708e;font-weight:600}
.harthwyn-auth-hub--side{margin:0}
.harthwyn-auth-form__actions--stack{display:grid;grid-template-columns:1fr;gap:10px}
.harthwyn-welcome__support-grid{grid-template-columns:minmax(0,680px);justify-content:center}
.harthwyn-welcome__feature-card--support{text-align:center}
.harthwyn-welcome__feature-actions{display:flex;justify-content:center;margin-top:14px}
.harthwyn-welcome__trust-wrap{display:grid;gap:10px;justify-items:center;margin-top:10px}
.harthwyn-welcome__trust-title{margin:0;font-size:1.2rem;color:#163252}
.harthwyn-legal-links{margin-top:0;padding-top:0;border-top:none}
@media (min-width:981px){
  .harthwyn-member-menu__toggle{top:18px;right:18px;position:fixed}
  .harthwyn-member-menu__panel--overlay{position:fixed;inset:24px;max-width:none;width:auto;border-radius:28px;padding:24px 24px 20px;background:linear-gradient(180deg,#fff,#f8fbff);overflow:auto;box-shadow:0 30px 70px rgba(16,24,40,.22)}
  .harthwyn-member-menu__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .harthwyn-member-menu__group{background:#fff;border:1px solid #dce8f5;border-radius:20px;padding:16px}
  .harthwyn-member-menu__group-title{margin:0 0 10px;color:#17304f;font-size:1rem}
  .harthwyn-member-menu__footer{margin-top:16px;display:flex;justify-content:flex-end}
}
@media (max-width:980px){
  .harthwyn-member-menu__grid{display:grid;gap:14px}
  .harthwyn-member-menu__group{padding-bottom:4px}
  .harthwyn-member-menu__group-title{margin:0 0 8px;font-size:.98rem;color:#17304f}
}
.harthwyn-member-menu__item{padding:12px 14px;border-radius:16px}
.harthwyn-member-menu__item span:last-child{font-weight:700}
.harthwyn-member-menu__link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:999px;background:#fff;border:1px solid #dce8f5;color:#24486f;text-decoration:none;font-weight:700}
.harthwyn-member-menu__link:hover{background:#edf6ff}
@media (max-width:782px){
  .harthwyn-welcome__hero-badge--soft{padding:16px}
  .harthwyn-welcome__support-grid{grid-template-columns:1fr}
}


/* v7.07.36 landing page stacking fix */
.harthwyn-welcome__hero--compact{
    grid-template-columns:minmax(0,1.45fr) minmax(260px,.62fr);
    align-items:start;
}
.harthwyn-welcome__hero-copy{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
}
.harthwyn-welcome__hero-copy .harthwyn-family-avatar-hero{
    width:100%;
    max-width:640px;
    margin:0 auto 12px;
}
.harthwyn-welcome__support{
    max-width:44rem;
    margin:16px auto 0;
    text-align:center;
}
.harthwyn-welcome__hero-side{
    max-width:320px;
}
.harthwyn-welcome__hero-badge--soft{
    position:sticky;
    top:20px;
}
.harthwyn-auth-notice--landing{
    max-width:760px;
    margin:0 auto 18px;
}
.harthwyn-auth-hub--landing{
    max-width:760px;
    margin:0 auto 28px;
}
.harthwyn-auth-hub--landing .harthwyn-auth-card{
    display:none;
}
.harthwyn-auth-hub--landing .harthwyn-auth-card.is-active{
    display:block;
}
.harthwyn-auth-hub--landing .harthwyn-auth-form--compact{
    max-width:100%;
}
@media (max-width: 980px){
    .harthwyn-welcome__hero--compact{
        grid-template-columns:1fr;
    }
    .harthwyn-welcome__hero-side{
        max-width:none;
    }
    .harthwyn-welcome__hero-badge--soft{
        position:static;
    }
}


/* v7.07.36.1 landing page sizing and hierarchy */
.harthwyn-welcome {
  max-width: 1400px;
  padding: 32px 24px 72px;
}

.harthwyn-welcome__hero {
  grid-template-columns: 1fr;
  max-width: 980px;
  margin: 0 auto 28px;
  padding: 40px 44px;
}

.harthwyn-welcome__hero--compact {
  grid-template-columns: 1fr;
}

.harthwyn-welcome__hero-copy {
  text-align: center;
}

.harthwyn-welcome__title,
.harthwyn-welcome__subtitle,
.harthwyn-welcome__support {
  margin-left: auto;
  margin-right: auto;
}

.harthwyn-welcome__title {
  max-width: 16ch;
}

.harthwyn-welcome__subtitle,
.harthwyn-welcome__support {
  max-width: 68ch;
}

.harthwyn-family-avatar-hero {
  max-width: 760px;
  margin: 18px auto 0;
}

.harthwyn-welcome__hero-side,
.harthwyn-auth-hub--side {
  display: none !important;
}

.harthwyn-auth-hub--landing,
.harthwyn-welcome__support-grid,
.harthwyn-welcome__trust-wrap {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.harthwyn-auth-hub--landing {
  margin-bottom: 28px;
}

.harthwyn-auth-card {
  padding: 28px;
}

.harthwyn-welcome__support-grid {
  margin-bottom: 24px;
}

.harthwyn-welcome__feature-card--support {
  text-align: center;
}

.harthwyn-welcome__feature-card--support .harthwyn-welcome__feature-actions {
  justify-content: center;
}

.harthwyn-welcome__trust-wrap {
  text-align: center;
}

.harthwyn-legal-links {
  justify-content: center;
}

@media (max-width: 782px) {
  .harthwyn-welcome {
    padding: 20px 14px 48px;
  }

  .harthwyn-welcome__hero {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .harthwyn-family-avatar-hero {
    max-width: 100%;
  }

  .harthwyn-auth-card {
    padding: 20px;
  }
}


/* v7.07.36.2 login page simplification */
.harthwyn-welcome{
  max-width:1200px;
  padding:24px 20px 56px;
}
.harthwyn-welcome__hero{
  max-width:760px;
  padding:28px 32px;
  margin:0 auto 20px;
}
.harthwyn-welcome__eyebrow{
  margin-bottom:8px;
  font-size:.82rem;
  letter-spacing:.08em;
}
.harthwyn-welcome__title--login{
  max-width:100%;
  font-size:clamp(1.85rem,2.6vw,2.5rem);
  line-height:1.08;
  margin-bottom:10px;
}
.harthwyn-welcome__subtitle--login{
  max-width:48ch;
  font-size:1rem;
  line-height:1.6;
  margin-bottom:8px;
}
.harthwyn-welcome__support--login{
  max-width:40ch;
  font-size:.95rem;
  line-height:1.55;
  color:#5a718b;
}
.harthwyn-family-avatar-hero{
  max-width:680px;
  margin:12px auto 8px;
}
.harthwyn-auth-hub--landing{
  max-width:620px;
  margin:0 auto 18px;
}
.harthwyn-auth-card{
  padding:24px 24px 22px;
  border-radius:22px;
}
.harthwyn-auth-card__header{
  gap:12px;
  margin-bottom:14px;
}
.harthwyn-auth-card__header h2{
  font-size:1.35rem;
  margin:0 0 4px;
}
.harthwyn-auth-card__header p{
  font-size:.96rem;
  line-height:1.5;
}
.harthwyn-auth-form--compact{
  max-width:100%;
}
.harthwyn-auth-form--compact .harthwyn-field input{
  min-height:50px;
}
.harthwyn-auth-checkbox{
  margin:6px 0 2px;
}
.harthwyn-auth-form__actions--stack{
  gap:10px;
}
.harthwyn-welcome__support-grid{
  max-width:620px;
  margin:0 auto 16px;
}
.harthwyn-welcome__feature-card--support{
  padding:18px 20px;
}
.harthwyn-welcome__trust-wrap{
  max-width:760px;
  margin:0 auto;
  gap:8px;
}
.harthwyn-welcome__trust-title{
  font-size:1rem;
  font-weight:700;
}
.harthwyn-legal-links{
  gap:14px 18px;
}
@media (min-width: 981px){
  .harthwyn-welcome__hero{
    box-shadow:0 16px 36px rgba(39,88,144,.08);
  }
}
@media (max-width: 782px){
  .harthwyn-welcome{
    padding:16px 12px 42px;
  }
  .harthwyn-welcome__hero{
    padding:22px 16px;
  }
  .harthwyn-welcome__title--login{
    font-size:1.8rem;
  }
  .harthwyn-auth-card{
    padding:20px 18px;
  }
}


/* Harthwyn v7.08.00 — Member Experience Refinement Update: Dashboard */
.harthwyn-dashboard-home {
  display: grid;
  gap: 22px;
}

.harthwyn-dashboard-home .harthwyn-page-header-title-wrap,
.harthwyn-dashboard-home .harthwyn-brand-banner {
  margin-bottom: 10px;
}

.harthwyn-dashboard-hero--refined {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .85fr);
  gap: 24px;
  align-items: stretch;
  padding: clamp(22px, 4vw, 34px);
  margin-top: 0;
}

.harthwyn-dashboard-hero--refined .harthwyn-dashboard-hero-main {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  min-width: 0;
}

.harthwyn-dashboard-hero--refined h2 {
  margin: 0;
  max-width: 760px;
  font-size: clamp(2rem, 4vw, 3.35rem);
  line-height: .98;
  letter-spacing: -.045em;
  color: var(--fp-ink, #1F2A44);
}

.harthwyn-dashboard-hero--refined p {
  max-width: 680px;
  margin: 0;
  font-size: clamp(1rem, 1.35vw, 1.12rem);
  line-height: 1.65;
}

.harthwyn-dashboard-eyebrow {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  padding: 7px 11px;
  border: 1px solid var(--fp-border, #E5DED1);
  border-radius: 999px;
  background: rgba(255,255,255,.76);
  color: var(--fp-soft-ink, #5A6476);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.harthwyn-dashboard-hero-side--refined {
  display: grid;
  gap: 14px;
  align-content: stretch;
}

.harthwyn-dashboard-featured-announcement {
  display: grid;
  gap: 10px;
  padding: 18px;
  border: 1px solid rgba(215,166,59,.38);
  border-radius: 20px;
  background:
    radial-gradient(circle at top right, rgba(215,166,59,.22), transparent 34%),
    rgba(255,255,255,.82);
  box-shadow: 0 12px 28px rgba(31,42,68,.08);
}

.harthwyn-dashboard-featured-announcement h3 {
  margin: 0;
  font-size: clamp(1.1rem, 1.6vw, 1.35rem);
  line-height: 1.2;
  color: var(--fp-ink, #1F2A44);
}

.harthwyn-dashboard-featured-announcement p {
  margin: 0;
  font-size: .95rem;
  line-height: 1.55;
}

.harthwyn-dashboard-stat-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.harthwyn-dashboard-stat-row .harthwyn-social-stat {
  min-height: 92px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(255,255,255,.78);
}

.harthwyn-dashboard-section {
  display: grid;
  gap: 14px;
}

.harthwyn-dashboard-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
}

.harthwyn-dashboard-section-heading h3 {
  margin: 8px 0 0;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  letter-spacing: -.025em;
  color: var(--fp-ink, #1F2A44);
}

.harthwyn-dashboard-actions-grid--refined {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.harthwyn-dashboard-actions-grid--refined .harthwyn-dashboard-action-card {
  height: 100%;
  border-radius: 20px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.harthwyn-dashboard-actions-grid--refined .harthwyn-dashboard-action-card:hover,
.harthwyn-dashboard-actions-grid--refined .harthwyn-dashboard-action-card:focus-within {
  transform: translateY(-2px);
  border-color: rgba(215,166,59,.55);
  box-shadow: 0 16px 34px rgba(31,42,68,.1);
}

.harthwyn-dashboard-announcements-card--refined .harthwyn-announcement-card {
  box-shadow: none;
  border-radius: 18px;
}

.harthwyn-actions--dashboard-primary {
  margin-top: 6px;
}

.harthwyn-help-launcher-toggle {
  border-radius: 999px;
  box-shadow: 0 12px 26px rgba(31,42,68,.14);
}

@media (max-width: 1100px) {
  .harthwyn-dashboard-hero--refined {
    grid-template-columns: 1fr;
  }

  .harthwyn-dashboard-stat-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 782px) {
  .harthwyn-dashboard-home {
    gap: 18px;
  }

  .harthwyn-dashboard-hero--refined {
    padding: 20px 16px;
    gap: 18px;
  }

  .harthwyn-dashboard-hero--refined h2 {
    font-size: clamp(2rem, 10vw, 2.7rem);
  }

  .harthwyn-dashboard-section-heading {
    display: grid;
    align-items: start;
  }

  .harthwyn-dashboard-stat-row {
    grid-template-columns: 1fr;
  }

  .harthwyn-dashboard-stat-row .harthwyn-social-stat {
    min-height: 72px;
  }

  .harthwyn-help-launcher {
    right: 12px;
    bottom: 118px;
  }

  .harthwyn-help-launcher-toggle {
    padding: 9px 11px;
    font-size: .9rem;
  }
}


/* v7.08.01 What’s New Page Polish */
.harthwyn-whats-new-cards--refined{max-width:1040px}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:stretch;padding:28px;margin-bottom:28px;background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.92) 0,rgba(255,255,255,0) 38%),linear-gradient(135deg,#f7fbff 0%,#fff 46%,#eef6ff 100%)}
.harthwyn-whats-new-cards__hero-copy{min-width:0}
.harthwyn-whats-new-cards__hero-panel{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:20px;border-radius:20px;background:rgba(255,255,255,.76);border:1px solid #d8e7f7;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 24px rgba(52,96,160,.06);color:#425a74;line-height:1.5}
.harthwyn-whats-new-cards__hero-panel strong{display:block;color:#163252;font-size:1.12rem;line-height:1.25}
.harthwyn-whats-new-cards__hero-panel-kicker{display:inline-flex;width:max-content;padding:6px 10px;border-radius:999px;background:#edf6ff;color:#31527c;font-size:.8rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__timeline{gap:22px}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__day{border-radius:26px;box-shadow:0 14px 32px rgba(52,96,160,.08)}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__day-summary{padding:24px 26px}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__day-date-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#edf6ff;border:1px solid #cfe0f4;color:#24486f;font-weight:900}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__day-help{max-width:72ch}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__items{padding:4px 26px 26px;gap:14px}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__item{grid-template-columns:52px 1fr;align-items:flex-start;padding:20px;border-radius:20px}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__item-icon{width:52px;height:52px;border-radius:18px}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__item-title{font-size:1.18rem}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__reactions{padding-top:14px;margin-top:16px;border-top:1px solid #edf3fa}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__reaction{min-height:40px;padding:9px 13px;font-size:.93rem;background:#fbfdff}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__contact{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1fr);gap:24px;align-items:start;padding:26px;margin-top:28px}
.harthwyn-whats-new-cards__contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.harthwyn-whats-new-cards__contact-grid label:last-child{grid-column:1/-1}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__contact-form{display:grid;gap:14px;margin-top:0}
.harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__contact-copy p{margin-bottom:0;color:#425a74;line-height:1.7}
@media (max-width:782px){
  .harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__hero,
  .harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__contact{grid-template-columns:1fr;padding:18px}
  .harthwyn-whats-new-cards__hero-panel{padding:16px}
  .harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__items{padding:0 18px 18px}
  .harthwyn-whats-new-cards--refined .harthwyn-whats-new-cards__item{grid-template-columns:1fr}
  .harthwyn-whats-new-cards__contact-grid{grid-template-columns:1fr}
}


.harthwyn-portrait-studio-feature{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);
    gap:24px;
    align-items:center;
    overflow:hidden;
    border:1px solid rgba(178,137,69,.28);
    background:
        radial-gradient(circle at top right, rgba(178,137,69,.16), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,.98), rgba(250,247,240,.95));
}

.harthwyn-portrait-studio-feature::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(90deg, rgba(20,35,54,.06), transparent 38%);
}

.harthwyn-portrait-studio-copy,
.harthwyn-portrait-studio-preview,
.harthwyn-portrait-studio-links{
    position:relative;
    z-index:1;
}

.harthwyn-portrait-studio-copy h3{
    max-width:760px;
    margin-bottom:10px;
    font-size:clamp(1.45rem, 2.4vw, 2rem);
}

.harthwyn-portrait-studio-copy p{
    max-width:780px;
    color:var(--harthwyn-muted, #5f6673);
}

.harthwyn-portrait-studio-actions{
    margin-top:18px;
    gap:10px;
}

.harthwyn-portrait-studio-preview{
    display:flex;
    justify-content:center;
}

.harthwyn-portrait-preview-frame,
.harthwyn-portrait-preview-empty{
    width:min(100%, 280px);
    min-height:220px;
    margin:0;
    border-radius:24px;
    border:1px solid rgba(20,35,54,.12);
    box-shadow:0 20px 50px rgba(20,35,54,.14);
    background:rgba(255,255,255,.78);
}

.harthwyn-portrait-preview-frame{
    overflow:hidden;
}

.harthwyn-portrait-preview-frame img{
    display:block;
    width:100%;
    height:220px;
    object-fit:cover;
}

.harthwyn-portrait-preview-frame figcaption{
    padding:10px 14px;
    font-size:.85rem;
    font-weight:700;
    color:var(--harthwyn-muted, #5f6673);
    background:rgba(255,255,255,.92);
}

.harthwyn-portrait-preview-empty{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:12px;
    padding:24px;
    text-align:center;
    color:var(--harthwyn-ink, #1f2937);
}

.harthwyn-portrait-preview-empty span{
    display:grid;
    width:72px;
    height:72px;
    place-items:center;
    border-radius:999px;
    font-size:2rem;
    background:rgba(178,137,69,.14);
}

.harthwyn-portrait-studio-links{
    grid-column:1 / -1;
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    padding-top:8px;
}

.harthwyn-portrait-studio-links a{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:8px 13px;
    border-radius:999px;
    border:1px solid rgba(20,35,54,.12);
    background:rgba(255,255,255,.72);
    font-size:.88rem;
    font-weight:700;
    text-decoration:none;
}

@media (max-width: 760px){
    .harthwyn-portrait-studio-feature{
        grid-template-columns:1fr;
        gap:18px;
    }

    .harthwyn-portrait-studio-preview{
        justify-content:flex-start;
    }

    .harthwyn-portrait-preview-frame,
    .harthwyn-portrait-preview-empty{
        width:100%;
        min-height:190px;
    }

    .harthwyn-portrait-preview-frame img{
        height:190px;
    }

    .harthwyn-portrait-studio-actions .harthwyn-button{
        width:100%;
        justify-content:center;
    }
}


/* Harthwyn 7.08.03: Avatar Builder stability and preview refinement */
.harthwyn-avatar-builder-enhanced{
  position:relative;
}
.harthwyn-avatar-builder-enhanced form,
.harthwyn-avatar-builder-enhanced > .wp-block-group,
.harthwyn-avatar-builder-enhanced > div{
  max-width:100%;
}
.harthwyn-avatar-preview-card{
  float:right;
  width:min(360px,100%);
  margin:0 0 24px 28px;
  padding:18px;
  border:1px solid rgba(176,126,18,.42);
  border-radius:22px;
  background:linear-gradient(180deg,#fffdf8 0%,#fff8e8 100%);
  box-shadow:0 18px 42px rgba(31,42,68,.10);
  text-align:center;
}
.harthwyn-avatar-preview-card__frame{
  min-height:320px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:2px solid rgba(176,126,18,.64);
  border-radius:18px;
  background:#fff;
}
.harthwyn-avatar-preview-card__frame img{
  display:block;
  width:100%;
  height:auto;
}
.harthwyn-avatar-preview-card__placeholder{
  max-width:220px;
  color:#6b5b3d;
  font-weight:700;
}
.harthwyn-avatar-preview-card h3{
  margin:16px 0 0;
  font-family:Georgia,serif;
  font-size:1.6rem;
  color:#22160b;
}
.harthwyn-avatar-preview-card__summary{
  margin:12px 0 0;
  padding:0;
  list-style:none;
  font-size:.85rem;
  color:#5f5a51;
  text-align:left;
}
.harthwyn-avatar-preview-card__summary li{
  margin:4px 0;
}
.harthwyn-avatar-generate-button{
  font-weight:800;
}
.harthwyn-avatar-dynamic-field{
  margin-bottom:16px;
}
@media (max-width: 900px){
  .harthwyn-avatar-preview-card{
    float:none;
    width:100%;
    margin:20px 0;
  }
}


/* Harthwyn 7.08.05 — member menu + help placement refinement */
body.harthwyn-member-view{
  padding-top:72px;
}

body.admin-bar.harthwyn-member-view{
  padding-top:104px;
}

.harthwyn-member-menu.harthwyn-member-menu--topbar{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:10000 !important;
  display:block !important;
  width:100% !important;
  padding:10px 16px !important;
  background:rgba(255,255,255,.94) !important;
  border-bottom:1px solid rgba(216,231,247,.95) !important;
  box-shadow:0 10px 28px rgba(23,49,79,.10) !important;
  backdrop-filter:blur(14px);
}

body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar{
  top:32px !important;
}

.harthwyn-member-menu__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  max-width:1180px;
  margin:0 auto;
}

.harthwyn-member-menu__home{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:9px 13px;
  border-radius:999px;
  background:#edf6ff;
  color:#163252;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}

.harthwyn-member-menu__toplinks{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex:1 1 auto;
  min-width:0;
  overflow-x:auto;
  scrollbar-width:none;
}

.harthwyn-member-menu__toplinks::-webkit-scrollbar{
  display:none;
}

.harthwyn-member-menu__toplink{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 12px;
  border-radius:999px;
  color:#24486f;
  font-size:.92rem;
  font-weight:750;
  text-decoration:none;
  white-space:nowrap;
}

.harthwyn-member-menu__toplink:hover,
.harthwyn-member-menu__toplink:focus,
.harthwyn-member-menu__toplink.is-active{
  background:#edf6ff;
  color:#163252;
}

.harthwyn-member-menu--topbar .harthwyn-member-menu__toggle{
  width:auto !important;
  min-width:0 !important;
  height:42px !important;
  gap:8px;
  padding:8px 13px !important;
  border-radius:999px !important;
  font-size:.95rem !important;
  font-weight:800;
  box-shadow:none !important;
}

.harthwyn-member-menu--topbar .harthwyn-member-menu__panel{
  top:74px !important;
  right:16px !important;
  left:auto !important;
  width:min(460px, calc(100vw - 32px)) !important;
  max-height:min(78vh, 680px) !important;
}

body.admin-bar .harthwyn-member-menu--topbar .harthwyn-member-menu__panel{
  top:106px !important;
}

.harthwyn-member-menu--topbar .harthwyn-member-menu__backdrop{
  top:64px;
}

body.admin-bar .harthwyn-member-menu--topbar .harthwyn-member-menu__backdrop{
  top:96px;
}

.harthwyn-help-launcher{
  top:50% !important;
  right:18px !important;
  bottom:auto !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  z-index:9998 !important;
}

.harthwyn-help-launcher-panel{
  margin-right:0 !important;
  margin-bottom:0 !important;
}

@media (max-width: 782px){
  body.harthwyn-member-view{
    padding-top:66px;
  }

  body.admin-bar.harthwyn-member-view{
    padding-top:112px;
  }

  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar{
    top:46px !important;
  }

  .harthwyn-member-menu.harthwyn-member-menu--topbar{
    padding:8px 10px !important;
  }

  .harthwyn-member-menu__home span:last-child{
    display:none;
  }

  .harthwyn-member-menu__toplinks{
    justify-content:flex-start;
  }

  .harthwyn-member-menu__toplink{
    padding:8px 10px;
    font-size:.86rem;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__toggle span:last-child{
    display:none;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__panel{
    top:66px !important;
    right:10px !important;
    width:calc(100vw - 20px) !important;
  }

  body.admin-bar .harthwyn-member-menu--topbar .harthwyn-member-menu__panel{
    top:112px !important;
  }

  .harthwyn-help-launcher{
    top:50% !important;
    right:10px !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    max-width:calc(100vw - 20px) !important;
  }

  .harthwyn-help-launcher-toggle{
    min-height:44px !important;
    padding:8px 10px !important;
  }
}

@media (max-width: 600px){
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar{
    top:0 !important;
  }

  body.admin-bar.harthwyn-member-view{
    padding-top:66px;
  }

  body.admin-bar .harthwyn-member-menu--topbar .harthwyn-member-menu__panel{
    top:66px !important;
  }
}


/* Harthwyn 7.08.08 — member menu/mobile help stabilization */
body.harthwyn-member-menu-attached{
  padding-top:0 !important;
}

.harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached{
  position:sticky !important;
  top:0 !important;
  left:auto !important;
  right:auto !important;
  z-index:9997 !important;
  margin:0 !important;
}

body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached{
  top:32px !important;
}

.harthwyn-member-menu__toplink.is-active,
.harthwyn-member-menu__item.is-active,
.harthwyn-member-bottom-nav__item.is-active{
  background:#edf6ff !important;
  color:#163252 !important;
  box-shadow:inset 0 0 0 1px rgba(47,111,178,.16);
}

.harthwyn-member-menu__toplink[aria-current="page"],
.harthwyn-member-menu__item[aria-current="page"]{
  background:#edf6ff !important;
  color:#163252 !important;
}

.harthwyn-member-menu-open{
  overflow:hidden;
}

.harthwyn-member-menu--topbar .harthwyn-member-menu__backdrop{
  position:fixed !important;
  inset:0 !important;
  top:0 !important;
  z-index:9998 !important;
}

.harthwyn-member-menu--topbar .harthwyn-member-menu__panel{
  position:fixed !important;
  z-index:9999 !important;
}

.harthwyn-help-launcher{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
}

@media (max-width: 782px){
  body.harthwyn-member-view,
  body.admin-bar.harthwyn-member-view,
  body.harthwyn-member-menu-attached,
  body.admin-bar.harthwyn-member-menu-attached{
    padding-top:0 !important;
    padding-bottom:118px !important;
  }

  .harthwyn-member-menu.harthwyn-member-menu--topbar,
  .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached,
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar,
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached{
    position:sticky !important;
    top:0 !important;
    z-index:9997 !important;
    padding:8px 10px !important;
  }

  .harthwyn-member-menu__inner{
    gap:8px !important;
  }

  .harthwyn-member-menu__home{
    min-height:40px !important;
    padding:8px 10px !important;
  }

  .harthwyn-member-menu__toplinks{
    display:none !important;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__toggle{
    display:inline-flex !important;
    min-width:44px !important;
    height:42px !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 auto !important;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__panel,
  body.admin-bar .harthwyn-member-menu--topbar .harthwyn-member-menu__panel{
    top:10px !important;
    left:10px !important;
    right:10px !important;
    width:auto !important;
    max-height:calc(100vh - 20px) !important;
    border-radius:22px !important;
  }

  .harthwyn-member-menu__grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .harthwyn-member-menu__item{
    min-height:46px !important;
  }

  .harthwyn-help-launcher,
  body.admin-bar .harthwyn-help-launcher{
    position:fixed !important;
    top:auto !important;
    right:12px !important;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 88px) !important;
    left:auto !important;
    transform:none !important;
    z-index:9996 !important;
    max-width:calc(100vw - 24px) !important;
    display:flex !important;
  }

  .harthwyn-help-launcher-toggle{
    min-height:42px !important;
    padding:8px 10px !important;
    box-shadow:0 10px 26px rgba(31,42,68,.16) !important;
  }

  .harthwyn-help-launcher-toggle span:last-child{
    display:none !important;
  }

  .harthwyn-help-launcher-panel{
    width:min(300px, calc(100vw - 24px)) !important;
    max-height:60vh !important;
    overflow:auto !important;
  }
}

@media (max-width: 600px){
  .harthwyn-member-menu.harthwyn-member-menu--topbar,
  .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached,
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar,
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached{
    top:0 !important;
  }
}


/* Harthwyn 7.08.09 — mobile member menu and help overlap fix */
@media (max-width: 782px){
  body.logged-in{
    padding-bottom:calc(env(safe-area-inset-bottom, 0px) + 112px) !important;
  }

  .harthwyn-member-menu.harthwyn-member-menu--topbar,
  .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached,
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar,
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached{
    position:sticky !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    z-index:1000 !important;
    width:100% !important;
    margin:0 !important;
    padding:8px 12px !important;
    background:rgba(255,255,255,.96) !important;
    border-bottom:1px solid #d8e7f7 !important;
    box-shadow:0 8px 22px rgba(23,49,79,.08) !important;
    transform:none !important;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__inner{
    min-height:48px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__home{
    min-width:0 !important;
    flex:1 1 auto !important;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__home span:last-child{
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__toggle{
    width:auto !important;
    min-width:48px !important;
    max-width:48px !important;
    height:48px !important;
    padding:0 !important;
    border-radius:999px !important;
    flex:0 0 48px !important;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__toggle span:last-child{
    display:none !important;
  }

  .harthwyn-member-menu--topbar .harthwyn-member-menu__panel,
  body.admin-bar .harthwyn-member-menu--topbar .harthwyn-member-menu__panel{
    position:fixed !important;
    top:calc(env(safe-area-inset-top, 0px) + 12px) !important;
    left:12px !important;
    right:12px !important;
    bottom:auto !important;
    width:auto !important;
    max-height:calc(100dvh - env(safe-area-inset-top, 0px) - 24px) !important;
    overflow:auto !important;
    z-index:10004 !important;
  }

  .harthwyn-member-menu__backdrop{
    z-index:10003 !important;
  }

  .harthwyn-member-bottom-nav{
    z-index:1001 !important;
    padding:0 12px calc(env(safe-area-inset-bottom,0px) + 12px) !important;
    pointer-events:none !important;
  }

  .harthwyn-member-bottom-nav__inner{
    pointer-events:auto !important;
    border-radius:24px !important;
    padding:9px !important;
  }

  .harthwyn-member-bottom-nav__item{
    min-height:58px !important;
    padding:8px 5px !important;
    font-size:.78rem !important;
  }

  .harthwyn-help-launcher,
  body.admin-bar .harthwyn-help-launcher{
    position:fixed !important;
    top:auto !important;
    right:16px !important;
    left:auto !important;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 106px) !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:auto !important;
    padding:0 !important;
    margin:0 !important;
    transform:none !important;
    z-index:1002 !important;
    display:block !important;
  }

  .harthwyn-help-launcher-toggle,
  body.admin-bar .harthwyn-help-launcher-toggle{
    width:52px !important;
    min-width:52px !important;
    max-width:52px !important;
    height:52px !important;
    min-height:52px !important;
    padding:0 !important;
    border-radius:999px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
    overflow:hidden !important;
    background:#d7a63b !important;
    color:#201a12 !important;
    box-shadow:0 12px 28px rgba(31,42,68,.18) !important;
  }

  .harthwyn-help-launcher-toggle > span:last-child{
    display:none !important;
  }

  .harthwyn-help-launcher-toggle img{
    width:26px !important;
    height:26px !important;
    padding:4px !important;
    border-radius:999px !important;
    background:#fff !important;
  }

  .harthwyn-help-launcher-panel{
    position:absolute !important;
    right:0 !important;
    bottom:62px !important;
    width:min(320px, calc(100vw - 32px)) !important;
    max-height:55dvh !important;
    overflow:auto !important;
    border-radius:18px !important;
    z-index:1005 !important;
  }
}

@media (min-width: 783px){
  .harthwyn-help-launcher,
  body.admin-bar .harthwyn-help-launcher{
    top:50% !important;
    right:18px !important;
    bottom:auto !important;
    left:auto !important;
    transform:translateY(-50%) !important;
  }
}


/* Harthwyn 7.08.10 — navigation, header, and dashboard cleanup */
.harthwyn-dashboard-home{
  gap:18px !important;
}

.harthwyn-dashboard-home .harthwyn-panel{
  margin-bottom:0;
}

.harthwyn-dashboard-section--actions{
  margin-top:0;
}

.harthwyn-dashboard-actions-grid--refined{
  gap:14px !important;
}

.harthwyn-social-top-grid,
.harthwyn-social-mid-grid,
.harthwyn-dashboard-main-grid{
  gap:16px !important;
  margin-bottom:16px !important;
}

.harthwyn-dashboard-search-card,
.harthwyn-dashboard-announcements-card,
.harthwyn-dashboard-home > .harthwyn-panel{
  margin-top:0 !important;
}

.harthwyn-member-menu--topbar{
  top:0 !important;
}

body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar{
  top:32px !important;
}

.harthwyn-member-menu__toplink.is-active,
.harthwyn-member-menu__item.is-active,
.harthwyn-member-bottom-nav__item.is-active{
  background:#edf6ff !important;
  color:#163252 !important;
  box-shadow:inset 0 0 0 1px #cfe0f4;
}

.harthwyn-help-launcher{
  position:fixed !important;
  right:14px !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  z-index:10020 !important;
}

.harthwyn-help-launcher-panel{
  position:absolute;
  right:0;
  top:calc(100% + 10px);
}

.harthwyn-member-bottom-nav{
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  z-index:10010 !important;
}

.harthwyn-member-bottom-nav__inner{
  max-width:760px;
}

body.harthwyn-member-view{
  padding-top:72px;
  padding-bottom:110px;
}

body.harthwyn-member-view .harthwyn-brand-banner-link[target="_blank"]{
  cursor:pointer;
}

@media (max-width: 782px){
  body.harthwyn-member-view{
    padding-top:0 !important;
    padding-bottom:104px !important;
  }

  .harthwyn-member-menu--topbar{
    display:none !important;
  }

  .harthwyn-member-bottom-nav{
    display:block !important;
    padding:0 8px calc(env(safe-area-inset-bottom,0px) + 8px) !important;
  }

  .harthwyn-member-bottom-nav__inner{
    max-width:100%;
    gap:5px !important;
    padding:8px !important;
    border-radius:20px 20px 18px 18px !important;
  }

  .harthwyn-member-bottom-nav__item{
    min-width:0;
    padding:8px 4px !important;
    font-size:.72rem !important;
  }

  .harthwyn-member-bottom-nav__icon{
    font-size:1.05rem !important;
  }

  .harthwyn-help-launcher{
    right:8px !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    z-index:10030 !important;
  }

  .harthwyn-help-launcher-toggle{
    width:44px !important;
    height:44px !important;
    min-height:44px !important;
    padding:0 !important;
    justify-content:center !important;
    border-radius:999px !important;
  }

  .harthwyn-help-launcher-toggle img{
    width:22px !important;
    height:22px !important;
  }

  .harthwyn-help-launcher-toggle > span:not(:first-child),
  .harthwyn-help-launcher-toggle img + span{
    display:none !important;
  }

  .harthwyn-help-launcher-panel{
    right:0 !important;
    top:54px !important;
    width:min(300px, calc(100vw - 24px)) !important;
    max-height:calc(100vh - 170px);
    overflow:auto;
  }

  .harthwyn-dashboard-home{
    gap:14px !important;
  }

  .harthwyn-social-top-grid,
  .harthwyn-social-mid-grid,
  .harthwyn-dashboard-main-grid{
    gap:14px !important;
    margin-bottom:14px !important;
  }

  .harthwyn-dashboard-actions-grid--refined{
    grid-template-columns:1fr !important;
  }
}

@media (min-width: 783px){
  .harthwyn-member-menu--topbar{
    display:block !important;
  }
}


/* Harthwyn 7.08.11 — Moments audio + profile Portrait Studio integration */
.harthwyn-audio-moment-card,
.harthwyn-moment-attached-audio{
  display:grid;
  gap:10px;
  padding:16px;
  border-radius:18px;
  background:linear-gradient(135deg,#fffdf8,#f7efe0);
  border:1px solid rgba(176,126,18,.28);
}
.harthwyn-audio-moment-card span{
  font-size:2rem;
}
.harthwyn-audio-moment-card audio,
.harthwyn-moment-attached-audio audio{
  width:100%;
}
.harthwyn-portrait-studio-profile-card{
  border-color:rgba(176,126,18,.34);
  background:linear-gradient(180deg,#fff,#fffaf0);
}
.harthwyn-profile-portrait-studio-panel{
  border-color:rgba(176,126,18,.34);
}


/* Harthwyn 7.08.12 — navigation and mobile member-picker correction */
.harthwyn-member-menu__inner--icons{
  align-items:center;
}

.harthwyn-member-menu__toplinks--icons{
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex:1 1 auto;
  min-width:0;
  overflow-x:auto;
  scrollbar-width:none;
}

.harthwyn-member-menu__toplinks--icons::-webkit-scrollbar{
  display:none;
}

.harthwyn-member-menu__toplink--icon{
  display:inline-flex !important;
  align-items:center;
  gap:7px;
  min-height:42px;
  padding:8px 12px;
  border-radius:999px;
  color:#45678c;
  text-decoration:none;
  font-weight:800;
  white-space:nowrap;
  border:1px solid transparent;
}

.harthwyn-member-menu__toplink--icon:hover,
.harthwyn-member-menu__toplink--icon:focus,
.harthwyn-member-menu__toplink--icon.is-active{
  background:#edf6ff;
  border-color:#cfe0f4;
  color:#163252;
}

.harthwyn-member-menu__toplink-icon{
  font-size:1.05rem;
  line-height:1;
}

.harthwyn-member-menu__logout{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid #d8e7f7;
  color:#45678c;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}

.harthwyn-member-menu__toggle,
.harthwyn-member-menu__backdrop,
.harthwyn-member-menu__panel{
  display:none !important;
}

.harthwyn-member-picker{
  position:relative;
  z-index:5;
  display:grid;
  gap:10px;
  width:100%;
}

.harthwyn-member-picker__search{
  width:100% !important;
  min-height:48px !important;
  padding:12px 14px !important;
  font-size:16px !important;
  border-radius:14px !important;
}

.harthwyn-member-picker__list{
  display:grid;
  gap:8px;
  max-height:320px;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  padding:8px;
  border:1px solid #d8e7f7;
  border-radius:16px;
  background:#fff;
}

.harthwyn-member-picker__item{
  display:flex !important;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:10px 12px;
  border:1px solid #e5edf7;
  border-radius:14px;
  background:#fff;
  color:#163252;
  font-weight:700;
  cursor:pointer;
}

.harthwyn-member-picker__item input[type="checkbox"]{
  width:22px;
  height:22px;
  flex:0 0 auto;
  accent-color:#2f6fb2;
}

.harthwyn-member-picker__item:has(input:checked){
  background:#edf6ff;
  border-color:#9fc2e8;
}

@media (max-width: 980px){
  body.harthwyn-member-view{
    padding-top:0 !important;
    padding-bottom:112px !important;
  }

  .harthwyn-member-menu.harthwyn-member-menu--topbar{
    display:none !important;
  }

  .harthwyn-member-bottom-nav{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:10000 !important;
  }

  .harthwyn-member-picker{
    z-index:10001;
  }

  .harthwyn-member-picker__list{
    max-height:42vh;
  }

  .harthwyn-upload-v2 .harthwyn-panel,
  .harthwyn-form .harthwyn-panel{
    overflow:visible;
  }
}

@media (min-width: 981px){
  .harthwyn-member-menu.harthwyn-member-menu--topbar{
    display:block !important;
  }
}


/* Harthwyn 7.08.13 — navigation, Portrait Studio slot, and event-date stability */
@media (min-width: 981px){
  .harthwyn-member-menu__toplinks--icons{
    gap:6px !important;
  }

  .harthwyn-member-menu__toplink--icon{
    display:grid !important;
    justify-items:center;
    align-content:center;
    gap:3px !important;
    min-width:68px;
    min-height:54px;
    padding:6px 8px !important;
    border-radius:16px !important;
    line-height:1.1;
  }

  .harthwyn-member-menu__toplink-icon{
    display:block;
    font-size:1.25rem !important;
  }

  .harthwyn-member-menu__toplink-label{
    display:block;
    font-size:.72rem;
    max-width:78px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

.harthwyn-help-launcher{
  position:fixed !important;
  top:50% !important;
  right:16px !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  z-index:10020 !important;
}

.harthwyn-help-launcher-panel{
  max-height:72vh;
  overflow:auto;
}

@media (max-width: 980px){
  body.harthwyn-member-view{
    padding-bottom:112px !important;
  }

  .harthwyn-member-bottom-nav{
    display:block !important;
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:10000 !important;
    padding:0 8px calc(env(safe-area-inset-bottom,0px) + 8px) !important;
    pointer-events:none;
  }

  .harthwyn-member-bottom-nav__inner{
    display:flex !important;
    align-items:stretch;
    justify-content:flex-start;
    gap:7px !important;
    max-width:100% !important;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    padding:8px !important;
    border-radius:22px !important;
    pointer-events:auto;
    scrollbar-width:none;
  }

  .harthwyn-member-bottom-nav__inner::-webkit-scrollbar{
    display:none;
  }

  .harthwyn-member-bottom-nav__item{
    flex:0 0 74px;
    scroll-snap-align:start;
    display:grid !important;
    justify-items:center;
    align-content:center;
    gap:3px !important;
    min-height:58px;
    padding:7px 6px !important;
    border-radius:16px !important;
    font-size:.68rem !important;
    line-height:1.1;
  }

  .harthwyn-member-bottom-nav__icon{
    font-size:1.16rem !important;
  }

  .harthwyn-member-bottom-nav__label{
    max-width:68px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .harthwyn-help-launcher{
    top:50% !important;
    right:8px !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    max-width:min(320px, calc(100vw - 16px)) !important;
  }

  .harthwyn-help-launcher-toggle{
    width:auto !important;
    min-width:44px !important;
    min-height:44px !important;
    padding:8px 10px !important;
    border-radius:999px !important;
  }

  .harthwyn-help-launcher-toggle span{
    max-width:0;
    overflow:hidden;
    white-space:nowrap;
  }

  .harthwyn-help-launcher-panel{
    width:min(300px, calc(100vw - 28px)) !important;
  }
}

.harthwyn-calendar-cell[role="link"]{
  cursor:pointer;
}

.harthwyn-calendar-cell[role="link"]:focus{
  outline:3px solid rgba(47,111,178,.35);
  outline-offset:2px;
}

.harthwyn-event-type-grid .harthwyn-choice-card{
  min-height:96px;
}


/* Harthwyn 1.4.4.6 locked navigation and album overrides */
.harthwyn-albums-browser #harthwyn-add-album .harthwyn-media-uploader-card + .harthwyn-media-uploader-card{margin-top:18px}
.harthwyn-albums-browser #harthwyn-add-album .harthwyn-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:10px}
.harthwyn-albums-browser #harthwyn-add-album .harthwyn-gallery-thumb img{width:100%;height:92px;object-fit:cover;border-radius:14px}

.harthwyn-help-launcher,
body.admin-bar .harthwyn-help-launcher{
  position:fixed;
  top:50%;
  right:16px;
  bottom:auto;
  left:auto;
  transform:translateY(-50%);
  z-index:1002;
}

.harthwyn-help-launcher-panel{
  top:50%;
  right:calc(100% + 12px);
  bottom:auto;
  transform:translateY(-50%);
}

@media (max-width: 782px){
  .harthwyn-member-menu.harthwyn-member-menu--topbar,
  .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached,
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar,
  body.admin-bar .harthwyn-member-menu.harthwyn-member-menu--topbar.is-attached{
    display:none !important;
  }

  .harthwyn-member-bottom-nav{
    display:block !important;
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:1001;
    padding:0 10px calc(env(safe-area-inset-bottom,0px) + 10px);
  }

  .harthwyn-member-bottom-nav__inner{
    display:flex !important;
    gap:10px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    padding:10px;
    max-width:none;
  }

  .harthwyn-member-bottom-nav__item{
    flex:0 0 auto;
    min-width:78px;
    scroll-snap-align:center;
  }

  .harthwyn-member-bottom-nav__label{
    white-space:nowrap;
  }

  .harthwyn-help-launcher,
  body.admin-bar .harthwyn-help-launcher{
    top:50%;
    right:12px;
    bottom:auto;
    transform:translateY(-50%);
  }

  .harthwyn-help-launcher-toggle{
    min-height:52px;
  }

  .harthwyn-help-launcher-panel{
    right:calc(100% + 10px);
    max-width:min(280px, calc(100vw - 84px));
  }
}

@media (min-width: 783px){
  .harthwyn-member-bottom-nav{
    display:none !important;
  }
}


/* Harthwyn 1.4.4.8 navigation and creator lock */
.harthwyn-member-menu__home{
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  min-width:158px;
  text-align:center;
}
.harthwyn-member-menu__home span:first-child{
  font-size:1.1rem;
  line-height:1;
}
.harthwyn-member-menu__home span:last-child{
  line-height:1.1;
}

.harthwyn-help-launcher{
  top:50% !important;
  right:16px !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
}
.harthwyn-help-launcher-panel{
  max-height:min(70vh, 680px);
  overflow:auto;
}
@media (max-width: 782px){
  .harthwyn-help-launcher{
    top:50% !important;
    right:12px !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
  }
}

.harthwyn-empty-state{
  display:grid;
  gap:12px;
  justify-items:start;
}
.harthwyn-events-note-panel{
  margin-bottom:18px;
}


/* v1.4.4.9 route and member-nav lock */
.harthwyn-member-menu__home{
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:4px;
  min-width:126px;
  min-height:52px;
  text-align:center;
  line-height:1.1;
}
.harthwyn-member-menu__home-icon{
  display:block;
  font-size:1.05rem;
}
.harthwyn-member-menu__home-label{
  display:block;
  font-size:.98rem;
}

.harthwyn-help-launcher{
  top:50% !important;
  right:16px !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  align-items:flex-end;
}
body.admin-bar .harthwyn-help-launcher{
  top:calc(50% + 16px) !important;
}
@media (max-width:782px){
  .harthwyn-help-launcher{
    top:50% !important;
    right:12px !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
  }
}

.harthwyn-empty-state-actions{
  display:flex;
  justify-content:center;
  gap:12px;
  margin-top:16px;
  flex-wrap:wrap;
}


.harthwyn-empty-state--albums {
    display: grid;
    gap: 18px;
    text-align: left;
}

.harthwyn-album-holding-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

.harthwyn-album-holding-card {
    position: relative;
    display: grid;
    gap: 14px;
    min-height: 320px;
    padding: 18px;
    border-radius: 24px;
    border: 1px solid rgba(117, 87, 47, 0.16);
    background:
        linear-gradient(180deg, rgba(120, 88, 54, 0.08), rgba(47, 31, 20, 0.02)),
        linear-gradient(135deg, #f7f0e4 0%, #fcfaf5 55%, #efe3cf 100%);
    box-shadow: 0 18px 40px rgba(73, 52, 31, 0.08);
    overflow: hidden;
}

.harthwyn-album-holding-card::before,
.harthwyn-album-holding-card::after {
    content: '';
    position: absolute;
    inset: 12px;
    border-radius: 20px;
    pointer-events: none;
}

.harthwyn-album-holding-card::before {
    border: 1px solid rgba(129, 95, 58, 0.18);
}

.harthwyn-album-holding-card::after {
    inset: 18px;
    border: 1px solid rgba(129, 95, 58, 0.08);
}

.harthwyn-album-holding-card.is-brand-card {
    background:
        radial-gradient(circle at top, rgba(120, 88, 54, 0.14), transparent 54%),
        linear-gradient(135deg, #f4efe7 0%, #fbf8f2 60%, #ebe0cf 100%);
}

.harthwyn-album-holding-card__art {
    position: relative;
    min-height: 188px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background:
        linear-gradient(145deg, rgba(255,255,255,0.72), rgba(222, 205, 180, 0.52)),
        repeating-linear-gradient(
            90deg,
            rgba(112, 84, 47, 0.04) 0,
            rgba(112, 84, 47, 0.04) 8px,
            transparent 8px,
            transparent 16px
        );
    border: 1px solid rgba(129, 95, 58, 0.14);
}

.harthwyn-album-holding-card__crest {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    border-radius: 999px;
    background: rgba(255,255,255,0.78);
    border: 1px solid rgba(129, 95, 58, 0.18);
    box-shadow: 0 12px 28px rgba(73, 52, 31, 0.08);
    font-size: 38px;
    line-height: 1;
}

.harthwyn-album-holding-card__frame {
    position: absolute;
    inset: 20px;
    border-radius: 14px;
    border: 1px dashed rgba(129, 95, 58, 0.18);
}

.harthwyn-album-holding-card__meta {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 6px;
    text-align: center;
}

.harthwyn-album-holding-card__meta h4 {
    margin: 0;
    font-size: 1.12rem;
    line-height: 1.25;
}

.harthwyn-album-holding-card__meta p {
    margin: 0;
    color: var(--fp-color-text-muted, #675b4d);
}

@media (max-width: 1024px) {
    .harthwyn-album-holding-row {
        grid-auto-flow: column;
        grid-auto-columns: minmax(260px, 1fr);
        overflow-x: auto;
        padding-bottom: 6px;
        scroll-snap-type: x proximity;
    }

    .harthwyn-album-holding-card {
        scroll-snap-align: start;
    }
}


/* Harthwyn 1.4.4.14 menu system lock */
.harthwyn-support-launcher{
  z-index:10001 !important;
}
.harthwyn-support-launcher .harthwyn-help-launcher-toggle{
  min-height:52px;
  padding:10px 16px;
  border-radius:20px;
  background:linear-gradient(180deg,#fffdf8 0%,#fff 100%);
}
.harthwyn-support-mega-menu{
  width:min(540px, calc(100vw - 40px));
  max-height:min(74vh, 720px);
  overflow:auto;
  border-radius:24px;
  padding:22px;
  background:linear-gradient(180deg,#fffdf8 0%,#ffffff 100%);
}
.harthwyn-support-mega-menu__header{
  display:grid;
  gap:8px;
  margin-bottom:16px;
}
.harthwyn-support-mega-menu__header h3{
  margin:0;
  font-size:1.18rem;
  color:#163252;
}
.harthwyn-support-mega-menu__header p{
  margin:0;
  color:#587394;
}
.harthwyn-support-mega-menu__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.harthwyn-support-mega-menu__section{
  display:grid;
  gap:10px;
  align-content:start;
  padding:14px;
  border:1px solid #e1ebf5;
  border-radius:18px;
  background:#fff;
}
.harthwyn-support-mega-menu__section h4{
  margin:0;
  font-size:.95rem;
  color:#163252;
}
.harthwyn-support-mega-menu .harthwyn-help-launcher-links{
  gap:8px;
}
.harthwyn-support-mega-menu .harthwyn-help-launcher-links a{
  border:1px solid #d8e7f7;
  background:#f8fbff;
  color:#24486f;
}
.harthwyn-support-launcher.is-open .harthwyn-help-launcher-toggle{
  box-shadow:0 16px 34px rgba(23,49,79,.16);
}

.harthwyn-member-bottom-nav{
  display:none;
}
.harthwyn-member-bottom-nav__inner{
  display:flex;
  gap:10px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:10px 12px;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.harthwyn-member-bottom-nav__inner::-webkit-scrollbar{
  display:none;
}
.harthwyn-member-bottom-nav__item{
  flex:0 0 auto;
  min-width:82px;
  min-height:66px;
  padding:10px 12px;
  scroll-snap-align:center;
}
.harthwyn-member-bottom-nav__label{
  display:block;
  white-space:nowrap;
  font-size:.76rem;
}

@media (min-width:1101px){
  .harthwyn-member-menu.harthwyn-member-menu--topbar{
    display:block !important;
  }
  .harthwyn-member-bottom-nav{
    display:none !important;
  }
  .harthwyn-support-launcher{
    top:50% !important;
    right:16px !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
  }
}

@media (min-width:783px) and (max-width:1100px){
  body.harthwyn-member-view{
    padding-top:0 !important;
    padding-bottom:112px !important;
  }
  .harthwyn-member-menu.harthwyn-member-menu--topbar{
    display:none !important;
  }
  .harthwyn-member-bottom-nav{
    display:block !important;
    padding:0 14px calc(env(safe-area-inset-bottom,0px) + 12px);
  }
  .harthwyn-member-bottom-nav__inner{
    max-width:1024px;
    border-radius:26px;
  }
  .harthwyn-member-bottom-nav__item{
    min-width:92px;
  }
  .harthwyn-support-launcher{
    top:50% !important;
    right:16px !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
  }
}

@media (max-width:782px){
  body.harthwyn-member-view{
    padding-top:0 !important;
    padding-bottom:104px !important;
  }
  .harthwyn-member-menu.harthwyn-member-menu--topbar{
    display:none !important;
  }
  .harthwyn-member-bottom-nav{
    display:block !important;
    padding:0 10px calc(env(safe-area-inset-bottom,0px) + 8px);
  }
  .harthwyn-member-bottom-nav__inner{
    gap:8px;
    border-radius:22px;
    padding:8px 10px;
  }
  .harthwyn-member-bottom-nav__item{
    min-width:78px;
    min-height:62px;
    padding:9px 10px;
  }
  .harthwyn-member-bottom-nav__icon{
    font-size:1.05rem;
  }
  .harthwyn-member-bottom-nav__label{
    font-size:.72rem;
  }
  .harthwyn-support-launcher{
    top:auto !important;
    right:12px !important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 88px) !important;
    transform:none !important;
    align-items:flex-end;
  }
  .harthwyn-support-launcher .harthwyn-help-launcher-toggle{
    min-height:46px;
    padding:8px 12px;
  }
  .harthwyn-support-mega-menu{
    width:min(420px, calc(100vw - 24px));
    max-height:min(72vh, 560px);
    padding:18px;
    border-radius:22px;
  }
  .harthwyn-support-mega-menu__grid{
    grid-template-columns:1fr;
  }
}

body.harthwyn-support-open{
  overflow:hidden;
}


/* Harthwyn 1.4.4.14 menu lock */
@media (min-width: 981px) {
  .harthwyn-member-menu.harthwyn-member-menu--topbar {
    display: block !important;
  }

  .harthwyn-member-bottom-nav {
    display: none !important;
  }

  .harthwyn-help-launcher.harthwyn-support-launcher {
    position: fixed !important;
    top: 50% !important;
    right: 16px !important;
    bottom: auto !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    z-index: 10040 !important;
    align-items: flex-end !important;
  }

  body.admin-bar .harthwyn-help-launcher.harthwyn-support-launcher {
    top: calc(50% + 16px) !important;
  }

  .harthwyn-help-launcher-panel.harthwyn-support-mega-menu {
    width: min(420px, calc(100vw - 72px)) !important;
    max-height: min(78vh, 760px) !important;
    overflow: auto !important;
  }
}

@media (min-width: 768px) and (max-width: 980px) {
  .harthwyn-member-menu.harthwyn-member-menu--topbar {
    display: none !important;
  }

  .harthwyn-member-bottom-nav {
    display: block !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 10020 !important;
    padding: 0 12px calc(env(safe-area-inset-bottom, 0px) + 12px) !important;
  }

  .harthwyn-member-bottom-nav__inner {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(104px, 1fr) !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x proximity !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 10px 12px !important;
    gap: 10px !important;
    max-width: 920px !important;
    scrollbar-width: none !important;
  }

  .harthwyn-member-bottom-nav__inner::-webkit-scrollbar {
    display: none !important;
  }

  .harthwyn-member-bottom-nav__item {
    scroll-snap-align: center !important;
    min-height: 72px !important;
    padding: 10px 10px !important;
  }

  .harthwyn-help-launcher.harthwyn-support-launcher {
    position: fixed !important;
    top: 50% !important;
    right: 12px !important;
    bottom: auto !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    z-index: 10040 !important;
  }

  .harthwyn-help-launcher-toggle {
    min-height: 52px !important;
  }

  .harthwyn-help-launcher-panel.harthwyn-support-mega-menu {
    position: absolute !important;
    right: 0 !important;
    bottom: auto !important;
    width: min(420px, calc(100vw - 56px)) !important;
    max-height: min(72vh, 700px) !important;
    overflow: auto !important;
  }

  body.harthwyn-member-view {
    padding-bottom: 104px !important;
  }
}

@media (max-width: 767px) {
  .harthwyn-member-menu.harthwyn-member-menu--topbar {
    display: none !important;
  }

  .harthwyn-member-bottom-nav {
    display: block !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 10020 !important;
    padding: 0 10px calc(env(safe-area-inset-bottom, 0px) + 10px) !important;
  }

  .harthwyn-member-bottom-nav__inner {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(92px, 1fr) !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x proximity !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 8px !important;
    padding: 8px 10px !important;
    max-width: 100% !important;
    scrollbar-width: none !important;
    border-radius: 18px !important;
  }

  .harthwyn-member-bottom-nav__inner::-webkit-scrollbar {
    display: none !important;
  }

  .harthwyn-member-bottom-nav__item {
    min-height: 64px !important;
    padding: 8px 8px !important;
    gap: 3px !important;
    scroll-snap-align: center !important;
    font-size: 0.74rem !important;
    line-height: 1.1 !important;
  }

  .harthwyn-member-bottom-nav__item span:last-child {
    display: block !important;
    max-width: 74px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .harthwyn-member-bottom-nav__icon {
    font-size: 1rem !important;
  }

  .harthwyn-help-launcher.harthwyn-support-launcher {
    position: fixed !important;
    right: 12px !important;
    left: 12px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 92px) !important;
    top: auto !important;
    transform: none !important;
    z-index: 10040 !important;
    align-items: stretch !important;
    pointer-events: none !important;
  }

  .harthwyn-help-launcher-toggle {
    align-self: flex-end !important;
    min-height: 48px !important;
    padding: 10px 14px !important;
    border-radius: 16px !important;
    pointer-events: auto !important;
  }

  .harthwyn-help-launcher-panel.harthwyn-support-mega-menu {
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 92px) !important;
    top: auto !important;
    width: auto !important;
    max-height: min(66vh, 560px) !important;
    overflow: auto !important;
    border-radius: 22px !important;
    padding: 18px !important;
    box-shadow: 0 18px 46px rgba(23,49,79,.22) !important;
    pointer-events: auto !important;
  }

  .harthwyn-help-launcher:not(.is-open) .harthwyn-help-launcher-panel {
    display: none !important;
  }

  .harthwyn-help-launcher.is-open::before {
    content: "";
    position: fixed;
    inset: 0;
    background: rgba(22,50,82,.18);
    z-index: -1;
  }

  body.harthwyn-member-view {
    padding-bottom: 96px !important;
  }
}


.harthwyn-event-choice-panel[hidden] { display: none !important; }
.harthwyn-event-choice-panel {
    margin-bottom: 18px;
}
.harthwyn-calendar-day-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.harthwyn-calendar-day-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.harthwyn-calendar-cell[data-harthwyn-event-cell="true"] {
    cursor: pointer;
}


.harthwyn-album-groups {
    display: grid;
    gap: 1rem;
}

.harthwyn-album-group-header {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    justify-content: space-between;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.harthwyn-album-group-header h3 {
    margin: 0;
}

.harthwyn-album-group-subtitle {
    margin: 0;
    opacity: 0.78;
}

.harthwyn-album-flag {
    margin-left: 0.35rem;
}


/* Harthwyn 1.04.10 support launcher reliability lock */
.harthwyn-help-launcher-panel[hidden]{
  display:none !important;
}
.harthwyn-support-launcher.is-open .harthwyn-help-launcher-panel,
.harthwyn-help-launcher.is-open .harthwyn-help-launcher-panel{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.harthwyn-support-launcher .harthwyn-help-launcher-panel{
  position:relative;
  z-index:10060;
}
.harthwyn-support-launcher .harthwyn-help-launcher-toggle{
  position:relative;
  z-index:10061;
}


.harthwyn-inline-file-upload {
    display: inline-flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0.85rem 1rem;
    border: 1px dashed rgba(31, 59, 107, 0.22);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.72);
    color: #3f516a;
    font-size: 0.95rem;
}

.harthwyn-inline-file-upload input[type="file"] {
    font: inherit;
    max-width: 100%;
}

.harthwyn-calendar-day-action.is-secondary {
    background: #fff;
}

.harthwyn-calendar-empty + .harthwyn-calendar-day-action {
    margin-top: 0.25rem;
}
