/*
 * EL Mina Islands — Canonical Public Stylesheet
 * Index349 Runtime Style Rinse Phase 1
 *
 * Visual contract: preserve the accepted Index348 geometry and responsive output.
 * Source order is deliberate: critical paint, utilities, component foundation,
 * then canonical system/responsive overrides.
 *
 * Safe rinse applied: historical patch comments removed, empty nested rule groups
 * removed, and 9 exact duplicate rule blocks removed while keeping the
 * final cascade instance. No selector, declaration value, breakpoint, or rule order
 * was otherwise redesigned in this candidate.
 */

/* ==========================================================================
   CRITICAL FIRST PAINT
   ========================================================================== */
html, body { margin: 0; background: #f7fbff; color: #004aad; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; }
body.bg-elmina-dark { background: #f7fbff !important; }
header { background: #ffffff !important; color: #004aad; }

.video-container { background: #000000; }

/* ==========================================================================
   UTILITY FOUNDATION
   ========================================================================== */
* { box-sizing: border-box; border-style: solid; border-width: 0; }
html { line-height: 1.5; -webkit-text-size-adjust: 100%; }
body { margin: 0; }
button, input, textarea, select { font: inherit; }
button, a { color: inherit; }
button { cursor: pointer; }
img, svg, video, iframe { display: block; max-width: 100%; }
svg { vertical-align: middle; }
a { text-decoration: none; }

:root {
    --elmina-dark: #0f172a;
    --elmina-light: #f1f5f9;
    --elmina-accent: #2dd4bf;
    --elmina-muted: #64748b;
    --elmina-card: #1e293b;
}

.hidden { display: none !important; }
.block { display: block; }
.flex { display: flex; }
.grid { display: grid; }
.fixed { position: fixed; }
.absolute { position: absolute; }
.relative { position: relative; }
.sticky { position: sticky; }
.inset-0 { inset: 0; }
.top-0 { top: 0; }
.z-10 { z-index: 10; }
.z-20 { z-index: 20; }
.z-50 { z-index: 50; }
.z-\[100\] { z-index: 100; }

.mx-auto { margin-left: auto; margin-right: auto; }
.mt-3 { margin-top: 0.75rem; }
.mt-20 { margin-top: 5rem; }
.mt-32 { margin-top: 8rem; }
.mt-auto { margin-top: auto; }
.mb-1 { margin-bottom: 0.25rem; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; }
.mb-6 { margin-bottom: 1.5rem; }
.mb-8 { margin-bottom: 2rem; }
.pt-6 { padding-top: 1.5rem; }
.p-1 { padding: 0.25rem; }
.p-2 { padding: 0.5rem; }
.p-3 { padding: 0.75rem; }
.p-4 { padding: 1rem; }
.p-6 { padding: 1.5rem; }
.p-8 { padding: 2rem; }
.px-2\.5 { padding-left: 0.625rem; padding-right: 0.625rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }
.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.py-8 { padding-top: 2rem; padding-bottom: 2rem; }
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }

.min-h-screen { min-height: 100vh; }
.h-2 { height: 0.5rem; }
.h-4 { height: 1rem; }
.h-5 { height: 1.25rem; }
.h-6 { height: 1.5rem; }
.h-8 { height: 2rem; }
.h-12 { height: 3rem; }
.h-14 { height: 3.5rem; }
.h-20 { height: 5rem; }
.h-full { height: 100%; }
.w-2 { width: 0.5rem; }
.w-4 { width: 1rem; }
.w-5 { width: 1.25rem; }
.w-6 { width: 1.5rem; }
.w-12 { width: 3rem; }
.w-auto { width: auto; }
.w-full { width: 100%; }
.max-w-md { max-width: 28rem; }
.max-w-2xl { max-width: 42rem; }
.max-w-7xl { max-width: 80rem; }

.flex-1 { flex: 1 1 0%; }
.flex-grow { flex-grow: 1; }
.flex-col { flex-direction: column; }
.flex-wrap { flex-wrap: wrap; }
.items-center { align-items: center; }
.justify-center { justify-content: center; }
.justify-between { justify-content: space-between; }
.gap-2 { gap: 0.5rem; }
.gap-3 { gap: 0.75rem; }
.gap-4 { gap: 1rem; }
.gap-8 { gap: 2rem; }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.space-x-1 > * + * { margin-left: 0.25rem; }
.space-y-2 > * + * { margin-top: 0.5rem; }
.space-y-4 > * + * { margin-top: 1rem; }
.space-y-6 > * + * { margin-top: 1.5rem; }

.overflow-hidden { overflow: hidden; }
.rounded-lg { border-radius: 0.5rem; }
.rounded-xl { border-radius: 0.75rem; }
.rounded-2xl { border-radius: 1rem; }
.rounded-full { border-radius: 9999px; }
.border { border-width: 1px; }
.border-t { border-top-width: 1px; }
.border-b { border-bottom-width: 1px; }
.shadow-2xl { box-shadow: 0 25px 50px -12px rgba(0,0,0,0.25); }
.backdrop-blur-md { backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }

.bg-elmina-dark { background-color: var(--elmina-dark); }
.bg-elmina-dark\/90 { background-color: rgba(15, 23, 42, 0.90); }
.bg-elmina-card { background-color: var(--elmina-card); }
.bg-elmina-accent { background-color: var(--elmina-accent); }
.bg-white { background-color: #ffffff; }
.bg-white\/5 { background-color: rgba(255,255,255,0.05); }
.bg-white\/10 { background-color: rgba(255,255,255,0.10); }
.bg-white\/20 { background-color: rgba(255,255,255,0.20); }
.bg-black { background-color: #000000; }
.bg-black\/50 { background-color: rgba(0,0,0,0.50); }
.bg-black\/60 { background-color: rgba(0,0,0,0.60); }
.bg-black\/80 { background-color: rgba(0,0,0,0.80); }
.bg-black\/90 { background-color: rgba(0,0,0,0.90); }
.bg-gray-500 { background-color: #6b7280; }
.bg-red-500 { background-color: #ef4444; }
.bg-teal-400 { background-color: #2dd4bf; }
.bg-amber-400 { background-color: #fbbf24; }
.bg-teal-500\/10 { background-color: rgba(20,184,166,0.10); }
.bg-blue-500\/10 { background-color: rgba(59,130,246,0.10); }
.bg-purple-500\/10 { background-color: rgba(168,85,247,0.10); }
.bg-gradient-to-br { background-image: linear-gradient(to bottom right, var(--tw-gradient-stops)); }
.from-teal-900\/50 { --tw-gradient-from: rgba(19,78,74,0.50); --tw-gradient-to: rgba(19,78,74,0); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.to-elmina-card { --tw-gradient-to: var(--elmina-card); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }

.border-white\/5 { border-color: rgba(255,255,255,0.05); }
.border-white\/10 { border-color: rgba(255,255,255,0.10); }
.border-white\/20 { border-color: rgba(255,255,255,0.20); }
.border-teal-500\/20 { border-color: rgba(20,184,166,0.20); }
.border-blue-500\/20 { border-color: rgba(59,130,246,0.20); }
.border-purple-500\/20 { border-color: rgba(168,85,247,0.20); }

.text-elmina-light { color: var(--elmina-light); }
.text-elmina-dark { color: var(--elmina-dark); }
.text-elmina-muted { color: var(--elmina-muted); }
.text-elmina-accent { color: var(--elmina-accent); }
.text-white { color: #ffffff; }
.text-gray-300 { color: #d1d5db; }
.text-gray-400 { color: #9ca3af; }
.text-gray-500 { color: #6b7280; }
.text-red-400 { color: #f87171; }
.text-red-500 { color: #ef4444; }
.text-teal-400 { color: #2dd4bf; }
.text-blue-400 { color: #60a5fa; }
.text-purple-400 { color: #c084fc; }
.text-xs { font-size: 0.75rem; line-height: 1rem; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.text-center { text-align: center; }
.font-medium { font-weight: 500; }
.font-bold { font-weight: 700; }
.leading-relaxed { line-height: 1.625; }
.fill-current { fill: currentColor; }
.opacity-80 { opacity: 0.8; }

.transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-duration: 150ms; transition-timing-function: cubic-bezier(0.4,0,0.2,1); }
.transition-all { transition-property: all; transition-duration: 150ms; transition-timing-function: cubic-bezier(0.4,0,0.2,1); }
.transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-duration: 150ms; transition-timing-function: cubic-bezier(0.4,0,0.2,1); }

.hover\:text-white:hover { color: #ffffff; }
.hover\:bg-white\/5:hover { background-color: rgba(255,255,255,0.05); }
.hover\:bg-white\/20:hover { background-color: rgba(255,255,255,0.20); }
.hover\:bg-teal-300:hover { background-color: #5eead4; }
.hover\:bg-gray-200:hover { background-color: #e5e7eb; }
.hover\:bg-gray-900:hover { background-color: #111827; }
.hover\:bg-pink-500\/30:hover { background-color: rgba(236,72,153,0.30); }
.hover\:bg-blue-500\/30:hover { background-color: rgba(59,130,246,0.30); }
.hover\:bg-red-500\/30:hover { background-color: rgba(239,68,68,0.30); }

@keyframes elminaPulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
.animate-pulse { animation: elminaPulse 2s cubic-bezier(0.4,0,0.6,1) infinite; }

@media (min-width: 640px) {
    .sm\:block { display: block; }
    .sm\:inline-block { display: inline-block; }
    .sm\:px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
}

@media (min-width: 768px) {
    .md\:flex { display: flex; }
    .md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 1024px) {
    .lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .lg\:col-span-2 { grid-column: span 2 / span 2; }
    .lg\:px-8 { padding-left: 2rem; padding-right: 2rem; }
}

/* ==========================================================================
   LEGACY COMPONENT FOUNDATION
   ========================================================================== */
:root { --elmina-font-primary: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; }
html, body, button, input, textarea, select, a, p, span, div, label, h1, h2, h3, h4, h5, h6 {
    font-family: var(--elmina-font-primary) !important;
}
body, .font-sans, .elmina-title-font, .elmina-accent-font, .elmina-body-font {
    font-family: var(--elmina-font-primary) !important;
}
.video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; background: #000; border-radius: 0.5rem; }
.video-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.loader { border: 3px solid rgba(255,255,255,0.1); border-radius: 50%; border-top: 3px solid #2dd4bf; width: 40px; height: 40px; animation: spin 1s linear infinite; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
.animate-fadeIn { animation: fadeIn 0.3s ease-out; }
.elmina-title-font { font-family: var(--elmina-font-primary) !important; letter-spacing: 0.01em; font-variant: normal; text-transform: none; }
.elmina-accent-font { font-family: var(--elmina-font-primary) !important; letter-spacing: 0.01em; font-variant: normal; text-transform: none; }
.elmina-body-font { font-family: var(--elmina-font-primary) !important; }


header #header-logo-fallback { font-size: clamp(1.5rem, 2vw, 2rem); line-height: 1; }
header #header-slogan-fallback { font-size: clamp(0.8rem, 1vw, 0.95rem); }
#btn-islands-cam, #btn-city-cam { font-size: clamp(1rem, 1.25vw, 1.2rem); font-weight: 700; }
#channel-title { font-size: clamp(2rem, 3.2vw, 3rem); line-height: 1.08; }
#channel-desc { font-size: clamp(1rem, 1.28vw, 1.14rem); line-height: 1.7; }
main .space-y-6 h2, main .space-y-6 h3 { font-size: clamp(1.35rem, 1.7vw, 1.75rem); line-height: 1.2; }
#regions-content, #regions-content li, main .space-y-6 p, main .space-y-6 a, main .space-y-6 span { font-size: clamp(1rem, 1.08vw, 1.1rem); }
footer h4 { font-size: clamp(1.12rem, 1.35vw, 1.3rem); }
footer p, footer a, footer span { font-size: clamp(0.95rem, 1vw, 1.05rem); }

@media (max-width: 640px) {
    #btn-islands-cam, #btn-city-cam { font-size: 0.98rem; }
    main .space-y-6 h2, main .space-y-6 h3 { font-size: 1.28rem; }
    #regions-content, #regions-content li, main .space-y-6 p, main .space-y-6 a, main .space-y-6 span { font-size: 0.98rem; }
}


html, body {
    scrollbar-width: auto;
    scrollbar-color: #ffe84d #003f9e;
}


html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
    background: #003f9e;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #fff27a, #ffe84d 56%, #d8b500);
    border-radius: 999px;
    border: 2px solid #003f9e;
}

html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #fff69a, #ffe84d 56%, #c9a900);
}


#master-webcam-button {
    min-height: 6.25rem;
    padding: 1.12rem 1.35rem;
    margin-top: 1rem !important;
    margin-bottom: 1rem;
    text-align: center;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
#master-webcam-button .master-webcam-title {
    display: block;
    color: #ffe84d;
    font-size: clamp(1.45rem, 1.85vw, 1.85rem);
    font-weight: 900;
    line-height: 1.12;
}
#master-webcam-button .master-webcam-desc {
    display: block;
    max-width: 62rem;
    margin: 0.55rem auto 0;
    color: #ffffff;
    font-size: clamp(0.98rem, 1.08vw, 1.12rem);
    font-weight: 700;
    line-height: 1.36;
    opacity: 0.98;
}
@media (max-width: 767px) {
    #master-webcam-button {
        min-height: 3.25rem;
        padding: 0.75rem 0.9rem;
        margin-top: 0.75rem !important;
        margin-bottom: 0;
    }
    #master-webcam-button .master-webcam-title {
        font-size: 1rem;
    }
    #master-webcam-button .master-webcam-desc {
        display: none;
    }
}


#elmina-photo-card {
    overflow: hidden;
    background: linear-gradient(135deg, #004aad, #003f9e);
    color: #ffffff;
}
@media (min-width: 1024px) {
    #elmina-photo-card {
        margin-top: 1.75rem !important;
    }
}
.elmina-photo-gallery {
    width: 100%;
}
.elmina-photo-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}
.elmina-photo-title {
    color: #ffe84d;
    font-size: clamp(1.35rem, 1.7vw, 1.75rem);
    line-height: 1.08;
    font-weight: 900;
    margin: 0;
}
.elmina-photo-subtitle {
    color: #ffffff;
    font-size: clamp(0.96rem, 1.08vw, 1.08rem);
    line-height: 1.45;
    margin: 0.35rem 0 0;
}
.elmina-photo-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: #ffe84d;
    color: #004aad;
    font-size: 0.78rem;
    font-weight: 900;
    line-height: 1;
    padding: 0.48rem 0.72rem;
    white-space: nowrap;
    box-shadow: 0 7px 14px rgba(0, 74, 173, 0.10);
    cursor: pointer;
}
.elmina-photo-share:hover,
.elmina-photo-share:focus-visible {
    background: #fff27a;
}
.elmina-photo-gallery.has-many .elmina-photo-controls {
    display: flex;
}
.elmina-photo-empty {
    grid-column: 1 / -1;
    width: 100%;
    min-height: 9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 800;
    text-align: center;
    border: 1px dashed rgba(255, 255, 255, 0.35);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.08);
}
.elmina-photo-form {
    display: none;
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.11);
    border: 1px solid rgba(255, 255, 255, 0.18);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
}
.elmina-photo-form.is-open {
    display: block;
}
.elmina-photo-form-title {
    color: #ffe84d;
    font-size: 1rem;
    font-weight: 900;
    margin: 0;
}
.elmina-photo-form-intro,
.elmina-photo-compression-note {
    color: #ffffff;
    font-size: 0.82rem;
    line-height: 1.4;
    margin: 0.35rem 0 0.7rem;
    opacity: 0.9;
}
.elmina-photo-field {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.24);
    background: rgba(255, 255, 255, 0.13);
    color: #ffffff;
    border-radius: 0.75rem;
    padding: 0.68rem 0.78rem;
    margin-top: 0.55rem;
    font: inherit;
    font-size: 0.86rem;
    outline: none;
}
.elmina-photo-field::placeholder {
    color: rgba(255, 255, 255, 0.72);
}
.elmina-photo-field:focus {
    border-color: #ffe84d;
    box-shadow: 0 0 0 3px rgba(255, 232, 77, 0.18);
}
textarea.elmina-photo-field {
    resize: vertical;
    min-height: 5rem;
}
.elmina-photo-file {
    cursor: pointer;
}
.elmina-photo-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin-top: 0.75rem;
}
.elmina-photo-submit,
.elmina-photo-cancel {
    border: 0;
    border-radius: 999px;
    padding: 0.6rem 0.95rem;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 900;
    cursor: pointer;
}
.elmina-photo-submit {
    background: linear-gradient(145deg, #fff27a, #ffe84d 56%, #d8b500);
    color: #004aad;
}
.elmina-photo-cancel {
    background: rgba(255, 255, 255, 0.14);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.22);
}
.elmina-photo-status {
    min-height: 1.1rem;
    margin-top: 0.6rem;
    color: #ffe84d;
    font-size: 0.82rem;
    font-weight: 900;
    line-height: 1.35;
}
.elmina-photo-status.is-error {
    color: #ffb0b0;
}
.elmina-photo-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}
.elmina-photo-item {
    appearance: none;
    border: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
    text-align: left;
    color: #ffffff;
    min-width: 0;
}
.elmina-photo-frame {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 1rem;
    background: #eaf3ff;
    border: 1px solid rgba(255, 255, 255, 0.22);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.16);
}
.elmina-photo-frame img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.elmina-photo-caption {
    display: block;
    color: #ffffff;
    font-size: 0.92rem;
    font-weight: 900;
    line-height: 1.25;
    margin-top: 0.58rem;
}
.elmina-photo-meta {
    display: block;
    color: #ffe84d;
    font-size: 0.78rem;
    font-weight: 700;
    opacity: 0.78;
    margin-top: 0.22rem;
}
.elmina-photo-controls {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: 0.95rem;
}
.elmina-photo-arrow {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    border: 0;
    background: linear-gradient(145deg, #fff27a, #ffe84d 56%, #d8b500);
    color: #004aad;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 8px 16px rgba(0, 74, 173, 0.18);
}
.elmina-photo-count {
    min-width: 4rem;
    text-align: center;
    color: #ffe84d;
    font-size: 0.92rem;
    font-weight: 900;
}
.elmina-photo-viewer {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(0, 38, 91, 0.86);
    z-index: 9999;
    padding: 1rem;
}
.elmina-photo-viewer.is-open {
    display: flex;
}
.elmina-photo-viewer-panel {
    width: min(980px, 96vw);
    background: #ffffff;
    border-radius: 1.2rem;
    padding: 1rem;
    box-shadow: 0 24px 55px rgba(0, 0, 0, 0.34);
    border: 1px solid rgba(255, 232, 77, 0.55);
}
.elmina-photo-viewer-top {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.75rem;
}
.elmina-photo-close {
    border: 0;
    border-radius: 999px;
    background: #ffe84d;
    color: #004aad;
    padding: 0.55rem 0.85rem;
    font-weight: 900;
    cursor: pointer;
}
.elmina-photo-viewer-image {
    width: 100%;
    aspect-ratio: 16 / 10;
    border-radius: 0.9rem;
    overflow: hidden;
    background: #eaf3ff;
}
.elmina-photo-viewer-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}
.elmina-photo-viewer-bottom {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1rem;
    margin-top: 0.85rem;
}
.elmina-photo-viewer-caption {
    color: #004aad;
    text-align: center;
    font-weight: 900;
    line-height: 1.3;
}
.elmina-photo-viewer-meta {
    color: #004aad;
    text-align: center;
    font-size: 0.85rem;
    font-weight: 700;
    opacity: 0.78;
    margin-top: 0.18rem;
}
@media (max-width: 640px) {
    .elmina-photo-head {
        flex-direction: column;
        gap: 0.55rem;
    }
    .elmina-photo-title {
        font-size: 1.55rem;
    }
    .elmina-photo-grid {
        grid-template-columns: 1fr;
    }
    .elmina-photo-item {
        display: none;
    }
    .elmina-photo-item.is-active-mobile {
        display: block;
    }
    .elmina-photo-controls {
        display: flex;
    }
    .elmina-photo-viewer-panel {
        padding: 0.75rem;
    }
    .elmina-photo-viewer-image {
        aspect-ratio: 4 / 3;
    }
    .elmina-photo-viewer-bottom {
        gap: 0.55rem;
    }
    .elmina-photo-share,
    .elmina-photo-submit,
    .elmina-photo-cancel {
        width: 100%;
    }
    .elmina-photo-form-actions {
        display: grid;
        grid-template-columns: 1fr;
    }
}


#master-webcam-button .master-webcam-title-row {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    flex-wrap: wrap;
}

#master-webcam-button .master-webcam-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #ffe84d;
    color: #004aad;
    font-size: clamp(0.72rem, 0.82vw, 0.84rem);
    font-weight: 900;
    line-height: 1;
    padding: 0.42rem 0.68rem;
    box-shadow: 0 5px 12px rgba(0, 47, 116, 0.16);
    white-space: nowrap;
}

#master-webcam-button[data-webcam-active="true"] .master-webcam-action {
    background: #ffffff;
    color: #007a35;
}

@media (min-width: 1024px) {
    #master-webcam-button {
        min-height: 6.3rem;
        padding-top: 1.08rem;
        padding-bottom: 1.08rem;
        margin-top: 0.55rem !important;
        margin-bottom: 0.7rem;
    }

    #master-webcam-button .master-webcam-title {
        font-size: clamp(1.45rem, 1.85vw, 1.9rem);
    }

    #master-webcam-button .master-webcam-desc {
        margin-top: 0.48rem;
        font-size: clamp(0.98rem, 1.08vw, 1.12rem);
        line-height: 1.35;
    }

    #elmina-photo-card {
        margin-top: 1.15rem !important;
    }
}

@media (max-width: 767px) {
    #master-webcam-button .master-webcam-title-row {
        gap: 0.42rem;
    }

    #master-webcam-button .master-webcam-action {
        font-size: 0.68rem;
        padding: 0.34rem 0.52rem;
    }
}


@media (min-width: 1024px) {
    #master-webcam-button {
        min-height: 5.95rem;
        padding-top: 0.95rem;
        padding-bottom: 0.95rem;
        margin-top: 0.5rem !important;
        margin-bottom: 0.55rem !important;
    }

    #master-webcam-button .master-webcam-title {
        font-size: clamp(1.42rem, 1.75vw, 1.82rem);
        line-height: 1.08;
    }

    #master-webcam-button .master-webcam-desc {
        margin-top: 0.42rem;
        font-size: clamp(0.92rem, 1vw, 1.04rem);
        line-height: 1.28;
        max-width: 58rem;
    }

    #elmina-photo-card {
        margin-top: 0.95rem !important;
        padding: 1.35rem 1.35rem 1.1rem !important;
    }

    .elmina-photo-head {
        margin-bottom: 0.75rem;
        align-items: center;
    }

    .elmina-photo-title {
        font-size: clamp(1.32rem, 1.58vw, 1.65rem);
        line-height: 1.08;
    }

    .elmina-photo-subtitle {
        font-size: clamp(0.9rem, 0.98vw, 1rem);
        line-height: 1.28;
        margin-top: 0.28rem;
    }

    .elmina-photo-pill {
        padding: 0.42rem 0.68rem;
        font-size: 0.74rem;
    }

    .elmina-photo-grid {
        gap: 0.75rem;
    }

    .elmina-photo-frame {
        aspect-ratio: 16 / 10;
        border-radius: 0.85rem;
    }

    .elmina-photo-caption {
        font-size: 0.84rem;
        line-height: 1.18;
        margin-top: 0.42rem;
    }

    .elmina-photo-meta {
        font-size: 0.72rem;
        line-height: 1.18;
        margin-top: 0.12rem;
    }

    .elmina-photo-controls {
        margin-top: 0.65rem;
    }

    .elmina-photo-arrow {
        width: 2rem;
        height: 2rem;
    }

    .elmina-photo-count {
        font-size: 0.86rem;
    }
}


@media (min-width: 1024px) {
    #elmina-photo-card {
        padding: 1.45rem 1.35rem 1.35rem !important;
    }

    .elmina-photo-head {
        margin-bottom: 0.82rem;
    }

    .elmina-photo-frame {
        aspect-ratio: 16 / 10.85;
    }

    .elmina-photo-caption {
        margin-top: 0.48rem;
    }

    .elmina-photo-controls {
        margin-top: 0.82rem;
    }
}


html,
body {
    background: #f7fbff !important;
    color: #004aad;
}

body {
    overflow-y: scroll;
}

body.bg-elmina-dark,
header.bg-elmina-dark\/90 {
    background: #ffffff !important;
}

#elmina-right-column > div,
#elmina-photo-card {
    background: linear-gradient(135deg, #004aad, #003f9e);
    color: #ffffff;
}

.video-container {
    aspect-ratio: 16 / 9;
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
    background: #000000;
    contain: layout paint;
}

.video-container video,
.video-container #player-loader,
.video-container #player-error {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

#elmina-youtube-video-list {
    min-height: 15.25rem;
}

.elmina-youtube-frame {
    aspect-ratio: 16 / 9;
    background: #000000;
    contain: layout paint;
}

.elmina-youtube-frame iframe {
    display: block;
}

.elmina-photo-grid {
    align-items: start;
}

.elmina-photo-frame {
    background: linear-gradient(135deg, #dceeff, #ffffff);
    contain: layout paint;
}

.elmina-photo-frame img,
.elmina-photo-viewer-image img {
    display: block;
    backface-visibility: hidden;
}

@media (min-width: 1024px) {
    #elmina-youtube-card {
        min-height: 0;
    }

    #elmina-photo-card {
        transform: translateZ(0);
    }
}

@media (max-width: 767px) {
    body {
        overflow-y: auto;
    }

    #elmina-youtube-video-list {
        min-height: 0;
    }

    .video-container {
        aspect-ratio: 16 / 9;
    }
}


.elmina-photo-caption,
.elmina-photo-meta {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.elmina-photo-caption {
    min-height: 1.05em;
    max-height: 1.05em;
}

.elmina-photo-meta {
    min-height: 0.92em;
    max-height: 0.92em;
}

.elmina-photo-viewer-caption,
.elmina-photo-viewer-meta {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    max-height: none;
}

@media (min-width: 1024px) {
    .elmina-photo-caption {
        line-height: 1.18;
        min-height: 0.99rem;
        max-height: 0.99rem;
    }

    .elmina-photo-meta {
        line-height: 1.18;
        min-height: 0.85rem;
        max-height: 0.85rem;
    }
}

@media (max-width: 767px) {
    .elmina-photo-caption {
        line-height: 1.22;
        min-height: 1.05rem;
        max-height: 1.05rem;
    }

    .elmina-photo-meta {
        line-height: 1.18;
        min-height: 0.92rem;
        max-height: 0.92rem;
    }
}


@media (min-width: 1024px) {
    #elmina-photo-card {
        margin-top: 0.78rem !important;
        padding-top: 1.28rem !important;
    }
}


.elmina-live-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    font-family: Aptos, "Segoe UI", Arial, sans-serif;
}
.elmina-live-modal.is-open { display: flex; }
.elmina-live-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 34, 85, 0.56);
    backdrop-filter: blur(3px);
}
.elmina-live-modal-card {
    position: relative;
    width: min(520px, 100%);
    background: #004aad;
    color: #ffffff;
    border: 2px solid rgba(255, 232, 77, 0.82);
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
}
.elmina-live-modal-card h2 {
    margin: 0 0 8px;
    color: #ffe84d;
    font-size: 1.7rem;
    font-weight: 900;
}
.elmina-live-intro {
    margin: 0 0 16px;
    color: #ffffff;
    line-height: 1.45;
    font-weight: 700;
}
.elmina-live-close {
    position: absolute;
    top: 10px;
    right: 12px;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    font-weight: 900;
    cursor: pointer;
}
#elmina-go-live-form {
    display: grid;
    gap: 10px;
}
#elmina-go-live-form input,
#elmina-go-live-form textarea {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 14px;
    padding: 12px 13px;
    color: #004aad;
    background: #ffffff;
    font-weight: 800;
    outline: none;
}
#elmina-go-live-form textarea { resize: vertical; min-height: 94px; }
.elmina-live-consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 0;
    color: #ffffff;
    font-weight: 800;
    line-height: 1.35;
}
.elmina-live-consent input {
    width: auto !important;
    margin-top: 3px;
}
.elmina-live-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}
.elmina-live-actions button {
    border: 0;
    border-radius: 999px;
    padding: 12px 18px;
    font-weight: 900;
    cursor: pointer;
}
.elmina-live-actions button[type="submit"] {
    background: #ffe84d;
    color: #004aad;
}
.elmina-live-actions button[type="button"] {
    background: rgba(255, 255, 255, 0.18);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.36);
}
.elmina-live-status {
    min-height: 22px;
    margin: 2px 0 0;
    color: #ffe84d;
    font-weight: 900;
    line-height: 1.35;
}
@media (max-width: 640px) {
    .elmina-live-modal { align-items: flex-end; padding: 10px; }
    .elmina-live-modal-card { border-radius: 22px; padding: 18px; }
    .elmina-live-modal-card h2 { font-size: 1.35rem; }
    .elmina-live-actions button { width: 100%; }
}


.elmina-go-live-button-active {
    position: relative !important;
    border-radius: 0.75rem !important;
    background: #ffffff !important;
    color: #d60000 !important;
    border: 3px solid #d60000 !important;
    box-shadow: 0 0 0 3px rgba(214, 0, 0, 0.18), 0 8px 18px rgba(214, 0, 0, 0.18) !important;
    font-weight: 950 !important;
    letter-spacing: 0.06em !important;
}

.elmina-tab-live-dot,
.elmina-live-dot {
    width: 0.78rem;
    height: 0.78rem;
    border-radius: 999px;
    background: #d60000;
    box-shadow: 0 0 0 0 rgba(214, 0, 0, 0.68), 0 0 12px rgba(214, 0, 0, 0.95);
    animation: elminaLivePulse 1.05s ease-in-out infinite;
    display: inline-block;
    flex: 0 0 auto;
}

@keyframes elminaLivePulse {
    0% { transform: scale(0.92); box-shadow: 0 0 0 0 rgba(214, 0, 0, 0.68), 0 0 12px rgba(214, 0, 0, 0.95); }
    70% { transform: scale(1.14); box-shadow: 0 0 0 12px rgba(214, 0, 0, 0), 0 0 18px rgba(214, 0, 0, 0.85); }
    100% { transform: scale(0.92); box-shadow: 0 0 0 0 rgba(214, 0, 0, 0), 0 0 12px rgba(214, 0, 0, 0.95); }
}

.elmina-live-player-overlay {
    display: none;
    position: absolute;
    inset: 0;
    z-index: 35;
    background: radial-gradient(circle at center, rgba(20, 20, 20, 0.84), rgba(0, 0, 0, 0.94));
    color: #ffffff;
    border-radius: inherit;
    cursor: pointer;
    overflow: hidden;
}


.elmina-sfu-video {
    display: none;
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #000000;
}

.has-sfu-stream .elmina-sfu-video {
    display: block;
}

.has-sfu-stream .elmina-live-player-center {
    opacity: 0;
    pointer-events: none;
}

.has-sfu-stream
.elmina-live-audio-note {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 6;
    background: rgba(255, 255, 255, 0.95);
    color: #d60000;
    border: 2px solid rgba(214, 0, 0, 0.65);
    border-radius: 999px;
    padding: 0.36rem 0.68rem;
    font-size: 0.78rem;
    font-weight: 900;
}

.elmina-live-player-open {
    opacity: 1;
    pointer-events: auto;
}

.elmina-live-top-badge,
.elmina-live-player-countdown,
.elmina-live-viewer-close {
    z-index: 5;
}

.elmina-live-session-active .elmina-live-player-overlay {
    display: flex;
    align-items: center;
    justify-content: center;
}

.elmina-live-session-active .video-container > #video-player {
    opacity: 0.18;
}

.elmina-live-top-badge {
    position: absolute;
    top: 0.78rem;
    right: 0.85rem;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.42rem 0.68rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.95);
    color: #d60000;
    border: 2px solid #d60000;
    box-shadow: 0 10px 22px rgba(0, 0, 0, 0.2);
    font-weight: 950;
    letter-spacing: 0.08em;
    line-height: 1;
}

.elmina-live-player-countdown {
    position: absolute;
    top: 3.72rem;
    right: 1rem;
    color: #ff3333;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(214, 0, 0, 0.32);
    border-radius: 999px;
    padding: 0.28rem 0.58rem;
    font-size: clamp(0.88rem, 1vw, 1rem);
    font-weight: 950;
    line-height: 1;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16);
}

.elmina-live-player-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    text-align: center;
    padding: 1.5rem;
    max-width: 34rem;
}

.elmina-live-player-title {
    color: #ffffff;
    font-size: clamp(1.25rem, 2.5vw, 2.15rem);
    font-weight: 950;
    line-height: 1.08;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.55);
}

.elmina-live-player-subtitle {
    color: rgba(255, 255, 255, 0.88);
    font-size: clamp(0.88rem, 1.2vw, 1.05rem);
    font-weight: 700;
    line-height: 1.35;
}


.elmina-live-audio-note {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 6;
    background: rgba(255, 255, 255, 0.95);
    color: #d60000;
    border: 2px solid rgba(214, 0, 0, 0.65);
    border-radius: 999px;
    padding: 0.36rem 0.68rem;
    font-size: 0.78rem;
    font-weight: 900;
}

.elmina-live-player-open {
    margin-top: 0.35rem;
    border: 2px solid #d60000;
    border-radius: 999px;
    background: #ffffff;
    color: #d60000;
    font-weight: 950;
    padding: 0.48rem 0.9rem;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
}

.elmina-live-viewer {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 130;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
}

.elmina-live-viewer.is-open {
    display: flex;
}

.elmina-live-viewer-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.78);
    backdrop-filter: blur(4px);
}

.elmina-live-viewer-panel {
    position: relative;
    z-index: 1;
    width: min(94vw, 920px);
    border-radius: 1.2rem;
    background: #050505;
    border: 2px solid rgba(214, 0, 0, 0.75);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.48);
    overflow: hidden;
}

.elmina-live-viewer-screen {
    position: relative;
    aspect-ratio: 16 / 9;
    min-height: 18rem;
    background: radial-gradient(circle at center, rgba(20, 20, 20, 0.86), rgba(0, 0, 0, 0.96));
    display: flex;
    align-items: center;
    justify-content: center;
}

.elmina-live-viewer-close {
    position: absolute;
    z-index: 4;
    top: 0.7rem;
    left: 0.7rem;
    width: 2.15rem;
    height: 2.15rem;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #d60000;
    font-weight: 950;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
}

@media (max-width: 767px) {
    .elmina-go-live-button-active {
        letter-spacing: 0.035em !important;
    }

    .elmina-live-top-badge {
        top: 0.55rem;
        right: 0.55rem;
        padding: 0.35rem 0.5rem;
        font-size: 0.78rem;
    }

    .elmina-live-player-countdown {
        top: 2.95rem;
        right: 0.62rem;
        font-size: 0.78rem;
        padding: 0.24rem 0.48rem;
    }

    .elmina-live-player-center {
        gap: 0.35rem;
        padding: 1rem 0.8rem;
    }


.elmina-live-audio-note {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 6;
    background: rgba(255, 255, 255, 0.95);
    color: #d60000;
    border: 2px solid rgba(214, 0, 0, 0.65);
    border-radius: 999px;
    padding: 0.36rem 0.68rem;
    font-size: 0.78rem;
    font-weight: 900;
}

.elmina-live-player-open {
        padding: 0.4rem 0.7rem;
        font-size: 0.78rem;
    }

    .elmina-live-viewer {
        padding: 0.7rem;
        align-items: center;
    }

    .elmina-live-viewer-panel {
        width: 96vw;
        border-radius: 0.95rem;
    }

    .elmina-live-viewer-screen {
        min-height: 13rem;
    }
}


@media (orientation: landscape) and (max-height: 520px) and (max-width: 950px) {
    .elmina-live-modal {
        align-items: flex-start;
        justify-content: center;
        padding: 8px;
        overflow-y: auto;
    }

    .elmina-live-modal-card {
        width: min(92vw, 640px);
        max-height: calc(100dvh - 16px);
        overflow-y: auto;
        border-radius: 16px;
        padding: 12px 14px;
    }

    .elmina-live-modal-card h2 {
        font-size: 1.08rem;
        margin-bottom: 4px;
    }

    .elmina-live-intro {
        font-size: 0.8rem;
        line-height: 1.22;
        margin-bottom: 8px;
    }

    #elmina-go-live-form {
        gap: 6px;
    }

    #elmina-go-live-form input,
    #elmina-go-live-form textarea {
        padding: 0.42rem 0.58rem;
        font-size: 0.82rem;
        border-radius: 10px;
    }

    #elmina-go-live-form textarea {
        min-height: 52px;
        max-height: 74px;
    }

    .elmina-live-consent {
        gap: 0.45rem;
        font-size: 0.74rem;
        line-height: 1.18;
    }

    .elmina-live-actions {
        gap: 0.45rem;
    }

    .elmina-live-actions button {
        padding: 0.46rem 0.62rem;
        font-size: 0.82rem;
    }

    .elmina-live-status {
        min-height: 16px;
        font-size: 0.78rem;
        line-height: 1.2;
    }

    .elmina-live-viewer {
        padding: 0.35rem;
        align-items: center;
    }

    .elmina-live-viewer-panel {
        width: min(92vw, 760px);
        max-height: calc(100dvh - 0.7rem);
        border-radius: 0.7rem;
    }

    .elmina-live-viewer-screen {
        min-height: 0;
        height: min(51.75vw, calc(100dvh - 0.7rem));
        aspect-ratio: auto;
    }

    .elmina-live-viewer-close {
        top: 0.38rem;
        left: 0.38rem;
        width: 1.75rem;
        height: 1.75rem;
        font-size: 1rem;
    }

    .elmina-live-top-badge {
        top: 0.38rem;
        right: 0.42rem;
        padding: 0.28rem 0.45rem;
        font-size: 0.7rem;
    }

    .elmina-live-player-countdown {
        top: 2.48rem;
        right: 0.46rem;
        padding: 0.2rem 0.42rem;
        font-size: 0.7rem;
    }

    .elmina-live-player-center {
        gap: 0.25rem;
        padding: 0.55rem 0.72rem;
    }

    .elmina-live-player-title {
        font-size: clamp(1rem, 3.2vw, 1.28rem);
    }

    .elmina-live-player-subtitle {
        display: none;
    }


.elmina-live-audio-note {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 6;
    background: rgba(255, 255, 255, 0.95);
    color: #d60000;
    border: 2px solid rgba(214, 0, 0, 0.65);
    border-radius: 999px;
    padding: 0.36rem 0.68rem;
    font-size: 0.78rem;
    font-weight: 900;
}

.elmina-live-player-open {
        margin-top: 0.12rem;
        padding: 0.32rem 0.58rem;
        font-size: 0.72rem;
    }
}


.elmina-live-waiting {
  display: grid;
  gap: 12px;
  text-align: center;
}
.elmina-live-waiting-title {
  font-weight: 900;
  color: var(--elmina-blue, #0f5f8f);
  font-size: clamp(20px, 4vw, 28px);
}
.elmina-live-waiting-text,
.elmina-live-waiting-note {
  margin: 0;
  line-height: 1.45;
  color: rgba(22, 50, 74, 0.82);
}
.elmina-live-waiting-note { font-size: 13px; }
.elmina-live-request-id {
  border-radius: 999px;
  background: rgba(15, 95, 143, 0.10);
  color: var(--elmina-blue-dark, #0a3f63);
  font-weight: 800;
  padding: 8px 12px;
  overflow-wrap: anywhere;
}
.elmina-live-waiting-state {
  color: #8a5b00;
  font-weight: 900;
}
.elmina-live-waiting-state.is-approved {
  color: #0f7a3d;
}
.elmina-live-open-camera {
  background: #d60000 !important;
  color: #ffffff !important;
  box-shadow: 0 8px 18px rgba(214, 0, 0, 0.18);
}
.elmina-live-open-camera:disabled {
  background: #cfd8df !important;
  color: #52616f !important;
  box-shadow: none;
  cursor: not-allowed;
}


.elmina-live-modal-card .elmina-live-waiting-title {
  color: #ffe84d;
}
.elmina-live-modal-card .elmina-live-waiting-text,
.elmina-live-modal-card .elmina-live-waiting-note {
  color: rgba(255, 255, 255, 0.94);
}
.elmina-live-modal-card .elmina-live-request-id {
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 232, 77, 0.35);
  color: #ffffff;
}
.elmina-live-modal-card .elmina-live-waiting-state {
  color: #ffe84d;
}
.elmina-live-modal-card .elmina-live-waiting-state.is-approved {
  color: #7dff9b;
}
.elmina-live-modal-card .elmina-live-waiting-note {
  opacity: 0.96;
}


.elmina-live-session-active .video-container .elmina-sfu-video {
    opacity: 1 !important;
    filter: none !important;
}

.has-sfu-stream .elmina-live-player-overlay,
.has-sfu-stream.elmina-live-viewer-screen {
    background: #000000;
}

.has-sfu-stream .elmina-live-player-center .elmina-live-player-title,
.has-sfu-stream .elmina-live-player-center .elmina-live-player-subtitle {
    opacity: 0;
    pointer-events: none;
}

.has-sfu-stream .elmina-live-player-center {
    opacity: 1;
    pointer-events: none;
}

.has-sfu-stream .elmina-live-player-center .elmina-live-player-open {
    opacity: 0;
    pointer-events: none;
}

.elmina-live-audio-note {
    display: none;
}

.has-sfu-stream .elmina-live-audio-note {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 8;
    background: rgba(255, 255, 255, 0.96);
    color: #d60000;
    border: 2px solid rgba(214, 0, 0, 0.78);
    border-radius: 999px;
    padding: 0.44rem 0.78rem;
    font-size: 0.82rem;
    font-weight: 950;
    cursor: pointer;
    box-shadow: 0 10px 22px rgba(0, 0, 0, 0.28);
}

.has-sfu-stream .elmina-live-audio-note.audio-on {
    color: #047857;
    border-color: rgba(4, 120, 87, 0.78);
}

.elmina-live-viewer-screen.has-sfu-stream .elmina-live-player-center {
    opacity: 1;
}

.elmina-live-viewer-screen.has-sfu-stream #elmina-live-viewer-subtitle {
    opacity: 0;
}

.elmina-live-viewer-screen.has-sfu-stream #elmina-live-audio-button {
    opacity: 1;
    pointer-events: auto;
}


.elmina-live-session-active .video-container > #video-player {
    opacity: 0 !important;
    visibility: hidden !important;
}
.elmina-live-session-active .elmina-live-player-overlay {
    background: #000000 !important;
}
.elmina-live-session-active .video-container .elmina-sfu-video,
.elmina-live-session-active .elmina-live-viewer-screen .elmina-sfu-video,
.elmina-sfu-video {
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    transform: translateZ(0);
    z-index: 2 !important;
    background: #000000 !important;
}
.has-sfu-stream .elmina-live-player-overlay::before,
.has-sfu-stream.elmina-live-viewer-screen::before {
    content: none !important;
    display: none !important;
}
.has-sfu-stream .elmina-live-player-center {
    display: none !important;
}
.has-sfu-stream .elmina-live-top-badge,
.has-sfu-stream .elmina-live-player-countdown,
.has-sfu-stream .elmina-live-audio-note,
.has-sfu-stream #elmina-live-audio-button {
    opacity: 1 !important;
    visibility: visible !important;
}
.elmina-live-audio-note,
#elmina-live-audio-button {
    user-select: none;
    -webkit-user-select: none;
}
.has-sfu-stream .elmina-live-audio-note,
.elmina-live-viewer-screen.has-sfu-stream #elmina-live-audio-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 4.8rem;
    min-height: 2.35rem;
    z-index: 20 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    color: #d60000 !important;
    border: 2px solid rgba(214, 0, 0, 0.85) !important;
    border-radius: 999px !important;
    font-weight: 950 !important;
    letter-spacing: 0.03em;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.28) !important;
}
.has-sfu-stream .elmina-live-audio-note.audio-on,
.elmina-live-viewer-screen.has-sfu-stream #elmina-live-audio-button.audio-on {
    color: #047857 !important;
    border-color: rgba(4, 120, 87, 0.85) !important;
}
@media (max-width: 768px) {
    .has-sfu-stream .elmina-live-audio-note {
        left: 0.65rem !important;
        bottom: 0.65rem !important;
        min-width: 4.15rem;
        min-height: 2.05rem;
        font-size: 0.72rem !important;
        padding: 0.34rem 0.58rem !important;
    }
}


.elmina-live-modal {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}
.elmina-live-modal-card {
    max-height: calc(100vh - 36px);
    overflow-y: auto;
    overscroll-behavior: contain;
}
.elmina-live-duration-label {
    display: grid;
    gap: 4px;
    color: #ffdddd;
    font-weight: 950;
    line-height: 1.22;
}
.elmina-live-duration-label span {
    color: #ffdddd;
    font-weight: 950;
}
.elmina-live-duration-label small {
    color: #ffdddd;
    font-weight: 850;
    opacity: 0.98;
}
#elmina-live-requested-minutes {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 14px;
    padding: 12px 13px;
    color: #004aad;
    background: #ffffff;
    font-weight: 900;
    outline: none;
}
.elmina-live-modal-card .elmina-live-waiting-state.is-waiting,
.elmina-live-waiting-state.is-waiting,
.elmina-live-open-camera:disabled {
    color: #ffdddd !important;
}
.elmina-live-open-camera:disabled {
    background: #d60000 !important;
    border: 2px solid rgba(255, 221, 221, 0.85) !important;
    opacity: 0.78;
}
.elmina-live-modal-card .elmina-live-waiting-state.is-approved {
    color: #7dff9b !important;
}
@media (max-width: 640px) {
    .elmina-live-modal {
        align-items: center;
        padding: 10px;
    }
    .elmina-live-modal-card {
        max-height: calc(100vh - 20px);
    }
}


:root {
    --elmina-font-primary: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    --elmina-blue: #004aad;
    --elmina-blue-dark: #003f9e;
    --elmina-yellow: #ffe84d;
    --elmina-card-shadow: 0 16px 34px rgba(0, 74, 173, 0.16);
    --elmina-card-border: rgba(255, 255, 255, 0.20);
}

html, body, button, input, textarea, select {
    font-family: var(--elmina-font-primary) !important;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar {
    width: 14px;
    height: 14px;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
    border-width: 3px;
}

#header-slogan-fallback {
    font-weight: 800 !important;
    letter-spacing: 0.01em;
}

#channel-desc {
    font-weight: 400 !important;
    color: #496a94 !important;
}

#master-webcam-button {
    min-height: 5.15rem !important;
    padding: 0.9rem 1.15rem !important;
    border-radius: 0.9rem !important;
}

#master-webcam-button .master-webcam-title {
    font-size: clamp(1.08rem, 1.36vw, 1.36rem) !important;
    font-weight: 850 !important;
}

#master-webcam-button .master-webcam-action {
    font-size: clamp(0.72rem, 0.78vw, 0.82rem) !important;
    padding: 0.34rem 0.62rem !important;
    min-height: 1.68rem !important;
}

#master-webcam-button .master-webcam-desc {
    max-width: 58rem !important;
    font-size: clamp(0.86rem, 0.94vw, 0.98rem) !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
    opacity: 0.94 !important;
}

#elmina-right-column > div,
#elmina-photo-card {
    border-radius: 1rem !important;
    border: 1px solid var(--elmina-card-border) !important;
    box-shadow: var(--elmina-card-shadow) !important;
}


#link-appstore-mobile,
#link-playstore-mobile,
#memory-wall-share-button,
#elmina-youtube-share-button,
.elmina-photo-pill,
.elmina-photo-submit,
.elmina-photo-cancel,
.elmina-video-form-actions button,
.elmina-live-actions button {
    min-height: 2.15rem;
    border-radius: 999px !important;
    font-weight: 850 !important;
}

.elmina-photo-form,
.elmina-video-form-panel,
#memory-wall-form-card,
.elmina-live-modal-card {
    border-radius: 1rem !important;
}

.elmina-photo-field,
.elmina-video-form input,
.elmina-video-form textarea,
#memory-wall-form input,
#memory-wall-form textarea,
#elmina-go-live-form input,
#elmina-go-live-form textarea,
#elmina-live-requested-minutes {
    border-radius: 0.72rem !important;
}

.elmina-photo-form-actions,
.elmina-video-form-actions,
#memory-wall-form-actions,
.elmina-live-actions {
    gap: 0.55rem !important;
}

@media (min-width: 1024px) {
    footer {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
        margin-top: 1.75rem !important;
    }

    footer .grid {
        gap: 1.65rem !important;
        margin-bottom: 1.45rem !important;
    }

    footer h4 {
        margin-bottom: 0.85rem !important;
    }


}

@media (max-width: 767px) {
    #master-webcam-button {
        min-height: 3.05rem !important;
        padding: 0.68rem 0.82rem !important;
    }

    #master-webcam-button .master-webcam-title {
        font-size: 0.98rem !important;
    }

    #master-webcam-button .master-webcam-action {
        font-size: 0.68rem !important;
        min-height: 1.55rem !important;
        padding: 0.28rem 0.52rem !important;
    }
}

@media (max-width: 640px) {
    body.elmina-memory-form-open {
        overflow: hidden !important;
        touch-action: none;
    }

    #memory-wall-form-panel {
        position: fixed !important;
        inset: 0 !important;
        z-index: 9998 !important;
        padding: 10px !important;
        align-items: center !important;
        justify-content: center !important;
    }

    #memory-wall-form-card {
        width: min(100%, 420px) !important;
        max-height: calc(100dvh - 20px) !important;
        padding: 0.82rem !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    #memory-wall-form input,
    #memory-wall-form textarea,
    .elmina-photo-field,
    .elmina-video-form input,
    .elmina-video-form textarea,
    #elmina-go-live-form input,
    #elmina-go-live-form textarea,
    #elmina-live-requested-minutes {
        font-size: 16px !important;
    }

    #memory-wall-form-short {
        min-height: 72px !important;
    }

    #memory-wall-form-more {
        min-height: 86px !important;
    }

    #memory-wall-form-actions,
    .elmina-video-form-actions,
    .elmina-photo-form-actions,
    .elmina-live-actions {
        justify-content: stretch !important;
    }

    #memory-wall-form-actions button,
    .elmina-video-form-actions button,
    .elmina-photo-submit,
    .elmina-photo-cancel,
    .elmina-live-actions button {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        font-size: 0.82rem !important;
    }
}


.master-youtube-live-frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    display: none;
    background: #000000;
    z-index: 4;
}


#master-webcam-button .master-webcam-action {
    letter-spacing: 0.01em;
}


.master-youtube-live-reconnect {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 6;
    display: none;
    width: min(88%, 560px);
    padding: 0.9rem 1.05rem;
    border-radius: 1rem;
    background: rgba(0, 45, 110, 0.92);
    border: 1px solid rgba(255, 232, 77, 0.62);
    color: #ffffff;
    font-size: 0.86rem;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.28);
    pointer-events: none;
}

.master-youtube-live-reconnect.is-visible {
    display: block;
}

@media (max-width: 640px) {
    .master-youtube-live-reconnect {
        width: min(90%, 520px);
        border-radius: 0.85rem;
        font-size: 0.76rem;
        padding: 0.68rem 0.78rem;
    }
}


#master-webcam-button.master-webcam-static,
#master-webcam-button {
    cursor: default !important;
    text-align: left !important;
    align-items: flex-start !important;
    justify-content: center !important;
    border-radius: 0.75rem !important;
    box-shadow: none !important;
}

#master-webcam-button.master-webcam-static:hover,
#master-webcam-button:hover {
    filter: none !important;
    transform: none !important;
}

#master-webcam-button .master-webcam-title-row {
    justify-content: flex-start !important;
    align-items: baseline !important;
    gap: 0.45rem !important;
}

#master-webcam-button .master-webcam-title,
#master-webcam-button .master-webcam-desc {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#master-webcam-button .master-webcam-action {
    display: inline !important;
    background: transparent !important;
    color: #ffe84d !important;
    border-radius: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    box-shadow: none !important;
    font-size: clamp(0.78rem, 0.84vw, 0.88rem) !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

#master-webcam-button[data-webcam-active="true"] .master-webcam-action {
    background: transparent !important;
    color: #ffe84d !important;
}

@media (max-width: 767px) {
    #master-webcam-button.master-webcam-static,
    #master-webcam-button {
        text-align: left !important;
        align-items: flex-start !important;
    }
    #master-webcam-button .master-webcam-title-row {
        justify-content: flex-start !important;
    }
}


body.master-youtube-live-active .elmina-live-player-overlay {
    display: none !important;
    pointer-events: none !important;
}
body.master-youtube-live-active .video-container > #video-player {
    opacity: 0 !important;
    visibility: hidden !important;
}
body.master-youtube-live-active .video-container .elmina-sfu-video {
    display: none !important;
}


#header-slogan-fallback.elmina-header-brand-title {
    display: inline-flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 0;
    line-height: 0.96;
    color: #0057B8 !important;
    max-width: min(64vw, 520px) !important;
    white-space: nowrap;
}

#header-slogan-fallback .elmina-header-brand-main {
    display: block;
    font-size: clamp(1.34rem, 1.65vw, 1.58rem);
    font-weight: 900;
    letter-spacing: 0.004em;
    line-height: 0.98;
}

#header-slogan-fallback .elmina-header-brand-sub {
    display: block;
    margin-top: 0.06rem;
    font-size: clamp(0.82rem, 1vw, 0.95rem);
    font-weight: 800;
    letter-spacing: 0.006em;
    line-height: 1.02;
}

@media (max-width: 640px) {
    #header-slogan-fallback.elmina-header-brand-title {
        max-width: calc(100vw - 7.2rem) !important;
    }

    #header-slogan-fallback .elmina-header-brand-main {
        font-size: clamp(1.18rem, 5.6vw, 1.34rem);
    }

    #header-slogan-fallback .elmina-header-brand-sub {
        font-size: clamp(0.76rem, 3.9vw, 0.88rem);
    }
}


#btn-islands-cam,
#btn-city-cam,
#elmina-radio-tab-button {
    min-height: 56px !important;
    line-height: 1.12 !important;
}

#btn-islands-cam {
    gap: 0.7rem !important;
}

#btn-islands-cam .elmina-islands-label {
    display: inline-block;
    color: inherit;
    font-weight: 850;
    line-height: 1.05;
    text-align: center;
}

#btn-islands-cam .elmina-islands-stream-dot {
    width: 15px !important;
    height: 15px !important;
    min-width: 15px !important;
    min-height: 15px !important;
    border-radius: 999px !important;
    background: #22c55e !important;
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.68), 0 0 12px rgba(34, 197, 94, 0.88) !important;
    animation: elminaCamGreenPulse 1.08s ease-in-out infinite !important;
    display: inline-block !important;
    flex: 0 0 auto !important;
}

@keyframes elminaCamGreenPulse {
    0% { transform: scale(0.90); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.68), 0 0 10px rgba(34, 197, 94, 0.88); }
    70% { transform: scale(1.16); box-shadow: 0 0 0 10px rgba(34, 197, 94, 0), 0 0 16px rgba(34, 197, 94, 0.78); }
    100% { transform: scale(0.90); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0), 0 0 10px rgba(34, 197, 94, 0.88); }
}

@media (max-width: 640px) {
    .flex.space-x-1.bg-elmina-card {
        gap: 0.62rem !important;
    }

    #btn-islands-cam,
    #btn-city-cam,
    #elmina-radio-tab-button {
        min-height: 48px !important;
        padding: 0.6rem 0.72rem !important;
        border-radius: 0.72rem !important;
        font-size: 0.84rem !important;
        line-height: 1.08 !important;
    }

    #btn-islands-cam {
        gap: 0.48rem !important;
    }

    #btn-islands-cam .elmina-islands-label {
        font-size: 0.9rem !important;
        line-height: 1.08 !important;
        white-space: normal !important;
        max-width: 5.4rem !important;
    }

    #btn-islands-cam .elmina-islands-stream-dot {
        width: 12px !important;
        height: 12px !important;
        min-width: 12px !important;
        min-height: 12px !important;
    }

    #btn-city-cam {
        font-size: 0.82rem !important;
    }

    #elmina-radio-tab-button {
        font-size: 0.78rem !important;
        letter-spacing: 0.12em !important;
    }
}


#btn-islands-cam {
    position: relative !important;
    justify-content: flex-start !important;
    padding-left: clamp(1.35rem, 3.4vw, 3.7rem) !important;
    padding-right: clamp(4.6rem, 8.5vw, 7rem) !important;
    overflow: hidden !important;
}

#btn-islands-cam .elmina-islands-main {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0.72rem !important;
    min-width: 0 !important;
}

#btn-islands-cam .elmina-islands-label {
    white-space: nowrap !important;
}

#btn-islands-cam .elmina-islands-refresh-hint {
    position: absolute !important;
    right: 0.95rem !important;
    bottom: 0.42rem !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.22rem !important;
    color: #ef4444 !important;
    font-size: 0.70rem !important;
    font-weight: 850 !important;
    letter-spacing: 0.01em !important;
    line-height: 1 !important;
    text-transform: none !important;
    opacity: 0.96 !important;
    pointer-events: none !important;
}

#btn-islands-cam .elmina-islands-refresh-triangle {
    font-size: 0.67rem !important;
    line-height: 1 !important;
    transform: translateY(-0.02rem) !important;
}

@media (max-width: 640px) {
    #btn-islands-cam {
        padding-left: 1.05rem !important;
        padding-right: 3.45rem !important;
    }

    #btn-islands-cam .elmina-islands-main {
        gap: 0.46rem !important;
    }

    #btn-islands-cam .elmina-islands-label {
        font-size: 0.78rem !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        max-width: none !important;
    }

    #btn-islands-cam .elmina-islands-refresh-hint {
        right: 0.54rem !important;
        bottom: 0.36rem !important;
        font-size: 0.54rem !important;
        gap: 0.12rem !important;
        letter-spacing: 0 !important;
    }

    #btn-islands-cam .elmina-islands-refresh-triangle {
        font-size: 0.50rem !important;
    }
}


#btn-islands-cam .elmina-islands-label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0.24rem !important;
    white-space: nowrap !important;
}

#btn-islands-cam .elmina-islands-word {
    display: inline-block !important;
    line-height: 1 !important;
}

@media (max-width: 640px) {
    #btn-islands-cam {
        padding-left: 0.82rem !important;
        padding-right: 2.85rem !important;
        min-height: 48px !important;
    }

    #btn-islands-cam .elmina-islands-main {
        gap: 0.40rem !important;
        align-items: center !important;
        min-width: 0 !important;
    }

    #btn-islands-cam .elmina-islands-label {
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        gap: 0.02rem !important;
        font-size: 0.70rem !important;
        line-height: 0.92 !important;
        white-space: normal !important;
        max-width: 3.25rem !important;
        overflow: visible !important;
    }

    #btn-islands-cam .elmina-islands-word {
        line-height: 0.92 !important;
        white-space: nowrap !important;
    }

    #btn-islands-cam .elmina-islands-stream-dot {
        width: 11px !important;
        height: 11px !important;
        min-width: 11px !important;
        min-height: 11px !important;
    }

    #btn-islands-cam .elmina-islands-refresh-hint {
        right: 0.42rem !important;
        bottom: 0.31rem !important;
        font-size: 0.46rem !important;
        gap: 0.08rem !important;
        letter-spacing: -0.01em !important;
    }

    #btn-islands-cam .elmina-islands-refresh-triangle {
        font-size: 0.43rem !important;
    }
}


#elmina-radio-tab-button .elmina-radio-live-shell {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border-radius: inherit !important;
    background:
        radial-gradient(circle at 30% 35%, rgba(0, 245, 212, 0.16), transparent 35%),
        radial-gradient(circle at 65% 52%, rgba(255, 43, 214, 0.16), transparent 34%),
        #05070c !important;
}

#elmina-radio-tab-button .elmina-radio-live-antenna {
    position: absolute !important;
    left: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #00f5d4 !important;
    opacity: 0.92 !important;
    filter: drop-shadow(0 0 5px rgba(0, 245, 212, 0.75)) !important;
    z-index: 2 !important;
}

#elmina-radio-tab-button .elmina-radio-wave-wrap {
    position: absolute !important;
    left: 30px !important;
    right: 39px !important;
    top: 50% !important;
    height: 42px !important;
    transform: translateY(-50%) !important;
    display: block !important;
    overflow: visible !important;
}

#elmina-radio-tab-button .elmina-radio-neon-wave {
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
    display: block !important;
}

#elmina-radio-tab-button .elmina-radio-wave-back,
#elmina-radio-tab-button .elmina-radio-wave-main,
#elmina-radio-tab-button .elmina-radio-wave-thin,
#elmina-radio-tab-button .elmina-radio-wave-center {
    fill: none !important;
    stroke: url(#elminaRadioWaveGradient) !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    vector-effect: non-scaling-stroke !important;
}

#elmina-radio-tab-button .elmina-radio-wave-back {
    stroke-width: 7.4 !important;
    opacity: 0.20 !important;
    filter: url(#elminaRadioGlow) !important;
    animation: elminaRadioWavePulse 1.7s ease-in-out infinite !important;
}

#elmina-radio-tab-button .elmina-radio-wave-main {
    stroke-width: 2.7 !important;
    opacity: 0.98 !important;
    filter: url(#elminaRadioGlow) !important;
    animation: elminaRadioWavePulse 1.7s ease-in-out infinite !important;
}

#elmina-radio-tab-button .elmina-radio-wave-thin {
    stroke-width: 1.15 !important;
    opacity: 0.62 !important;
    animation: elminaRadioWaveFloat 2.4s ease-in-out infinite !important;
}

#elmina-radio-tab-button .elmina-radio-wave-center {
    stroke-width: 1.1 !important;
    opacity: 0.55 !important;
    filter: drop-shadow(0 0 5px rgba(0, 200, 255, 0.85)) !important;
}

#elmina-radio-tab-button .elmina-radio-on-label {
    position: absolute !important;
    right: 7px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    color: #63ff61 !important;
    font-weight: 900 !important;
    font-size: 0.66rem !important;
    letter-spacing: 0.01em !important;
    text-shadow: 0 0 7px rgba(99,255,97,0.88) !important;
    z-index: 3 !important;
}

#elmina-radio-tab-button .elmina-radio-on-dot {
    width: 6px !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: #63ff61 !important;
    box-shadow: 0 0 10px rgba(99,255,97,0.98) !important;
    display: inline-block !important;
}

@keyframes elminaRadioWavePulse {
    0%, 100% { transform: scaleY(0.88); opacity: 0.88; }
    50% { transform: scaleY(1.08); opacity: 1; }
}

@keyframes elminaRadioWaveFloat {
    0%, 100% { transform: translateY(1px) scaleY(0.92); }
    50% { transform: translateY(-1px) scaleY(1.12); }
}

@media (max-width: 640px) {
    #elmina-radio-tab-button .elmina-radio-live-antenna {
        left: 6px !important;
    }

    #elmina-radio-tab-button .elmina-radio-tower {
        width: 17px !important;
        height: 17px !important;
    }

    #elmina-radio-tab-button .elmina-radio-wave-wrap {
        left: 25px !important;
        right: 34px !important;
        height: 34px !important;
    }

    #elmina-radio-tab-button .elmina-radio-on-label {
        right: 5px !important;
        font-size: 0.58rem !important;
        gap: 2px !important;
    }

    #elmina-radio-tab-button .elmina-radio-on-dot {
        width: 5px !important;
        height: 5px !important;
    }
}


#elmina-radio-tab-button .elmina-radio-buffering-shell {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.28rem !important;
    overflow: hidden !important;
    border-radius: inherit !important;
    background:
        radial-gradient(circle at 24% 40%, rgba(255, 232, 77, 0.28), transparent 36%),
        linear-gradient(135deg, #ffbd38, #ff8a00) !important;
}

#elmina-radio-tab-button .elmina-radio-buffering-antenna {
    display: inline-flex !important;
    color: #6b3500 !important;
    filter: drop-shadow(0 1px 1px rgba(255,255,255,0.28)) !important;
}

#elmina-radio-tab-button .elmina-radio-buffering-text {
    color: #3b2100 !important;
    font-weight: 900 !important;
    font-size: 0.64rem !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important;
    text-shadow: 0 1px 0 rgba(255,255,255,0.22) !important;
}

#elmina-radio-tab-button .elmina-radio-buffering-dots {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2px !important;
    margin-left: 1px !important;
}

#elmina-radio-tab-button .elmina-radio-buffering-dots i {
    width: 4px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: #3b2100 !important;
    display: block !important;
    animation: elminaRadioBufferDots 0.9s ease-in-out infinite !important;
    opacity: 0.38 !important;
}

#elmina-radio-tab-button .elmina-radio-buffering-dots i:nth-child(2) { animation-delay: 0.14s !important; }
#elmina-radio-tab-button .elmina-radio-buffering-dots i:nth-child(3) { animation-delay: 0.28s !important; }

@keyframes elminaRadioBufferDots {
    0%, 100% { transform: translateY(0); opacity: 0.34; }
    50% { transform: translateY(-3px); opacity: 0.95; }
}

#elmina-radio-tab-button .elmina-radio-live-shell {
    background:
        radial-gradient(circle at 22% 35%, rgba(0, 245, 212, 0.19), transparent 33%),
        radial-gradient(circle at 52% 58%, rgba(124, 60, 255, 0.16), transparent 34%),
        radial-gradient(circle at 78% 42%, rgba(255, 126, 0, 0.14), transparent 32%),
        #04060b !important;
}

#elmina-radio-tab-button .elmina-radio-wave-wrap {
    left: 28px !important;
    right: 38px !important;
    height: 46px !important;
}

#elmina-radio-tab-button .elmina-radio-wave-back {
    stroke-width: 8.8 !important;
    opacity: 0.30 !important;
    filter: url(#elminaRadioGlow) !important;
    animation: none !important;
}

#elmina-radio-tab-button .elmina-radio-wave-main {
    stroke-width: 2.55 !important;
    opacity: 0.96 !important;
    filter: url(#elminaRadioGlow) !important;
    animation: none !important;
}

#elmina-radio-tab-button .elmina-radio-wave-thin {
    stroke-width: 1.05 !important;
    opacity: 0.62 !important;
    filter: drop-shadow(0 0 4px rgba(0, 200, 255, 0.65)) !important;
    animation: none !important;
}

#elmina-radio-tab-button .elmina-radio-wave-ghost {
    fill: none !important;
    stroke: url(#elminaRadioWaveGradient) !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    vector-effect: non-scaling-stroke !important;
    stroke-width: 1.0 !important;
    opacity: 0.28 !important;
    filter: drop-shadow(0 0 7px rgba(124, 60, 255, 0.70)) !important;
}

#elmina-radio-tab-button .elmina-radio-wave-center {
    opacity: 0.38 !important;
}

@media (max-width: 640px) {
    #elmina-radio-tab-button .elmina-radio-buffering-text {
        font-size: 0.52rem !important;
    }

    #elmina-radio-tab-button .elmina-radio-buffering-antenna .elmina-radio-tower {
        width: 15px !important;
        height: 15px !important;
    }

    #elmina-radio-tab-button .elmina-radio-buffering-dots i {
        width: 3px !important;
        height: 3px !important;
    }

    #elmina-radio-tab-button .elmina-radio-wave-wrap {
        left: 23px !important;
        right: 32px !important;
        height: 36px !important;
    }
}


.elmina-photo-form,
#memory-wall-form-panel,
.elmina-video-form-panel {
    scroll-margin-top: 5.5rem;
}

body.elmina-memory-form-open {
    overflow: auto !important;
    touch-action: auto !important;
}

#memory-wall-form-panel {
    position: relative !important;
    inset: auto !important;
    z-index: 2 !important;
    padding: 0 !important;
    margin-top: 1rem !important;
    width: 100% !important;
    background: transparent !important;
    backdrop-filter: none !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
}

#memory-wall-form-card {
    width: 100% !important;
    max-height: none !important;
    overflow: visible !important;
}

#memory-wall-form input::placeholder,
#memory-wall-form textarea::placeholder {
    color: rgba(255, 255, 255, 0.72) !important;
}

#memory-wall-form input:focus,
#memory-wall-form textarea:focus {
    border-color: #ffe84d !important;
    box-shadow: 0 0 0 3px rgba(255, 232, 77, 0.18) !important;
}

@media (max-width: 640px) {
    #memory-wall-form-panel {
        position: relative !important;
        inset: auto !important;
        padding: 0 !important;
    }

    #memory-wall-form-card {
        width: 100% !important;
        max-height: none !important;
        padding: 1rem !important;
        overflow: visible !important;
        -webkit-overflow-scrolling: auto !important;
    }

    #memory-wall-form-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-content: stretch !important;
    }

    #memory-wall-form-submit {
        order: 1 !important;
        width: 100% !important;
    }

    #memory-wall-form-cancel {
        order: 2 !important;
        width: 100% !important;
    }
}


body.elmina-live-modal-open {
    overflow: hidden !important;
}

.elmina-live-modal {
    height: 100dvh;
    min-height: 100dvh;
    padding: 1.15rem;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.elmina-live-modal-backdrop {
    background: rgba(0, 34, 85, 0.62) !important;
    backdrop-filter: blur(4px);
}

.elmina-live-modal-card {
    width: min(33rem, 100%) !important;
    max-height: calc(100dvh - 2.4rem) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    background: linear-gradient(180deg, rgba(0, 74, 173, 0.98), rgba(0, 58, 150, 0.98)) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 232, 77, 0.58) !important;
    box-shadow: 0 1.5rem 4.4rem rgba(0, 34, 85, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
}

.elmina-live-modal-card h2 {
    color: #ffe84d !important;
}

.elmina-live-intro {
    color: rgba(255, 255, 255, 0.92) !important;
    font-weight: 500 !important;
}

.elmina-live-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 232, 77, 0.96) !important;
    color: #004aad !important;
    border: 1px solid rgba(255, 255, 255, 0.54) !important;
    box-shadow: 0 0.45rem 1.15rem rgba(0, 34, 85, 0.22);
    line-height: 1;
}

#elmina-go-live-form input,
#elmina-go-live-form textarea,
#elmina-live-requested-minutes {
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    background: rgba(255, 255, 255, 0.13) !important;
    color: #ffffff !important;
    font-weight: 650 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

#elmina-go-live-form input::placeholder,
#elmina-go-live-form textarea::placeholder {
    color: rgba(255, 255, 255, 0.72) !important;
}

#elmina-go-live-form input:focus,
#elmina-go-live-form textarea:focus,
#elmina-live-requested-minutes:focus {
    border-color: #ffe84d !important;
    box-shadow: 0 0 0 3px rgba(255, 232, 77, 0.18) !important;
}

.elmina-live-duration-label {
    gap: 0.28rem !important;
    color: #ffaaa8 !important;
    font-weight: 850 !important;
}

.elmina-live-duration-label span,
.elmina-live-duration-label small {
    color: #ffaaa8 !important;
    font-weight: 850 !important;
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.18);
}

.elmina-live-duration-label small {
    font-size: 0.78rem;
    line-height: 1.3;
}

#elmina-live-requested-minutes.is-owner-default {
    color: #ffaaa8 !important;
    font-weight: 900 !important;
}

#elmina-live-requested-minutes option {
    background: #ffffff;
    color: #004aad;
    font-weight: 800;
}

#elmina-live-requested-minutes option.elmina-live-option-attention {
    color: #ff8f8f;
    font-weight: 900;
}

.elmina-live-consent {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 0.86rem;
    font-weight: 500 !important;
    line-height: 1.42 !important;
}

.elmina-live-consent span {
    font-weight: 500 !important;
}

.elmina-live-actions button[type="submit"] {
    background: linear-gradient(145deg, #fff27a, #ffe84d 56%, #d8b500) !important;
    color: #004aad !important;
}

.elmina-live-actions button[type="button"] {
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
}

@supports (height: 100svh) {
    @media (max-width: 640px) {
        .elmina-live-modal {
            height: 100svh;
            min-height: 100svh;
        }
    }
}

@media (max-width: 640px) {
    .elmina-live-modal {
        align-items: flex-start !important;
        justify-content: center !important;
        padding-top: max(0.85rem, env(safe-area-inset-top)) !important;
        padding-right: 0.72rem !important;
        padding-bottom: max(1rem, env(safe-area-inset-bottom)) !important;
        padding-left: 0.72rem !important;
    }

    .elmina-live-modal-card {
        width: 100% !important;
        max-height: calc(100svh - 1.85rem) !important;
        padding: 0.85rem 0.95rem max(1rem, calc(env(safe-area-inset-bottom) + 0.8rem)) !important;
        border-radius: 1.05rem !important;
        margin: 0 auto !important;
    }

    .elmina-live-close {
        position: sticky !important;
        top: 0 !important;
        right: auto !important;
        z-index: 5;
        width: 2.15rem !important;
        height: 2.15rem !important;
        margin: 0 0 0.25rem auto !important;
    }

    .elmina-live-modal-card h2 {
        margin-top: 0 !important;
        padding-right: 0 !important;
        font-size: 1.28rem !important;
        line-height: 1.15 !important;
    }

    .elmina-live-intro {
        margin-bottom: 0.78rem !important;
        font-size: 0.84rem !important;
        line-height: 1.35 !important;
    }

    #elmina-go-live-form {
        gap: 0.48rem !important;
    }

    #elmina-go-live-form input,
    #elmina-go-live-form textarea,
    #elmina-live-requested-minutes {
        padding: 0.64rem 0.72rem !important;
        font-size: 0.86rem !important;
    }

    #elmina-go-live-form textarea {
        min-height: 4.65rem !important;
    }

    .elmina-live-duration-label small {
        font-size: 0.74rem !important;
    }

    .elmina-live-consent {
        padding: 0.45rem 0 !important;
        font-size: 0.78rem !important;
    }

    .elmina-live-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .elmina-live-actions button {
        width: 100% !important;
    }
}


body.elmina-live-session-active .master-youtube-live-frame,
body.elmina-stream-mode-visitor-live .master-youtube-live-frame {
    display: none !important;
    pointer-events: none !important;
}
body.elmina-live-session-active .master-youtube-live-reconnect,
body.elmina-stream-mode-visitor-live .master-youtube-live-reconnect {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
}
body.elmina-live-session-active .elmina-live-player-overlay,
body.elmina-stream-mode-visitor-live .elmina-live-player-overlay {
    display: flex !important;
    pointer-events: auto !important;
}
body.elmina-live-session-active .elmina-live-player-overlay.has-sfu-stream .elmina-sfu-video,
body.elmina-live-session-active .elmina-live-viewer-screen.has-sfu-stream .elmina-sfu-video,
body.elmina-stream-mode-visitor-live .elmina-live-player-overlay.has-sfu-stream .elmina-sfu-video,
body.elmina-stream-mode-visitor-live .elmina-live-viewer-screen.has-sfu-stream .elmina-sfu-video {
    display: block !important;
}


#elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card{
    overflow: hidden !important;
}


#memory-wall-top {
    align-items: flex-start !important;
}

#elmina-youtube-card .elmina-card-title-main{
    color: #ffe84d !important;
    font-weight: 900 !important;
}

.elmina-video-card-subtitle {
    color: #ffffff !important;
    opacity: 0.94 !important;
    font-size: clamp(0.86rem, 0.95vw, 0.98rem) !important;
    line-height: 1.25 !important;
    margin: 0 0 0.75rem !important;
}

#elmina-youtube-card .elmina-card-title-main svg {
    color: #ffe84d !important;
}


#link-appstore-mobile,
#link-playstore-mobile {
    font-size: 0.9rem !important;
    line-height: 1.1 !important;
}

@media (min-width: 1024px) {


    footer {
        padding-top: 1.8rem !important;
        padding-bottom: 1.8rem !important;
    }

    footer .grid {
        gap: 1.6rem !important;
        margin-bottom: 1.2rem !important;
    }
}

@media (max-width: 767px) {
    #elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card{
        padding: 1.25rem !important;
        border-radius: 1.1rem !important;
    }

    #memory-wall-bottom,
    .elmina-youtube-controls {
        display: grid !important;
        grid-template-columns: 2.85rem minmax(0, 1fr) 3.25rem 2.85rem !important;
        align-items: center !important;
        gap: 0.48rem !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .elmina-photo-controls {
        display: grid !important;
        grid-template-columns: 2.85rem minmax(0, 1fr) 2.85rem !important;
        align-items: center !important;
        gap: 0.48rem !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow,
    .elmina-photo-arrow {
        width: 2.85rem !important;
        height: 2.85rem !important;
        min-width: 2.85rem !important;
        max-width: 2.85rem !important;
        justify-self: center !important;
        flex: 0 0 2.85rem !important;
    }

    #memory-wall-share-button,
    #elmina-youtube-share-button {
        width: 100% !important;
        max-width: 13rem !important;
        min-width: 0 !important;
        justify-self: center !important;
        font-size: clamp(0.72rem, 3.55vw, 0.92rem) !important;
        line-height: 1.08 !important;
        min-height: 2.58rem !important;
        padding-left: 0.55rem !important;
        padding-right: 0.55rem !important;
        white-space: normal !important;
        text-align: center !important;
    }

    #memory-wall-center,
    .elmina-youtube-center {
        min-width: 0 !important;
        width: 3.25rem !important;
        justify-self: center !important;
        align-items: center !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    .elmina-photo-count {
        color: #ffe84d !important;
        font-size: clamp(0.95rem, 4.2vw, 1.12rem) !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        text-align: center !important;
    }

    #memory-wall-content {
        margin-top: 1.05rem !important;
        margin-bottom: 0.9rem !important;
    }

    #elmina-youtube-card .elmina-card-title-main{
        font-size: clamp(1.45rem, 6.2vw, 1.9rem) !important;
        line-height: 1.08 !important;
    }

    .elmina-video-card-subtitle {
        font-size: clamp(0.98rem, 4vw, 1.12rem) !important;
        margin-bottom: 0.9rem !important;
    }


    #link-appstore-mobile,
    #link-playstore-mobile {
        font-size: clamp(0.82rem, 3.6vw, 0.98rem) !important;
        min-height: 2.85rem !important;
        padding-top: 0.65rem !important;
        padding-bottom: 0.65rem !important;
    }

    footer {
        padding-top: 1.45rem !important;
        padding-bottom: 1.45rem !important;
        margin-top: 1.2rem !important;
    }

    footer .grid {
        gap: 1.35rem !important;
        margin-bottom: 1rem !important;
    }

    footer h4 {
        margin-bottom: 0.75rem !important;
    }

    footer p,
    footer a,
    footer span {
        font-size: 0.96rem !important;
        line-height: 1.5 !important;
    }
}


.elmina-photo-control-center {
    min-width: 4.4rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.22rem;
}

.elmina-photo-shifter {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.34rem;
    min-height: 0.5rem;
    max-width: 6.8rem;
    overflow: hidden;
}

.elmina-photo-shift-dot {
    appearance: none;
    width: 0.42rem;
    height: 0.42rem;
    min-width: 0.42rem;
    border: 0;
    border-radius: 999px;
    padding: 0;
    background: rgba(159, 197, 239, 0.72);
    cursor: pointer;
    opacity: 0.78;
    transition: width 0.18s ease, background 0.18s ease, opacity 0.18s ease;
}

.elmina-photo-shift-dot.is-active {
    width: 1.18rem;
    min-width: 1.18rem;
    background: #ffe84d;
    opacity: 1;
}

.elmina-photo-shift-dot:focus-visible {
    outline: 2px solid rgba(255, 232, 77, 0.7);
    outline-offset: 3px;
}

@media (max-width: 767px) {
    .elmina-photo-control-center {
        min-width: 4.1rem !important;
    }

    .elmina-photo-shifter {
        gap: 0.32rem !important;
        max-width: 6.2rem !important;
    }
}


.elmina-photo-shifter,
#memory-wall-dots,
.elmina-youtube-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.28rem;
    line-height: 1;
    white-space: nowrap;
}

#memory-wall-dots .memory-wall-dot,
.elmina-youtube-dots .elmina-youtube-dot {
    display: block;
    width: 0.38rem;
    height: 0.38rem;
    min-width: 0.38rem;
    border-radius: 999px;
    background: rgba(159, 197, 239, 0.72);
    margin: 0;
    opacity: 0.78;
}

#memory-wall-dots .memory-wall-dot.is-active,
.elmina-youtube-dots .elmina-youtube-dot.is-active {
    width: 1.02rem;
    min-width: 1.02rem;
    background: #ffe84d;
    opacity: 1;
}

.elmina-youtube-share {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
}

@media (max-width: 640px) {
    .elmina-youtube-share {
        font-size: 0.62rem !important;
        min-width: 7.15rem;
        padding-left: 0.48rem !important;
        padding-right: 0.48rem !important;
    }
}


#elmina-photo-share-button.elmina-photo-pill,
.elmina-photo-share.elmina-photo-pill {
    font-size: clamp(0.86rem, 1.02vw, 0.96rem) !important;
    font-weight: 900 !important;
    letter-spacing: 0.005em !important;
    line-height: 1.05 !important;
}

#elmina-youtube-share-button.elmina-youtube-share {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.08 !important;
}

#elmina-youtube-share-button .elmina-youtube-share-line {
    display: block !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    #elmina-photo-share-button.elmina-photo-pill,
    .elmina-photo-share.elmina-photo-pill {
        font-size: clamp(0.92rem, 4.2vw, 1.08rem) !important;
        min-height: 2.8rem !important;
    }

    #elmina-youtube-share-button.elmina-youtube-share {
        font-size: clamp(0.76rem, 3.6vw, 0.92rem) !important;
        min-height: 2.85rem !important;
        padding-top: 0.42rem !important;
        padding-bottom: 0.42rem !important;
    }
}


@media (max-width: 767px) {
    #elmina-memory-wall-card #memory-wall-inner {
        gap: 0.34rem !important;
    }

    #memory-wall-subtitle {
        margin-top: 0.2rem !important;
        margin-bottom: 0.1rem !important;
    }

    #memory-wall-content {
        margin-top: 0.35rem !important;
        margin-bottom: 0.78rem !important;
        min-height: clamp(15.5rem, 52vw, 20.5rem) !important;
        max-height: none !important;
        padding: 1.05rem 1.02rem 0.86rem !important;
    }

    #memory-wall-quote-mark {
        color: rgba(255, 232, 77, 0.34) !important;
        top: 0.12rem !important;
        left: 0.56rem !important;
        font-size: 2.75rem !important;
    }

    #memory-wall-text {
        padding-top: 0.18rem !important;
        line-height: 1.52 !important;
    }

    #memory-wall-more {
        line-height: 1.48 !important;
    }
}


#elmina-youtube-card .elmina-card-title-main {
    gap: 0 !important;
    margin-bottom: 0.42rem !important;
}

#elmina-youtube-card .elmina-card-title-main svg {
    display: none !important;
}

#elmina-youtube-card .elmina-video-card-subtitle {
    margin-top: 0 !important;
    margin-bottom: 0.72rem !important;
}

#elmina-youtube-current-caption.elmina-youtube-caption {
    color: #ffffff !important;
    opacity: 0.95 !important;
    font-weight: 800 !important;
    margin-top: 0.72rem !important;
}

@media (max-width: 767px) {
    #elmina-youtube-card .elmina-card-title-main {
        margin-bottom: 0.38rem !important;
    }

    #elmina-youtube-card .elmina-video-card-subtitle {
        margin-bottom: 0.72rem !important;
    }
}


#memory-wall-content.is-memory-expanded {
    padding-bottom: 0.8rem !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-meta-row {
    position: sticky !important;
    bottom: 0.25rem !important;
    z-index: 8 !important;
    padding-top: 0.35rem !important;
    background: linear-gradient(180deg, rgba(0, 74, 173, 0), rgba(0, 74, 173, 0.52) 34%, rgba(0, 63, 158, 0.84)) !important;
    border-radius: 0.8rem !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-more-tab {
    position: sticky !important;
    right: 0 !important;
    bottom: 0.25rem !important;
    z-index: 9 !important;
}

#memory-wall-quote-mark {
    color: rgba(255, 232, 77, 0.38) !important;
    text-shadow: 0 0 10px rgba(255, 232, 77, 0.18) !important;
}

@media (max-width: 767px) {
    #memory-wall-content.is-memory-expanded {
        padding-bottom: 0.95rem !important;
    }

    #memory-wall-content.is-memory-expanded #memory-wall-meta-row {
        bottom: 0.2rem !important;
        padding: 0.35rem 0 0 !important;
    }

    #memory-wall-content.is-memory-expanded #memory-wall-more-tab {
        min-width: 3.8rem !important;
    }

    #memory-wall-quote-mark {
        color: rgba(255, 232, 77, 0.54) !important;
        text-shadow: 0 0 12px rgba(255, 232, 77, 0.22) !important;
    }
}


#memory-wall-content {
    overflow-y: hidden !important;
    overflow-x: hidden !important;
}

#memory-wall-content.is-memory-expanded {
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    justify-content: flex-start !important;
}

#memory-wall-content:not(.is-memory-expanded) #memory-wall-more {
    display: block;
}

#memory-wall-content.is-memory-expanded #memory-wall-text,
#memory-wall-content.is-memory-expanded #memory-wall-more {
    padding-right: 0.2rem !important;
}

@media (max-width: 767px) {
    #memory-wall-content {
        height: clamp(15.5rem, 52vw, 20.5rem) !important;
        min-height: clamp(15.5rem, 52vw, 20.5rem) !important;
        max-height: clamp(15.5rem, 52vw, 20.5rem) !important;
        overflow-y: hidden !important;
    }

    #memory-wall-content.is-memory-expanded {
        overflow-y: auto !important;
    }
}


footer {
    padding-top: 1.25rem !important;
    padding-bottom: 1.15rem !important;
    margin-top: 1.25rem !important;
}

footer .grid {
    gap: 1.4rem !important;
    margin-bottom: 0.85rem !important;
    align-items: flex-start !important;
}

footer h4 {
    margin-bottom: 0.62rem !important;
    line-height: 1.18 !important;
}

footer .space-y-2 > :not([hidden]) ~ :not([hidden]) {
    margin-top: 0.42rem !important;
}

footer #social-instagram,
footer #social-facebook,
footer #social-youtube {
    width: 2.75rem !important;
    height: 2.75rem !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

footer #social-instagram svg,
footer #social-facebook svg,
footer #social-youtube svg {
    width: 1.15rem !important;
    height: 1.15rem !important;
}

footer .border-t {
    padding-top: 0.75rem !important;
}

footer p,
footer a,
footer span {
    line-height: 1.45 !important;
}

@media (min-width: 768px) {
    footer {
        padding-top: 1.3rem !important;
        padding-bottom: 1.1rem !important;
    }

    footer .grid {
        grid-template-columns: 0.9fr 1.05fr 1.25fr !important;
        gap: 1.9rem !important;
        margin-bottom: 0.85rem !important;
    }

    footer .border-t {
        padding-top: 0.68rem !important;
    }
}

@media (max-width: 767px) {
    footer {
        padding-top: 1.05rem !important;
        padding-bottom: 0.85rem !important;
        margin-top: 0.95rem !important;
    }

    footer .grid {
        gap: 0.95rem !important;
        margin-bottom: 0.72rem !important;
    }

    footer h4 {
        font-size: 1.12rem !important;
        margin-bottom: 0.52rem !important;
    }

    footer .flex.gap-4 {
        gap: 0.7rem !important;
    }

    footer #social-instagram,
    footer #social-facebook,
    footer #social-youtube {
        width: 2.55rem !important;
        height: 2.55rem !important;
    }

    footer p,
    footer a,
    footer span {
        font-size: 0.9rem !important;
        line-height: 1.36 !important;
    }

    footer .border-t {
        padding-top: 0.62rem !important;
    }

    footer .border-t p {
        font-size: 0.84rem !important;
        line-height: 1.25 !important;
    }
}


@media (max-width: 767px) {
    footer {
        padding-top: 0.9rem !important;
        padding-bottom: max(1rem, calc(env(safe-area-inset-bottom, 0px) + 0.62rem)) !important;
    }

    footer .grid {
        gap: 0.82rem !important;
        margin-bottom: 0.54rem !important;
    }

    footer h4 {
        margin-bottom: 0.42rem !important;
    }

    footer .space-y-2 > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0.34rem !important;
    }

    footer .border-t {
        padding-top: 0.5rem !important;
    }
}


@media (max-width: 767px) {
    footer {
        padding-top: 0.72rem !important;
        padding-bottom: max(2.05rem, calc(env(safe-area-inset-bottom, 0px) + 1.65rem)) !important;
        margin-top: 0.72rem !important;
    }

    footer .grid {
        gap: 0.58rem !important;
        margin-bottom: 0.42rem !important;
    }

    footer h4 {
        margin-bottom: 0.32rem !important;
        line-height: 1.12 !important;
    }

    footer .space-y-2 > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0.25rem !important;
    }

    footer .flex.gap-4 {
        gap: 0.55rem !important;
    }

    footer #social-instagram,
    footer #social-facebook,
    footer #social-youtube {
        width: 2.38rem !important;
        height: 2.38rem !important;
    }

    footer #social-instagram svg,
    footer #social-facebook svg,
    footer #social-youtube svg {
        width: 1.05rem !important;
        height: 1.05rem !important;
    }

    footer p,
    footer a,
    footer span {
        line-height: 1.28 !important;
    }

    footer .border-t {
        padding-top: 0.38rem !important;
    }

    footer .border-t p {
        line-height: 1.18 !important;
    }
}


@media (min-width: 768px) {
    footer {
        padding-top: 1.05rem !important;
        padding-bottom: 0.72rem !important;
        margin-top: 1rem !important;
    }

    footer > div {
        max-width: 76rem !important;
    }

    footer .grid {
        grid-template-columns: 0.78fr 0.9fr 1.35fr !important;
        gap: clamp(1.35rem, 4.2vw, 4rem) !important;
        margin-bottom: 0.48rem !important;
        align-items: flex-start !important;
    }

    footer h4 {
        margin-bottom: 0.44rem !important;
    }

    footer .space-y-2 > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0.2rem !important;
    }

    footer .space-y-2 p {
        min-height: 0 !important;
        margin-bottom: 0 !important;
        line-height: 1.25 !important;
    }

    footer .grid > div:nth-child(3) {
        max-width: 35rem !important;
        justify-self: start !important;
    }

    footer .grid > div:nth-child(3) p {
        line-height: 1.34 !important;
        max-width: 34rem !important;
    }

    footer .border-t {
        padding-top: 0.42rem !important;
    }

    footer .border-t p {
        line-height: 1.18 !important;
    }
}

@media (max-width: 767px) {
    footer {
        padding-top: 0.62rem !important;
        padding-bottom: max(2.3rem, calc(env(safe-area-inset-bottom, 0px) + 1.85rem)) !important;
        margin-top: 0.68rem !important;
    }

    footer .grid {
        gap: 0.42rem !important;
        margin-bottom: 0.32rem !important;
    }

    footer h4 {
        margin-bottom: 0.24rem !important;
        line-height: 1.08 !important;
    }

    footer .flex.gap-4 {
        gap: 0.45rem !important;
    }

    footer #social-instagram,
    footer #social-facebook,
    footer #social-youtube {
        width: 2.26rem !important;
        height: 2.26rem !important;
    }

    footer .space-y-2 > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0.14rem !important;
    }

    footer .space-y-2 p {
        margin-bottom: 0 !important;
        line-height: 1.2 !important;
    }

    footer p,
    footer a,
    footer span {
        line-height: 1.22 !important;
    }

    footer .grid > div:nth-child(3) p {
        line-height: 1.24 !important;
    }

    footer .border-t {
        padding-top: 0.32rem !important;
    }

    footer .border-t p {
        line-height: 1.12 !important;
    }
}


@media (min-width: 768px) {
    footer {
        padding-top: 0.95rem !important;
        padding-bottom: 0.62rem !important;
    }

    footer .grid {
        grid-template-columns: 0.72fr minmax(21rem, 1.15fr) 0.92fr !important;
        gap: clamp(1.35rem, 4vw, 3.4rem) !important;
        margin-bottom: 0.36rem !important;
    }

    footer .elmina-footer-social {
        order: 1 !important;
    }

    footer .elmina-footer-about {
        order: 2 !important;
        max-width: 31rem !important;
        justify-self: start !important;
    }

    footer .elmina-footer-contact {
        order: 3 !important;
        justify-self: start !important;
        max-width: 18rem !important;
    }

    footer .elmina-footer-about p {
        max-width: 31rem !important;
        line-height: 1.3 !important;
    }

    footer .elmina-footer-contact .space-y-2 > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0.12rem !important;
    }

    footer .elmina-footer-contact p {
        line-height: 1.18 !important;
        margin-bottom: 0 !important;
    }

    footer .border-t {
        padding-top: 0.34rem !important;
    }
}

@media (max-width: 767px) {
    footer {
        padding-top: 0.62rem !important;
        padding-bottom: max(2.05rem, calc(env(safe-area-inset-bottom, 0px) + 1.6rem)) !important;
    }

    footer .grid {
        display: grid !important;
        grid-template-columns: minmax(4.2rem, 0.58fr) minmax(0, 1.42fr) !important;
        column-gap: 0.72rem !important;
        row-gap: 0.46rem !important;
        margin-bottom: 0.28rem !important;
        align-items: start !important;
    }

    footer .elmina-footer-social {
        order: 1 !important;
        grid-column: 1 !important;
    }

    footer .elmina-footer-contact {
        order: 2 !important;
        grid-column: 2 !important;
    }

    footer .elmina-footer-about {
        order: 3 !important;
        grid-column: 1 / -1 !important;
        margin-top: 0.18rem !important;
    }

    footer h4 {
        margin-bottom: 0.24rem !important;
    }

    footer .elmina-footer-social .flex.gap-4 {
        flex-direction: column !important;
        gap: 0.28rem !important;
        align-items: flex-start !important;
    }

    footer #social-instagram,
    footer #social-facebook,
    footer #social-youtube {
        width: 2.14rem !important;
        height: 2.14rem !important;
    }

    footer .elmina-footer-contact .space-y-2 > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0.12rem !important;
    }

    footer .elmina-footer-contact p {
        line-height: 1.16 !important;
        margin-bottom: 0 !important;
    }

    footer .elmina-footer-about p {
        line-height: 1.22 !important;
        max-width: 100% !important;
    }

    footer .border-t {
        padding-top: 0.28rem !important;
    }
}


@media (min-width: 768px) {
    footer .elmina-footer-contact {
        justify-self: end !important;
        text-align: right !important;
        max-width: 19rem !important;
    }

    footer .elmina-footer-contact .space-y-2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
    }

    footer .elmina-footer-contact p {
        justify-content: flex-end !important;
        text-align: right !important;
        width: 100% !important;
    }

    footer .elmina-footer-about {
        max-width: 33rem !important;
    }

    footer .elmina-footer-about p {
        max-width: 33rem !important;
        line-height: 1.31 !important;
    }
}

@media (max-width: 767px) {
    footer .elmina-footer-contact {
        text-align: right !important;
        justify-self: end !important;
    }

    footer .elmina-footer-contact .space-y-2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
    }

    footer .elmina-footer-contact p {
        justify-content: flex-end !important;
        text-align: right !important;
        width: 100% !important;
    }

    footer .elmina-footer-contact p span {
        text-align: right !important;
    }

    footer .elmina-footer-about p {
        max-width: 38rem !important;
    }
}


@media (min-width: 768px) {
    footer .elmina-footer-contact {
        justify-self: end !important;
        text-align: left !important;
        max-width: 19rem !important;
    }

    footer .elmina-footer-contact .space-y-2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    footer .elmina-footer-contact p {
        justify-content: flex-start !important;
        text-align: left !important;
        width: auto !important;
    }

    footer .elmina-footer-contact p span {
        text-align: left !important;
    }

    footer .elmina-footer-about {
        max-width: 34rem !important;
    }

    footer .elmina-footer-about p {
        max-width: 34rem !important;
        text-align: justify !important;
        text-align-last: left !important;
        text-wrap: pretty;
        line-height: 1.32 !important;
    }
}

@media (max-width: 767px) {
    footer .elmina-footer-contact {
        justify-self: end !important;
        text-align: left !important;
    }

    footer .elmina-footer-contact .space-y-2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    footer .elmina-footer-contact p {
        justify-content: flex-start !important;
        text-align: left !important;
        width: auto !important;
    }

    footer .elmina-footer-contact p span {
        text-align: left !important;
    }

    footer .elmina-footer-about p {
        max-width: 100% !important;
        text-align: justify !important;
        text-align-last: left !important;
        text-wrap: pretty;
        line-height: 1.23 !important;
    }
}


@media (max-width: 767px) {
    footer .elmina-footer-social .flex.gap-4 {
        gap: 0.30rem !important;
    }

    footer .elmina-footer-contact .space-y-2 {
        gap: 0 !important;
        margin-top: 0 !important;
    }

    footer .elmina-footer-contact .space-y-2 > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0.30rem !important;
    }

    footer .elmina-footer-contact p {
        min-height: 2.14rem !important;
        align-items: center !important;
        gap: 0.46rem !important;
        line-height: 1.12 !important;
        margin: 0 !important;
    }

    footer .elmina-footer-contact p svg {
        width: 2.14rem !important;
        height: 2.14rem !important;
        min-width: 2.14rem !important;
        min-height: 2.14rem !important;
        box-sizing: border-box !important;
        padding: 0.54rem !important;
        border-radius: 9999px !important;
        background: rgba(255, 255, 255, 0.14) !important;
        color: #ffffff !important;
        stroke-width: 2.15 !important;
    }

    footer .elmina-footer-contact p span {
        display: inline-block !important;
        line-height: 1.12 !important;
    }
}


footer .elmina-footer-about p {
    text-align: left !important;
    text-align-last: auto !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    max-width: 42ch !important;
    text-wrap: balance;
    overflow-wrap: normal !important;
    hyphens: none !important;
}

@media (min-width: 768px) {
    footer .elmina-footer-about {
        max-width: 42ch !important;
    }

    footer .elmina-footer-about p {
        max-width: 42ch !important;
        line-height: 1.34 !important;
    }
}

@media (max-width: 767px) {
    footer .elmina-footer-about {
        max-width: 100% !important;
    }

    footer .elmina-footer-about p {
        max-width: min(100%, 42ch) !important;
        line-height: 1.25 !important;
    }
}


@media (min-width: 768px) {
    footer .grid {
        grid-template-columns: 0.72fr minmax(21rem, 1.15fr) minmax(18rem, 0.88fr) !important;
        gap: clamp(1.2rem, 3.5vw, 3rem) !important;
    }

    footer .elmina-footer-contact {
        justify-self: center !important;
        text-align: left !important;
        width: min(100%, 22rem) !important;
        max-width: 22rem !important;
    }

    footer .elmina-footer-contact .space-y-2 {
        align-items: flex-start !important;
        width: 100% !important;
    }

    footer .elmina-footer-contact p {
        justify-content: flex-start !important;
        text-align: left !important;
        width: 100% !important;
    }

    footer .elmina-footer-contact p span {
        text-align: left !important;
        overflow-wrap: anywhere !important;
    }
}

@media (max-width: 767px) {
    footer {
        padding-top: 0.58rem !important;
        padding-bottom: max(1.92rem, calc(env(safe-area-inset-bottom, 0px) + 1.48rem)) !important;
    }

    footer .grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        column-gap: 0 !important;
        row-gap: 0.34rem !important;
        margin-bottom: 0.22rem !important;
        align-items: start !important;
    }

    footer .elmina-footer-social {
        order: 1 !important;
        grid-column: 1 !important;
    }

    footer .elmina-footer-contact {
        order: 2 !important;
        grid-column: 1 !important;
        justify-self: start !important;
        text-align: left !important;
        width: 100% !important;
        margin-top: 0.12rem !important;
    }

    footer .elmina-footer-about {
        order: 3 !important;
        grid-column: 1 !important;
        margin-top: 0.26rem !important;
    }

    footer h4 {
        margin-bottom: 0.22rem !important;
    }

    footer .elmina-footer-social .flex.gap-4 {
        flex-direction: row !important;
        gap: 0.52rem !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    footer #social-instagram,
    footer #social-facebook,
    footer #social-youtube {
        width: 2.05rem !important;
        height: 2.05rem !important;
    }

    footer .elmina-footer-contact .space-y-2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        width: 100% !important;
        gap: 0 !important;
        margin-top: 0 !important;
    }

    footer .elmina-footer-contact .space-y-2 > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0.12rem !important;
    }

    footer .elmina-footer-contact p {
        min-height: auto !important;
        justify-content: flex-start !important;
        align-items: center !important;
        text-align: left !important;
        width: 100% !important;
        gap: 0.46rem !important;
        line-height: 1.16 !important;
        margin: 0 !important;
    }

    footer .elmina-footer-contact p svg {
        width: 1.05rem !important;
        height: 1.05rem !important;
        min-width: 1.05rem !important;
        min-height: 1.05rem !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #ffffff !important;
        stroke-width: 2.2 !important;
    }

    footer .elmina-footer-contact p span {
        display: inline-block !important;
        line-height: 1.16 !important;
        text-align: left !important;
        overflow-wrap: anywhere !important;
    }

    footer .elmina-footer-about p {
        max-width: min(100%, 42ch) !important;
        line-height: 1.24 !important;
    }

    footer .border-t {
        padding-top: 0.22rem !important;
    }
}


#elmina-youtube-share-button.elmina-youtube-share {
    font-size: clamp(0.68rem, 0.74vw, 0.80rem) !important;
    line-height: 1.04 !important;
    letter-spacing: 0.002em !important;
}

#elmina-youtube-share-button .elmina-youtube-share-line {
    line-height: 1.04 !important;
}

@media (max-width: 767px) {
    #elmina-youtube-share-button.elmina-youtube-share {
        font-size: clamp(0.66rem, 3.05vw, 0.80rem) !important;
        line-height: 1.04 !important;
        min-height: 2.72rem !important;
        padding-top: 0.38rem !important;
        padding-bottom: 0.38rem !important;
    }
}


#elmina-youtube-share-button.elmina-youtube-share {
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: clamp(0.60rem, 0.70vw, 0.70rem) !important;
    font-weight: 850 !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 0 !important;
}

#elmina-youtube-share-button .elmina-youtube-share-line {
    display: block !important;
    font: inherit !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    #elmina-youtube-share-button.elmina-youtube-share {
        font-size: clamp(0.60rem, 2.68vw, 0.70rem) !important;
        font-weight: 850 !important;
        line-height: 1.02 !important;
        min-height: 2.58rem !important;
        padding-top: 0.34rem !important;
        padding-bottom: 0.34rem !important;
    }

    #elmina-youtube-share-button .elmina-youtube-share-line {
        line-height: 1.02 !important;
    }
}


#elmina-youtube-share-button.elmina-youtube-share {
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: clamp(0.78rem, 0.86vw, 0.88rem) !important;
    font-weight: 900 !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
    min-width: 9.95rem !important;
    min-height: 2.58rem !important;
    padding: 0.36rem 0.88rem !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    gap: 0 !important;
}

#elmina-youtube-share-button .elmina-youtube-share-line {
    display: block !important;
    font: inherit !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    #elmina-youtube-share-button.elmina-youtube-share {
        font-size: clamp(0.78rem, 3.45vw, 0.92rem) !important;
        min-width: 9.55rem !important;
        min-height: 2.58rem !important;
        padding: 0.36rem 0.74rem !important;
    }

    #elmina-youtube-share-button .elmina-youtube-share-line {
        line-height: 1.04 !important;
    }
}


@media (max-width: 767px) {
    #elmina-youtube-share-button.elmina-youtube-share {
        min-width: 6.7rem !important;
        width: auto !important;
        max-width: 7rem !important;
    }
}


@media (max-width: 767px) {
    #memory-wall-bottom,
    .elmina-youtube-controls {
        grid-template-columns: 2.85rem minmax(0, 1fr) minmax(3.7rem, max-content) 2.85rem !important;
    }

    #memory-wall-share-button {
        justify-self: start !important;
        width: 80% !important;
        max-width: 10.4rem !important;
        min-width: 0 !important;
    }

    #elmina-youtube-share-button.elmina-youtube-share {
        justify-self: start !important;
        margin-left: 0 !important;
    }

    #memory-wall-center,
    .elmina-youtube-center {
        justify-self: center !important;
        width: auto !important;
        min-width: 3.7rem !important;
    }
}


:root,
html,
body {
    color-scheme: light !important;
}

#memory-wall-content,
#memory-wall-text,
#memory-wall-more {
    forced-color-adjust: none !important;
}

#memory-wall-text {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-decoration-color: #ffffff !important;
}

#memory-wall-more {
    color: rgba(255, 255, 255, 0.90) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.90) !important;
    text-decoration-color: rgba(255, 255, 255, 0.90) !important;
}

#memory-wall-meta {
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-text,
#memory-wall-content.is-memory-expanded #memory-wall-more,
#memory-wall-content.has-hidden-memory-text #memory-wall-text,
#memory-wall-content.has-hidden-memory-text #memory-wall-more {
    color: inherit;
}

#memory-wall-content.is-memory-expanded #memory-wall-text,
#memory-wall-content.has-hidden-memory-text #memory-wall-text {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-more,
#memory-wall-content.has-hidden-memory-text #memory-wall-more {
    color: rgba(255, 255, 255, 0.90) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.90) !important;
}

@media (prefers-color-scheme: dark) {
    html,
    body {
        background: #f7fbff !important;
        color: #004aad !important;
    }

    #elmina-right-column > div,
#elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card,
#memory-wall-content,
#memory-wall-form-card,
#memory-wall-form-panel,
.elmina-youtube-player-shell,
.elmina-photo-frame{
        forced-color-adjust: none !important;
    }

    input,
    textarea,
    select,
    button {
        color-scheme: light !important;
    }

    #memory-wall-form input,
    #memory-wall-form textarea,
    #elmina-photo-form input,
    #elmina-photo-form textarea,
    #elmina-video-form input,
    #elmina-video-form textarea {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
        caret-color: #ffe84d !important;
    }

    #memory-wall-form input::placeholder,
    #memory-wall-form textarea::placeholder,
    #elmina-photo-form input::placeholder,
    #elmina-photo-form textarea::placeholder,
    #elmina-video-form input::placeholder,
    #elmina-video-form textarea::placeholder {
        color: rgba(255, 255, 255, 0.70) !important;
        -webkit-text-fill-color: rgba(255, 255, 255, 0.70) !important;
    }
}


.elmina-photo-count,
#memory-wall-count,
.elmina-youtube-count,
#elmina-youtube-current-count {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.elmina-islands-cam-interrupted #btn-islands-cam .elmina-islands-stream-dot {
    background: #9ca3af !important;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.16), 0 0 8px rgba(156, 163, 175, 0.42) !important;
    animation: none !important;
    transform: scale(0.96) !important;
}


@media (min-width: 641px) and (max-width: 1023px) {
    main.flex-grow {
        padding-top: 1.2rem !important;
        padding-bottom: 1.2rem !important;
    }

    main > .grid {
        gap: 1rem !important;
    }

    .lg\:col-span-2.space-y-4 {
        gap: 0.95rem !important;
    }

    #elmina-right-column {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.95rem !important;
    }

    #elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card,
#elmina-right-column > div{
        padding: 1.05rem !important;
        border-radius: 1rem !important;
        min-height: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    #master-webcam-button {
        min-height: 4.05rem !important;
        padding: 0.72rem 0.9rem !important;
        margin-top: 0.72rem !important;
        margin-bottom: 0.72rem !important;
    }

    #master-webcam-button .master-webcam-title {
        font-size: clamp(1.08rem, 2.8vw, 1.42rem) !important;
        line-height: 1.08 !important;
    }

    #master-webcam-button .master-webcam-desc {
        font-size: clamp(0.76rem, 1.7vw, 0.9rem) !important;
        line-height: 1.28 !important;
        margin-top: 0.34rem !important;
    }

    .elmina-video-card-subtitle,
    #memory-wall-subtitle {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
        opacity: 0.94 !important;
    }

    #elmina-youtube-card .elmina-card-title-main,
.elmina-photo-title{
        font-size: clamp(1.22rem, 3.4vw, 1.62rem) !important;
        line-height: 1.08 !important;
    }

    #memory-wall-content {
        min-height: 11.2rem !important;
        max-height: 13.4rem !important;
        overflow-y: auto !important;
    }

    #memory-wall-content.has-hidden-memory-text #memory-wall-more-tab {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    #memory-wall-bottom,
    .elmina-youtube-controls {
        display: grid !important;
        grid-template-columns: 2.65rem minmax(5.4rem, 0.82fr) minmax(3.65rem, max-content) 2.65rem !important;
        align-items: center !important;
        gap: 0.36rem !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .elmina-photo-controls {
        display: grid !important;
        grid-template-columns: 2.65rem minmax(0, 1fr) 2.65rem !important;
        align-items: center !important;
        gap: 0.36rem !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow,
    .elmina-photo-arrow {
        width: 2.55rem !important;
        height: 2.55rem !important;
        min-width: 2.55rem !important;
        max-width: 2.55rem !important;
        justify-self: center !important;
    }

    #memory-wall-share-button {
        justify-self: start !important;
        width: 8.4rem !important;
        max-width: 8.4rem !important;
        min-width: 0 !important;
        font-size: 0.82rem !important;
        line-height: 1.05 !important;
        padding-left: 0.52rem !important;
        padding-right: 0.52rem !important;
        white-space: nowrap !important;
    }

    #elmina-youtube-share-button.elmina-youtube-share {
        justify-self: start !important;
        width: 6.9rem !important;
        max-width: 6.9rem !important;
        min-width: 0 !important;
        color: #004aad !important;
        -webkit-text-fill-color: #004aad !important;
        font-size: 0.78rem !important;
        font-weight: 900 !important;
        line-height: 1.04 !important;
        padding: 0.34rem 0.45rem !important;
        white-space: normal !important;
        overflow: hidden !important;
    }

    #elmina-youtube-share-button .elmina-youtube-share-line {
        color: #004aad !important;
        -webkit-text-fill-color: #004aad !important;
        line-height: 1.04 !important;
        white-space: nowrap !important;
    }

    #memory-wall-center,
    .elmina-youtube-center,
    .elmina-photo-control-center {
        min-width: 3.55rem !important;
        width: auto !important;
        justify-self: center !important;
        align-items: center !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    #elmina-youtube-current-count,
    .elmina-photo-count {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
        font-size: clamp(0.84rem, 2.35vw, 1rem) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    #link-appstore-mobile,
    #link-playstore-mobile {
        font-size: clamp(0.72rem, 1.85vw, 0.84rem) !important;
        line-height: 1 !important;
        min-height: 2.35rem !important;
        padding: 0.48rem 0.65rem !important;
        white-space: nowrap !important;
        gap: 0.42rem !important;
    }

    #link-appstore-mobile svg,
    #link-playstore-mobile svg {
        width: 1.12rem !important;
        height: 1.12rem !important;
        min-width: 1.12rem !important;
    }

    footer {
        padding-top: 1.15rem !important;
        padding-bottom: 1.15rem !important;
        margin-top: 1rem !important;
    }

    footer .grid {
        gap: 0.9rem !important;
        margin-bottom: 0.72rem !important;
    }

    footer h4 {
        font-size: 1rem !important;
        margin-bottom: 0.48rem !important;
    }

    footer p,
    footer a,
    footer span {
        font-size: 0.82rem !important;
        line-height: 1.34 !important;
    }

    .elmina-photo-viewer {
        padding: 0.45rem !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .elmina-photo-viewer-panel {
        width: min(96vw, 820px) !important;
        max-width: 96vw !important;
        max-height: 92vh !important;
        padding: 0.7rem !important;
        border-radius: 0.95rem !important;
        box-sizing: border-box !important;
        overflow: auto !important;
    }

    .elmina-photo-viewer-top {
        margin-bottom: 0.45rem !important;
    }

    .elmina-photo-close {
        padding: 0.42rem 0.68rem !important;
        font-size: 0.82rem !important;
    }

    .elmina-photo-viewer-image {
        max-height: 64vh !important;
        aspect-ratio: 4 / 3 !important;
    }

    .elmina-photo-viewer-bottom {
        grid-template-columns: 2.45rem minmax(0, 1fr) 2.45rem !important;
        gap: 0.45rem !important;
        margin-top: 0.55rem !important;
    }

    .elmina-photo-viewer-bottom .elmina-photo-arrow {
        width: 2.35rem !important;
        height: 2.35rem !important;
        min-width: 2.35rem !important;
    }
}

@media (min-width: 1024px) and (max-width: 1180px) {
    main.flex-grow {
        padding-top: 1.25rem !important;
        padding-bottom: 1.25rem !important;
    }

    main > .grid {
        gap: 1.15rem !important;
        align-items: stretch !important;
    }

    .lg\:col-span-2.space-y-4 {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.85rem !important;
    }

    #elmina-right-column {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.85rem !important;
    }

    #elmina-photo-card,
    #elmina-right-column > div {
        padding: 1.05rem !important;
        border-radius: 1rem !important;
    }

    #master-webcam-button {
        min-height: 4.65rem !important;
        padding: 0.82rem 1rem !important;
        margin-top: 0.78rem !important;
        margin-bottom: 0.78rem !important;
    }

    #master-webcam-button .master-webcam-title {
        font-size: clamp(1.18rem, 2.3vw, 1.58rem) !important;
        line-height: 1.08 !important;
    }

    #master-webcam-button .master-webcam-desc {
        font-size: clamp(0.78rem, 1.35vw, 0.92rem) !important;
        line-height: 1.3 !important;
        margin-top: 0.38rem !important;
    }

    .elmina-video-card-subtitle,
    #memory-wall-subtitle {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
    }

    #elmina-youtube-video-list {
        min-height: 12.1rem !important;
    }


    #link-appstore-mobile,
    #link-playstore-mobile {
        font-size: clamp(0.66rem, 1.2vw, 0.78rem) !important;
        line-height: 1 !important;
        min-height: 2.18rem !important;
        padding: 0.42rem 0.55rem !important;
        gap: 0.35rem !important;
        white-space: nowrap !important;
    }

    #link-appstore-mobile svg,
    #link-playstore-mobile svg {
        width: 1rem !important;
        height: 1rem !important;
        min-width: 1rem !important;
    }

    #memory-wall-bottom,
    .elmina-youtube-controls {
        grid-template-columns: 2.25rem minmax(5.6rem, 0.84fr) minmax(3.45rem, max-content) 2.25rem !important;
        gap: 0.34rem !important;
        overflow: hidden !important;
    }

    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow {
        width: 2.25rem !important;
        height: 2.25rem !important;
        min-width: 2.25rem !important;
    }

    #memory-wall-share-button {
        width: 8rem !important;
        max-width: 8rem !important;
        justify-self: start !important;
        font-size: 0.78rem !important;
        white-space: nowrap !important;
    }

    #elmina-youtube-share-button.elmina-youtube-share {
        width: 6.75rem !important;
        max-width: 6.75rem !important;
        min-width: 0 !important;
        justify-self: start !important;
        color: #004aad !important;
        -webkit-text-fill-color: #004aad !important;
        font-size: 0.74rem !important;
        line-height: 1.04 !important;
        padding-left: 0.42rem !important;
        padding-right: 0.42rem !important;
    }

    #elmina-youtube-share-button .elmina-youtube-share-line {
        color: #004aad !important;
        -webkit-text-fill-color: #004aad !important;
    }

    .elmina-photo-controls {
        overflow: hidden !important;
    }

    .elmina-photo-viewer-panel {
        width: min(94vw, 900px) !important;
        max-height: 92vh !important;
        overflow: auto !important;
    }

    footer {
        padding-top: 1.2rem !important;
        padding-bottom: 1.2rem !important;
        margin-top: 1.05rem !important;
    }

    footer .grid {
        gap: 1rem !important;
        margin-bottom: 0.78rem !important;
    }

    footer h4 {
        font-size: 1rem !important;
        margin-bottom: 0.5rem !important;
    }

    footer p,
    footer a,
    footer span {
        font-size: 0.84rem !important;
        line-height: 1.35 !important;
    }
}


@media (min-width: 641px) and (max-width: 1023px) {
    main > .grid {
        gap: 0.82rem !important;
        align-items: start !important;
    }

    .lg\:col-span-2.space-y-4,
    #elmina-right-column {
        gap: 0.78rem !important;
    }

    #elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card,
#elmina-right-column > div{
        padding: 0.86rem !important;
        border-radius: 0.92rem !important;
    }

    #master-webcam-button {
        min-height: 3.55rem !important;
        padding: 0.58rem 0.78rem !important;
        margin-top: 0.58rem !important;
        margin-bottom: 0.58rem !important;
    }

    #master-webcam-button .master-webcam-title {
        font-size: clamp(0.95rem, 2.25vw, 1.22rem) !important;
        line-height: 1.06 !important;
    }

    #master-webcam-button .master-webcam-desc {
        font-size: clamp(0.68rem, 1.45vw, 0.78rem) !important;
        line-height: 1.22 !important;
        margin-top: 0.26rem !important;
    }

    #memory-wall-title,
#elmina-youtube-card .elmina-card-title-main,
.elmina-photo-title{
        font-size: clamp(1.02rem, 2.75vw, 1.34rem) !important;
        line-height: 1.06 !important;
    }

    #memory-wall-subtitle,
    .elmina-video-card-subtitle,
    .elmina-photo-subtitle {
        font-size: clamp(0.76rem, 1.85vw, 0.88rem) !important;
        line-height: 1.24 !important;
    }

    #memory-wall-content {
        height: 10.15rem !important;
        min-height: 10.15rem !important;
        max-height: 10.15rem !important;
        margin-top: 0.34rem !important;
        margin-bottom: 0.54rem !important;
        padding: 0.68rem 0.74rem 0.46rem !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        overflow-y: hidden !important;
    }

    #memory-wall-content.is-memory-expanded {
        overflow-y: auto !important;
    }

    #memory-wall-quote-mark {
        font-size: 2.08rem !important;
        top: 0.05rem !important;
        left: 0.42rem !important;
    }

    #memory-wall-text {
        font-size: clamp(0.78rem, 1.85vw, 0.9rem) !important;
        line-height: 1.30 !important;
        padding-top: 0.04rem !important;
        margin-bottom: 0.2rem !important;
    }

    #memory-wall-more {
        font-size: clamp(0.72rem, 1.75vw, 0.84rem) !important;
        line-height: 1.28 !important;
        margin-bottom: 0.16rem !important;
    }

    #memory-wall-meta-row {
        margin-top: auto !important;
        min-height: 1.42rem !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0.35rem !important;
        position: relative !important;
        bottom: auto !important;
        padding: 0.16rem 0 0 !important;
        background: none !important;
        border-radius: 0 !important;
    }

    #memory-wall-meta {
        font-size: clamp(0.62rem, 1.55vw, 0.74rem) !important;
        line-height: 1.12 !important;
        min-width: 0 !important;
    }

    #memory-wall-content.has-hidden-memory-text #memory-wall-more-tab,
    #memory-wall-content.is-memory-expanded #memory-wall-more-tab {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    #memory-wall-more-tab {
        position: static !important;
        right: auto !important;
        bottom: auto !important;
        min-width: 3.2rem !important;
        min-height: 1.32rem !important;
        padding: 0.16rem 0.5rem !important;
        font-size: 0.68rem !important;
        line-height: 1 !important;
        flex-shrink: 0 !important;
    }

    #memory-wall-bottom,
    .elmina-youtube-controls {
        grid-template-columns: 2.35rem 5.05rem minmax(4.1rem, max-content) 2.35rem !important;
        gap: 0.28rem !important;
    }

    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow,
    .elmina-photo-arrow {
        width: 2.32rem !important;
        height: 2.32rem !important;
        min-width: 2.32rem !important;
        max-width: 2.32rem !important;
    }

    #memory-wall-share-button {
        justify-self: start !important;
        width: 5.0rem !important;
        max-width: 5.0rem !important;
        min-width: 0 !important;
        min-height: 2.28rem !important;
        padding: 0.26rem 0.32rem !important;
        font-size: 0.70rem !important;
        line-height: 1.02 !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        text-align: center !important;
    }

    #memory-wall-center,
    .elmina-youtube-center,
    .elmina-photo-control-center {
        min-width: 4.05rem !important;
        width: auto !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    #elmina-youtube-current-count,
    .elmina-photo-count {
        font-size: clamp(0.76rem, 1.9vw, 0.88rem) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    #elmina-youtube-share-button.elmina-youtube-share {
        width: 6.45rem !important;
        max-width: 6.45rem !important;
        font-size: 0.70rem !important;
        line-height: 1.02 !important;
        min-height: 2.28rem !important;
        padding: 0.26rem 0.34rem !important;
    }

    #link-appstore-mobile,
    #link-playstore-mobile {
        font-size: clamp(0.62rem, 1.45vw, 0.72rem) !important;
        line-height: 1 !important;
        min-height: 2.05rem !important;
        padding: 0.36rem 0.48rem !important;
        gap: 0.3rem !important;
        white-space: nowrap !important;
    }

    #link-appstore-mobile svg,
    #link-playstore-mobile svg {
        width: 0.92rem !important;
        height: 0.92rem !important;
        min-width: 0.92rem !important;
    }


    footer {
        padding-top: 0.78rem !important;
        padding-bottom: 0.78rem !important;
        margin-top: 0.65rem !important;
    }

    footer .grid {
        gap: 0.58rem !important;
        margin-bottom: 0.46rem !important;
    }

    footer h4 {
        font-size: 0.84rem !important;
        line-height: 1.12 !important;
        margin-bottom: 0.28rem !important;
    }

    footer p,
    footer a,
    footer span {
        font-size: 0.68rem !important;
        line-height: 1.18 !important;
    }

    footer svg {
        width: 0.9rem !important;
        height: 0.9rem !important;
    }

    footer .border-t {
        padding-top: 0.42rem !important;
    }
}


@media (min-width: 641px) and (max-width: 1180px) {
    html,
    body {
        -webkit-text-size-adjust: 100% !important;
        text-size-adjust: 100% !important;
    }

    #memory-wall-title,
#elmina-youtube-card .elmina-card-title-main,
.elmina-photo-title{
        font-size: clamp(0.94rem, 2.15vw, 1.18rem) !important;
        line-height: 1.04 !important;
    }

    #memory-wall-subtitle,
    .elmina-video-card-subtitle,
    .elmina-photo-subtitle {
        font-size: clamp(0.66rem, 1.45vw, 0.78rem) !important;
        line-height: 1.15 !important;
    }

    #memory-wall-content {
        height: 8.65rem !important;
        min-height: 8.65rem !important;
        max-height: 8.65rem !important;
        padding: 0.54rem 0.62rem 0.36rem !important;
        margin-top: 0.24rem !important;
        margin-bottom: 0.38rem !important;
        overflow: hidden !important;
    }

    #memory-wall-content.is-memory-expanded {
        overflow-y: auto !important;
    }

    #memory-wall-text {
        font-size: clamp(0.64rem, 1.36vw, 0.74rem) !important;
        line-height: 1.18 !important;
        font-weight: 700 !important;
        margin-bottom: 0.1rem !important;
    }

    #memory-wall-more {
        font-size: clamp(0.60rem, 1.28vw, 0.70rem) !important;
        line-height: 1.16 !important;
        margin-top: 0.16rem !important;
        margin-bottom: 0.06rem !important;
        font-weight: 500 !important;
    }

    #memory-wall-meta-row {
        margin-top: auto !important;
        min-height: 1.18rem !important;
        padding-top: 0.08rem !important;
        align-items: center !important;
    }

    #memory-wall-meta {
        font-size: clamp(0.56rem, 1.16vw, 0.66rem) !important;
        line-height: 1.05 !important;
    }

    #memory-wall-content.has-hidden-memory-text #memory-wall-more-tab,
    #memory-wall-content.is-memory-expanded #memory-wall-more-tab {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    #memory-wall-more-tab {
        min-width: 2.7rem !important;
        min-height: 1.14rem !important;
        padding: 0.12rem 0.38rem !important;
        font-size: 0.58rem !important;
        line-height: 1 !important;
        flex-shrink: 0 !important;
    }

    #memory-wall-bottom,
    .elmina-youtube-controls {
        display: grid !important;
        grid-template-columns: 2.28rem 4.05rem minmax(2.95rem, 1fr) 2.28rem !important;
        gap: 0.18rem !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
        align-items: center !important;
    }

    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow {
        width: 2.22rem !important;
        height: 2.22rem !important;
        min-width: 2.22rem !important;
        max-width: 2.22rem !important;
        justify-self: center !important;
    }

    #memory-wall-share-button {
        font-size: 0 !important;
        width: 3.95rem !important;
        max-width: 3.95rem !important;
        min-width: 0 !important;
        min-height: 2.12rem !important;
        padding: 0.20rem 0.22rem !important;
        white-space: normal !important;
        overflow: hidden !important;
        text-align: center !important;
        justify-self: start !important;
    }

    #memory-wall-share-button::before {
        content: "Share a\A Memory";
        white-space: pre-line;
        display: block;
        color: #004aad;
        -webkit-text-fill-color: #004aad;
        font-size: 0.61rem;
        line-height: 1.02;
        font-weight: 900;
        letter-spacing: 0;
    }

    #memory-wall-center,
    .elmina-youtube-center {
        min-width: 0 !important;
        width: 100% !important;
        justify-self: stretch !important;
        align-items: center !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    #elmina-youtube-current-count {
        font-size: clamp(0.68rem, 1.48vw, 0.78rem) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    #elmina-youtube-current-caption.elmina-youtube-caption {
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        font-size: clamp(0.64rem, 1.32vw, 0.74rem) !important;
        line-height: 1.08 !important;
        margin-top: 0.38rem !important;
        margin-bottom: 0 !important;
    }

    #elmina-youtube-video-list {
        min-height: 10.6rem !important;
    }

    #elmina-youtube-card{
        padding-top: 0.68rem !important;
        padding-bottom: 0.68rem !important;
    }


    #link-appstore-mobile,
    #link-playstore-mobile {
        font-size: clamp(0.58rem, 1.18vw, 0.66rem) !important;
        min-height: 1.92rem !important;
        padding: 0.30rem 0.42rem !important;
        white-space: nowrap !important;
    }

    footer h4 {
        font-size: 0.78rem !important;
    }

    footer p,
    footer a,
    footer span {
        font-size: 0.62rem !important;
        line-height: 1.12 !important;
    }
}


#memory-wall-text,
#memory-wall-more {
    display: block !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    text-overflow: clip !important;
}

#memory-wall-content:not(.is-memory-expanded) #memory-wall-text,
#memory-wall-content:not(.is-memory-expanded) #memory-wall-more {
    overflow: visible !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-text,
#memory-wall-content.is-memory-expanded #memory-wall-more {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
}


@media (hover: none) and (pointer: coarse) and (min-width: 641px) and (max-width: 1366px) {
    #elmina-memory-wall-card #memory-wall-inner {
        gap: 0.36rem !important;
    }

    #memory-wall-title,
#elmina-youtube-card .elmina-card-title-main,
.elmina-photo-title{
        font-size: clamp(0.92rem, 1.75vw, 1.14rem) !important;
        line-height: 1.05 !important;
    }

    #memory-wall-subtitle,
    .elmina-video-card-subtitle,
    .elmina-photo-subtitle {
        font-size: clamp(0.64rem, 1.2vw, 0.76rem) !important;
        line-height: 1.16 !important;
    }

    #memory-wall-content {
        height: clamp(10.35rem, 21vw, 12.7rem) !important;
        min-height: clamp(10.35rem, 21vw, 12.7rem) !important;
        max-height: clamp(10.35rem, 21vw, 12.7rem) !important;
        padding: 0.62rem 0.72rem 0.46rem !important;
        margin-top: 0.32rem !important;
        margin-bottom: 0.52rem !important;
        overflow-x: hidden !important;
        overflow-y: hidden !important;
        justify-content: flex-start !important;
    }

    #memory-wall-content.is-memory-expanded {
        overflow-y: auto !important;
    }

    #memory-wall-text {
        font-size: clamp(0.70rem, 1.28vw, 0.82rem) !important;
        line-height: 1.24 !important;
        font-weight: 760 !important;
        margin: 0 0 0.12rem !important;
        padding-top: 0.04rem !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
    }

    #memory-wall-more {
        font-size: clamp(0.64rem, 1.16vw, 0.76rem) !important;
        line-height: 1.22 !important;
        margin-top: 0.18rem !important;
        margin-bottom: 0.08rem !important;
        font-weight: 500 !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
    }

    #memory-wall-meta-row {
        margin-top: auto !important;
        min-height: 1.26rem !important;
        padding-top: 0.14rem !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0.32rem !important;
        flex-shrink: 0 !important;
        position: relative !important;
    }

    #memory-wall-content.has-hidden-memory-text #memory-wall-more-tab,
    #memory-wall-content.is-memory-expanded #memory-wall-more-tab {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    #memory-wall-more-tab {
        position: relative !important;
        right: auto !important;
        bottom: auto !important;
        min-width: 3.05rem !important;
        min-height: 1.22rem !important;
        padding: 0.14rem 0.46rem !important;
        font-size: 0.62rem !important;
        line-height: 1 !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    #memory-wall-bottom,
    .elmina-youtube-controls {
        display: grid !important;
        grid-template-columns: 2.32rem 4.55rem minmax(3.8rem, 1fr) 2.32rem !important;
        gap: 0.26rem !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
        align-items: center !important;
    }

    #memory-wall-prev,
    .elmina-youtube-controls .elmina-youtube-arrow:first-child {
        justify-self: start !important;
    }

    #memory-wall-next,
    .elmina-youtube-controls .elmina-youtube-arrow:last-child {
        justify-self: end !important;
    }

    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow {
        width: 2.24rem !important;
        height: 2.24rem !important;
        min-width: 2.24rem !important;
        max-width: 2.24rem !important;
    }

    #memory-wall-share-button {
        width: 4.55rem !important;
        max-width: 4.55rem !important;
        min-width: 0 !important;
        min-height: 2.10rem !important;
        padding: 0.22rem 0.26rem !important;
        font-size: 0 !important;
        line-height: 1 !important;
        overflow: hidden !important;
        text-align: center !important;
        justify-self: start !important;
        white-space: normal !important;
    }

    #memory-wall-share-button::before {
        content: "Share a\A Memory" !important;
        display: block !important;
        white-space: pre-line !important;
        color: #004aad !important;
        -webkit-text-fill-color: #004aad !important;
        font-size: 0.66rem !important;
        line-height: 1.02 !important;
        font-weight: 900 !important;
        letter-spacing: 0 !important;
    }

    #memory-wall-center,
    .elmina-youtube-center {
        min-width: 3.65rem !important;
        width: 100% !important;
        justify-self: stretch !important;
        align-items: center !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    #elmina-youtube-current-count {
        font-size: clamp(0.72rem, 1.30vw, 0.82rem) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    #elmina-youtube-current-caption.elmina-youtube-caption {
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        font-size: clamp(0.62rem, 1.08vw, 0.72rem) !important;
        line-height: 1.08 !important;
        margin-top: 0.34rem !important;
        margin-bottom: 0 !important;
    }

    #elmina-youtube-card{
        padding-top: 0.76rem !important;
        padding-bottom: 0.76rem !important;
    }


    footer h4 {
        font-size: 0.78rem !important;
    }

    footer p,
    footer a,
    footer span {
        font-size: 0.62rem !important;
        line-height: 1.14 !important;
    }
}


#memory-wall-subtitle,
#elmina-youtube-card .elmina-video-card-subtitle,
.elmina-video-card-subtitle {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 0.94 !important;
    font-size: clamp(0.98rem, 1.16vw, 1.12rem) !important;
    line-height: 1.26 !important;
    font-weight: 500 !important;
    margin-top: 0.24rem !important;
    margin-bottom: 0.9rem !important;
}


#memory-wall-content {
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

#memory-wall-text,
#memory-wall-more {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-wrap: break-word !important;
    word-break: break-word !important;
    hyphens: auto !important;
    text-overflow: clip !important;
}

#memory-wall-text {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#memory-wall-more {
    color: rgba(255, 255, 255, 0.90) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.90) !important;
}


#memory-wall-meta-row {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin-top: auto !important;
    padding-top: 0.35rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0.55rem !important;
}

#memory-wall-meta {
    min-width: 0 !important;
    max-width: calc(100% - 4.6rem) !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

#memory-wall-content.has-hidden-memory-text #memory-wall-more-tab,
#memory-wall-content.is-memory-expanded #memory-wall-more-tab {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#memory-wall-more-tab {
    flex: 0 0 auto !important;
    z-index: 7 !important;
}


#memory-wall-content.is-memory-expanded {
    overflow-y: auto !important;
    padding-bottom: 0.45rem !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-meta-row {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 8 !important;
    margin-top: 0.55rem !important;
    padding: 0.35rem 0 0.05rem !important;
    background: linear-gradient(180deg, rgba(0, 74, 173, 0.02), rgba(0, 74, 173, 0.78) 42%, rgba(0, 63, 158, 0.92)) !important;
    border-radius: 0 0 0.72rem 0.72rem !important;
}


#memory-wall-content:not(.is-memory-expanded) #memory-wall-text {
    max-height: 7.6em !important;
    overflow: hidden !important;
}

#memory-wall-content:not(.is-memory-expanded) #memory-wall-more {
    max-height: 4.4em !important;
    overflow: hidden !important;
}


@media (max-width: 767px) {
    #memory-wall-subtitle,
    #elmina-youtube-card .elmina-video-card-subtitle,
    .elmina-video-card-subtitle {
        font-size: clamp(1.00rem, 4.15vw, 1.14rem) !important;
        line-height: 1.24 !important;
        margin-bottom: 0.9rem !important;
    }

    #memory-wall-bottom,
    .elmina-youtube-controls {
        grid-template-columns: 2.85rem minmax(7.2rem, 8.6rem) minmax(3.9rem, 1fr) 2.85rem !important;
        gap: 0.42rem !important;
        overflow: visible !important;
    }

    #memory-wall-share-button,
    #elmina-youtube-share-button {
        width: 100% !important;
        max-width: 8.6rem !important;
        min-width: 0 !important;
        min-height: 2.68rem !important;
        padding: 0.36rem 0.58rem !important;
        font-size: clamp(0.78rem, 3.5vw, 0.92rem) !important;
        line-height: 1.05 !important;
        font-weight: 900 !important;
        text-align: center !important;
        justify-self: start !important;
        white-space: normal !important;
        overflow: hidden !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
    }

    #memory-wall-share-button::before {
        content: none !important;
    }

    #memory-wall-center,
    .elmina-youtube-center {
        min-width: 3.9rem !important;
        width: 100% !important;
        justify-self: center !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    #elmina-youtube-current-count {
        font-size: clamp(0.92rem, 4.1vw, 1.08rem) !important;
        white-space: nowrap !important;
    }

    #memory-wall-content {
        min-height: 14.2rem !important;
        max-height: 16.0rem !important;
        padding: 0.82rem 0.78rem 0.66rem !important;
    }

    #memory-wall-text {
        font-size: clamp(0.82rem, 3.55vw, 0.96rem) !important;
        line-height: 1.34 !important;
    }

    #memory-wall-more {
        font-size: clamp(0.76rem, 3.25vw, 0.88rem) !important;
        line-height: 1.32 !important;
    }
}


#memory-wall-content {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

#memory-wall-scroll-area {
    position: relative !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    padding-right: 0.1rem !important;
    box-sizing: border-box !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(255, 232, 77, 0.96) rgba(0, 63, 158, 0.35) !important;
}

#memory-wall-scroll-area::-webkit-scrollbar {
    width: 8px !important;
}

#memory-wall-scroll-area::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.08) !important;
    border-radius: 999px !important;
}

#memory-wall-scroll-area::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #fff27a, rgba(255, 232, 77, 0.98), #d8b500) !important;
    border-radius: 999px !important;
    border: 1px solid rgba(0, 63, 158, 0.24) !important;
}

#memory-wall-content.is-memory-expanded {
    overflow: hidden !important;
    justify-content: flex-start !important;
    padding-bottom: 0.62rem !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-scroll-area {
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    padding-right: 0.32rem !important;
}


#memory-wall-content:not(.is-memory-expanded) #memory-wall-text,
#memory-wall-content:not(.is-memory-expanded) #memory-wall-more,
#memory-wall-content.is-memory-expanded #memory-wall-text,
#memory-wall-content.is-memory-expanded #memory-wall-more {
    max-height: none !important;
    overflow: visible !important;
}

#memory-wall-text,
#memory-wall-more {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-wrap: break-word !important;
    word-break: break-word !important;
    text-overflow: clip !important;
}

#memory-wall-meta-row,
#memory-wall-content.is-memory-expanded #memory-wall-meta-row {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    flex: 0 0 auto !important;
    z-index: 10 !important;
    margin-top: 0.42rem !important;
    padding: 0.26rem 0 0 !important;
    background: linear-gradient(180deg, rgba(0, 74, 173, 0), rgba(0, 74, 173, 0.42) 48%, rgba(0, 63, 158, 0.70)) !important;
    border-radius: 0.72rem !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-more-tab,
#memory-wall-more-tab {
    position: relative !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 11 !important;
    flex: 0 0 auto !important;
}

@media (max-width: 767px) {
    #memory-wall-content {
        min-height: 14.8rem !important;
        height: 14.8rem !important;
        max-height: 14.8rem !important;
    }

    #memory-wall-content.is-memory-expanded {
        min-height: 14.8rem !important;
        height: 14.8rem !important;
        max-height: 14.8rem !important;
    }

    #memory-wall-meta-row,
    #memory-wall-content.is-memory-expanded #memory-wall-meta-row {
        margin-top: 0.34rem !important;
        padding-top: 0.22rem !important;
    }
}


#memory-wall-content:not(.is-memory-expanded) #memory-wall-scroll-area {
    display: block !important;
    overflow: hidden !important;
}

#memory-wall-content:not(.is-memory-expanded) #memory-wall-text,
#memory-wall-content:not(.is-memory-expanded) #memory-wall-more {
    max-height: none !important;
    overflow: visible !important;
    margin-top: 0 !important;
}

#memory-wall-content:not(.is-memory-expanded) #memory-wall-more {
    margin-top: 0.62rem !important;
    margin-bottom: 0 !important;
}

#memory-wall-content:not(.is-memory-expanded) #memory-wall-more:empty {
    display: none !important;
    margin-top: 0 !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-scroll-area {
    display: block !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-text,
#memory-wall-content.is-memory-expanded #memory-wall-more {
    overflow: visible !important;
    margin-bottom: 0.62rem !important;
}

@media (max-width: 767px) {
    #memory-wall-content:not(.is-memory-expanded) #memory-wall-more {
        margin-top: 0.48rem !important;
    }
}


#memory-wall-content {
    position: relative !important;
}

#memory-wall-quote-mark {
    position: absolute !important;
    top: 0.18rem !important;
    left: 0.22rem !important;
    z-index: 0 !important;
    line-height: 1 !important;
    font-size: clamp(1.55rem, 2.15vw, 2.05rem) !important;
    color: rgba(255, 232, 77, 0.32) !important;
    -webkit-text-fill-color: rgba(255, 232, 77, 0.32) !important;
    text-shadow: 0 0 8px rgba(255, 232, 77, 0.12) !important;
    pointer-events: none !important;
}

#memory-wall-scroll-area,
#memory-wall-text,
#memory-wall-more,
#memory-wall-meta-row {
    position: relative !important;
    z-index: 1 !important;
}

@media (max-width: 767px) {
    #memory-wall-quote-mark {
        top: 0.20rem !important;
        left: 0.18rem !important;
        font-size: clamp(1.45rem, 6.2vw, 1.95rem) !important;
        color: rgba(255, 232, 77, 0.28) !important;
        -webkit-text-fill-color: rgba(255, 232, 77, 0.28) !important;
        text-shadow: 0 0 7px rgba(255, 232, 77, 0.10) !important;
    }
}

/* ==========================================================================
   CANONICAL EL MINA SYSTEM AND RESPONSIVE OVERRIDES
   ========================================================================== */
:root {

    --elmina-brand-blue: #004aad;
    --elmina-brand-blue-deep: #003f9e;
    --elmina-brand-blue-soft: #0b5ec2;
    --elmina-brand-yellow: #ffe84d;
    --elmina-brand-yellow-soft: #fff27a;
    --elmina-page-bg: #f7fbff;
    --elmina-white: #ffffff;


    --elmina-card-gradient: linear-gradient(135deg, var(--elmina-brand-blue), var(--elmina-brand-blue-deep));
    --elmina-card-border: rgba(255, 255, 255, 0.14);
    --elmina-card-shadow: 0 16px 30px rgba(0, 74, 173, 0.13);
    --elmina-inner-border: rgba(255, 255, 255, 0.22);


    --elmina-radius-card: clamp(1rem, 1.8vw, 1.35rem);
    --elmina-radius-inner: clamp(0.75rem, 1.2vw, 1rem);
    --elmina-gap-page: clamp(1rem, 2vw, 2rem);
    --elmina-gap-card: clamp(0.85rem, 1.45vw, 1.25rem);
    --elmina-pad-card: clamp(1rem, 1.8vw, 1.5rem);
    --elmina-pad-card-mobile: clamp(1.15rem, 4.3vw, 1.55rem);


    --elmina-title-size: clamp(1.45rem, 2vw, 1.95rem);
    --elmina-title-size-mobile: clamp(1.7rem, 7vw, 2.1rem);
    --elmina-subtitle-size: clamp(0.95rem, 1.1vw, 1.08rem);
    --elmina-subtitle-size-mobile: clamp(1.05rem, 4.6vw, 1.28rem);
    --elmina-body-size: clamp(0.9rem, 1vw, 1rem);


    --elmina-button-min-height: 2.7rem;
    --elmina-button-radius: 999px;
    --elmina-arrow-size: clamp(2.6rem, 5vw, 3.3rem);
    --elmina-arrow-size-mobile: clamp(3rem, 13vw, 3.75rem);


    --elmina-theme-primary: var(--elmina-brand-blue);
    --elmina-theme-secondary: var(--elmina-brand-blue-deep);
    --elmina-theme-primary-soft: var(--elmina-brand-blue-soft);
    --elmina-theme-accent: var(--elmina-brand-yellow);
    --elmina-theme-white: var(--elmina-white);
    --elmina-theme-page-bg: var(--elmina-page-bg);
    --elmina-theme-card-bg: var(--elmina-white);
    --elmina-theme-footer-bg: var(--elmina-brand-blue);
    --elmina-theme-border: #d8e7f7;
    --elmina-theme-main-text: var(--elmina-brand-blue);
    --elmina-theme-secondary-text: #0053b8;
    --elmina-theme-card-gradient: var(--elmina-card-gradient);
    --elmina-theme-footer-gradient: var(--elmina-card-gradient);
}

html,
body {
    color-scheme: light;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    min-width: 320px;
}

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

button,
a {
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(255, 232, 77, 0.26);
}


.elmina-system-card {
    background: var(--elmina-card-gradient);
    color: var(--elmina-white);
    border: 1px solid var(--elmina-card-border);
    border-radius: var(--elmina-radius-card);
    box-shadow: var(--elmina-card-shadow);
    padding: var(--elmina-pad-card);
    overflow: hidden;
    min-width: 0;
    box-sizing: border-box;
}

.elmina-system-title {
    color: var(--elmina-brand-yellow);
    font-size: var(--elmina-title-size);
    font-weight: 900;
    line-height: 1.08;
    margin: 0;
    overflow-wrap: anywhere;
}

.elmina-system-subtitle {
    color: var(--elmina-white);
    font-size: var(--elmina-subtitle-size);
    font-weight: 700;
    line-height: 1.28;
    margin: 0.35rem 0 0;
    opacity: 0.96;
}

.elmina-system-body {
    color: var(--elmina-white);
    font-size: var(--elmina-body-size);
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.elmina-system-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--elmina-button-min-height);
    padding: 0.58rem 1.1rem;
    border: 0;
    border-radius: var(--elmina-button-radius);
    background: var(--elmina-brand-yellow);
    color: var(--elmina-brand-blue);
    -webkit-text-fill-color: var(--elmina-brand-blue);
    font-weight: 900;
    line-height: 1.08;
    text-align: center;
    white-space: normal;
    box-sizing: border-box;
}

.elmina-system-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-width: 0;
}

.elmina-system-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--elmina-arrow-size);
    height: var(--elmina-arrow-size);
    min-width: var(--elmina-arrow-size);
    border-radius: 999px;
    background: var(--elmina-brand-yellow);
    color: var(--elmina-brand-blue);
    -webkit-text-fill-color: var(--elmina-brand-blue);
    font-weight: 900;
}

.elmina-system-text-safe {
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
    min-width: 0;
}

@media (max-width: 640px) {
    .elmina-system-card {
        padding: var(--elmina-pad-card-mobile);
        border-radius: clamp(1.1rem, 5vw, 1.45rem);
    }

    .elmina-system-title {
        font-size: var(--elmina-title-size-mobile);
    }

    .elmina-system-subtitle {
        font-size: var(--elmina-subtitle-size-mobile);
    }

    .elmina-system-arrow {
        width: var(--elmina-arrow-size-mobile);
        height: var(--elmina-arrow-size-mobile);
        min-width: var(--elmina-arrow-size-mobile);
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
    }
}


#elmina-memory-wall-card,
#elmina-memory-wall-card * {
    box-sizing: border-box !important;
}

#memory-wall-inner {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
}

#memory-wall-top,
#memory-wall-bottom {
    flex: 0 0 auto !important;
}

#memory-wall-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    min-height: 12.15rem !important;
    height: 12.15rem !important;
    max-height: 12.15rem !important;
    flex: 0 0 12.15rem !important;
    overflow: hidden !important;
}

#memory-wall-content.is-memory-expanded {
    min-height: 12.15rem !important;
    height: 12.15rem !important;
    max-height: 12.15rem !important;
    flex-basis: 12.15rem !important;
    overflow: hidden !important;
}

#memory-wall-scroll-area {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-scroll-area {
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
}

#memory-wall-content:not(.is-memory-expanded) #memory-wall-scroll-area {
    overflow-y: hidden !important;
}

#memory-wall-meta-row {
    flex: 0 0 auto !important;
    margin-top: 0.42rem !important;
}

@media (min-width: 1024px) {
    #memory-wall-content,
    #memory-wall-content.is-memory-expanded {
        min-height: 12.25rem !important;
        height: 12.25rem !important;
        max-height: 12.25rem !important;
        flex-basis: 12.25rem !important;
    }
}

@media (min-width: 641px) and (max-width: 1023px) {
    #memory-wall-content,
    #memory-wall-content.is-memory-expanded {
        min-height: 10.15rem !important;
        height: 10.15rem !important;
        max-height: 10.15rem !important;
        flex-basis: 10.15rem !important;
    }
}

@media (max-width: 640px) {
    #memory-wall-content,
    #memory-wall-content.is-memory-expanded {
        min-height: 14.8rem !important;
        height: 14.8rem !important;
        max-height: 14.8rem !important;
        flex-basis: 14.8rem !important;
    }
}

@media (max-width: 390px) {
    #memory-wall-content,
    #memory-wall-content.is-memory-expanded {
        min-height: 14.2rem !important;
        height: 14.2rem !important;
        max-height: 14.2rem !important;
        flex-basis: 14.2rem !important;
    }
}


#memory-wall-content.is-memory-expanded {
    position: relative !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-scroll-area {
    overflow-y: scroll !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(255, 232, 77, 0.96) rgba(255, 255, 255, 0.12) !important;
    scrollbar-gutter: stable !important;
    padding-right: 0.42rem !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-scroll-area::-webkit-scrollbar {
    width: 9px !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-scroll-area::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.12) !important;
    border-radius: 999px !important;
}

#memory-wall-content.is-memory-expanded #memory-wall-scroll-area::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #fff27a, #ffe84d 58%, #d8b500) !important;
    border: 1px solid rgba(0, 63, 158, 0.30) !important;
    border-radius: 999px !important;
}

#memory-wall-content.is-memory-expanded::after {
    content: "" !important;
    position: absolute !important;
    top: 0.74rem !important;
    right: 0.22rem !important;
    bottom: 0.74rem !important;
    width: 4px !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(255, 242, 122, 0.88), rgba(255, 232, 77, 0.56), rgba(255, 255, 255, 0.18)) !important;
    box-shadow: 0 0 8px rgba(255, 232, 77, 0.35) !important;
    pointer-events: none !important;
    opacity: 0.78 !important;
    z-index: 12 !important;
}

@media (max-width: 640px) {
    #memory-wall-content.is-memory-expanded #memory-wall-scroll-area {
        padding-right: 0.54rem !important;
    }

    #memory-wall-content.is-memory-expanded::after {
        right: 0.16rem !important;
        width: 4px !important;
        top: 0.62rem !important;
        bottom: 0.62rem !important;
        opacity: 0.82 !important;
    }
}


#memory-wall-bottom,
.elmina-youtube-controls {
    --elmina-share-arrow-size: 2.35rem;
    --elmina-share-button-width: 7.7rem;
    --elmina-share-strip-gap: 0.48rem;
    --elmina-share-center-min: 3.85rem;

    display: grid !important;
    grid-template-columns:
        var(--elmina-share-arrow-size)
        var(--elmina-share-button-width)
        minmax(var(--elmina-share-center-min), 1fr)
        var(--elmina-share-arrow-size) !important;
    align-items: center !important;
    column-gap: var(--elmina-share-strip-gap) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

#memory-wall-prev,
#memory-wall-next,
.elmina-youtube-arrow {
    width: var(--elmina-share-arrow-size) !important;
    height: var(--elmina-share-arrow-size) !important;
    min-width: var(--elmina-share-arrow-size) !important;
    max-width: var(--elmina-share-arrow-size) !important;
    min-height: var(--elmina-share-arrow-size) !important;
    max-height: var(--elmina-share-arrow-size) !important;
    justify-self: center !important;
    flex: 0 0 var(--elmina-share-arrow-size) !important;
}

#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share {
    width: var(--elmina-share-button-width) !important;
    max-width: var(--elmina-share-button-width) !important;
    min-width: 0 !important;
    min-height: 2.35rem !important;
    padding: 0.42rem 0.62rem !important;
    justify-self: start !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: clamp(0.72rem, 0.82vw, 0.84rem) !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    overflow: hidden !important;
    opacity: 1 !important;
    box-sizing: border-box !important;
}


#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
#elmina-youtube-share-button.elmina-youtube-share * {
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
}


#memory-wall-center,
.elmina-youtube-center {
    justify-self: center !important;
    align-self: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: var(--elmina-share-center-min) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 0.24rem !important;
    overflow: visible !important;
}

#memory-wall-count,
.elmina-youtube-count,
#elmina-youtube-current-count {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    #memory-wall-bottom,
    .elmina-youtube-controls {
        --elmina-share-arrow-size: clamp(3rem, 11vw, 4.1rem);
        --elmina-share-button-width: clamp(10.6rem, 34vw, 14.4rem);
        --elmina-share-strip-gap: clamp(0.48rem, 2vw, 0.85rem);
        --elmina-share-center-min: clamp(4.4rem, 15vw, 6.3rem);
    }

    #memory-wall-share-button,
    #elmina-youtube-share-button.elmina-youtube-share,
    #elmina-social-share-button.elmina-social-share {
        min-height: clamp(3.05rem, 9vw, 4.05rem) !important;
        padding: 0.5rem 0.9rem !important;
        font-size: clamp(0.98rem, 3.6vw, 1.35rem) !important;
        line-height: 1.04 !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    #elmina-youtube-current-count {
        font-size: clamp(1rem, 4.2vw, 1.35rem) !important;
    }
}

@media (max-width: 390px) {
    #memory-wall-bottom,
    .elmina-youtube-controls {
        --elmina-share-arrow-size: 2.72rem;
        --elmina-share-button-width: 8.9rem;
        --elmina-share-strip-gap: 0.34rem;
        --elmina-share-center-min: 3.75rem;
    }

    #memory-wall-share-button,
    #elmina-youtube-share-button.elmina-youtube-share,
    #elmina-social-share-button.elmina-social-share {
        min-height: 2.82rem !important;
        padding-left: 0.55rem !important;
        padding-right: 0.55rem !important;
        font-size: 0.86rem !important;
    }
}


#memory-wall-bottom,
.elmina-youtube-controls {
    --elmina-control-arrow: 2.35rem;
    --elmina-control-button: 7.85rem;
    --elmina-control-center: 3.9rem;
    --elmina-control-gap: 0.48rem;

    display: grid !important;
    grid-template-columns:
        var(--elmina-control-arrow)
        var(--elmina-control-button)
        minmax(var(--elmina-control-center), 1fr)
        var(--elmina-control-arrow) !important;
    align-items: center !important;
    column-gap: var(--elmina-control-gap) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

.elmina-photo-gallery.has-many .elmina-photo-controls,
.elmina-photo-controls {
    --elmina-control-arrow: 2.35rem;
    --elmina-control-gap: 0.48rem;

    display: grid !important;
    grid-template-columns: var(--elmina-control-arrow) minmax(0, 1fr) var(--elmina-control-arrow) !important;
    align-items: center !important;
    column-gap: var(--elmina-control-gap) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

#memory-wall-prev,
#memory-wall-next,
.elmina-youtube-arrow,
.elmina-photo-arrow {
    width: var(--elmina-control-arrow) !important;
    height: var(--elmina-control-arrow) !important;
    min-width: var(--elmina-control-arrow) !important;
    max-width: var(--elmina-control-arrow) !important;
    min-height: var(--elmina-control-arrow) !important;
    max-height: var(--elmina-control-arrow) !important;
    justify-self: center !important;
    align-self: center !important;
    flex: 0 0 var(--elmina-control-arrow) !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    box-sizing: border-box !important;
}

#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
#elmina-photo-share-button.elmina-photo-pill,
.elmina-photo-share.elmina-photo-pill {
    min-height: 2.35rem !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: clamp(0.72rem, 0.82vw, 0.84rem) !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    opacity: 1 !important;
    box-sizing: border-box !important;
}

#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share {
    width: var(--elmina-control-button) !important;
    max-width: var(--elmina-control-button) !important;
    min-width: 0 !important;
    padding: 0.42rem 0.62rem !important;
    justify-self: start !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

#elmina-photo-share-button.elmina-photo-pill,
.elmina-photo-share.elmina-photo-pill {
    min-width: 7.85rem !important;
    padding: 0.42rem 0.74rem !important;
    align-self: flex-start !important;
}

#memory-wall-share-button::before {
    content: none !important;
}

#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
#elmina-youtube-share-button.elmina-youtube-share *,
#elmina-photo-share-button.elmina-photo-pill,
.elmina-photo-share.elmina-photo-pill {
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
}

#elmina-youtube-share-button .elmina-youtube-share-line {
    display: inline !important;
    white-space: nowrap !important;
    font: inherit !important;
    line-height: inherit !important;
}

#memory-wall-center,
.elmina-youtube-center,
.elmina-photo-control-center {
    justify-self: center !important;
    align-self: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 3.9rem !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 0.24rem !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

#memory-wall-count,
.elmina-youtube-count,
#elmina-youtube-current-count,
.elmina-photo-count {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: clamp(0.78rem, 0.92vw, 0.9rem) !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    min-width: 0 !important;
}

#memory-wall-dots,
.elmina-youtube-dots,
.elmina-photo-shifter {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.28rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    min-height: 0.5rem !important;
    overflow: visible !important;
}

#memory-wall-dots .memory-wall-dot,
.elmina-youtube-dots .elmina-youtube-dot,
.elmina-photo-shifter .elmina-photo-shift-dot {
    width: 0.38rem !important;
    height: 0.38rem !important;
    min-width: 0.38rem !important;
    border-radius: 999px !important;
    background: rgba(159, 197, 239, 0.72) !important;
    opacity: 0.78 !important;
}

#memory-wall-dots .memory-wall-dot.is-active,
.elmina-youtube-dots .elmina-youtube-dot.is-active,
.elmina-photo-shifter .elmina-photo-shift-dot.is-active {
    width: 1.02rem !important;
    min-width: 1.02rem !important;
    background: #ffe84d !important;
    opacity: 1 !important;
}

@media (max-width: 767px) {
    #memory-wall-bottom,
    .elmina-youtube-controls {
        --elmina-control-arrow: 2.85rem;
        --elmina-control-button: 8.6rem;
        --elmina-control-center: 3.9rem;
        --elmina-control-gap: 0.42rem;
    }

    .elmina-photo-gallery.has-many .elmina-photo-controls,
    .elmina-photo-controls {
        --elmina-control-arrow: 2.85rem;
        --elmina-control-gap: 0.42rem;
    }

    #memory-wall-share-button,
    #elmina-youtube-share-button.elmina-youtube-share,
    #elmina-social-share-button.elmina-social-share {
        min-height: 2.68rem !important;
        padding: 0.36rem 0.58rem !important;
        font-size: clamp(0.78rem, 3.5vw, 0.92rem) !important;
        line-height: 1.05 !important;
    }

    #elmina-photo-share-button.elmina-photo-pill,
    .elmina-photo-share.elmina-photo-pill {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 2.68rem !important;
        padding: 0.42rem 0.74rem !important;
        font-size: clamp(0.88rem, 3.75vw, 1.02rem) !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    #elmina-youtube-current-count,
    .elmina-photo-count {
        font-size: clamp(0.92rem, 4.1vw, 1.08rem) !important;
    }
}

@media (max-width: 390px) {
    #memory-wall-bottom,
    .elmina-youtube-controls {
        --elmina-control-arrow: 2.72rem;
        --elmina-control-button: 8.55rem;
        --elmina-control-center: 3.75rem;
        --elmina-control-gap: 0.34rem;
    }

    .elmina-photo-gallery.has-many .elmina-photo-controls,
    .elmina-photo-controls {
        --elmina-control-arrow: 2.72rem;
        --elmina-control-gap: 0.34rem;
    }

    #memory-wall-share-button,
    #elmina-youtube-share-button.elmina-youtube-share,
    #elmina-social-share-button.elmina-social-share {
        min-height: 2.58rem !important;
        padding-left: 0.48rem !important;
        padding-right: 0.48rem !important;
        font-size: 0.82rem !important;
    }
}


#elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card{
    --elmina-card-shared-bg: linear-gradient(135deg, #004aad, #003f9e);
    --elmina-card-shared-radius: clamp(0.95rem, 1.45vw, 1.25rem);
    --elmina-card-shared-border: rgba(255, 255, 255, 0.12);
    --elmina-card-shared-shadow: 0 14px 28px rgba(0, 74, 173, 0.13);

    background: var(--elmina-card-shared-bg) !important;
    color: #ffffff !important;
    border: 1px solid var(--elmina-card-shared-border) !important;
    border-radius: var(--elmina-card-shared-radius) !important;
    box-shadow: var(--elmina-card-shared-shadow) !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

#elmina-photo-card *,
#elmina-memory-wall-card *,
#elmina-youtube-card *{
    box-sizing: border-box;
}

@media (max-width: 767px) {
    #elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card,
#elmina-social-card{
        --elmina-card-shared-radius: clamp(1rem, 4.4vw, 1.18rem);
        --elmina-card-shared-shadow: 0 12px 24px rgba(0, 74, 173, 0.12);
    }
}


:root {
    --elmina-type-title-main: clamp(1.32rem, 1.48vw, 1.62rem);
    --elmina-type-title-tight: clamp(1.18rem, 1.22vw, 1.34rem);
    --elmina-type-subtitle: clamp(0.88rem, 0.96vw, 1rem);
    --elmina-type-body: clamp(0.9rem, 0.95vw, 0.98rem);
    --elmina-type-caption: clamp(0.84rem, 0.9vw, 0.94rem);
    --elmina-type-meta: clamp(0.72rem, 0.78vw, 0.82rem);
    --elmina-type-counter: clamp(0.78rem, 0.88vw, 0.9rem);
    --elmina-type-button: clamp(0.72rem, 0.82vw, 0.84rem);
}

html,
body {
    color-scheme: only light;
}

#elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card{
    color-scheme: only light;
}

#elmina-photo-card .elmina-photo-title,
#memory-wall-title,
#elmina-youtube-card .elmina-card-title-main{
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: var(--elmina-type-title-main) !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.01em !important;
    text-wrap: balance;
    overflow-wrap: anywhere;
}

#elmina-youtube-card .elmina-card-title-main{
    font-size: var(--elmina-type-title-tight) !important;
}

#elmina-photo-card .elmina-photo-subtitle,
#memory-wall-subtitle,
#elmina-youtube-card .elmina-card-subtitle-main,
#elmina-youtube-card .elmina-video-card-subtitle {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: var(--elmina-type-subtitle) !important;
    font-weight: 800 !important;
    line-height: 1.24 !important;
    opacity: 0.96 !important;
    overflow-wrap: anywhere;
}

#memory-wall-text,
#memory-wall-more,
.elmina-youtube-caption,
.elmina-photo-form-intro,
.elmina-video-form-intro {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: var(--elmina-type-body) !important;
    line-height: 1.38 !important;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.elmina-photo-caption {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: var(--elmina-type-caption) !important;
    font-weight: 850 !important;
    line-height: 1.18 !important;
    overflow-wrap: anywhere;
}

.elmina-photo-meta,
#memory-wall-meta,
.elmina-photo-compression-note,
.elmina-photo-status,
.elmina-video-status {
    color: rgba(255, 255, 255, 0.84) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.84) !important;
    font-size: var(--elmina-type-meta) !important;
    font-weight: 750 !important;
    line-height: 1.22 !important;
    overflow-wrap: anywhere;
}

#memory-wall-count,
.elmina-youtube-count,
#elmina-youtube-current-count,
.elmina-photo-count {
    font-size: var(--elmina-type-counter) !important;
    font-weight: 900 !important;
    letter-spacing: 0.01em !important;
}

#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
#elmina-photo-share-button.elmina-photo-pill,
.elmina-photo-share.elmina-photo-pill {
    font-size: var(--elmina-type-button) !important;
    font-weight: 900 !important;
}


@media (min-width: 768px) and (max-width: 1180px) {
    :root {
        --elmina-type-title-main: clamp(1.26rem, 2.15vw, 1.5rem);
        --elmina-type-title-tight: clamp(1.08rem, 1.85vw, 1.24rem);
        --elmina-type-subtitle: clamp(0.84rem, 1.38vw, 0.94rem);
        --elmina-type-body: clamp(0.84rem, 1.3vw, 0.92rem);
        --elmina-type-caption: clamp(0.8rem, 1.22vw, 0.9rem);
        --elmina-type-meta: clamp(0.68rem, 1.05vw, 0.78rem);
    }
}

@media (max-width: 767px) {
    :root {
        --elmina-type-title-main: clamp(1.42rem, 6.2vw, 1.78rem);
        --elmina-type-title-tight: clamp(1.3rem, 5.2vw, 1.56rem);
        --elmina-type-subtitle: clamp(0.98rem, 4vw, 1.12rem);
        --elmina-type-body: clamp(0.94rem, 3.6vw, 1.02rem);
        --elmina-type-caption: clamp(0.9rem, 3.4vw, 1rem);
        --elmina-type-meta: clamp(0.76rem, 3vw, 0.86rem);
        --elmina-type-counter: clamp(0.92rem, 3.8vw, 1.08rem);
        --elmina-type-button: clamp(0.78rem, 3.5vw, 0.92rem);
    }

    #elmina-photo-card .elmina-photo-title,
#memory-wall-title,
#elmina-youtube-card .elmina-card-title-main{
        line-height: 1.06 !important;
    }
}

@media (prefers-color-scheme: dark) {
    #elmina-photo-card,
#elmina-memory-wall-card,
#elmina-youtube-card,
#elmina-social-card{
        background: linear-gradient(135deg, #004aad, #003f9e) !important;
        color: #ffffff !important;
    }

    #elmina-photo-card .elmina-photo-title,
#memory-wall-title,
#elmina-youtube-card .elmina-card-title-main{
        color: #ffe84d !important;
        -webkit-text-fill-color: #ffe84d !important;
    }
}


footer {
    background: #004aad !important;
    color: #ffffff !important;
    color-scheme: only light;
    border-top: 0 !important;
    margin-top: clamp(2.25rem, 3.8vw, 3.5rem) !important;
    padding-top: clamp(2.2rem, 3.6vw, 3.2rem) !important;
    padding-bottom: clamp(1.25rem, 2.2vw, 1.85rem) !important;
    box-shadow: 0 -18px 34px rgba(0, 74, 173, 0.08) !important;
}

footer > div {
    max-width: 80rem !important;
}

footer .grid {
    display: grid !important;
    grid-template-columns: minmax(10rem, 0.72fr) minmax(16rem, 1.05fr) minmax(12rem, 0.78fr) !important;
    gap: clamp(1.75rem, 4.8vw, 5.2rem) !important;
    align-items: start !important;
    margin-bottom: clamp(1.5rem, 2.6vw, 2.05rem) !important;
}

footer .elmina-footer-social {
    order: 1 !important;
    text-align: left !important;
    justify-self: start !important;
}

footer .elmina-footer-about {
    order: 2 !important;
    text-align: left !important;
    justify-self: center !important;
    max-width: 28rem !important;
}

footer .elmina-footer-contact {
    order: 3 !important;
    text-align: left !important;
    justify-self: end !important;
    min-width: min(100%, 14rem) !important;
}

footer h4 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: clamp(1.12rem, 1.26vw, 1.3rem) !important;
    font-weight: 900 !important;
    line-height: 1.12 !important;
    margin: 0 0 1rem !important;
    letter-spacing: -0.01em !important;
}

footer p,
footer a,
footer span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: clamp(0.92rem, 1vw, 1.02rem) !important;
    line-height: 1.35 !important;
}

footer .elmina-footer-about p {
    max-width: 27rem !important;
    margin: 0 !important;
    text-align: left !important;
    opacity: 0.98 !important;
    overflow-wrap: anywhere !important;
}

footer .elmina-footer-contact .space-y-2 {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.46rem !important;
}

footer .elmina-footer-contact .space-y-2 > :not([hidden]) ~ :not([hidden]) {
    margin-top: 0 !important;
}

footer .elmina-footer-contact p {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0.55rem !important;
    margin: 0 !important;
    max-width: 100% !important;
}

footer .elmina-footer-contact p svg {
    flex: 0 0 1rem !important;
    width: 1rem !important;
    height: 1rem !important;
    margin-top: 0.16rem !important;
    color: #ffffff !important;
    stroke: currentColor !important;
}

footer .elmina-footer-contact p span {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
}

footer .elmina-footer-social .flex.gap-4 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0.95rem !important;
}

footer #social-instagram,
footer #social-facebook,
footer #social-youtube {
    width: 2.55rem !important;
    height: 2.55rem !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

footer #social-instagram svg,
footer #social-facebook svg,
footer #social-youtube svg {
    width: 1.1rem !important;
    height: 1.1rem !important;
}

footer .border-t {
    border-color: rgba(255, 255, 255, 0.14) !important;
    padding-top: clamp(1.1rem, 2vw, 1.45rem) !important;
}

footer .border-t p {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 0.98 !important;
    text-align: center !important;
    margin: 0 !important;
}

@media (min-width: 1024px) {
    #elmina-right-column {
        display: flex !important;
        flex-direction: column !important;
        gap: 1.5rem !important;
        height: 100% !important;
        min-height: 100% !important;
    }

    #elmina-right-column > * {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    #elmina-youtube-card {
        flex: 1 1 auto !important;
    }


}

@media (min-width: 768px) and (max-width: 1023px) {
    footer .grid {
        grid-template-columns: minmax(9rem, 0.82fr) minmax(14rem, 1fr) minmax(11rem, 0.86fr) !important;
        gap: clamp(1.4rem, 3.2vw, 2.3rem) !important;
    }

    footer .elmina-footer-about {
        justify-self: center !important;
        max-width: 24rem !important;
    }

    footer .elmina-footer-contact {
        justify-self: end !important;
    }
}

@media (max-width: 767px) {
    footer {
        margin-top: clamp(2.2rem, 9vw, 3rem) !important;
        padding: clamp(2.1rem, 8vw, 2.8rem) clamp(1.55rem, 5vw, 2rem) clamp(1.25rem, 5vw, 1.7rem) !important;
    }

    footer .grid {
        grid-template-columns: 1fr !important;
        gap: clamp(1.65rem, 7vw, 2.25rem) !important;
        margin-bottom: clamp(1.45rem, 6vw, 1.9rem) !important;
    }

    footer .elmina-footer-social {
        order: 1 !important;
        justify-self: stretch !important;
        text-align: left !important;
    }

    footer .elmina-footer-contact {
        order: 2 !important;
        justify-self: stretch !important;
        text-align: left !important;
    }

    footer .elmina-footer-about {
        order: 3 !important;
        justify-self: stretch !important;
        text-align: left !important;
        max-width: 100% !important;
    }

    footer h4 {
        font-size: clamp(1.32rem, 6vw, 1.55rem) !important;
        margin-bottom: 0.85rem !important;
    }

    footer p,
    footer a,
    footer span {
        font-size: clamp(1rem, 4.2vw, 1.14rem) !important;
        line-height: 1.34 !important;
    }

    footer #social-instagram,
    footer #social-facebook,
    footer #social-youtube {
        width: clamp(2.75rem, 11vw, 3.1rem) !important;
        height: clamp(2.75rem, 11vw, 3.1rem) !important;
    }

    footer .elmina-footer-contact p svg {
        flex-basis: 1.05rem !important;
        width: 1.05rem !important;
        height: 1.05rem !important;
    }
}


#memory-wall-inner::before {
    content: none !important;
    display: none !important;
    background: transparent !important;
    opacity: 0 !important;
}

#memory-wall-logo {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    box-shadow: none !important;
    filter: none !important;
}

@media (min-width: 768px) and (max-width: 1180px) {
    footer .grid {
        grid-template-columns: minmax(8.6rem, 0.68fr) minmax(18rem, 1.34fr) minmax(10.8rem, 0.78fr) !important;
        gap: clamp(1.25rem, 3vw, 2.15rem) !important;
    }

    footer .elmina-footer-about {
        max-width: 31rem !important;
        width: 100% !important;
        justify-self: center !important;
    }

    footer .elmina-footer-about p {
        max-width: 31rem !important;
        width: 100% !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        text-wrap: pretty;
    }
}

@media (max-width: 767px) {
    footer .elmina-footer-about,
    footer .elmina-footer-about p {
        width: 100% !important;
        max-width: 36rem !important;
    }

    footer .elmina-footer-about p {
        font-size: clamp(0.98rem, 3.85vw, 1.08rem) !important;
        line-height: 1.34 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        text-wrap: pretty;
    }
}


#elmina-top-control-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(12.85rem, 0.82fr) minmax(0, 1fr) !important;
    gap: clamp(1.15rem, 2.35vw, 2.05rem) !important;
    align-items: stretch !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

#elmina-top-control-row > button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: clamp(3.55rem, 4.55vw, 4.35rem) !important;
    border-radius: clamp(0.98rem, 1.45vw, 1.18rem) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1.05 !important;
    box-shadow: 0 14px 28px rgba(0, 74, 173, 0.12), inset 0 1px 0 rgba(255,255,255,0.22) !important;
}

#btn-islands-cam {
    background: linear-gradient(135deg, #004aad 0%, #0758bb 100%) !important;
    border-color: rgba(255,255,255,0.14) !important;
}

#btn-city-cam {
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
    color: var(--elmina-brand-blue) !important;
    font-weight: 850 !important;
    font-size: clamp(1.05rem, 1.6vw, 1.34rem) !important;
    letter-spacing: -0.015em !important;
    text-align: center !important;
    background: linear-gradient(135deg, #fff36f 0%, #f2d203 100%) !important;
    box-shadow: 0 14px 30px rgba(0, 74, 173, 0.12), inset 0 1px 0 rgba(255,255,255,0.32) !important;
}

#btn-city-cam > span:first-child {
    flex: 0 0 auto !important;
    width: 0.62rem !important;
    height: 0.62rem !important;
    min-width: 0.62rem !important;
    min-height: 0.62rem !important;
}

@media (max-width: 640px) {
    #elmina-top-control-row {
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr) minmax(0, 1fr) !important;
        gap: clamp(0.62rem, 2.85vw, 0.86rem) !important;
    }

    #elmina-top-control-row > button {
        min-height: 50px !important;
        padding-top: 0.52rem !important;
        padding-bottom: 0.52rem !important;
        padding-left: clamp(0.48rem, 2.0vw, 0.74rem) !important;
        padding-right: clamp(0.48rem, 2.0vw, 0.74rem) !important;
        border-radius: 0.86rem !important;
    }

    #btn-city-cam {
        font-size: clamp(0.76rem, 3.05vw, 0.92rem) !important;
        gap: 0.38rem !important;
        letter-spacing: -0.026em !important;
    }

    #btn-city-cam > span:first-child {
        width: 0.45rem !important;
        height: 0.45rem !important;
        min-width: 0.45rem !important;
        min-height: 0.45rem !important;
    }

    #elmina-radio-tab-button {
        font-size: clamp(0.74rem, 2.9vw, 0.88rem) !important;
        letter-spacing: 0.14em !important;
    }
}

@media (min-width: 641px) and (max-width: 1024px) {
    #elmina-top-control-row {
        grid-template-columns: minmax(0, 1fr) minmax(11.85rem, 0.88fr) minmax(0, 1fr) !important;
        gap: clamp(0.88rem, 2.0vw, 1.35rem) !important;
    }

    #btn-city-cam {
        font-size: clamp(0.96rem, 2.08vw, 1.20rem) !important;
    }
}

:root {
    --elmina-template-shell-max: 80rem;
    --elmina-template-page-pad-x: clamp(1rem, 2vw, 2rem);
    --elmina-template-page-pad-y: clamp(1.5rem, 3vw, 2rem);
    --elmina-template-grid-gap: 2rem;
    --elmina-template-section-gap: 1rem;
    --elmina-template-side-gap: 1.5rem;
}

.elmina-template-site,
.elmina-template-site * {
    box-sizing: border-box;
}

.elmina-template-main {
    max-width: var(--elmina-template-shell-max) !important;
}

#elmina-main-layout-grid.elmina-template-layout-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: var(--elmina-template-grid-gap) !important;
    align-items: start !important;
    width: 100% !important;
    min-width: 0 !important;
}

.elmina-template-column,
.elmina-template-section,
.elmina-template-card,
.elmina-template-live-frame,
.elmina-template-top-controls,
.elmina-template-footer {
    min-width: 0;
    max-width: 100%;
}

.elmina-template-column-main {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--elmina-template-section-gap) !important;
}

.elmina-template-column-side {
    min-width: 0 !important;
}

@media (min-width: 1024px) {
    #elmina-main-layout-grid.elmina-template-layout-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        column-gap: var(--elmina-template-grid-gap) !important;
        row-gap: var(--elmina-template-grid-gap) !important;
    }

    #elmina-left-column.elmina-template-column-main {
        grid-column: span 2 / span 2 !important;
    }

    #elmina-right-column.elmina-template-column-side {
        grid-column: span 1 / span 1 !important;
    }
}

@media (max-width: 1023px) {
    #elmina-left-column.elmina-template-column-main,
    #elmina-right-column.elmina-template-column-side {
        grid-column: auto !important;
    }
}


.elmina-template-control-strip {
    min-width: 0;
    max-width: 100%;
}

.elmina-template-control-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
}

.elmina-template-action-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    text-align: center;
    white-space: nowrap;
}

.elmina-template-counter-dots {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

@media (max-width: 767px) {
    :root {
        --elmina-template-grid-gap: clamp(1.45rem, 6vw, 2rem);
        --elmina-template-section-gap: clamp(1rem, 4vw, 1.35rem);
    }
}


.elmina-theme-surface {
    background: var(--elmina-theme-card-gradient);
    color: var(--elmina-theme-white);
    border-color: var(--elmina-card-border);
}

.elmina-theme-title {
    color: var(--elmina-theme-accent);
}

.elmina-theme-subtitle,
.elmina-theme-body {
    color: var(--elmina-theme-white);
}

.elmina-theme-action {
    background: linear-gradient(145deg, #fff27a, var(--elmina-theme-accent) 55%, #d8b500);
    color: var(--elmina-theme-primary);
}

.elmina-theme-page {
    background: var(--elmina-theme-page-bg);
    color: var(--elmina-theme-main-text);
}


@media (min-width: 1024px) {
    #elmina-right-column.elmina-template-column-side {
        justify-content: space-between !important;
    }

    #elmina-youtube-card.elmina-template-card-video {
        flex: 0 0 auto !important;
        min-height: 0 !important;
        height: auto !important;
    }

    #elmina-youtube-card .elmina-youtube-controls {
        margin-bottom: 0 !important;
    }
}


#btn-city-cam .elmina-go-live-request-label {
    display: inline-block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    text-align: center !important;
    line-height: 1.05 !important;
}

@media (min-width: 1024px) {
    #elmina-right-column.elmina-template-column-side {
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        align-items: stretch !important;
        gap: clamp(1.25rem, 1.55vw, 1.65rem) !important;
    }

    #elmina-right-column.elmina-template-column-side > * {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    #elmina-youtube-card,
    #elmina-youtube-card.elmina-template-card-videos {
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
        align-self: stretch !important;
        padding-bottom: clamp(1rem, 1.35vw, 1.35rem) !important;
    }

    #elmina-youtube-card #elmina-youtube-video-list {
        min-height: 0 !important;
    }

    #elmina-youtube-card .elmina-youtube-controls {
        margin-top: clamp(0.62rem, 0.88vw, 0.9rem) !important;
        margin-bottom: 0 !important;
    }
}

@media (min-width: 641px) and (max-width: 1023px) {
    #elmina-youtube-card,
    #elmina-youtube-card.elmina-template-card-videos {
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
    }
}

@media (max-width: 640px) {
    #btn-city-cam {
        min-height: 58px !important;
        padding-top: 0.46rem !important;
        padding-bottom: 0.46rem !important;
        white-space: normal !important;
        flex-wrap: nowrap !important;
        overflow: hidden !important;
    }

    #btn-city-cam > span:first-child,
    #btn-city-cam .w-2.h-2.rounded-full {
        flex: 0 0 auto !important;
        margin-inline-end: 0.08rem !important;
    }

    #btn-city-cam .elmina-go-live-request-label {
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        max-width: 5.75rem !important;
        font-size: clamp(0.82rem, 3.2vw, 0.96rem) !important;
        line-height: 1.02 !important;
        letter-spacing: -0.02em !important;
    }
}

/* Canonical bottom carousel controls.
   Scope: Photos/Memories/Video controls only. One component contract governs
   action button, arrows, counter and dots on PC and mobile. The Photos top
   Share Photo button is retired in HTML so no duplicate button/gap remains. */
:root {
    --elmina-canon-control-arrow: clamp(2.42rem, 8.4vw, 3.05rem);
    --elmina-canon-control-action: clamp(8.25rem, 34vw, 10.9rem);
    --elmina-canon-control-center: clamp(4.05rem, 14vw, 5.25rem);
    --elmina-canon-control-gap: clamp(0.16rem, 0.8vw, 0.38rem);
    --elmina-canon-control-height: clamp(2.42rem, 8.2vw, 3.05rem);
    --elmina-canon-control-rail: calc((var(--elmina-canon-control-arrow) * 2) + var(--elmina-canon-control-action) + var(--elmina-canon-control-center) + (var(--elmina-canon-control-gap) * 3));
}

#elmina-photo-card .elmina-photo-head {
    display: block !important;
    margin-bottom: clamp(0.95rem, 2.2vw, 1.45rem) !important;
}

#elmina-photo-card .elmina-photo-head > div {
    max-width: 100% !important;
}

.elmina-carousel-controls,
#memory-wall-bottom.elmina-carousel-controls,
.elmina-youtube-controls.elmina-carousel-controls,
.elmina-photo-controls.elmina-carousel-controls {
    display: grid !important;
    grid-template-columns:
        var(--elmina-canon-control-arrow)
        minmax(0, var(--elmina-canon-control-action))
        var(--elmina-canon-control-center)
        var(--elmina-canon-control-arrow) !important;
    grid-template-rows: auto !important;
    align-items: center !important;
    justify-content: center !important;
    justify-items: stretch !important;
    column-gap: var(--elmina-canon-control-gap) !important;
    row-gap: 0 !important;
    width: 100% !important;
    max-width: min(100%, var(--elmina-canon-control-rail)) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    flex-wrap: nowrap !important;
}

#elmina-photo-card .elmina-photo-controls.elmina-carousel-controls {
    margin-top: clamp(1.1rem, 2.8vw, 1.7rem) !important;
}

.elmina-carousel-prev,
#memory-wall-prev,
#elmina-youtube-prev,
#elmina-photo-prev {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
}

.elmina-carousel-next,
#memory-wall-next,
#elmina-youtube-next,
#elmina-photo-next {
    grid-column: 4 !important;
    grid-row: 1 !important;
    justify-self: end !important;
}

.elmina-carousel-arrow,
#memory-wall-prev,
#memory-wall-next,
.elmina-youtube-arrow,
.elmina-photo-arrow,
#elmina-youtube-prev,
#elmina-youtube-next,
#elmina-photo-prev,
#elmina-photo-next {
    position: relative !important;
    width: var(--elmina-canon-control-arrow) !important;
    height: var(--elmina-canon-control-arrow) !important;
    min-width: var(--elmina-canon-control-arrow) !important;
    max-width: var(--elmina-canon-control-arrow) !important;
    min-height: var(--elmina-canon-control-arrow) !important;
    max-height: var(--elmina-canon-control-arrow) !important;
    flex: 0 0 var(--elmina-canon-control-arrow) !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.62), 0 0.35rem 0.72rem rgba(0,0,0,0.15) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: 0 !important;
    overflow: hidden !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.elmina-youtube-arrow:hover,
#elmina-youtube-prev:hover,
#elmina-youtube-next:hover {
    width: var(--elmina-canon-control-arrow) !important;
    height: var(--elmina-canon-control-arrow) !important;
    min-width: var(--elmina-canon-control-arrow) !important;
    max-width: var(--elmina-canon-control-arrow) !important;
    min-height: var(--elmina-canon-control-arrow) !important;
    max-height: var(--elmina-canon-control-arrow) !important;
    border-radius: 999px !important;
    transform: none !important;
    filter: brightness(1.045) !important;
}

.elmina-youtube-carousel {
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
}

.elmina-carousel-arrow > *,
#memory-wall-prev > *,
#memory-wall-next > *,
.elmina-youtube-arrow > *,
.elmina-photo-arrow > * {
    display: none !important;
}

.elmina-carousel-arrow::before,
#memory-wall-prev::before,
#memory-wall-next::before,
.elmina-youtube-arrow::before,
.elmina-photo-arrow::before {
    content: "" !important;
    display: block !important;
    width: calc(var(--elmina-canon-control-arrow) * 0.28) !important;
    height: calc(var(--elmina-canon-control-arrow) * 0.28) !important;
    border-style: solid !important;
    border-color: #004aad !important;
    border-width: 0 0 calc(var(--elmina-canon-control-arrow) * 0.075) calc(var(--elmina-canon-control-arrow) * 0.075) !important;
    border-radius: 0.06rem !important;
    box-sizing: border-box !important;
}

.elmina-carousel-prev::before,
#memory-wall-prev::before,
#elmina-youtube-prev::before,
#elmina-photo-prev::before {
    transform: translateX(8%) rotate(45deg) !important;
}

.elmina-carousel-next::before,
#memory-wall-next::before,
#elmina-youtube-next::before,
#elmina-photo-next::before {
    transform: translateX(-8%) rotate(225deg) !important;
}

.elmina-carousel-action,
#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
.elmina-photo-share-mobile.elmina-photo-pill {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: stretch !important;
    align-self: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: var(--elmina-canon-control-height) !important;
    height: var(--elmina-canon-control-height) !important;
    max-height: var(--elmina-canon-control-height) !important;
    padding: 0.28rem clamp(0.28rem, 1vw, 0.58rem) !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: clamp(0.68rem, 2.25vw, 0.88rem) !important;
    font-weight: 900 !important;
    line-height: 1.02 !important;
    letter-spacing: -0.035em !important;
    text-align: center !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.58), 0 0.3rem 0.68rem rgba(0,0,0,0.12) !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
#elmina-youtube-share-button.elmina-youtube-share *,
.elmina-photo-share-mobile.elmina-photo-pill,
#memory-wall-share-button {
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
}

#elmina-youtube-share-button .elmina-youtube-share-line {
    display: inline !important;
    font: inherit !important;
    line-height: inherit !important;
    white-space: nowrap !important;
}

.elmina-carousel-center,
#memory-wall-center,
.elmina-youtube-center,
.elmina-photo-control-center {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    align-self: center !important;
    width: var(--elmina-canon-control-center) !important;
    min-width: var(--elmina-canon-control-center) !important;
    max-width: var(--elmina-canon-control-center) !important;
    flex: 0 0 var(--elmina-canon-control-center) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(0.16rem, 0.62vw, 0.28rem) !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

#memory-wall-count,
.elmina-youtube-count,
#elmina-youtube-current-count,
.elmina-photo-count {
    width: 100% !important;
    max-width: 100% !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-align: center !important;
    white-space: nowrap !important;
    font-variant-numeric: tabular-nums !important;
    font-size: clamp(0.78rem, 2.9vw, 1.03rem) !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: -0.02em !important;
    overflow: visible !important;
}

#memory-wall-dots,
.elmina-youtube-dots,
.elmina-photo-shifter {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(0.12rem, 0.64vw, 0.24rem) !important;
    min-height: 0.5rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    overflow: visible !important;
}

#memory-wall-dots .memory-wall-dot,
.elmina-youtube-dots .elmina-youtube-dot,
.elmina-photo-shifter .elmina-photo-shift-dot {
    width: clamp(0.32rem, 1.4vw, 0.42rem) !important;
    height: clamp(0.32rem, 1.4vw, 0.42rem) !important;
    min-width: clamp(0.32rem, 1.4vw, 0.42rem) !important;
    border-radius: 999px !important;
    background: rgba(159, 197, 239, 0.72) !important;
    opacity: 0.78 !important;
}

#memory-wall-dots .memory-wall-dot.is-active,
.elmina-youtube-dots .elmina-youtube-dot.is-active,
.elmina-photo-shifter .elmina-photo-shift-dot.is-active {
    width: clamp(0.88rem, 3.4vw, 1.1rem) !important;
    min-width: clamp(0.88rem, 3.4vw, 1.1rem) !important;
    background: #ffe84d !important;
    opacity: 1 !important;
}

@media (max-width: 360px) {
    :root {
        --elmina-canon-control-arrow: 2.32rem;
        --elmina-canon-control-action: 8.1rem;
        --elmina-canon-control-center: 4rem;
        --elmina-canon-control-gap: 0.14rem;
        --elmina-canon-control-height: 2.32rem;
    }

    .elmina-carousel-action,
    #memory-wall-share-button,
    #elmina-youtube-share-button.elmina-youtube-share,
    #elmina-social-share-button.elmina-social-share,
    .elmina-photo-share-mobile.elmina-photo-pill {
        font-size: 0.64rem !important;
        padding-left: 0.18rem !important;
        padding-right: 0.18rem !important;
        letter-spacing: -0.05em !important;
    }

    #memory-wall-count,
    .elmina-youtube-count,
    #elmina-youtube-current-count,
    .elmina-photo-count {
        font-size: 0.72rem !important;
    }
}

/* Mobile Photos control alignment.
   Scope: mobile Photos only. The Share Photo action keeps the bottom-button
   contract but is pinned to the start of the action column with the same
   rail sizing family used by the Video Link control, so the gap beside the
   left arrow does not visually drift. */
@media (max-width: 767px) {
    #elmina-photo-card .elmina-photo-controls.elmina-carousel-controls {
        --elmina-photo-mobile-arrow: var(--elmina-canon-control-arrow);
        --elmina-photo-mobile-action: var(--elmina-canon-control-action);
        --elmina-photo-mobile-center: var(--elmina-canon-control-center);
        --elmina-photo-mobile-gap: clamp(0.04rem, 0.28vw, 0.12rem);
        grid-template-columns:
            var(--elmina-photo-mobile-arrow)
            var(--elmina-photo-mobile-action)
            var(--elmina-photo-mobile-center)
            var(--elmina-photo-mobile-arrow) !important;
        column-gap: var(--elmina-photo-mobile-gap) !important;
        max-width: min(100%, calc((var(--elmina-photo-mobile-arrow) * 2) + var(--elmina-photo-mobile-action) + var(--elmina-photo-mobile-center) + (var(--elmina-photo-mobile-gap) * 3))) !important;
        justify-content: center !important;
    }

    #elmina-photo-card .elmina-photo-share-mobile.elmina-photo-pill {
        width: var(--elmina-photo-mobile-action) !important;
        min-width: var(--elmina-photo-mobile-action) !important;
        max-width: var(--elmina-photo-mobile-action) !important;
        justify-self: start !important;
        padding-left: 0.42rem !important;
        padding-right: 0.42rem !important;
        font-size: clamp(0.68rem, 2.25vw, 0.88rem) !important;
        letter-spacing: -0.035em !important;
    }
}

@media (max-width: 360px) {
    #elmina-photo-card .elmina-photo-controls.elmina-carousel-controls {
        --elmina-photo-mobile-gap: 0.06rem;
    }
}


/* PC Photos right-aligned compact control rail.
   Scope: desktop/tablet-wide Photos controls only. On PC, the wide Photos card
   uses a five-column budget:
   left arrow | flexible spacer | Share Photo | protected counter/dots | right arrow.
   This keeps Share Photo the same compact action size as Video Link and reserves
   room for larger counters such as 999 / 999 without creating a full-width bar. */
@media (min-width: 768px) {
    #elmina-photo-card .elmina-photo-controls.elmina-carousel-controls {
        --elmina-photo-pc-arrow: var(--elmina-canon-control-arrow);
        --elmina-photo-pc-action: var(--elmina-canon-control-action);
        --elmina-photo-pc-center: clamp(5rem, 7.4vw, 6.4rem);
        --elmina-photo-pc-gap: clamp(0.22rem, 0.7vw, 0.42rem);
        display: grid !important;
        grid-template-columns:
            var(--elmina-photo-pc-arrow)
            minmax(0, 1fr)
            var(--elmina-photo-pc-action)
            var(--elmina-photo-pc-center)
            var(--elmina-photo-pc-arrow) !important;
        column-gap: var(--elmina-photo-pc-gap) !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        justify-content: stretch !important;
        align-items: center !important;
        overflow: hidden !important;
    }

    #elmina-photo-card #elmina-photo-prev {
        grid-column: 1 !important;
        grid-row: 1 !important;
        justify-self: start !important;
    }

    #elmina-photo-card .elmina-photo-share-mobile.elmina-photo-pill {
        grid-column: 3 !important;
        grid-row: 1 !important;
        width: var(--elmina-photo-pc-action) !important;
        min-width: var(--elmina-photo-pc-action) !important;
        max-width: var(--elmina-photo-pc-action) !important;
        justify-self: end !important;
        align-self: center !important;
        font-size: clamp(0.68rem, 0.95vw, 0.88rem) !important;
        letter-spacing: -0.035em !important;
    }

    #elmina-photo-card .elmina-photo-control-center {
        grid-column: 4 !important;
        grid-row: 1 !important;
        width: var(--elmina-photo-pc-center) !important;
        min-width: var(--elmina-photo-pc-center) !important;
        max-width: var(--elmina-photo-pc-center) !important;
        justify-self: center !important;
    }

    #elmina-photo-card #elmina-photo-next {
        grid-column: 5 !important;
        grid-row: 1 !important;
        justify-self: end !important;
    }
}


#elmina-radio-tab-button {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    padding-left: clamp(0.82rem, 1.5vw, 1.08rem) !important;
    padding-right: clamp(0.82rem, 1.5vw, 1.08rem) !important;
    background: linear-gradient(135deg, rgba(255, 249, 214, 0.98) 0%, rgba(255, 240, 150, 0.92) 100%) !important;
    border: 1px solid rgba(242, 210, 3, 0.88) !important;
    box-shadow: 0 14px 28px rgba(0, 74, 173, 0.10), inset 0 1px 0 rgba(255,255,255,0.58) !important;
}

#elmina-radio-tab-button .elmina-radio-off-shell {
    display: inline-grid !important;
    grid-template-columns: auto auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(0.54rem, 1.15vw, 0.74rem) !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}

#elmina-radio-tab-button .elmina-radio-off-icon {
    width: clamp(1.82rem, 2.55vw, 2.18rem) !important;
    height: clamp(1.82rem, 2.55vw, 2.18rem) !important;
    min-width: clamp(1.82rem, 2.55vw, 2.18rem) !important;
    min-height: clamp(1.82rem, 2.55vw, 2.18rem) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: radial-gradient(circle at 42% 35%, rgba(255,255,255,0.75), rgba(0,74,173,0.08) 62%, rgba(0,74,173,0.02)) !important;
    box-shadow: inset 0 0 0 1px rgba(0,74,173,0.14), 0 4px 10px rgba(0,74,173,0.14) !important;
    color: var(--elmina-brand-blue, #004aad) !important;
    filter: none !important;
    flex: 0 0 auto !important;
}

#elmina-radio-tab-button .elmina-radio-tower {
    width: clamp(1.32rem, 1.82vw, 1.58rem) !important;
    height: clamp(1.32rem, 1.82vw, 1.58rem) !important;
    min-width: clamp(1.32rem, 1.82vw, 1.58rem) !important;
    min-height: clamp(1.32rem, 1.82vw, 1.58rem) !important;
    display: block !important;
    flex: 0 0 auto !important;
    overflow: visible !important;
}

#elmina-radio-tab-button .elmina-radio-tower g {
    stroke-width: 3.25 !important;
}

#elmina-radio-tab-button .elmina-radio-off-label {
    display: inline-block !important;
    min-width: 0 !important;
    color: var(--elmina-brand-blue, #004aad) !important;
    font-weight: 900 !important;
    font-size: clamp(0.86rem, 1.22vw, 1.0rem) !important;
    letter-spacing: clamp(0.15em, 0.50vw, 0.22em) !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    text-shadow: 0 1px 0 rgba(255,255,255,0.32) !important;
    white-space: nowrap !important;
}

#elmina-radio-tab-button .elmina-radio-live-antenna,
#elmina-radio-tab-button .elmina-radio-buffering-antenna {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#elmina-radio-tab-button .elmina-radio-live-antenna .elmina-radio-tower,
#elmina-radio-tab-button .elmina-radio-buffering-antenna .elmina-radio-tower {
    width: clamp(1.25rem, 1.75vw, 1.55rem) !important;
    height: clamp(1.25rem, 1.75vw, 1.55rem) !important;
    min-width: clamp(1.25rem, 1.75vw, 1.55rem) !important;
    min-height: clamp(1.25rem, 1.75vw, 1.55rem) !important;
}

@media (max-width: 640px) {
    #elmina-radio-tab-button .elmina-radio-off-shell {
        gap: clamp(0.26rem, 1.55vw, 0.40rem) !important;
    }

    #elmina-radio-tab-button .elmina-radio-off-icon {
        width: clamp(1.36rem, 5.9vw, 1.64rem) !important;
        height: clamp(1.36rem, 5.9vw, 1.64rem) !important;
        min-width: clamp(1.36rem, 5.9vw, 1.64rem) !important;
        min-height: clamp(1.36rem, 5.9vw, 1.64rem) !important;
    }

    #elmina-radio-tab-button .elmina-radio-tower {
        width: clamp(1.06rem, 4.6vw, 1.24rem) !important;
        height: clamp(1.06rem, 4.6vw, 1.24rem) !important;
        min-width: clamp(1.06rem, 4.6vw, 1.24rem) !important;
        min-height: clamp(1.06rem, 4.6vw, 1.24rem) !important;
    }

    #elmina-radio-tab-button .elmina-radio-off-label {
        font-size: clamp(0.70rem, 3.0vw, 0.80rem) !important;
        letter-spacing: clamp(0.08em, 0.62vw, 0.13em) !important;
    }

    #elmina-radio-tab-button .elmina-radio-live-antenna .elmina-radio-tower,
    #elmina-radio-tab-button .elmina-radio-buffering-antenna .elmina-radio-tower {
        width: clamp(1.08rem, 4.65vw, 1.28rem) !important;
        height: clamp(1.08rem, 4.65vw, 1.28rem) !important;
        min-width: clamp(1.08rem, 4.65vw, 1.28rem) !important;
        min-height: clamp(1.08rem, 4.65vw, 1.28rem) !important;
    }
}

@media (min-width: 641px) and (max-width: 1024px) {
    #elmina-radio-tab-button .elmina-radio-off-icon {
        width: clamp(1.55rem, 2.85vw, 1.82rem) !important;
        height: clamp(1.55rem, 2.85vw, 1.82rem) !important;
        min-width: clamp(1.55rem, 2.85vw, 1.82rem) !important;
        min-height: clamp(1.55rem, 2.85vw, 1.82rem) !important;
    }

    #elmina-radio-tab-button .elmina-radio-off-label {
        font-size: clamp(0.76rem, 1.65vw, 0.88rem) !important;
        letter-spacing: clamp(0.11em, 0.42vw, 0.18em) !important;
    }
}


:root {
    --elmina-top-control-gap: clamp(1.05rem, 2.35vw, 2.25rem);
    --elmina-top-control-height: clamp(3.65rem, 4.75vw, 4.38rem);
    --elmina-top-control-radius: clamp(1.02rem, 1.42vw, 1.18rem);
    --elmina-top-control-side-pad: clamp(0.92rem, 1.35vw, 1.16rem);
    --elmina-top-control-icon-size: clamp(0.72rem, 0.95vw, 0.86rem);
    --elmina-top-control-label-size: clamp(0.98rem, 1.24vw, 1.13rem);
    --elmina-top-control-radio-label-size: clamp(0.84rem, 1.04vw, 0.98rem);
}

#elmina-top-control-row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: var(--elmina-top-control-gap) !important;
    align-items: stretch !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#elmina-top-control-row > button,
#btn-islands-cam,
#elmina-radio-tab-button,
#btn-city-cam {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: var(--elmina-top-control-height) !important;
    height: auto !important;
    padding: 0.68rem calc(var(--elmina-top-control-side-pad) + 0.12rem) !important;
    border-radius: var(--elmina-top-control-radius) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    box-shadow: 0 14px 30px rgba(0, 74, 173, 0.12), inset 0 1px 0 rgba(255,255,255,0.26) !important;
}

#btn-islands-cam {
    background: linear-gradient(135deg, #004aad 0%, #0758bb 100%) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
}

#elmina-radio-tab-button {
    background: linear-gradient(135deg, rgba(255, 249, 214, 0.98) 0%, rgba(255, 240, 150, 0.94) 100%) !important;
    border: 1px solid rgba(242, 210, 3, 0.90) !important;
}

#btn-city-cam {
    background: linear-gradient(135deg, #fff36f 0%, #f2d203 100%) !important;
    color: var(--elmina-brand-blue, #004aad) !important;
    border: 1px solid rgba(242, 210, 3, 0.72) !important;
}

/* Main label typography: one rhythm across top controls. */
#btn-islands-cam .elmina-islands-main,
#elmina-radio-tab-button .elmina-radio-off-shell,
#btn-city-cam .elmina-go-live-request-label,
#btn-city-cam > strong {
    width: 100% !important;
    min-width: 0 !important;
    display: block !important;
    text-align: center !important;
}

#btn-islands-cam .elmina-islands-label,
#btn-city-cam .elmina-go-live-request-label,
#btn-city-cam > strong {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    text-align: center !important;
    font-family: inherit !important;
    font-size: var(--elmina-top-control-label-size) !important;
    font-weight: 900 !important;
    letter-spacing: -0.018em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    padding-left: clamp(0.20rem, 0.55vw, 0.42rem) !important;
    padding-right: clamp(0.20rem, 0.55vw, 0.42rem) !important;
}

#btn-islands-cam .elmina-islands-word {
    display: inline !important;
    white-space: nowrap !important;
}

#elmina-radio-tab-button .elmina-radio-off-label {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    text-align: center !important;
    font-size: var(--elmina-top-control-radio-label-size) !important;
    font-weight: 900 !important;
    letter-spacing: clamp(0.17em, 0.46vw, 0.24em) !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    color: var(--elmina-brand-blue, #004aad) !important;
}

/* Far-left icon/status slot. Color/state remains controlled by existing app logic/classes. */
#btn-islands-cam .elmina-islands-stream-dot,
#btn-city-cam > span:first-child,
#btn-city-cam .w-2.h-2.rounded-full,
#btn-city-cam .elmina-tab-live-dot {
    position: absolute !important;
    left: var(--elmina-top-control-side-pad) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: var(--elmina-top-control-icon-size) !important;
    height: var(--elmina-top-control-icon-size) !important;
    min-width: var(--elmina-top-control-icon-size) !important;
    min-height: var(--elmina-top-control-icon-size) !important;
    border-radius: 999px !important;
    flex: 0 0 auto !important;
    box-shadow: 0 0 0 3px rgba(255,255,255,0.08), 0 0 14px rgba(34,197,94,0.24) !important;
}

#elmina-radio-tab-button .elmina-radio-off-shell {
    position: relative !important;
    height: 100% !important;
}

#elmina-radio-tab-button .elmina-radio-off-icon {
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: clamp(2.04rem, 2.64vw, 2.34rem) !important;
    height: clamp(2.04rem, 2.64vw, 2.34rem) !important;
    min-width: clamp(2.04rem, 2.64vw, 2.34rem) !important;
    min-height: clamp(2.04rem, 2.64vw, 2.34rem) !important;
}

#elmina-radio-tab-button .elmina-radio-tower {
    width: clamp(1.42rem, 1.86vw, 1.66rem) !important;
    height: clamp(1.42rem, 1.86vw, 1.66rem) !important;
    min-width: clamp(1.42rem, 1.86vw, 1.66rem) !important;
    min-height: clamp(1.42rem, 1.86vw, 1.66rem) !important;
}

/* Refresh stays a small independent helper and does not affect the main label alignment. */
#btn-islands-cam .elmina-islands-refresh-hint {
    position: absolute !important;
    right: clamp(0.70rem, 1.05vw, 0.92rem) !important;
    bottom: clamp(0.34rem, 0.66vw, 0.46rem) !important;
    width: auto !important;
    font-size: clamp(0.62rem, 0.82vw, 0.74rem) !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    color: #ff4747 !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important;
    pointer-events: none !important;
}

#btn-islands-cam .elmina-islands-refresh-triangle {
    font-size: 0.72em !important;
    margin-right: 0.16rem !important;
}

@media (max-width: 640px) {
    :root {
        --elmina-top-control-gap: clamp(0.46rem, 2.0vw, 0.62rem);
        --elmina-top-control-height: 50px;
        --elmina-top-control-radius: 0.86rem;
        --elmina-top-control-side-pad: clamp(0.48rem, 1.8vw, 0.64rem);
        --elmina-top-control-icon-size: clamp(0.42rem, 1.8vw, 0.54rem);
        --elmina-top-control-label-size: clamp(0.70rem, 2.78vw, 0.84rem);
        --elmina-top-control-radio-label-size: clamp(0.68rem, 2.68vw, 0.80rem);
    }

    #elmina-top-control-row > button,
    #btn-islands-cam,
    #elmina-radio-tab-button,
    #btn-city-cam {
        min-height: var(--elmina-top-control-height) !important;
        padding-left: clamp(0.46rem, 1.9vw, 0.64rem) !important;
        padding-right: clamp(0.46rem, 1.9vw, 0.64rem) !important;
    }

    #btn-islands-cam .elmina-islands-label,
    #btn-city-cam .elmina-go-live-request-label,
    #btn-city-cam > strong {
        letter-spacing: -0.04em !important;
        padding-left: clamp(0.12rem, 0.7vw, 0.26rem) !important;
        padding-right: clamp(0.12rem, 0.7vw, 0.26rem) !important;
    }

    #elmina-radio-tab-button .elmina-radio-off-label {
        letter-spacing: clamp(0.08em, 0.54vw, 0.13em) !important;
    }

    #elmina-radio-tab-button .elmina-radio-off-icon {
        width: clamp(1.28rem, 5.2vw, 1.52rem) !important;
        height: clamp(1.28rem, 5.2vw, 1.52rem) !important;
        min-width: clamp(1.28rem, 5.2vw, 1.52rem) !important;
        min-height: clamp(1.28rem, 5.2vw, 1.52rem) !important;
    }

    #elmina-radio-tab-button .elmina-radio-tower {
        width: clamp(1.00rem, 4.2vw, 1.18rem) !important;
        height: clamp(1.00rem, 4.2vw, 1.18rem) !important;
        min-width: clamp(1.00rem, 4.2vw, 1.18rem) !important;
        min-height: clamp(1.00rem, 4.2vw, 1.18rem) !important;
    }

    #btn-islands-cam .elmina-islands-refresh-hint {
        right: 0.42rem !important;
        bottom: 0.26rem !important;
        font-size: clamp(0.50rem, 1.95vw, 0.58rem) !important;
    }
}

@media (min-width: 641px) and (max-width: 1024px) {
    :root {
        --elmina-top-control-gap: clamp(0.78rem, 1.85vw, 1.22rem);
        --elmina-top-control-label-size: clamp(0.82rem, 1.72vw, 1.0rem);
        --elmina-top-control-radio-label-size: clamp(0.76rem, 1.46vw, 0.88rem);
        --elmina-top-control-side-pad: clamp(0.66rem, 1.25vw, 0.86rem);
    }
}


#elmina-radio-tab-button .elmina-radio-off-shell {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    min-height: 100% !important;
    line-height: 1 !important;
}

#elmina-radio-tab-button .elmina-radio-off-label {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    line-height: 1 !important;
    transform: translateY(0) !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#elmina-radio-tab-button .elmina-radio-off-icon {
    top: 50% !important;
    transform: translateY(-50%) !important;
}

@media (max-width: 640px) {
    :root {
        --elmina-top-control-height: 62px;
        --elmina-top-control-icon-size: clamp(0.66rem, 2.8vw, 0.78rem);
        --elmina-top-control-label-size: clamp(0.82rem, 3.35vw, 0.96rem);
        --elmina-top-control-radio-label-size: clamp(0.78rem, 3.05vw, 0.90rem);
    }

    #elmina-top-control-row > button,
    #btn-islands-cam,
    #elmina-radio-tab-button,
    #btn-city-cam {
        min-height: var(--elmina-top-control-height) !important;
        padding-top: 0.46rem !important;
        padding-bottom: 0.46rem !important;
        align-items: center !important;
        justify-content: center !important;
    }

    #btn-islands-cam .elmina-islands-main,
    #btn-city-cam .elmina-go-live-request-label,
    #btn-city-cam > strong {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 100% !important;
    }

    #btn-islands-cam .elmina-islands-label,
    #btn-city-cam .elmina-go-live-request-label,
    #btn-city-cam > strong {
        width: auto !important;
        max-width: 4.35rem !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        text-align: center !important;
        line-height: 0.98 !important;
        font-size: var(--elmina-top-control-label-size) !important;
        letter-spacing: -0.035em !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    #btn-islands-cam .elmina-islands-label {
        max-width: 3.92rem !important;
        transform: translateY(-0.08rem) !important;
    }

    #btn-islands-cam .elmina-islands-word {
        display: block !important;
        white-space: normal !important;
        line-height: 0.98 !important;
    }

    #btn-islands-cam .elmina-islands-stream-dot,
    #btn-city-cam > span:first-child,
    #btn-city-cam .w-2.h-2.rounded-full,
    #btn-city-cam .elmina-tab-live-dot {
        left: clamp(0.48rem, 2.0vw, 0.62rem) !important;
        width: var(--elmina-top-control-icon-size) !important;
        height: var(--elmina-top-control-icon-size) !important;
        min-width: var(--elmina-top-control-icon-size) !important;
        min-height: var(--elmina-top-control-icon-size) !important;
    }

    #elmina-radio-tab-button .elmina-radio-off-shell {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 100% !important;
    }

    #elmina-radio-tab-button .elmina-radio-off-label {
        align-items: center !important;
        justify-content: center !important;
        height: 100% !important;
        line-height: 1 !important;
        transform: translateY(0) !important;
    }

    #btn-islands-cam .elmina-islands-refresh-hint {
        right: 0.42rem !important;
        bottom: 0.25rem !important;
        font-size: clamp(0.50rem, 1.95vw, 0.58rem) !important;
    }
}


#master-webcam-button.master-webcam-static,
#master-webcam-button {
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(0.38rem, 0.72vw, 0.54rem) !important;
    min-height: clamp(5.35rem, 6.8vw, 6.05rem) !important;
    overflow: hidden !important;
}

#master-webcam-button .master-webcam-title-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    justify-content: flex-start !important;
    gap: 0.48rem !important;
    flex: 0 0 auto !important;
}

#master-webcam-button .master-webcam-ticker {
    display: block !important;
    width: 100% !important;
    overflow: hidden !important;
    color: #ffffff !important;
    flex: 0 0 auto !important;
}

#master-webcam-button .master-webcam-ticker-line {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    max-width: 100% !important;
    color: #ffffff !important;
    font-size: clamp(0.96rem, 1.28vw, 1.14rem) !important;
    font-weight: 520 !important;
    line-height: 1.42 !important;
    letter-spacing: -0.01em !important;
    text-align: left !important;
    will-change: transform, opacity !important;
}

#master-webcam-button .master-webcam-ticker-line.is-shuffling {
    animation: elmina-live-info-vertical-shuffle 0.48s ease both;
}

@keyframes elmina-live-info-vertical-shuffle {
    0% {
        opacity: 0;
        transform: translateY(0.58rem);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    #master-webcam-button.master-webcam-static,
    #master-webcam-button {
        min-height: clamp(4.15rem, 14.8vw, 4.95rem) !important;
        gap: 0.28rem !important;
        padding-top: 0.86rem !important;
        padding-bottom: 0.86rem !important;
    }

    #master-webcam-button .master-webcam-title-row {
        gap: 0.36rem !important;
        line-height: 1.08 !important;
    }

    #master-webcam-button .master-webcam-ticker-line {
        -webkit-line-clamp: 1 !important;
        font-size: clamp(0.86rem, 3.65vw, 1.00rem) !important;
        line-height: 1.28 !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
        display: block !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #master-webcam-button .master-webcam-ticker-line.is-shuffling {
        animation: none !important;
    }
}


:root {
    --elmina-live-to-content-gap: var(--elmina-template-section-gap, 1rem);
}

#elmina-left-column.elmina-template-column-main {
    gap: var(--elmina-template-section-gap, 1rem) !important;
}

#elmina-live-frame-card #master-webcam-button.master-webcam-static,
#elmina-live-frame-card #master-webcam-button {
    margin-bottom: 0 !important;
}

#elmina-live-frame-card + #elmina-photo-card {
    margin-top: 0 !important;
}

@media (max-width: 767px) {
    #elmina-left-column.elmina-template-column-main {
        gap: var(--elmina-template-section-gap, 0.78rem) !important;
    }

    #elmina-live-frame-card #master-webcam-button.master-webcam-static,
    #elmina-live-frame-card #master-webcam-button {
        margin-bottom: 0 !important;
    }

    #elmina-live-frame-card + #elmina-photo-card {
        margin-top: 0 !important;
    }
}


#master-webcam-button.master-webcam-static,
#master-webcam-button {
    height: clamp(5.35rem, 6.8vw, 6.05rem) !important;
    min-height: clamp(5.35rem, 6.8vw, 6.05rem) !important;
    max-height: clamp(5.35rem, 6.8vw, 6.05rem) !important;
    padding: clamp(0.78rem, 1.06vw, 0.98rem) clamp(1.05rem, 1.35vw, 1.28rem) !important;
    gap: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    overflow: hidden !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

#master-webcam-button .master-webcam-title-row,
#master-webcam-button .master-webcam-title,
#master-webcam-button .master-webcam-action,
#master-webcam-button .master-webcam-desc {
    display: none !important;
}

#master-webcam-button .master-webcam-ticker {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    color: #ffffff !important;
}

#master-webcam-button .master-webcam-ticker-subject {
    display: block !important;
    max-width: 100% !important;
    color: #ffe84d !important;
    font-size: clamp(1.02rem, 1.22vw, 1.18rem) !important;
    font-weight: 900 !important;
    line-height: 1.06 !important;
    letter-spacing: 0.055em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    margin: 0 0 clamp(0.30rem, 0.44vw, 0.40rem) 0 !important;
    will-change: transform, opacity !important;
}

#master-webcam-button .master-webcam-ticker-line {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
    color: #ffffff !important;
    font-size: clamp(0.92rem, 1.08vw, 1.02rem) !important;
    font-weight: 560 !important;
    line-height: 1.28 !important;
    letter-spacing: 0.005em !important;
    text-align: left !important;
    will-change: transform, opacity !important;
}

#master-webcam-button .master-webcam-ticker-subject.is-shuffling,
#master-webcam-button .master-webcam-ticker-line.is-shuffling {
    animation: elmina-live-info-vertical-shuffle 0.48s ease both !important;
}

@media (max-width: 767px) {
    #master-webcam-button.master-webcam-static,
    #master-webcam-button {
        height: clamp(4.15rem, 14.8vw, 4.95rem) !important;
        min-height: clamp(4.15rem, 14.8vw, 4.95rem) !important;
        max-height: clamp(4.15rem, 14.8vw, 4.95rem) !important;
        padding: clamp(0.58rem, 2.55vw, 0.74rem) clamp(0.78rem, 3.2vw, 0.96rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-subject {
        font-size: clamp(0.78rem, 3.15vw, 0.92rem) !important;
        line-height: 1.02 !important;
        letter-spacing: 0.048em !important;
        margin-bottom: clamp(0.20rem, 1.05vw, 0.30rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-line {
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        white-space: normal !important;
        font-size: clamp(0.72rem, 3.0vw, 0.88rem) !important;
        line-height: 1.20 !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #master-webcam-button .master-webcam-ticker-subject.is-shuffling,
    #master-webcam-button .master-webcam-ticker-line.is-shuffling {
        animation: none !important;
    }
}


#master-webcam-button.master-webcam-static,
#master-webcam-button {
    height: clamp(5.20rem, 6.35vw, 5.82rem) !important;
    min-height: clamp(5.20rem, 6.35vw, 5.82rem) !important;
    max-height: clamp(5.20rem, 6.35vw, 5.82rem) !important;
    padding: clamp(0.58rem, 0.80vw, 0.72rem) clamp(0.92rem, 1.22vw, 1.16rem) !important;
}

#master-webcam-button .master-webcam-ticker {
    justify-content: center !important;
    gap: clamp(0.30rem, 0.44vw, 0.40rem) !important;
}

#master-webcam-button .master-webcam-ticker-head {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: clamp(0.46rem, 0.64vw, 0.60rem) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
}

#master-webcam-button .master-webcam-ticker-badge {
    position: relative !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(0.30rem, 0.38vw, 0.38rem) !important;
    min-width: clamp(5.15rem, 5.95vw, 5.95rem) !important;
    height: clamp(1.34rem, 1.55vw, 1.50rem) !important;
    padding: 0 clamp(0.62rem, 0.74vw, 0.74rem) 0 clamp(0.46rem, 0.58vw, 0.58rem) !important;
    background:
        linear-gradient(135deg, rgba(3, 42, 78, 0.98), rgba(8, 82, 122, 0.94) 58%, rgba(6, 60, 112, 0.98)) !important;
    border: 1px solid rgba(143, 225, 255, 0.42) !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    font-size: clamp(0.53rem, 0.64vw, 0.61rem) !important;
    font-weight: 920 !important;
    line-height: 1 !important;
    letter-spacing: 0.105em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.10),
        inset 0 -0.42rem 0.78rem rgba(0, 32, 72, 0.20),
        0 0.14rem 0.34rem rgba(0, 0, 0, 0.14),
        0 0 0.82rem rgba(35, 184, 224, 0.10) !important;
    overflow: hidden !important;
}

#master-webcam-button .master-webcam-ticker-badge::before {
    content: "" !important;
    position: absolute !important;
    top: 0.18rem !important;
    bottom: 0.18rem !important;
    left: 0.18rem !important;
    width: 0.18rem !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #fff4a3, #f2c94c 55%, rgba(255, 244, 163, 0.78)) !important;
    box-shadow: 0 0 0.42rem rgba(242, 201, 76, 0.42) !important;
    pointer-events: none !important;
}

#master-webcam-button .master-webcam-ticker-badge::after {
    content: "" !important;
    position: absolute !important;
    top: -45% !important;
    bottom: -45% !important;
    left: -72% !important;
    width: 42% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.16), transparent) !important;
    transform: skewX(-22deg) !important;
    animation: masterTickerBadgeSweep 6.4s ease-in-out infinite !important;
    pointer-events: none !important;
}

#master-webcam-button .master-webcam-ticker-badge-signal {
    position: relative !important;
    z-index: 1 !important;
    flex: 0 0 auto !important;
    width: clamp(0.86rem, 1.02vw, 0.98rem) !important;
    height: clamp(0.86rem, 1.02vw, 0.98rem) !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 50% 50%, #fff4a3 0 14%, #f2c94c 15% 26%, rgba(80, 214, 244, 0.34) 27% 51%, rgba(255, 255, 255, 0.10) 52% 100%) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.20),
        0 0 0.52rem rgba(80, 214, 244, 0.22),
        0 0 0.36rem rgba(242, 201, 76, 0.20) !important;
}

#master-webcam-button .master-webcam-ticker-badge-signal::before,
#master-webcam-button .master-webcam-ticker-badge-signal::after {
    content: "" !important;
    position: absolute !important;
    inset: -0.18rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(145, 229, 255, 0.55) !important;
    opacity: 0.68 !important;
    animation: masterTickerSignalPulse 2.8s ease-in-out infinite !important;
    pointer-events: none !important;
}

#master-webcam-button .master-webcam-ticker-badge-signal::after {
    inset: -0.34rem !important;
    border-color: rgba(242, 201, 76, 0.34) !important;
    animation-delay: 0.78s !important;
}

#master-webcam-button .master-webcam-ticker-badge-label {
    position: relative !important;
    z-index: 1 !important;
    display: inline-block !important;
    color: #ffffff !important;
    text-shadow: 0 0 0.38rem rgba(143, 225, 255, 0.18) !important;
}

#master-webcam-button .master-webcam-ticker-subject {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    color: #ffe88a !important;
    font-size: clamp(0.98rem, 1.16vw, 1.12rem) !important;
    line-height: 1.02 !important;
    letter-spacing: 0.064em !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#master-webcam-button .master-webcam-ticker-line {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: calc(2 * clamp(1.02rem, 1.20vw, 1.13rem)) !important;
    min-height: calc(2 * clamp(1.02rem, 1.20vw, 1.13rem)) !important;
    max-height: calc(2 * clamp(1.02rem, 1.20vw, 1.13rem)) !important;
    white-space: normal !important;
    overflow: hidden !important;
    color: #ffffff !important;
    font-size: clamp(0.82rem, 0.96vw, 0.92rem) !important;
    font-weight: 590 !important;
    line-height: clamp(1.02rem, 1.20vw, 1.13rem) !important;
    letter-spacing: 0.006em !important;
}

#master-webcam-button .master-webcam-ticker-text-line {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: clamp(1.02rem, 1.20vw, 1.13rem) !important;
    line-height: clamp(1.02rem, 1.20vw, 1.13rem) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

@keyframes masterTickerBadgeSweep {
    0%, 56% { left: -72%; opacity: 0; }
    68% { opacity: 0.88; }
    86%, 100% { left: 132%; opacity: 0; }
}

@keyframes masterTickerSignalPulse {
    0%, 100% { transform: scale(0.88); opacity: 0.34; }
    46% { transform: scale(1.08); opacity: 0.72; }
}

@media (prefers-reduced-motion: reduce) {
    #master-webcam-button .master-webcam-ticker-badge::after,
    #master-webcam-button .master-webcam-ticker-badge-signal::before,
    #master-webcam-button .master-webcam-ticker-badge-signal::after {
        animation: none !important;
    }
}

@media (max-width: 767px) {
    #master-webcam-button.master-webcam-static,
    #master-webcam-button {
        height: clamp(4.72rem, 18.7vw, 5.28rem) !important;
        min-height: clamp(4.72rem, 18.7vw, 5.28rem) !important;
        max-height: clamp(4.72rem, 18.7vw, 5.28rem) !important;
        padding: clamp(0.46rem, 1.95vw, 0.58rem) clamp(0.68rem, 2.88vw, 0.84rem) !important;
    }

    #master-webcam-button .master-webcam-ticker {
        gap: clamp(0.22rem, 0.92vw, 0.30rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-head {
        gap: clamp(0.34rem, 1.45vw, 0.46rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-badge {
        min-width: clamp(4.10rem, 17.6vw, 4.72rem) !important;
        height: clamp(1.08rem, 4.45vw, 1.24rem) !important;
        padding-left: clamp(0.42rem, 1.78vw, 0.50rem) !important;
        padding-right: clamp(0.46rem, 1.95vw, 0.56rem) !important;
        gap: clamp(0.22rem, 0.95vw, 0.30rem) !important;
        font-size: clamp(0.44rem, 1.88vw, 0.52rem) !important;
        letter-spacing: 0.085em !important;
    }

    #master-webcam-button .master-webcam-ticker-badge::before {
        top: 0.16rem !important;
        bottom: 0.16rem !important;
        left: 0.15rem !important;
        width: 0.15rem !important;
    }

    #master-webcam-button .master-webcam-ticker-badge-signal {
        width: clamp(0.68rem, 2.95vw, 0.80rem) !important;
        height: clamp(0.68rem, 2.95vw, 0.80rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-subject {
        font-size: clamp(0.72rem, 3.12vw, 0.88rem) !important;
        line-height: 1.02 !important;
        letter-spacing: 0.050em !important;
    }

    #master-webcam-button .master-webcam-ticker-line {
        height: calc(2 * clamp(0.86rem, 3.55vw, 0.98rem)) !important;
        min-height: calc(2 * clamp(0.86rem, 3.55vw, 0.98rem)) !important;
        max-height: calc(2 * clamp(0.86rem, 3.55vw, 0.98rem)) !important;
        font-size: clamp(0.64rem, 2.64vw, 0.76rem) !important;
        line-height: clamp(0.86rem, 3.55vw, 0.98rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-text-line {
        height: clamp(0.86rem, 3.55vw, 0.98rem) !important;
        line-height: clamp(0.86rem, 3.55vw, 0.98rem) !important;
    }
}


#master-webcam-button.has-ticker-popout {
    cursor: pointer !important;
    touch-action: manipulation !important;
}

#master-webcam-button.has-ticker-popout:focus-visible {
    outline: 2px solid rgba(255, 232, 138, 0.95) !important;
    outline-offset: 3px !important;
}

#master-webcam-button.has-ticker-popout .master-webcam-ticker {
    position: relative !important;
}

#master-webcam-button .master-webcam-ticker-readcue {
    position: absolute !important;
    right: clamp(0.04rem, 0.24vw, 0.18rem) !important;
    bottom: clamp(-0.22rem, -0.18vw, -0.12rem) !important;
    max-width: 46% !important;
    color: rgba(255, 232, 138, 0.70) !important;
    font-size: clamp(0.48rem, 0.58vw, 0.56rem) !important;
    font-weight: 760 !important;
    line-height: 1 !important;
    letter-spacing: 0.045em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    opacity: 0.72 !important;
    pointer-events: none !important;
}


.master-webcam-ticker-popout.hidden {
    display: none !important;
}

.master-webcam-ticker-popout {
    position: fixed !important;
    inset: 0 !important;
    z-index: 9998 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: clamp(1.12rem, 3vw, 2rem) !important;
}

.master-webcam-ticker-popout-backdrop {
    position: absolute !important;
    inset: 0 !important;
    background:
        radial-gradient(circle at 50% 20%, rgba(37, 182, 224, 0.22), transparent 34%),
        rgba(1, 18, 34, 0.58) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
}

.master-webcam-ticker-popout-card {
    position: relative !important;
    z-index: 1 !important;
    width: min(34rem, 94vw) !important;
    max-height: min(72vh, 34rem) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(0.58rem, 1.2vw, 0.82rem) !important;
    padding: clamp(1rem, 2.1vw, 1.34rem) clamp(1rem, 2.2vw, 1.48rem) clamp(1.12rem, 2.3vw, 1.56rem) !important;
    color: #ffffff !important;
    background:
        linear-gradient(145deg, rgba(4, 43, 78, 0.96), rgba(6, 80, 122, 0.94) 58%, rgba(3, 36, 70, 0.98)) !important;
    border: 1px solid rgba(143, 225, 255, 0.36) !important;
    border-radius: clamp(1.05rem, 2vw, 1.35rem) !important;
    box-shadow:
        0 1.35rem 3.2rem rgba(0, 0, 0, 0.34),
        inset 0 0 0 1px rgba(255, 255, 255, 0.08),
        0 0 1.6rem rgba(37, 182, 224, 0.12) !important;
    overflow: hidden !important;
}

.master-webcam-ticker-popout-card::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 0.22rem !important;
    background: linear-gradient(90deg, rgba(242, 201, 76, 0.95), rgba(145, 229, 255, 0.72), rgba(242, 201, 76, 0.92)) !important;
    pointer-events: none !important;
}

.master-webcam-ticker-popout-close {
    position: absolute !important;
    top: clamp(0.62rem, 1.4vw, 0.84rem) !important;
    right: clamp(0.70rem, 1.6vw, 0.96rem) !important;
    width: clamp(2rem, 4.8vw, 2.38rem) !important;
    height: clamp(2rem, 4.8vw, 2.38rem) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255, 232, 138, 0.42) !important;
    border-radius: 999px !important;
    background: rgba(0, 25, 52, 0.44) !important;
    color: #ffe88a !important;
    font-size: clamp(1.40rem, 3.5vw, 1.78rem) !important;
    line-height: 1 !important;
    cursor: pointer !important;
}

.master-webcam-ticker-popout-close:focus-visible {
    outline: 2px solid rgba(255, 232, 138, 0.95) !important;
    outline-offset: 3px !important;
}

.master-webcam-ticker-popout-eyebrow {
    padding-right: 3rem !important;
    color: #ffe88a !important;
    font-size: clamp(0.68rem, 1vw, 0.78rem) !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.13em !important;
    text-transform: uppercase !important;
}

.master-webcam-ticker-popout-title {
    padding-right: 2.8rem !important;
    margin: 0 !important;
    color: #ffffff !important;
    font-size: clamp(1.32rem, 2.8vw, 1.82rem) !important;
    font-weight: 920 !important;
    line-height: 1.08 !important;
    letter-spacing: 0.035em !important;
    text-transform: uppercase !important;
}

.master-webcam-ticker-popout-body {
    max-height: min(46vh, 20rem) !important;
    overflow: auto !important;
    padding: 0.12rem 0.12rem 0.18rem 0 !important;
    color: rgba(255, 255, 255, 0.94) !important;
    font-size: clamp(0.94rem, 1.4vw, 1.05rem) !important;
    font-weight: 520 !important;
    line-height: 1.62 !important;
    white-space: pre-line !important;
    scrollbar-width: thin !important;
}

.master-webcam-ticker-popout-body::-webkit-scrollbar {
    width: 0.42rem !important;
}

.master-webcam-ticker-popout-body::-webkit-scrollbar-thumb {
    background: rgba(255, 232, 138, 0.42) !important;
    border-radius: 999px !important;
}

html.master-ticker-popout-open,
html.master-ticker-popout-open body {
    overflow: hidden !important;
}

@media (max-width: 767px) {
    #master-webcam-button .master-webcam-ticker-readcue {
        right: 0 !important;
        bottom: -0.18rem !important;
        max-width: 50% !important;
        font-size: clamp(0.40rem, 1.70vw, 0.48rem) !important;
        letter-spacing: 0.035em !important;
        opacity: 0.62 !important;
    }

    .master-webcam-ticker-popout {
        align-items: flex-end !important;
        justify-content: center !important;
        padding: 0.92rem 0.72rem calc(0.82rem + env(safe-area-inset-bottom, 0px)) !important;
    }

    .master-webcam-ticker-popout-card {
        width: 100% !important;
        max-height: min(76vh, 34rem) !important;
        border-radius: 1.18rem 1.18rem 1rem 1rem !important;
        padding: 1rem 0.96rem 1.14rem !important;
    }

    .master-webcam-ticker-popout-body {
        max-height: 52vh !important;
        font-size: clamp(0.90rem, 3.65vw, 0.98rem) !important;
        line-height: 1.58 !important;
    }
}


#master-webcam-button.has-ticker-popout {
    position: relative !important;
    z-index: 2 !important;
    pointer-events: auto !important;
    user-select: none !important;
}

#master-webcam-button.has-ticker-popout,
#master-webcam-button.has-ticker-popout * {
    cursor: pointer !important;
}

.master-webcam-ticker-popout {
    align-items: center !important;
    justify-content: center !important;
}

.master-webcam-ticker-popout-card {
    transform: translateY(-1.5vh) !important;
}

@media (max-width: 767px) {
    #master-webcam-button .master-webcam-ticker-readcue {
        display: none !important;
    }

    .master-webcam-ticker-popout {
        align-items: center !important;
        justify-content: center !important;
        padding: max(1rem, env(safe-area-inset-top, 0px)) 0.86rem max(1rem, env(safe-area-inset-bottom, 0px)) !important;
    }

    .master-webcam-ticker-popout-card {
        width: min(92vw, 30rem) !important;
        max-height: min(70svh, 32rem) !important;
        border-radius: 1.16rem !important;
        padding: 1.02rem 0.98rem 1.16rem !important;
        transform: translateY(-2vh) !important;
    }

    .master-webcam-ticker-popout-body {
        max-height: min(46svh, 20rem) !important;
        padding-bottom: 0.04rem !important;
    }
}


.master-webcam-ticker-popout {
    padding: clamp(1rem, 2.8vw, 2rem) !important;
}

.master-webcam-ticker-popout-card {
    width: min(42rem, 86vw) !important;
    max-height: min(68vh, 34rem) !important;
    transform: translateY(-1vh) !important;
}

.master-webcam-ticker-popout-body {
    flex: 0 1 auto !important;
    min-height: 0 !important;
    max-height: min(42vh, 22rem) !important;
    overflow: auto !important;
}

@media (min-width: 768px) and (max-width: 980px) {
    .master-webcam-ticker-popout {
        padding: clamp(0.9rem, 2.4vw, 1.35rem) !important;
    }

    .master-webcam-ticker-popout-card {
        width: min(40rem, 84vw) !important;
        max-height: min(66vh, 31rem) !important;
    }

    .master-webcam-ticker-popout-body {
        max-height: min(38vh, 18.5rem) !important;
    }
}

@media (max-width: 767px) {
    .master-webcam-ticker-popout {
        padding: max(1.18rem, env(safe-area-inset-top, 0px)) 0.9rem max(1.18rem, env(safe-area-inset-bottom, 0px)) !important;
    }

    .master-webcam-ticker-popout-card {
        width: min(91vw, 29rem) !important;
        max-height: min(66svh, 30rem) !important;
        transform: translateY(-1vh) !important;
    }

    .master-webcam-ticker-popout-body {
        max-height: min(40svh, 17.5rem) !important;
        overflow: auto !important;
    }
}

@media (max-height: 620px) {
    .master-webcam-ticker-popout {
        padding-top: max(0.72rem, env(safe-area-inset-top, 0px)) !important;
        padding-bottom: max(0.72rem, env(safe-area-inset-bottom, 0px)) !important;
    }

    .master-webcam-ticker-popout-card {
        max-height: 62svh !important;
        transform: none !important;
    }

    .master-webcam-ticker-popout-body {
        max-height: 32svh !important;
    }
}


#master-webcam-button .master-webcam-ticker-head {
    position: relative !important;
    align-items: center !important;
}

#master-webcam-button .master-webcam-ticker-readcue {
    position: static !important;
    right: auto !important;
    bottom: auto !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(0.20rem, 0.34vw, 0.32rem) !important;
    max-width: min(14rem, 40%) !important;
    min-height: clamp(1.10rem, 1.34vw, 1.28rem) !important;
    margin-left: auto !important;
    padding: 0 clamp(0.46rem, 0.62vw, 0.62rem) !important;
    border: 1px solid rgba(255, 232, 138, 0.44) !important;
    border-radius: 999px !important;
    background:
        linear-gradient(135deg, rgba(255, 232, 138, 0.16), rgba(74, 213, 247, 0.12) 58%, rgba(255, 232, 138, 0.10)) !important;
    color: #fff1a6 !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.08),
        0 0 0.58rem rgba(80, 214, 244, 0.10) !important;
    font-size: clamp(0.56rem, 0.66vw, 0.66rem) !important;
    font-weight: 860 !important;
    line-height: 1 !important;
    letter-spacing: 0.055em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    opacity: 1 !important;
    pointer-events: none !important;
}

#master-webcam-button:not(.has-ticker-popout) .master-webcam-ticker-readcue {
    display: none !important;
}

#master-webcam-button .master-webcam-ticker-date,
#master-webcam-button .master-webcam-ticker-readmore {
    display: inline-block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

#master-webcam-button .master-webcam-ticker-date {
    max-width: clamp(2.9rem, 5.8vw, 5.8rem) !important;
    color: rgba(255, 255, 255, 0.86) !important;
    font-weight: 780 !important;
}

#master-webcam-button .master-webcam-ticker-readcue-separator {
    color: rgba(145, 229, 255, 0.72) !important;
    font-weight: 900 !important;
}

#master-webcam-button .master-webcam-ticker-readmore {
    color: #ffe88a !important;
    max-width: clamp(4.2rem, 8vw, 6.8rem) !important;
}

#master-webcam-button .master-webcam-ticker-date[hidden],
#master-webcam-button .master-webcam-ticker-readcue-separator[hidden],
#master-webcam-button .master-webcam-ticker-readmore[hidden] {
    display: none !important;
}

#master-webcam-button.has-ticker-popout:hover .master-webcam-ticker-readcue,
#master-webcam-button.has-ticker-popout:focus-visible .master-webcam-ticker-readcue {
    border-color: rgba(255, 232, 138, 0.72) !important;
    background:
        linear-gradient(135deg, rgba(255, 232, 138, 0.22), rgba(74, 213, 247, 0.17) 58%, rgba(255, 232, 138, 0.15)) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.10),
        0 0 0.78rem rgba(80, 214, 244, 0.16) !important;
}


.master-webcam-ticker-popout-headline {
    margin: .12rem 0 .46rem !important;
    color: rgba(255, 255, 255, .92) !important;
    font-weight: 800 !important;
    font-size: clamp(.96rem, 2.5vw, 1.08rem) !important;
    line-height: 1.35 !important;
    letter-spacing: .01em !important;
}

.master-webcam-ticker-popout-headline[hidden] {
    display: none !important;
}

.master-webcam-ticker-popout-meta {
    padding-right: 2.8rem !important;
    margin-top: clamp(-0.34rem, -0.5vw, -0.14rem) !important;
    color: rgba(255, 232, 138, 0.82) !important;
    font-size: clamp(0.72rem, 1.02vw, 0.84rem) !important;
    font-weight: 820 !important;
    line-height: 1.18 !important;
    letter-spacing: 0.075em !important;
    text-transform: uppercase !important;
}

.master-webcam-ticker-popout-meta[hidden] {
    display: none !important;
}

@media (max-width: 767px) {
    #master-webcam-button .master-webcam-ticker-readcue {
        display: inline-flex !important;
        gap: clamp(0.15rem, 0.62vw, 0.22rem) !important;
        max-width: clamp(6.2rem, 34vw, 8.3rem) !important;
        min-height: clamp(0.98rem, 4.1vw, 1.14rem) !important;
        padding: 0 clamp(0.34rem, 1.35vw, 0.46rem) !important;
        font-size: clamp(0.43rem, 1.78vw, 0.53rem) !important;
        letter-spacing: 0.040em !important;
    }

    #master-webcam-button:not(.has-ticker-popout) .master-webcam-ticker-readcue {
        display: none !important;
    }

    #master-webcam-button .master-webcam-ticker-date {
        max-width: clamp(2.45rem, 12vw, 3.8rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-readmore {
        max-width: clamp(3.8rem, 19vw, 5.2rem) !important;
    }


.master-webcam-ticker-popout-meta {
        font-size: clamp(0.66rem, 2.65vw, 0.78rem) !important;
        letter-spacing: 0.060em !important;
    }
}

@media (max-width: 390px) {
    #master-webcam-button .master-webcam-ticker-readcue {
        max-width: clamp(4.9rem, 30vw, 6.4rem) !important;
        padding-left: clamp(0.30rem, 1.15vw, 0.38rem) !important;
        padding-right: clamp(0.30rem, 1.15vw, 0.38rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-date,
    #master-webcam-button .master-webcam-ticker-readcue-separator {
        display: none !important;
    }
}


#master-webcam-button .master-webcam-ticker {
    position: relative !important;
    --elmina-ticker-rail-width: clamp(0.48rem, 0.58vw, 0.58rem);
    --elmina-ticker-rail-top: 0.02rem;
    --elmina-ticker-rail-bottom: 0.02rem;
    --elmina-ticker-body-indent: clamp(1.74rem, 2.02vw, 2.02rem);
}

#master-webcam-button .master-webcam-ticker::before {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    left: 0 !important;
    top: var(--elmina-ticker-rail-top) !important;
    bottom: var(--elmina-ticker-rail-bottom) !important;
    width: var(--elmina-ticker-rail-width) !important;
    border-radius: 999px !important;
    background:
        linear-gradient(90deg,
            rgba(7, 78, 137, 0.98) 0%,
            rgba(74, 213, 247, 0.92) 12%,
            rgba(255, 241, 156, 0.98) 29%,
            rgba(242, 201, 76, 0.98) 52%,
            rgba(255, 232, 138, 0.95) 72%,
            rgba(14, 104, 160, 0.98) 100%) !important;
    border: 1px solid rgba(143, 225, 255, 0.50) !important;
    box-shadow:
        inset 0 0 0 1px rgba(0, 52, 104, 0.62),
        inset 0.08rem 0 0 rgba(255, 255, 255, 0.18),
        0 0 0.62rem rgba(80, 214, 244, 0.16),
        0 0 0.42rem rgba(242, 201, 76, 0.18) !important;
    pointer-events: none !important;
}

#master-webcam-button .master-webcam-ticker::after {
    content: "" !important;
    position: absolute !important;
    z-index: 4 !important;
    left: calc(var(--elmina-ticker-rail-width) * 0.50 - clamp(0.17rem, 0.21vw, 0.21rem)) !important;
    top: clamp(0.48rem, 0.68vw, 0.64rem) !important;
    width: clamp(0.34rem, 0.42vw, 0.42rem) !important;
    height: clamp(0.34rem, 0.42vw, 0.42rem) !important;
    border-radius: 999px !important;
    background: radial-gradient(circle, #fff8bd 0 18%, #f2c94c 19% 46%, rgba(80, 214, 244, 0.72) 47% 72%, rgba(7, 78, 137, 0.64) 73% 100%) !important;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.20),
        0 0 0.58rem rgba(242, 201, 76, 0.35),
        0 0 0.74rem rgba(80, 214, 244, 0.20) !important;
    pointer-events: none !important;
}

#master-webcam-button .master-webcam-ticker-head,
#master-webcam-button .master-webcam-ticker-line {
    position: relative !important;
    z-index: 1 !important;
}

#master-webcam-button .master-webcam-ticker-badge {
    z-index: 3 !important;
    border-color: rgba(143, 225, 255, 0.58) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 232, 138, 0.16),
        inset 0 -0.42rem 0.78rem rgba(0, 32, 72, 0.20),
        0 0.14rem 0.34rem rgba(0, 0, 0, 0.14),
        0 0 0.82rem rgba(35, 184, 224, 0.13) !important;
}

#master-webcam-button .master-webcam-ticker-line {
    box-sizing: border-box !important;
    padding-left: var(--elmina-ticker-body-indent) !important;
}

@media (max-width: 767px) {
    #master-webcam-button .master-webcam-ticker {
        --elmina-ticker-rail-width: clamp(0.38rem, 1.62vw, 0.46rem);
        --elmina-ticker-rail-top: 0.02rem;
        --elmina-ticker-rail-bottom: 0.02rem;
        --elmina-ticker-body-indent: clamp(1.24rem, 5.28vw, 1.46rem);
    }

    #master-webcam-button .master-webcam-ticker::after {
        left: calc(var(--elmina-ticker-rail-width) * 0.50 - clamp(0.14rem, 0.58vw, 0.18rem)) !important;
        top: clamp(0.38rem, 1.65vw, 0.50rem) !important;
        width: clamp(0.28rem, 1.18vw, 0.36rem) !important;
        height: clamp(0.28rem, 1.18vw, 0.36rem) !important;
    }
}

@media (max-width: 390px) {
    #master-webcam-button .master-webcam-ticker {
        --elmina-ticker-body-indent: clamp(1.12rem, 4.85vw, 1.32rem);
    }
}


#master-webcam-button .master-webcam-ticker {
    --elmina-ticker-rail-width: clamp(0.18rem, 0.25vw, 0.24rem);
    --elmina-ticker-rail-top: clamp(0.22rem, 0.34vw, 0.32rem);
    --elmina-ticker-rail-bottom: clamp(0.22rem, 0.34vw, 0.32rem);
    --elmina-ticker-body-indent: clamp(1.62rem, 1.92vw, 1.92rem);
}

#master-webcam-button .master-webcam-ticker::before {
    left: clamp(0.12rem, 0.20vw, 0.18rem) !important;
    top: var(--elmina-ticker-rail-top) !important;
    bottom: var(--elmina-ticker-rail-bottom) !important;
    width: var(--elmina-ticker-rail-width) !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background:
        linear-gradient(180deg,
            rgba(255, 246, 178, 0.94) 0%,
            rgba(242, 201, 76, 0.95) 36%,
            rgba(255, 232, 138, 0.90) 54%,
            rgba(74, 213, 247, 0.78) 100%) padding-box,
        linear-gradient(180deg,
            rgba(145, 229, 255, 0.88),
            rgba(255, 232, 138, 0.74) 45%,
            rgba(13, 111, 171, 0.90)) border-box !important;
    box-shadow:
        inset 0.045rem 0 0 rgba(255, 255, 255, 0.22),
        inset -0.045rem 0 0 rgba(0, 53, 105, 0.42),
        0 0 0.28rem rgba(242, 201, 76, 0.18),
        0 0 0.46rem rgba(74, 213, 247, 0.12) !important;
    opacity: 0.92 !important;
}

#master-webcam-button .master-webcam-ticker::after {
    left: calc(clamp(0.12rem, 0.20vw, 0.18rem) + (var(--elmina-ticker-rail-width) * 0.50) - clamp(0.105rem, 0.14vw, 0.14rem)) !important;
    top: clamp(0.52rem, 0.72vw, 0.68rem) !important;
    width: clamp(0.21rem, 0.28vw, 0.28rem) !important;
    height: clamp(0.21rem, 0.28vw, 0.28rem) !important;
    background:
        radial-gradient(circle,
            #fff8bd 0 20%,
            #f2c94c 21% 52%,
            rgba(74, 213, 247, 0.72) 53% 78%,
            rgba(5, 74, 137, 0.50) 79% 100%) !important;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.22),
        0 0 0.36rem rgba(242, 201, 76, 0.24),
        0 0 0.50rem rgba(74, 213, 247, 0.16) !important;
    opacity: 0.96 !important;
}

#master-webcam-button .master-webcam-ticker-badge {
    margin-left: clamp(0.22rem, 0.34vw, 0.32rem) !important;
    border-color: rgba(145, 229, 255, 0.66) !important;
    background:
        linear-gradient(135deg,
            rgba(4, 45, 85, 0.99),
            rgba(8, 88, 131, 0.96) 55%,
            rgba(4, 58, 112, 0.99)) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 232, 138, 0.18),
        inset 0 -0.40rem 0.72rem rgba(0, 32, 72, 0.20),
        0 0.12rem 0.30rem rgba(0, 0, 0, 0.13),
        0 0 0.66rem rgba(74, 213, 247, 0.13) !important;
}

#master-webcam-button .master-webcam-ticker-badge::before {
    top: 0.22rem !important;
    bottom: 0.22rem !important;
    left: 0.20rem !important;
    width: 0.115rem !important;
    opacity: 0.88 !important;
    background: linear-gradient(180deg, rgba(255, 246, 178, 0.96), rgba(242, 201, 76, 0.92) 58%, rgba(74, 213, 247, 0.50)) !important;
    box-shadow: 0 0 0.28rem rgba(242, 201, 76, 0.30) !important;
}

#master-webcam-button .master-webcam-ticker-badge-signal {
    width: clamp(0.78rem, 0.94vw, 0.90rem) !important;
    height: clamp(0.78rem, 0.94vw, 0.90rem) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.18),
        0 0 0.38rem rgba(74, 213, 247, 0.18),
        0 0 0.28rem rgba(242, 201, 76, 0.16) !important;
}

#master-webcam-button .master-webcam-ticker-badge-signal::before {
    inset: -0.14rem !important;
    opacity: 0.50 !important;
}

#master-webcam-button .master-webcam-ticker-badge-signal::after {
    inset: -0.26rem !important;
    opacity: 0.34 !important;
}

#master-webcam-button .master-webcam-ticker-line {
    padding-left: var(--elmina-ticker-body-indent) !important;
}

@media (max-width: 767px) {
    #master-webcam-button .master-webcam-ticker {
        --elmina-ticker-rail-width: clamp(0.15rem, 0.62vw, 0.19rem);
        --elmina-ticker-rail-top: clamp(0.18rem, 0.78vw, 0.26rem);
        --elmina-ticker-rail-bottom: clamp(0.18rem, 0.78vw, 0.26rem);
        --elmina-ticker-body-indent: clamp(1.18rem, 5.02vw, 1.38rem);
    }

    #master-webcam-button .master-webcam-ticker::before {
        left: clamp(0.08rem, 0.34vw, 0.12rem) !important;
    }

    #master-webcam-button .master-webcam-ticker::after {
        left: calc(clamp(0.08rem, 0.34vw, 0.12rem) + (var(--elmina-ticker-rail-width) * 0.50) - clamp(0.085rem, 0.36vw, 0.11rem)) !important;
        top: clamp(0.40rem, 1.75vw, 0.52rem) !important;
        width: clamp(0.17rem, 0.72vw, 0.22rem) !important;
        height: clamp(0.17rem, 0.72vw, 0.22rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-badge {
        margin-left: clamp(0.18rem, 0.76vw, 0.26rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-badge::before {
        top: 0.18rem !important;
        bottom: 0.18rem !important;
        width: 0.095rem !important;
    }

    #master-webcam-button .master-webcam-ticker-badge-signal {
        width: clamp(0.62rem, 2.68vw, 0.74rem) !important;
        height: clamp(0.62rem, 2.68vw, 0.74rem) !important;
    }
}

@media (max-width: 390px) {
    #master-webcam-button .master-webcam-ticker {
        --elmina-ticker-body-indent: clamp(1.06rem, 4.60vw, 1.24rem);
    }
}


#master-webcam-button .master-webcam-ticker {
    --elmina-ticker-body-indent: clamp(2.04rem, 2.36vw, 2.28rem);
}

@media (max-width: 767px) {
    #master-webcam-button .master-webcam-ticker {
        --elmina-ticker-body-indent: clamp(1.66rem, 7.08vw, 1.88rem);
    }
}

@media (max-width: 390px) {
    #master-webcam-button .master-webcam-ticker {
        --elmina-ticker-body-indent: clamp(1.54rem, 6.62vw, 1.74rem);
    }
}


#master-webcam-button.has-ticker-popout,
#master-webcam-button .master-webcam-ticker {
    touch-action: pan-y !important;
}

#master-webcam-button .master-webcam-ticker-actions {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: clamp(0.20rem, 0.34vw, 0.32rem) !important;
    margin-left: auto !important;
    max-width: min(18.8rem, 48%) !important;
    min-width: 0 !important;
    pointer-events: none !important;
}

#master-webcam-button .master-webcam-ticker-actions .master-webcam-ticker-readcue {
    margin-left: 0 !important;
    max-width: min(13.2rem, 100%) !important;
}

#master-webcam-button .master-webcam-ticker-nav {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(0.12rem, 0.20vw, 0.18rem) !important;
    padding: clamp(0.05rem, 0.08vw, 0.08rem) !important;
    border: 1px solid rgba(145, 229, 255, 0.34) !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, rgba(8, 73, 124, 0.58), rgba(4, 39, 77, 0.62)) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.06),
        0 0 0.42rem rgba(74, 213, 247, 0.08) !important;
    pointer-events: auto !important;
}

#master-webcam-button .master-webcam-ticker-nav[hidden],
#master-webcam-button:not(.has-ticker-multiple) .master-webcam-ticker-nav {
    display: none !important;
}

#master-webcam-button .master-webcam-ticker-nav-button {
    appearance: none !important;
    -webkit-appearance: none !important;
    box-sizing: border-box !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: clamp(1.12rem, 1.34vw, 1.28rem) !important;
    height: clamp(1.12rem, 1.34vw, 1.28rem) !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(255, 232, 138, 0.32) !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, rgba(255, 232, 138, 0.16), rgba(74, 213, 247, 0.12)) !important;
    color: #ffe88a !important;
    font-family: inherit !important;
    font-size: clamp(0.92rem, 1.08vw, 1.02rem) !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
    cursor: pointer !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.07) !important;
    pointer-events: auto !important;
    user-select: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

#master-webcam-button .master-webcam-ticker-nav-button:hover,
#master-webcam-button .master-webcam-ticker-nav-button:focus-visible {
    border-color: rgba(255, 232, 138, 0.66) !important;
    background: linear-gradient(135deg, rgba(255, 232, 138, 0.24), rgba(74, 213, 247, 0.18)) !important;
    color: #ffffff !important;
    outline: none !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.10),
        0 0 0.58rem rgba(74, 213, 247, 0.15) !important;
}

#master-webcam-button .master-webcam-ticker-nav-button:active {
    transform: scale(0.94) !important;
}

@media (max-width: 767px) {
    #master-webcam-button .master-webcam-ticker-actions {
        gap: clamp(0.14rem, 0.60vw, 0.22rem) !important;
        max-width: min(10.7rem, 43vw) !important;
    }

    #master-webcam-button .master-webcam-ticker-actions .master-webcam-ticker-readcue {
        max-width: clamp(4.9rem, 26vw, 6.7rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-nav {
        gap: clamp(0.08rem, 0.32vw, 0.12rem) !important;
        padding: clamp(0.035rem, 0.15vw, 0.055rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-nav-button {
        width: clamp(0.96rem, 4.05vw, 1.12rem) !important;
        height: clamp(0.96rem, 4.05vw, 1.12rem) !important;
        font-size: clamp(0.76rem, 3.24vw, 0.92rem) !important;
    }
}

@media (max-width: 430px) {
    #master-webcam-button .master-webcam-ticker-actions {
        max-width: min(9.2rem, 39vw) !important;
    }

    #master-webcam-button .master-webcam-ticker-actions .master-webcam-ticker-readcue {
        max-width: clamp(3.7rem, 18vw, 4.7rem) !important;
    }

    #master-webcam-button .master-webcam-ticker-date,
    #master-webcam-button .master-webcam-ticker-readcue-separator {
        display: none !important;
    }

    #master-webcam-button .master-webcam-ticker-readmore {
        max-width: clamp(3.2rem, 17vw, 4.4rem) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #master-webcam-button .master-webcam-ticker-nav-button:active {
        transform: none !important;
    }
}


html.master-ticker-popout-open,
html.master-ticker-popout-open body {
    overflow: hidden !important;
    overscroll-behavior: none !important;
}

.master-webcam-ticker-popout {
    touch-action: auto !important;
    overscroll-behavior: none !important;
}

.master-webcam-ticker-popout-backdrop {
    touch-action: none !important;
}

.master-webcam-ticker-popout-card {
    overflow: hidden !important;
    overscroll-behavior: contain !important;
}

.master-webcam-ticker-popout-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
    padding-right: clamp(0.16rem, 0.38vw, 0.34rem) !important;
}

.master-webcam-ticker-popout-backdrop,
.master-webcam-ticker-popout-close,
.master-webcam-ticker-popout-eyebrow,
.master-webcam-ticker-popout-title,
.master-webcam-ticker-popout-headline,
.master-webcam-ticker-popout-meta {
    flex: 0 0 auto !important;
}

@media (max-width: 767px) {
    .master-webcam-ticker-popout-body {
        max-height: min(39svh, 17rem) !important;
        padding-right: clamp(0.12rem, 0.52vw, 0.22rem) !important;
    }
}

@media (max-height: 620px) {
    .master-webcam-ticker-popout-body {
        max-height: 31svh !important;
    }
}


.master-webcam-ticker-popout-card {
    touch-action: pan-y !important;
}

.master-webcam-ticker-popout-body {
    margin-bottom: clamp(0.20rem, 0.55vw, 0.42rem) !important;
}

.master-webcam-ticker-popout-controls {
    --elmina-popout-arrow-size: clamp(2.58rem, 4.2vw, 3.05rem);
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: var(--elmina-popout-arrow-size) minmax(3.4rem, 1fr) var(--elmina-popout-arrow-size) !important;
    align-items: center !important;
    justify-content: center !important;
    justify-items: center !important;
    gap: clamp(0.48rem, 1.05vw, 0.86rem) !important;
    width: min(100%, 17.5rem) !important;
    margin: clamp(0.12rem, 0.35vw, 0.28rem) auto 0 !important;
    padding: 0 !important;
}

.master-webcam-ticker-popout-controls[hidden],
.master-webcam-ticker-popout-arrow[hidden],
.master-webcam-ticker-popout-count[hidden] {
    display: none !important;
}

.master-webcam-ticker-popout-arrow {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: relative !important;
    width: var(--elmina-popout-arrow-size) !important;
    height: var(--elmina-popout-arrow-size) !important;
    min-width: var(--elmina-popout-arrow-size) !important;
    max-width: var(--elmina-popout-arrow-size) !important;
    min-height: var(--elmina-popout-arrow-size) !important;
    max-height: var(--elmina-popout-arrow-size) !important;
    flex: 0 0 var(--elmina-popout-arrow-size) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.62), 0 0.35rem 0.72rem rgba(0,0,0,0.15) !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: 0 !important;
    overflow: hidden !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    user-select: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.master-webcam-ticker-popout-arrow::before {
    content: "" !important;
    display: block !important;
    width: calc(var(--elmina-popout-arrow-size) * 0.28) !important;
    height: calc(var(--elmina-popout-arrow-size) * 0.28) !important;
    border-style: solid !important;
    border-color: #004aad !important;
    border-width: 0 0 calc(var(--elmina-popout-arrow-size) * 0.075) calc(var(--elmina-popout-arrow-size) * 0.075) !important;
    border-radius: 0.06rem !important;
    box-sizing: border-box !important;
}

.master-webcam-ticker-popout-prev::before {
    transform: translateX(8%) rotate(45deg) !important;
}

.master-webcam-ticker-popout-next::before {
    transform: translateX(-8%) rotate(225deg) !important;
}

.master-webcam-ticker-popout-arrow:hover,
.master-webcam-ticker-popout-arrow:focus-visible {
    background: linear-gradient(145deg, #fff69a, #ffe84d 54%, #d5b000) !important;
    outline: 2px solid rgba(145, 229, 255, 0.78) !important;
    outline-offset: 3px !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.68),
        0 0.42rem 0.84rem rgba(0,0,0,0.17),
        0 0 0.92rem rgba(74, 213, 247, 0.18) !important;
}

.master-webcam-ticker-popout-arrow:active {
    transform: scale(0.95) !important;
}

.master-webcam-ticker-popout-count {
    min-width: 3.4rem !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-size: clamp(0.86rem, 1.5vw, 1.02rem) !important;
    font-weight: 920 !important;
    line-height: 1 !important;
    letter-spacing: 0.035em !important;
    text-align: center !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    .master-webcam-ticker-popout-controls {
        --elmina-popout-arrow-size: clamp(2.72rem, 11.5vw, 3.16rem);
        width: min(100%, 15.8rem) !important;
        gap: clamp(0.42rem, 1.8vw, 0.72rem) !important;
        margin-top: clamp(0.10rem, 0.55vw, 0.24rem) !important;
    }

    .master-webcam-ticker-popout-count {
        min-width: clamp(3.1rem, 12vw, 3.8rem) !important;
        font-size: clamp(0.82rem, 3.2vw, 0.96rem) !important;
    }

    .master-webcam-ticker-popout-body {
        max-height: min(34svh, 15rem) !important;
    }
}

@media (max-height: 620px) {
    .master-webcam-ticker-popout-controls {
        --elmina-popout-arrow-size: clamp(2.28rem, 8.6vw, 2.62rem);
        margin-top: 0 !important;
    }

    .master-webcam-ticker-popout-count {
        font-size: 0.82rem !important;
    }

    .master-webcam-ticker-popout-body {
        max-height: 27svh !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .master-webcam-ticker-popout-arrow:active {
        transform: none !important;
    }
}


#elmina-photo-grid,
.elmina-photo-viewer-panel,
.elmina-photo-viewer-image {
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
}

#elmina-photo-viewer-prev,
#elmina-photo-viewer-next {
    position: relative !important;
    width: var(--elmina-canon-control-arrow) !important;
    height: var(--elmina-canon-control-arrow) !important;
    min-width: var(--elmina-canon-control-arrow) !important;
    max-width: var(--elmina-canon-control-arrow) !important;
    min-height: var(--elmina-canon-control-arrow) !important;
    max-height: var(--elmina-canon-control-arrow) !important;
    border-radius: 999px !important;
    transform: none !important;
    overflow: hidden !important;
}

#elmina-photo-viewer-prev::before {
    transform: translateX(8%) rotate(45deg) !important;
}

#elmina-photo-viewer-next::before {
    transform: translateX(-8%) rotate(225deg) !important;
}

.elmina-photo-arrow:hover,
#elmina-photo-prev:hover,
#elmina-photo-next:hover,
#elmina-photo-viewer-prev:hover,
#elmina-photo-viewer-next:hover {
    width: var(--elmina-canon-control-arrow) !important;
    height: var(--elmina-canon-control-arrow) !important;
    min-width: var(--elmina-canon-control-arrow) !important;
    max-width: var(--elmina-canon-control-arrow) !important;
    min-height: var(--elmina-canon-control-arrow) !important;
    max-height: var(--elmina-canon-control-arrow) !important;
    border-radius: 999px !important;
    transform: none !important;
    filter: brightness(1.045) !important;
}


.elmina-photo-viewer {
    background:
        radial-gradient(circle at 50% 16%, rgba(74, 213, 247, 0.18), transparent 34%),
        linear-gradient(180deg, rgba(0, 36, 88, 0.88), rgba(0, 18, 48, 0.92)) !important;
    backdrop-filter: blur(10px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(10px) saturate(1.08) !important;
}

.elmina-photo-viewer-panel {
    background:
        linear-gradient(180deg, rgba(9, 92, 190, 0.96) 0%, rgba(0, 74, 173, 0.98) 58%, rgba(0, 61, 148, 0.98) 100%) !important;
    border: 1px solid rgba(255, 232, 77, 0.58) !important;
    box-shadow:
        0 1.3rem 3.1rem rgba(0, 0, 0, 0.34),
        inset 0 1px 0 rgba(255,255,255,0.22),
        0 0 0 1px rgba(145, 229, 255, 0.18) !important;
}

.elmina-photo-viewer-image {
    background: linear-gradient(180deg, rgba(233, 246, 255, 0.96), rgba(218, 236, 252, 0.98)) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.42),
        0 0.72rem 1.45rem rgba(0, 25, 80, 0.18) !important;
}

.elmina-photo-viewer-caption {
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    text-shadow: 0 2px 0 rgba(0, 34, 92, 0.22) !important;
}

.elmina-photo-viewer-meta {
    color: rgba(255, 255, 255, 0.90) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.90) !important;
    opacity: 0.92 !important;
}

.elmina-photo-close {
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.62), 0 0.34rem 0.72rem rgba(0,0,0,0.14) !important;
}

.elmina-photo-close:hover,
.elmina-photo-close:focus-visible {
    outline: 2px solid rgba(145, 229, 255, 0.78) !important;
    outline-offset: 3px !important;
    filter: brightness(1.045) !important;
}

#elmina-photo-viewer-prev,
#elmina-photo-viewer-next {
    --elmina-photo-viewer-arrow-size: var(--elmina-canon-control-arrow);
    width: var(--elmina-photo-viewer-arrow-size) !important;
    height: var(--elmina-photo-viewer-arrow-size) !important;
    min-width: var(--elmina-photo-viewer-arrow-size) !important;
    max-width: var(--elmina-photo-viewer-arrow-size) !important;
    min-height: var(--elmina-photo-viewer-arrow-size) !important;
    max-height: var(--elmina-photo-viewer-arrow-size) !important;
    flex: 0 0 var(--elmina-photo-viewer-arrow-size) !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.62), 0 0.35rem 0.72rem rgba(0,0,0,0.15) !important;
    border-radius: 999px !important;
    overflow: visible !important;
    transform: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

#elmina-photo-viewer-prev::before,
#elmina-photo-viewer-next::before {
    width: calc(var(--elmina-photo-viewer-arrow-size) * 0.28) !important;
    height: calc(var(--elmina-photo-viewer-arrow-size) * 0.28) !important;
    border-width: 0 0 calc(var(--elmina-photo-viewer-arrow-size) * 0.075) calc(var(--elmina-photo-viewer-arrow-size) * 0.075) !important;
    border-color: #004aad !important;
    border-radius: 0.06rem !important;
}

#elmina-photo-viewer-prev:hover,
#elmina-photo-viewer-prev:focus-visible,
#elmina-photo-viewer-next:hover,
#elmina-photo-viewer-next:focus-visible {
    width: var(--elmina-photo-viewer-arrow-size) !important;
    height: var(--elmina-photo-viewer-arrow-size) !important;
    min-width: var(--elmina-photo-viewer-arrow-size) !important;
    max-width: var(--elmina-photo-viewer-arrow-size) !important;
    min-height: var(--elmina-photo-viewer-arrow-size) !important;
    max-height: var(--elmina-photo-viewer-arrow-size) !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #fff69a, #ffe84d 54%, #d5b000) !important;
    outline: 2px solid rgba(145, 229, 255, 0.78) !important;
    outline-offset: 3px !important;
    filter: none !important;
    transform: none !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.68),
        0 0.42rem 0.84rem rgba(0,0,0,0.17),
        0 0 0.92rem rgba(74, 213, 247, 0.18) !important;
}

#elmina-photo-viewer-prev:active,
#elmina-photo-viewer-next:active {
    transform: scale(0.95) !important;
}

@media (max-width: 640px) {
    #elmina-photo-viewer-prev,
    #elmina-photo-viewer-next {
        --elmina-photo-viewer-arrow-size: clamp(2.44rem, 10.4vw, 2.82rem);
    }

    .elmina-photo-viewer-panel {
        max-height: 90svh !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #elmina-photo-viewer-prev:active,
    #elmina-photo-viewer-next:active {
        transform: none !important;
    }
}


:root {
    --elmina-interaction-cyan: rgba(145, 229, 255, 0.78);
    --elmina-interaction-cyan-soft: rgba(74, 213, 247, 0.20);
    --elmina-interaction-gold-soft: rgba(255, 232, 77, 0.30);
    --elmina-interaction-blue-glow: rgba(0, 74, 173, 0.18);
}

/* PC / mouse devices: premium halo language for all carousel navigation arrows. */
@media (hover: hover) and (pointer: fine) {
    .elmina-carousel-controls,
    #memory-wall-bottom.elmina-carousel-controls,
    .elmina-youtube-controls.elmina-carousel-controls,
    .elmina-photo-controls.elmina-carousel-controls {
        overflow: visible !important;
    }

    .elmina-carousel-arrow,
    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow,
    #elmina-youtube-prev,
    #elmina-youtube-next,
    .elmina-photo-arrow,
    #elmina-photo-prev,
    #elmina-photo-next {
        transition: filter 140ms ease, box-shadow 140ms ease, background 140ms ease, outline-color 140ms ease !important;
        transform: none !important;
    }

    .elmina-carousel-arrow:hover,
    .elmina-carousel-arrow:focus-visible,
    #memory-wall-prev:hover,
    #memory-wall-prev:focus-visible,
    #memory-wall-next:hover,
    #memory-wall-next:focus-visible,
    .elmina-youtube-arrow:hover,
    .elmina-youtube-arrow:focus-visible,
    #elmina-youtube-prev:hover,
    #elmina-youtube-prev:focus-visible,
    #elmina-youtube-next:hover,
    #elmina-youtube-next:focus-visible,
    .elmina-photo-arrow:hover,
    .elmina-photo-arrow:focus-visible,
    #elmina-photo-prev:hover,
    #elmina-photo-prev:focus-visible,
    #elmina-photo-next:hover,
    #elmina-photo-next:focus-visible {
        width: var(--elmina-canon-control-arrow) !important;
        height: var(--elmina-canon-control-arrow) !important;
        min-width: var(--elmina-canon-control-arrow) !important;
        max-width: var(--elmina-canon-control-arrow) !important;
        min-height: var(--elmina-canon-control-arrow) !important;
        max-height: var(--elmina-canon-control-arrow) !important;
        border-radius: 999px !important;
        background: linear-gradient(145deg, #fff69a, #ffe84d 54%, #d5b000) !important;
        outline: 2px solid var(--elmina-interaction-cyan) !important;
        outline-offset: 3px !important;
        transform: none !important;
        filter: none !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,0.68),
            0 0.42rem 0.84rem rgba(0,0,0,0.17),
            0 0 0.92rem var(--elmina-interaction-cyan-soft) !important;
    }

    .elmina-carousel-arrow:active,
    #memory-wall-prev:active,
    #memory-wall-next:active,
    .elmina-youtube-arrow:active,
    #elmina-youtube-prev:active,
    #elmina-youtube-next:active,
    .elmina-photo-arrow:active,
    #elmina-photo-prev:active,
    #elmina-photo-next:active {
        transform: none !important;
        filter: brightness(0.985) !important;
        box-shadow:
            inset 0 0.18rem 0.45rem rgba(0, 74, 173, 0.16),
            inset 0 1px 0 rgba(255,255,255,0.58),
            0 0.30rem 0.64rem rgba(0,0,0,0.15),
            0 0 0.72rem rgba(74, 213, 247, 0.16) !important;
    }

    /* PC action buttons: same premium theme, softer than arrows. */
    .elmina-carousel-action,
#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
.elmina-photo-share-mobile.elmina-photo-pill,
#btn-islands-cam,
#elmina-radio-tab-button,
#btn-city-cam{
        transition: filter 140ms ease, box-shadow 140ms ease, background 140ms ease, border-color 140ms ease !important;
        transform: none !important;
    }

    .elmina-carousel-action:hover,
.elmina-carousel-action:focus-visible,
#memory-wall-share-button:hover,
#memory-wall-share-button:focus-visible,
#elmina-youtube-share-button.elmina-youtube-share:hover,
#elmina-youtube-share-button.elmina-youtube-share:focus-visible,
.elmina-photo-share-mobile.elmina-photo-pill:hover,
.elmina-photo-share-mobile.elmina-photo-pill:focus-visible,
#btn-islands-cam:hover,
#btn-islands-cam:focus-visible,
#elmina-radio-tab-button:hover,
#elmina-radio-tab-button:focus-visible,
#btn-city-cam:hover,
#btn-city-cam:focus-visible{
        outline: 1px solid rgba(145, 229, 255, 0.58) !important;
        outline-offset: 2px !important;
        transform: none !important;
        filter: brightness(1.035) saturate(1.03) !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,0.58),
            inset 0 0 0 1px rgba(255,255,255,0.12),
            0 0.46rem 0.96rem rgba(0,0,0,0.14),
            0 0 0.86rem rgba(74, 213, 247, 0.13) !important;
    }

    .elmina-carousel-action:active,
#memory-wall-share-button:active,
#elmina-youtube-share-button.elmina-youtube-share:active,
.elmina-photo-share-mobile.elmina-photo-pill:active,
#btn-islands-cam:active,
#elmina-radio-tab-button:active,
#btn-city-cam:active{
        transform: none !important;
        filter: brightness(0.99) !important;
        box-shadow:
            inset 0 0.20rem 0.52rem rgba(0, 74, 173, 0.16),
            inset 0 1px 0 rgba(255,255,255,0.42),
            0 0.26rem 0.60rem rgba(0,0,0,0.12) !important;
    }
}

/* Touch devices: no outer growth, no layout movement; feedback stays inside the button surface. */
@media (hover: none), (pointer: coarse) {
    .elmina-carousel-arrow,
#memory-wall-prev,
#memory-wall-next,
.elmina-youtube-arrow,
#elmina-youtube-prev,
#elmina-youtube-next,
.elmina-photo-arrow,
#elmina-photo-prev,
#elmina-photo-next,
.master-webcam-ticker-popout-arrow,
#elmina-photo-viewer-prev,
#elmina-photo-viewer-next,
.elmina-carousel-action,
#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
.elmina-photo-share-mobile.elmina-photo-pill,
#btn-islands-cam,
#elmina-radio-tab-button,
#btn-city-cam{
        transform: none !important;
        outline: none !important;
        outline-offset: 0 !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    .elmina-carousel-arrow:active,
    #memory-wall-prev:active,
    #memory-wall-next:active,
    .elmina-youtube-arrow:active,
    #elmina-youtube-prev:active,
    #elmina-youtube-next:active,
    .elmina-photo-arrow:active,
    #elmina-photo-prev:active,
    #elmina-photo-next:active,
    .master-webcam-ticker-popout-arrow:active,
    #elmina-photo-viewer-prev:active,
    #elmina-photo-viewer-next:active {
        transform: none !important;
        filter: brightness(1.035) !important;
        box-shadow:
            inset 0 0 0 3px rgba(145, 229, 255, 0.24),
            inset 0 0.22rem 0.58rem rgba(255,255,255,0.18),
            inset 0 -0.20rem 0.42rem rgba(0, 74, 173, 0.13),
            0 0.28rem 0.62rem rgba(0,0,0,0.13) !important;
    }

    .elmina-carousel-action:active,
#memory-wall-share-button:active,
#elmina-youtube-share-button.elmina-youtube-share:active,
.elmina-photo-share-mobile.elmina-photo-pill:active,
#btn-islands-cam:active,
#elmina-radio-tab-button:active,
#btn-city-cam:active{
        transform: none !important;
        filter: brightness(1.035) saturate(1.03) !important;
        box-shadow:
            inset 0 0 0 3px rgba(145, 229, 255, 0.20),
            inset 0 0.28rem 0.65rem rgba(255,255,255,0.16),
            inset 0 -0.24rem 0.55rem rgba(0, 74, 173, 0.13),
            0 0.26rem 0.58rem rgba(0,0,0,0.12) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .elmina-carousel-arrow,
#memory-wall-prev,
#memory-wall-next,
.elmina-youtube-arrow,
#elmina-youtube-prev,
#elmina-youtube-next,
.elmina-photo-arrow,
#elmina-photo-prev,
#elmina-photo-next,
.elmina-carousel-action,
#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
.elmina-photo-share-mobile.elmina-photo-pill,
#btn-islands-cam,
#elmina-radio-tab-button,
#btn-city-cam{
        transition: none !important;
    }
}


:root {
    --elmina-interaction-ring-cyan: rgba(145, 229, 255, 0.74);
    --elmina-interaction-ring-cyan-soft: rgba(74, 213, 247, 0.20);
    --elmina-interaction-ring-gold: rgba(255, 232, 77, 0.28);
}

.elmina-carousel-arrow,
#memory-wall-prev,
#memory-wall-next,
.elmina-youtube-arrow,
#elmina-youtube-prev,
#elmina-youtube-next,
.elmina-photo-arrow,
#elmina-photo-prev,
#elmina-photo-next,
.master-webcam-ticker-popout-arrow,
#elmina-photo-viewer-prev,
#elmina-photo-viewer-next {
    border-radius: 999px !important;
    aspect-ratio: 1 / 1 !important;
    transform: none !important;
    outline: none !important;
    box-sizing: border-box !important;
    clip-path: circle(50% at 50% 50%) !important;
}

.elmina-carousel-action,
#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
#elmina-photo-share-button.elmina-photo-pill,
.elmina-photo-share.elmina-photo-pill,
.elmina-photo-share-mobile.elmina-photo-pill,
#btn-islands-cam,
#elmina-radio-tab-button,
#btn-city-cam{
    border-radius: 999px !important;
    transform: none !important;
    outline: none !important;
    box-sizing: border-box !important;
}

@media (hover: hover) and (pointer: fine) {
    .elmina-carousel-controls,
    #memory-wall-bottom.elmina-carousel-controls,
    .elmina-youtube-controls.elmina-carousel-controls,
    .elmina-photo-controls.elmina-carousel-controls,
    .master-webcam-ticker-popout-controls,
    .elmina-photo-viewer-controls {
        overflow: visible !important;
    }

    .elmina-carousel-arrow:hover,
    .elmina-carousel-arrow:focus-visible,
    #memory-wall-prev:hover,
    #memory-wall-prev:focus-visible,
    #memory-wall-next:hover,
    #memory-wall-next:focus-visible,
    .elmina-youtube-arrow:hover,
    .elmina-youtube-arrow:focus-visible,
    #elmina-youtube-prev:hover,
    #elmina-youtube-prev:focus-visible,
    #elmina-youtube-next:hover,
    #elmina-youtube-next:focus-visible,
    .elmina-photo-arrow:hover,
    .elmina-photo-arrow:focus-visible,
    #elmina-photo-prev:hover,
    #elmina-photo-prev:focus-visible,
    #elmina-photo-next:hover,
    #elmina-photo-next:focus-visible,
    .master-webcam-ticker-popout-arrow:hover,
    .master-webcam-ticker-popout-arrow:focus-visible,
    #elmina-photo-viewer-prev:hover,
    #elmina-photo-viewer-prev:focus-visible,
    #elmina-photo-viewer-next:hover,
    #elmina-photo-viewer-next:focus-visible {
        border-radius: 999px !important;
        outline: none !important;
        transform: none !important;
        filter: none !important;
        clip-path: circle(50% at 50% 50%) !important;
        background: linear-gradient(145deg, #fff69a, #ffe84d 54%, #d5b000) !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,0.70),
            inset 0 -0.18rem 0.42rem rgba(0, 74, 173, 0.10),
            0 0.38rem 0.78rem rgba(0,0,0,0.16),
            0 0 0 3px var(--elmina-interaction-ring-cyan),
            0 0 0 6px var(--elmina-interaction-ring-gold),
            0 0 1rem var(--elmina-interaction-ring-cyan-soft) !important;
    }

    .elmina-carousel-arrow:active,
    #memory-wall-prev:active,
    #memory-wall-next:active,
    .elmina-youtube-arrow:active,
    #elmina-youtube-prev:active,
    #elmina-youtube-next:active,
    .elmina-photo-arrow:active,
    #elmina-photo-prev:active,
    #elmina-photo-next:active,
    .master-webcam-ticker-popout-arrow:active,
    #elmina-photo-viewer-prev:active,
    #elmina-photo-viewer-next:active {
        border-radius: 999px !important;
        outline: none !important;
        transform: none !important;
        filter: brightness(0.99) !important;
        clip-path: circle(50% at 50% 50%) !important;
        box-shadow:
            inset 0 0.18rem 0.45rem rgba(0, 74, 173, 0.18),
            inset 0 1px 0 rgba(255,255,255,0.58),
            0 0.28rem 0.60rem rgba(0,0,0,0.14),
            0 0 0 2px rgba(145, 229, 255, 0.55),
            0 0 0 5px rgba(255, 232, 77, 0.18) !important;
    }

    .elmina-carousel-action:hover,
.elmina-carousel-action:focus-visible,
#memory-wall-share-button:hover,
#memory-wall-share-button:focus-visible,
#elmina-youtube-share-button.elmina-youtube-share:hover,
#elmina-youtube-share-button.elmina-youtube-share:focus-visible,
#elmina-photo-share-button.elmina-photo-pill:hover,
#elmina-photo-share-button.elmina-photo-pill:focus-visible,
.elmina-photo-share.elmina-photo-pill:hover,
.elmina-photo-share.elmina-photo-pill:focus-visible,
.elmina-photo-share-mobile.elmina-photo-pill:hover,
.elmina-photo-share-mobile.elmina-photo-pill:focus-visible,
#btn-islands-cam:hover,
#btn-islands-cam:focus-visible,
#elmina-radio-tab-button:hover,
#elmina-radio-tab-button:focus-visible,
#btn-city-cam:hover,
#btn-city-cam:focus-visible{
        border-radius: 999px !important;
        outline: none !important;
        transform: none !important;
        filter: brightness(1.035) saturate(1.03) !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,0.60),
            inset 0 0 0 1px rgba(255,255,255,0.16),
            0 0.42rem 0.86rem rgba(0,0,0,0.13),
            0 0 0 2px rgba(145, 229, 255, 0.46),
            0 0 0 5px rgba(255, 232, 77, 0.15),
            0 0 0.86rem rgba(74, 213, 247, 0.12) !important;
    }

    .elmina-carousel-action:active,
#memory-wall-share-button:active,
#elmina-youtube-share-button.elmina-youtube-share:active,
#elmina-photo-share-button.elmina-photo-pill:active,
.elmina-photo-share.elmina-photo-pill:active,
.elmina-photo-share-mobile.elmina-photo-pill:active,
#btn-islands-cam:active,
#elmina-radio-tab-button:active,
#btn-city-cam:active{
        border-radius: 999px !important;
        outline: none !important;
        transform: none !important;
        filter: brightness(0.99) !important;
        box-shadow:
            inset 0 0.20rem 0.52rem rgba(0, 74, 173, 0.16),
            inset 0 1px 0 rgba(255,255,255,0.42),
            0 0.24rem 0.54rem rgba(0,0,0,0.12),
            0 0 0 2px rgba(145, 229, 255, 0.30) !important;
    }
}

@media (hover: none), (pointer: coarse) {
    .elmina-carousel-arrow,
    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow,
    #elmina-youtube-prev,
    #elmina-youtube-next,
    .elmina-photo-arrow,
    #elmina-photo-prev,
    #elmina-photo-next,
    .master-webcam-ticker-popout-arrow,
    #elmina-photo-viewer-prev,
    #elmina-photo-viewer-next {
        border-radius: 999px !important;
        outline: none !important;
        transform: none !important;
        clip-path: circle(50% at 50% 50%) !important;
    }

    .elmina-carousel-action,
#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share,
#elmina-photo-share-button.elmina-photo-pill,
.elmina-photo-share.elmina-photo-pill,
.elmina-photo-share-mobile.elmina-photo-pill,
#btn-islands-cam,
#elmina-radio-tab-button,
#btn-city-cam{
        border-radius: 999px !important;
        outline: none !important;
        transform: none !important;
    }
}


.elmina-carousel-arrow,
#memory-wall-prev,
#memory-wall-next,
.elmina-youtube-arrow,
#elmina-youtube-prev,
#elmina-youtube-next,
.elmina-photo-arrow,
#elmina-photo-prev,
#elmina-photo-next,
.master-webcam-ticker-popout-arrow,
#elmina-photo-viewer-prev,
#elmina-photo-viewer-next {
    border-radius: 999px !important;
    clip-path: none !important;
    overflow: visible !important;
    transform: none !important;
    outline: none !important;
    box-sizing: border-box !important;
}

@media (hover: hover) and (pointer: fine) {
    .elmina-carousel-controls,
    #memory-wall-bottom.elmina-carousel-controls,
    .elmina-youtube-controls.elmina-carousel-controls,
    .elmina-photo-controls.elmina-carousel-controls,
    .master-webcam-ticker-popout-controls,
    .elmina-photo-viewer-controls {
        overflow: visible !important;
    }

    .elmina-carousel-arrow:hover,
    .elmina-carousel-arrow:focus-visible,
    #memory-wall-prev:hover,
    #memory-wall-prev:focus-visible,
    #memory-wall-next:hover,
    #memory-wall-next:focus-visible,
    .elmina-youtube-arrow:hover,
    .elmina-youtube-arrow:focus-visible,
    #elmina-youtube-prev:hover,
    #elmina-youtube-prev:focus-visible,
    #elmina-youtube-next:hover,
    #elmina-youtube-next:focus-visible,
    .elmina-photo-arrow:hover,
    .elmina-photo-arrow:focus-visible,
    #elmina-photo-prev:hover,
    #elmina-photo-prev:focus-visible,
    #elmina-photo-next:hover,
    #elmina-photo-next:focus-visible,
    .master-webcam-ticker-popout-arrow:hover,
    .master-webcam-ticker-popout-arrow:focus-visible,
    #elmina-photo-viewer-prev:hover,
    #elmina-photo-viewer-prev:focus-visible,
    #elmina-photo-viewer-next:hover,
    #elmina-photo-viewer-next:focus-visible {
        border-radius: 999px !important;
        clip-path: none !important;
        overflow: visible !important;
        transform: none !important;
        outline: none !important;
        filter: none !important;
        background: linear-gradient(145deg, #fff69a, #ffe84d 54%, #d5b000) !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,0.70),
            inset 0 -0.18rem 0.42rem rgba(0, 74, 173, 0.10),
            0 0.38rem 0.78rem rgba(0,0,0,0.16),
            0 0 0 3px rgba(145, 229, 255, 0.74),
            0 0 0 6px rgba(255, 232, 77, 0.28),
            0 0 1rem rgba(74, 213, 247, 0.20) !important;
    }

    .elmina-carousel-arrow:active,
    #memory-wall-prev:active,
    #memory-wall-next:active,
    .elmina-youtube-arrow:active,
    #elmina-youtube-prev:active,
    #elmina-youtube-next:active,
    .elmina-photo-arrow:active,
    #elmina-photo-prev:active,
    #elmina-photo-next:active,
    .master-webcam-ticker-popout-arrow:active,
    #elmina-photo-viewer-prev:active,
    #elmina-photo-viewer-next:active {
        border-radius: 999px !important;
        clip-path: none !important;
        overflow: visible !important;
        transform: none !important;
        outline: none !important;
        filter: brightness(0.99) !important;
        box-shadow:
            inset 0 0.18rem 0.45rem rgba(0, 74, 173, 0.18),
            inset 0 1px 0 rgba(255,255,255,0.58),
            0 0.28rem 0.60rem rgba(0,0,0,0.14),
            0 0 0 2px rgba(145, 229, 255, 0.55),
            0 0 0 5px rgba(255, 232, 77, 0.18) !important;
    }
}

@media (hover: none), (pointer: coarse) {
    .elmina-carousel-arrow,
    #memory-wall-prev,
    #memory-wall-next,
    .elmina-youtube-arrow,
    #elmina-youtube-prev,
    #elmina-youtube-next,
    .elmina-photo-arrow,
    #elmina-photo-prev,
    #elmina-photo-next,
    .master-webcam-ticker-popout-arrow,
    #elmina-photo-viewer-prev,
    #elmina-photo-viewer-next {
        border-radius: 999px !important;
        clip-path: none !important;
        overflow: visible !important;
        transform: none !important;
        outline: none !important;
    }
}


:root {
    --elmina-canon-arrow-halo-cyan: rgba(145, 229, 255, 0.74);
    --elmina-canon-arrow-halo-gold: rgba(255, 232, 77, 0.28);
    --elmina-canon-arrow-halo-glow: rgba(74, 213, 247, 0.20);
    --elmina-canon-arrow-elevation: rgba(0, 0, 0, 0.16);
}

/* Photos uses a wider custom rail on PC; keep the rail and its grid cells from
   clipping a circular halo into a square. This keeps the reusable arrow design
   intact without moving controls or changing the carousel budget. */
#elmina-photo-card .elmina-photo-controls.elmina-carousel-controls,
#elmina-photo-card .elmina-photo-controls.elmina-carousel-controls > * {
    overflow: visible !important;
}

#elmina-photo-card #elmina-photo-prev,
#elmina-photo-card #elmina-photo-next,
#elmina-photo-card .elmina-photo-arrow {
    position: relative !important;
    isolation: isolate !important;
    border-radius: 999px !important;
    overflow: visible !important;
    clip-path: none !important;
    transform: none !important;
    outline: none !important;
    background-clip: padding-box !important;
}

/* Dedicated circular halo layer for dense rails. The button remains the exact
   same size; only a round shadow layer appears around it on hover/focus. */
#elmina-photo-card #elmina-photo-prev::after,
#elmina-photo-card #elmina-photo-next::after,
#elmina-photo-card .elmina-photo-arrow::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: 999px !important;
    pointer-events: none !important;
    opacity: 0 !important;
    transform: none !important;
    background: transparent !important;
    box-shadow:
        0 0 0 3px var(--elmina-canon-arrow-halo-cyan),
        0 0 0 6px var(--elmina-canon-arrow-halo-gold),
        0 0 1rem var(--elmina-canon-arrow-halo-glow) !important;
    transition: opacity 140ms ease !important;
}

#elmina-photo-card #elmina-photo-prev::before,
#elmina-photo-card #elmina-photo-next::before,
#elmina-photo-card .elmina-photo-arrow::before {
    position: relative !important;
    z-index: 1 !important;
}

@media (hover: hover) and (pointer: fine) {
    #elmina-photo-card #elmina-photo-prev:hover,
    #elmina-photo-card #elmina-photo-prev:focus-visible,
    #elmina-photo-card #elmina-photo-next:hover,
    #elmina-photo-card #elmina-photo-next:focus-visible,
    #elmina-photo-card .elmina-photo-arrow:hover,
    #elmina-photo-card .elmina-photo-arrow:focus-visible {
        border-radius: 999px !important;
        overflow: visible !important;
        clip-path: none !important;
        outline: none !important;
        transform: none !important;
        filter: none !important;
        background: linear-gradient(145deg, #fff69a, #ffe84d 54%, #d5b000) !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,0.70),
            inset 0 -0.18rem 0.42rem rgba(0, 74, 173, 0.10),
            0 0.38rem 0.78rem var(--elmina-canon-arrow-elevation) !important;
    }

    #elmina-photo-card #elmina-photo-prev:hover::after,
    #elmina-photo-card #elmina-photo-prev:focus-visible::after,
    #elmina-photo-card #elmina-photo-next:hover::after,
    #elmina-photo-card #elmina-photo-next:focus-visible::after,
    #elmina-photo-card .elmina-photo-arrow:hover::after,
    #elmina-photo-card .elmina-photo-arrow:focus-visible::after {
        opacity: 1 !important;
    }

    #elmina-photo-card #elmina-photo-prev:active,
    #elmina-photo-card #elmina-photo-next:active,
    #elmina-photo-card .elmina-photo-arrow:active {
        transform: none !important;
        border-radius: 999px !important;
        box-shadow:
            inset 0 0.18rem 0.45rem rgba(0, 74, 173, 0.18),
            inset 0 1px 0 rgba(255,255,255,0.58),
            0 0.28rem 0.60rem rgba(0,0,0,0.14) !important;
    }
}

@media (hover: none), (pointer: coarse) {
    #elmina-photo-card #elmina-photo-prev::after,
    #elmina-photo-card #elmina-photo-next::after,
    #elmina-photo-card .elmina-photo-arrow::after {
        opacity: 0 !important;
        box-shadow: none !important;
    }
}


#master-webcam-button .master-webcam-ticker-badge.master-webcam-ticker-share {
    border: 1px solid rgba(255, 232, 77, 0.95) !important;
    background: linear-gradient(145deg, #fff56f 0%, #ffe84d 54%, #d8b500 100%) !important;
    color: #004aad !important;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    font-family: inherit;
    box-shadow:
        inset 0 1px 1px rgba(255, 255, 255, 0.72),
        0 0 0 1px rgba(64, 198, 255, 0.35),
        0 6px 14px rgba(0, 0, 0, 0.14) !important;
}

#master-webcam-button .master-webcam-ticker-badge.master-webcam-ticker-share .master-webcam-ticker-badge-label {
    color: #004aad !important;
    text-shadow: none !important;
    letter-spacing: 0.075em;
}

#master-webcam-button .master-webcam-ticker-badge.master-webcam-ticker-share .master-webcam-ticker-badge-signal {
    background: radial-gradient(circle, #004aad 0 22%, #40c6ff 23% 48%, #ffe84d 50% 70%, transparent 72%) !important;
    border-color: rgba(0, 74, 173, 0.52) !important;
}

@media (hover: hover) and (pointer: fine) {
    #master-webcam-button .master-webcam-ticker-badge.master-webcam-ticker-share:hover,
    #master-webcam-button .master-webcam-ticker-badge.master-webcam-ticker-share:focus-visible {
        outline: none !important;
        box-shadow:
            inset 0 1px 1px rgba(255, 255, 255, 0.8),
            0 0 0 2px rgba(64, 198, 255, 0.52),
            0 0 0 5px rgba(255, 232, 77, 0.28),
            0 10px 20px rgba(0, 0, 0, 0.18) !important;
        filter: brightness(1.045);
    }
}

@media (hover: none) {
    #master-webcam-button .master-webcam-ticker-badge.master-webcam-ticker-share:active {
        box-shadow:
            inset 0 0 12px rgba(0, 74, 173, 0.20),
            inset 0 1px 1px rgba(255,255,255,0.78),
            0 0 0 1px rgba(64,198,255,0.28) !important;
        filter: brightness(1.04);
    }
}


.master-webcam-ticker-share-popout {
    position: fixed;
    inset: 0;
    z-index: 10050;
    display: grid;
    place-items: center;
    padding: max(18px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));
}
.master-webcam-ticker-share-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 24, 62, 0.58);
    backdrop-filter: blur(5px);
}
.master-webcam-ticker-share-card {
    position: relative;
    width: min(38rem, 92vw);
    max-height: min(72vh, 38rem);
    overflow: auto;
    border-radius: 24px;
    padding: 1.2rem;
    background:
        linear-gradient(145deg, rgba(0, 74, 173, 0.96), rgba(0, 63, 158, 0.98)),
        radial-gradient(circle at 14% 0%, rgba(255, 232, 77, 0.20), transparent 34%);
    border: 1px solid rgba(255, 232, 77, 0.45);
    box-shadow: 0 24px 60px rgba(0,0,0,0.38), 0 0 0 1px rgba(64,198,255,0.23);
    color: #ffffff;
}
.master-webcam-ticker-share-close {
    position: absolute;
    top: 0.78rem;
    right: 0.78rem;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 999px;
    border: 0;
    background: linear-gradient(145deg, #fff56f, #ffe84d 56%, #d8b500);
    color: #004aad;
    font-size: 1.65rem;
    line-height: 1;
    font-weight: 900;
    cursor: pointer;
}
.master-webcam-ticker-share-eyebrow {
    margin: 0 3rem 0.3rem 0;
    color: #ffe84d;
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-weight: 900;
}
.master-webcam-ticker-share-title {
    margin: 0 3rem 0.45rem 0;
    color: #ffe84d;
    font-size: clamp(1.35rem, 4vw, 2rem);
    line-height: 1.05;
    font-weight: 1000;
}
.master-webcam-ticker-share-intro {
    margin: 0 0 0.95rem 0;
    color: #eef7ff;
    line-height: 1.42;
    font-weight: 750;
    font-size: 0.94rem;
}
.master-webcam-ticker-share-form {
    display: grid;
    gap: 0.72rem;
}
.master-webcam-ticker-share-form label {
    display: grid;
    gap: 0.35rem;
    color: #ffffff;
    font-weight: 900;
    font-size: 0.86rem;
}
.master-webcam-ticker-share-form input,
.master-webcam-ticker-share-form select,
.master-webcam-ticker-share-form textarea {
    width: 100%;
    border: 1px solid rgba(64, 198, 255, 0.45);
    border-radius: 14px;
    padding: 0.72rem 0.82rem;
    font: inherit;
    font-weight: 750;
    color: #003f9e;
    background: rgba(255,255,255,0.96);
    outline: none;
}
.master-webcam-ticker-share-form textarea {
    min-height: 8rem;
    resize: vertical;
    line-height: 1.45;
}
.master-webcam-ticker-share-form input:focus,
.master-webcam-ticker-share-form select:focus,
.master-webcam-ticker-share-form textarea:focus {
    border-color: #ffe84d;
    box-shadow: 0 0 0 3px rgba(255, 232, 77, 0.30);
}
.master-webcam-ticker-share-submit {
    width: 100%;
    border: 0;
    border-radius: 999px;
    padding: 0.86rem 1rem;
    background: linear-gradient(145deg, #fff56f, #ffe84d 56%, #d8b500);
    color: #004aad;
    font-weight: 1000;
    cursor: pointer;
    box-shadow: inset 0 1px 1px rgba(255,255,255,0.75), 0 10px 18px rgba(0,0,0,0.20);
}
.master-webcam-ticker-share-submit:disabled { opacity: 0.68; cursor: progress; }
.master-webcam-ticker-share-status {
    min-height: 1.2rem;
    margin: 0;
    color: #ffe84d;
    font-weight: 900;
    line-height: 1.35;
}
.master-webcam-ticker-share-status.is-error { color: #ffd0d0; }

@media (max-width: 640px) {
    .master-webcam-ticker-share-card {
        width: min(92vw, 30rem);
        max-height: 68svh;
        border-radius: 22px;
        padding: 1rem;
    }
    .master-webcam-ticker-share-form textarea { min-height: 6.5rem; }
}


html.master-ticker-share-open,
html.master-ticker-share-open body {
    overflow: hidden !important;
}

.master-webcam-ticker-share-popout {
    padding: max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left)) !important;
    align-items: center !important;
    justify-items: center !important;
}

.master-webcam-ticker-share-backdrop {
    background: rgba(0, 32, 80, 0.54) !important;
    backdrop-filter: blur(6px) saturate(1.05) !important;
}

.master-webcam-ticker-share-card {
    width: min(34rem, 92vw) !important;
    max-height: min(78svh, 42rem) !important;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border-radius: 1.28rem !important;
    padding: clamp(1.15rem, 2.6vw, 1.55rem) !important;
    background:
        linear-gradient(165deg, rgba(0, 74, 173, 0.96) 0%, rgba(0, 83, 181, 0.94) 50%, rgba(0, 67, 160, 0.98) 100%) !important;
    border: 1px solid rgba(255, 232, 77, 0.28) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.10),
        0 0 0 1px rgba(64, 198, 255, 0.22),
        0 22px 52px rgba(0, 18, 64, 0.44) !important;
    color: #ffffff !important;
    scrollbar-color: #ffe84d rgba(255, 255, 255, 0.08);
    scrollbar-width: thin;
}

.master-webcam-ticker-share-card::-webkit-scrollbar {
    width: 0.44rem;
}

.master-webcam-ticker-share-card::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 999px;
}

.master-webcam-ticker-share-card::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #fff56f, #ffe84d);
    border-radius: 999px;
}

.master-webcam-ticker-share-close {
    top: 1rem !important;
    right: 1rem !important;
    width: 3.05rem !important;
    height: 3.05rem !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    font-size: 2rem !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    box-shadow:
        inset 0 1px 1px rgba(255, 255, 255, 0.78),
        0 9px 18px rgba(0, 0, 0, 0.18) !important;
}

.master-webcam-ticker-share-eyebrow {
    margin: 0 4rem 0.34rem 0 !important;
    color: #ffe84d !important;
    font-size: clamp(0.78rem, 1.4vw, 0.92rem) !important;
    letter-spacing: 0.16em !important;
    line-height: 1.15 !important;
}

.master-webcam-ticker-share-title {
    margin: 0 4rem 0.42rem 0 !important;
    color: #ffe84d !important;
    font-size: clamp(1.55rem, 4.5vw, 2.15rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em !important;
}

.master-webcam-ticker-share-intro {
    margin: 0 0 1.02rem 0 !important;
    max-width: 28rem;
    color: #ffffff !important;
    font-size: clamp(0.98rem, 2.45vw, 1.08rem) !important;
    line-height: 1.36 !important;
    font-weight: 760 !important;
}


.master-webcam-ticker-share-form label {
    gap: 0.34rem !important;
    color: #ffffff !important;
    font-size: 0.96rem !important;
    line-height: 1.16 !important;
    font-weight: 920 !important;
}

.master-webcam-ticker-share-form input,
.master-webcam-ticker-share-form select,
.master-webcam-ticker-share-form textarea {
    min-height: 3rem !important;
    border-radius: 0.92rem !important;
    border: 1px solid rgba(176, 217, 255, 0.34) !important;
    background: rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffe84d !important;
    padding: 0.82rem 0.95rem !important;
    font-weight: 820 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

.master-webcam-ticker-share-form select {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.master-webcam-ticker-share-form select option {
    color: #004aad;
    background: #ffffff;
}

.master-webcam-ticker-share-form textarea {
    min-height: 8.6rem !important;
    resize: vertical !important;
}

.master-webcam-ticker-share-form input::placeholder,
.master-webcam-ticker-share-form textarea::placeholder {
    color: rgba(255, 255, 255, 0.70) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.70) !important;
}

.master-webcam-ticker-share-form input:focus,
.master-webcam-ticker-share-form select:focus,
.master-webcam-ticker-share-form textarea:focus {
    border-color: rgba(255, 232, 77, 0.86) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.10),
        0 0 0 3px rgba(255, 232, 77, 0.18) !important;
}

.master-webcam-ticker-share-actions {
    display: grid;
    grid-template-columns: minmax(7.5rem, 0.8fr) minmax(10rem, 1.2fr);
    gap: 0.72rem;
    align-items: center;
    margin-top: 0.26rem;
}

.master-webcam-ticker-share-cancel,
.master-webcam-ticker-share-submit {
    min-height: 3.15rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(176, 217, 255, 0.30) !important;
    padding: 0.82rem 1rem !important;
    font-family: inherit !important;
    font-size: 0.98rem !important;
    font-weight: 1000 !important;
    cursor: pointer;
    transform: none !important;
}

.master-webcam-ticker-share-cancel {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.14) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

.master-webcam-ticker-share-submit {
    color: #004aad !important;
    background: linear-gradient(145deg, #fff56f, #ffe84d 56%, #d8b500) !important;
    border-color: rgba(255, 232, 77, 0.84) !important;
    box-shadow:
        inset 0 1px 1px rgba(255, 255, 255, 0.78),
        0 10px 18px rgba(0, 0, 0, 0.18) !important;
}

.master-webcam-ticker-share-cancel:focus-visible,
.master-webcam-ticker-share-submit:focus-visible {
    outline: none !important;
    box-shadow:
        inset 0 1px 1px rgba(255, 255, 255, 0.24),
        0 0 0 3px rgba(255, 232, 77, 0.22) !important;
}

.master-webcam-ticker-share-status {
    min-height: 1.15rem !important;
    color: #ffe84d !important;
    font-weight: 900 !important;
    font-size: 0.88rem !important;
}

.master-webcam-ticker-share-status.is-error {
    color: #ffd6d6 !important;
}

@media (hover: hover) and (pointer: fine) {
    .master-webcam-ticker-share-cancel:hover,
    .master-webcam-ticker-share-submit:hover,
    .master-webcam-ticker-share-close:hover {
        filter: brightness(1.04);
        transform: none !important;
    }
}

@media (max-width: 640px) {
    .master-webcam-ticker-share-popout {
        padding: max(0.75rem, env(safe-area-inset-top)) max(0.72rem, env(safe-area-inset-right)) max(0.75rem, env(safe-area-inset-bottom)) max(0.72rem, env(safe-area-inset-left)) !important;
    }

    .master-webcam-ticker-share-card {
        width: min(92vw, 31rem) !important;
        max-height: min(78svh, 43rem) !important;
        border-radius: 1.1rem !important;
        padding: 1.05rem !important;
    }

    .master-webcam-ticker-share-close {
        width: 2.9rem !important;
        height: 2.9rem !important;
        top: 0.82rem !important;
        right: 0.82rem !important;
    }

    .master-webcam-ticker-share-eyebrow,
    .master-webcam-ticker-share-title {
        margin-right: 3.55rem !important;
    }

    .master-webcam-ticker-share-intro {
        font-size: 1rem !important;
    }

    .master-webcam-ticker-share-form {
        gap: 0.68rem !important;
    }

    .master-webcam-ticker-share-form textarea {
        min-height: 7.5rem !important;
    }

    .master-webcam-ticker-share-actions {
        grid-template-columns: 1fr !important;
        gap: 0.58rem !important;
    }

    .master-webcam-ticker-share-submit {
        order: 1;
    }

    .master-webcam-ticker-share-cancel {
        order: 2;
    }
}


.master-webcam-ticker-share-popout.hidden {
    display: none !important;
}

.master-webcam-ticker-share-popout {
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0.82rem 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    overflow: visible !important;
    min-height: 0 !important;
    max-height: none !important;
}

.master-webcam-ticker-share-backdrop,
.master-webcam-ticker-share-close {
    display: none !important;
}

.master-webcam-ticker-share-card {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    max-height: none !important;
    overflow: visible !important;
    border-radius: 1.28rem !important;
    padding: clamp(1rem, 2.35vw, 1.45rem) !important;
    color: #ffffff !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.035)),
        linear-gradient(145deg, rgba(0, 75, 173, 0.96), rgba(0, 67, 158, 0.96)) !important;
    border: 1px solid rgba(176, 217, 255, 0.34) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 16px 34px rgba(0, 44, 110, 0.18) !important;
    overscroll-behavior: auto !important;
    -webkit-overflow-scrolling: auto !important;
}

.master-webcam-ticker-share-eyebrow {
    margin: 0 0 0.32rem 0 !important;
    color: #ffe84d !important;
    font-size: 0.84rem !important;
    line-height: 1.05 !important;
    font-weight: 1000 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
}

.master-webcam-ticker-share-title {
    margin: 0 0 0.38rem 0 !important;
    color: #ffe84d !important;
    font-size: clamp(1.58rem, 3.8vw, 2.15rem) !important;
    line-height: 0.98 !important;
    font-weight: 1000 !important;
    letter-spacing: -0.035em !important;
}

.master-webcam-ticker-share-intro {
    margin: 0 0 1.08rem 0 !important;
    max-width: 36rem !important;
    color: #ffffff !important;
    font-size: clamp(1rem, 2.25vw, 1.12rem) !important;
    line-height: 1.32 !important;
    font-weight: 760 !important;
}

.master-webcam-ticker-share-form {
    display: grid !important;
    gap: 0.72rem !important;
}

.master-webcam-ticker-share-form label {
    display: grid !important;
    gap: 0.36rem !important;
    color: #ffffff !important;
    font-size: 0.96rem !important;
    line-height: 1.15 !important;
    font-weight: 940 !important;
}

.master-webcam-ticker-share-form input,
.master-webcam-ticker-share-form select,
.master-webcam-ticker-share-form textarea {
    width: 100% !important;
    min-height: 3.25rem !important;
    border-radius: 1rem !important;
    border: 1px solid rgba(176, 217, 255, 0.34) !important;
    background: rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffe84d !important;
    padding: 0.86rem 1rem !important;
    font-family: inherit !important;
    font-weight: 820 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

.master-webcam-ticker-share-form select option {
    color: #004aad !important;
    background: #ffffff !important;
}

.master-webcam-ticker-share-form textarea {
    min-height: 9rem !important;
    resize: vertical !important;
}

.master-webcam-ticker-share-actions {
    display: grid !important;
    grid-template-columns: minmax(7.5rem, 0.8fr) minmax(10rem, 1.2fr) !important;
    gap: 0.72rem !important;
    align-items: center !important;
    margin-top: 0.28rem !important;
}

.master-webcam-ticker-share-status {
    min-height: 1.15rem !important;
}

html.master-ticker-share-open,
html.master-ticker-share-open body {
    overflow: auto !important;
    position: static !important;
    width: auto !important;
}

@media (max-width: 640px) {
    .master-webcam-ticker-share-popout {
        margin-top: 0.72rem !important;
    }

    .master-webcam-ticker-share-card {
        width: 100% !important;
        border-radius: 1.16rem !important;
        padding: 1.05rem !important;
    }

    .master-webcam-ticker-share-eyebrow,
    .master-webcam-ticker-share-title {
        margin-right: 0 !important;
    }

    .master-webcam-ticker-share-intro {
        font-size: 1rem !important;
    }

    .master-webcam-ticker-share-form textarea {
        min-height: 8rem !important;
    }

    .master-webcam-ticker-share-actions {
        grid-template-columns: 1fr !important;
        gap: 0.58rem !important;
    }

    .master-webcam-ticker-share-submit {
        order: 1 !important;
    }

    .master-webcam-ticker-share-cancel {
        order: 2 !important;
    }
}


#master-webcam-ticker-share-popout.master-webcam-ticker-share-popout {
    margin-top: 1rem !important;
    padding: 0 !important;
    width: 100% !important;
    scroll-margin-top: 5.5rem !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-card {
    width: 100% !important;
    max-width: none !important;
    max-height: none !important;
    overflow: visible !important;
    border-radius: 1rem !important;
    padding: 1rem !important;
    background: rgba(255, 255, 255, 0.11) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-eyebrow {
    display: none !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-title {
    margin: 0 !important;
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 1rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-intro {
    margin: 0.35rem 0 0.7rem !important;
    max-width: none !important;
    color: rgba(255, 255, 255, 0.9) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.9) !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.55rem !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form label {
    display: contents !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form input,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
    width: 100% !important;
    min-height: auto !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    border-radius: 0.75rem !important;
    background: rgba(255, 255, 255, 0.13) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffe84d !important;
    font: inherit !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.86rem !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    padding: 0.68rem 0.78rem !important;
    margin: 0 !important;
    outline: none !important;
    box-shadow: none !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select {
    cursor: pointer !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
    min-height: 5.5rem !important;
    resize: vertical !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form input::placeholder,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea::placeholder {
    color: rgba(255, 255, 255, 0.72) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
    font-weight: 600 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form input:focus,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select:focus,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea:focus {
    border-color: #ffe84d !important;
    box-shadow: 0 0 0 3px rgba(255, 232, 77, 0.18) !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 0.6rem !important;
    margin-top: 0.2rem !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-cancel,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-submit {
    flex: 0 1 auto !important;
    min-width: 5.2rem !important;
    width: auto !important;
    border-radius: 999px !important;
    padding: 0.6rem 0.95rem !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.82rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    transform: none !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-status {
    min-height: 1.1rem !important;
    margin: 0.18rem 0 0 !important;
    font-size: 0.78rem !important;
    font-weight: 750 !important;
    line-height: 1.3 !important;
}

@media (max-width: 640px) {
    #master-webcam-ticker-share-popout .master-webcam-ticker-share-card {
        padding: 1rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
        min-height: 5.5rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.58rem !important;
        justify-content: stretch !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-submit {
        order: 1 !important;
        width: 100% !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-cancel {
        order: 2 !important;
        width: 100% !important;
    }
}


#master-webcam-ticker-share-popout.master-webcam-ticker-share-popout {
    background: transparent !important;
    margin-top: 0.85rem !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-card {
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    border-radius: 1rem !important;
    padding: clamp(1rem, 2.25vw, 1.35rem) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.035)),
        linear-gradient(145deg, rgba(0, 75, 173, 0.98), rgba(0, 70, 165, 0.98)) !important;
    border: 1px solid rgba(176, 217, 255, 0.34) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 16px 34px rgba(0, 44, 110, 0.18) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: initial !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-title {
    margin: 0 0 0.4rem 0 !important;
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-size: clamp(1.35rem, 3.2vw, 1.72rem) !important;
    line-height: 1.08 !important;
    font-weight: 950 !important;
    letter-spacing: -0.02em !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-intro {
    margin: 0 0 1rem 0 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: clamp(0.98rem, 2.1vw, 1.05rem) !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.62rem !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form input,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
    width: 100% !important;
    min-height: 3rem !important;
    border-radius: 0.78rem !important;
    border: 1px solid rgba(176, 217, 255, 0.36) !important;
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffe84d !important;
    padding: 0.74rem 0.88rem !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.98rem !important;
    font-weight: 680 !important;
    line-height: 1.25 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
    min-height: 7.4rem !important;
    line-height: 1.35 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form input::placeholder,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea::placeholder {
    color: rgba(255, 255, 255, 0.70) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.70) !important;
    font-weight: 680 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.62rem !important;
    margin-top: 0.28rem !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-cancel,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-submit {
    min-height: 2.85rem !important;
    border-radius: 999px !important;
    padding: 0.72rem 1.15rem !important;
    font-size: 0.98rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-cancel {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: rgba(255, 255, 255, 0.14) !important;
    border-color: rgba(176, 217, 255, 0.34) !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-submit {
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    background: linear-gradient(145deg, #fff56f, #ffe84d 56%, #d8b500) !important;
    border-color: rgba(255, 232, 77, 0.82) !important;
}

@media (max-width: 640px) {
    #master-webcam-ticker-share-popout .master-webcam-ticker-share-card {
        padding: 1rem !important;
        border-radius: 1rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-title {
        font-size: 1.35rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-intro {
        font-size: 0.98rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-form input,
    #master-webcam-ticker-share-popout .master-webcam-ticker-share-form select,
    #master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
        font-size: 1rem !important;
        min-height: 3.05rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.58rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-submit,
    #master-webcam-ticker-share-popout .master-webcam-ticker-share-cancel {
        width: 100% !important;
    }
}


#master-webcam-ticker-share-popout .master-webcam-ticker-share-title {
    font-size: 1rem !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
    letter-spacing: -0.01em !important;
    margin: 0 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-intro {
    font-size: 0.82rem !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    opacity: 0.92 !important;
    margin: 0.35rem 0 0.7rem !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form {
    gap: 0 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form input,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
    min-height: 0 !important;
    margin-top: 0.55rem !important;
    border-radius: 0.75rem !important;
    padding: 0.68rem 0.78rem !important;
    font-size: 0.86rem !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
    min-height: 5rem !important;
    line-height: 1.35 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form input::placeholder,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea::placeholder {
    font-size: 0.86rem !important;
    font-weight: 500 !important;
    color: rgba(255, 255, 255, 0.72) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-actions {
    gap: 0.6rem !important;
    margin-top: 0.75rem !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-cancel,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-submit {
    min-height: 0 !important;
    padding: 0.6rem 0.95rem !important;
    font-size: 0.82rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

@media (max-width: 640px) {
    #master-webcam-ticker-share-popout .master-webcam-ticker-share-title {
        font-size: 1rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-intro {
        font-size: 0.82rem !important;
    }

    #master-webcam-ticker-share-popout .master-webcam-ticker-share-form input,
    #master-webcam-ticker-share-popout .master-webcam-ticker-share-form select,
    #master-webcam-ticker-share-popout .master-webcam-ticker-share-form textarea {
        font-size: 0.86rem !important;
    }
}


@media (max-width: 640px) {
  .elmina-photo-form-actions .elmina-photo-submit {
    order: 1;
  }

  .elmina-photo-form-actions .elmina-photo-cancel {
    order: 2;
  }
}


#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select {
    color-scheme: light;
    background-color: rgba(255, 255, 255, 0.13) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select option {
    background: #fff4a8 !important;
    color: #064ca8 !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
}

#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select option:checked,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select option:hover {
    background: #b9ddff !important;
    color: #003f9f !important;
}

.elmina-photo-file,
input.elmina-photo-file[type="file"] {
    color: rgba(255, 255, 255, 0.9) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.9) !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.86rem !important;
    font-weight: 600 !important;
    cursor: pointer;
}

input.elmina-photo-file[type="file"]::file-selector-button {
    appearance: none;
    border: 0;
    border-radius: 999px;
    margin: 0 0.75rem 0 0;
    padding: 0.46rem 0.95rem;
    background: linear-gradient(145deg, #fff681 0%, #ffe027 56%, #d6b500 100%);
    color: #004aad;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif);
    font-size: 0.84rem;
    font-weight: 900;
    line-height: 1.1;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 0.25rem 0.7rem rgba(0, 0, 0, 0.16);
    cursor: pointer;
}

input.elmina-photo-file[type="file"]::-webkit-file-upload-button {
    appearance: none;
    border: 0;
    border-radius: 999px;
    margin: 0 0.75rem 0 0;
    padding: 0.46rem 0.95rem;
    background: linear-gradient(145deg, #fff681 0%, #ffe027 56%, #d6b500 100%);
    color: #004aad;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif);
    font-size: 0.84rem;
    font-weight: 900;
    line-height: 1.1;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 0.25rem 0.7rem rgba(0, 0, 0, 0.16);
    cursor: pointer;
}

@media (hover: hover) and (pointer: fine) {
    input.elmina-photo-file[type="file"]::file-selector-button:hover,
    input.elmina-photo-file[type="file"]::-webkit-file-upload-button:hover {
        filter: brightness(1.04);
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.72), 0 0 0 0.14rem rgba(255, 232, 77, 0.24), 0 0.35rem 0.85rem rgba(0, 0, 0, 0.2);
    }
}

@media (hover: none) {
    input.elmina-photo-file[type="file"]::file-selector-button:active,
    input.elmina-photo-file[type="file"]::-webkit-file-upload-button:active {
        filter: brightness(1.05);
        box-shadow: inset 0 0 0 999px rgba(255, 255, 255, 0.12);
    }
}


#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select {
    color-scheme: light;
    background-color: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Keep the opened native menu stable/browser-managed.
   Native select option popups vary by OS/browser; aggressive colors caused blocky/brick rendering on PC. */
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select option,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select option:checked,
#master-webcam-ticker-share-popout .master-webcam-ticker-share-form select option:hover {
    background: Canvas !important;
    background-color: Canvas !important;
    color: CanvasText !important;
    -webkit-text-fill-color: CanvasText !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.92rem !important;
    font-weight: 500 !important;
}

input.elmina-photo-file[type="file"]::file-selector-button {
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
}

input.elmina-photo-file[type="file"]::-webkit-file-upload-button {
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
}


#master-webcam-button .master-webcam-ticker-line.is-ticker-rtl,
#master-webcam-button.has-ticker-rtl .master-webcam-ticker-line {
    direction: rtl !important;
    text-align: right !important;
    unicode-bidi: plaintext !important;
    padding-left: var(--elmina-ticker-body-indent) !important;
    padding-right: clamp(0.22rem, 0.72vw, 0.54rem) !important;
}

#master-webcam-button.has-ticker-rtl .master-webcam-ticker-text-line,
#master-webcam-button .master-webcam-ticker-text-line.is-rtl {
    direction: rtl !important;
    text-align: right !important;
    unicode-bidi: plaintext !important;
}

.master-webcam-ticker-popout-headline.is-rtl,
.master-webcam-ticker-popout-body.is-rtl {
    direction: rtl !important;
    text-align: right !important;
    unicode-bidi: plaintext !important;
}

.master-webcam-ticker-popout-body.is-rtl {
    padding-left: clamp(0.16rem, 0.38vw, 0.34rem) !important;
    padding-right: 0.12rem !important;
}

#memory-wall-content.has-rtl-memory #memory-wall-text,
#memory-wall-content.has-rtl-memory #memory-wall-more,
#memory-wall-text.is-memory-rtl,
#memory-wall-more.is-memory-rtl {
    direction: rtl !important;
    text-align: right !important;
    unicode-bidi: plaintext !important;
}

#memory-wall-content.has-rtl-memory #memory-wall-meta {
    direction: rtl !important;
    text-align: right !important;
}

.master-webcam-ticker-share-form input[dir="auto"],
.master-webcam-ticker-share-form textarea[dir="auto"],
#memory-wall-form input[dir="auto"],
#memory-wall-form textarea[dir="auto"] {
    unicode-bidi: plaintext !important;
}


@media (min-width: 1024px) {
    :root {
        --elmina-pc-side-mesh-gap: clamp(0.92rem, 1.05vw, 1.08rem);
        --elmina-pc-side-bottom-card-min: clamp(10.8rem, 13.2vw, 12.35rem);
    }

    #elmina-main-layout-grid.elmina-template-layout-grid {
        align-items: stretch !important;
    }

    #elmina-left-column.elmina-template-column-main,
    #elmina-right-column.elmina-template-column-side {
        align-self: stretch !important;
    }

    #elmina-right-column.elmina-template-column-side {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: auto auto minmax(var(--elmina-pc-side-bottom-card-min), 1fr) !important;
        gap: var(--elmina-pc-side-mesh-gap) !important;
        align-content: stretch !important;
        align-items: stretch !important;
        justify-content: stretch !important;
        min-height: 100% !important;
        height: 100% !important;
    }

    #elmina-right-column.elmina-template-column-side > * {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    #elmina-memory-wall-card,
#elmina-youtube-card,
#elmina-social-card{
        align-self: stretch !important;
    }

    #elmina-social-card{
        min-height: var(--elmina-pc-side-bottom-card-min) !important;
        height: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        padding-top: clamp(1.0rem, 1.2vw, 1.25rem) !important;
        padding-bottom: clamp(1.0rem, 1.2vw, 1.25rem) !important;
    }


}


#elmina-social-card {
    position: relative !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: clamp(0.42rem, 0.75vw, 0.68rem) !important;
    background: linear-gradient(135deg, #004aad, #003f9e) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(0, 74, 173, 0.18) !important;
}

#elmina-social-card,
#elmina-social-card * {
    box-sizing: border-box !important;
}

.elmina-social-head {
    text-align: center !important;
    flex: 0 0 auto !important;
}

.elmina-social-title {
    margin: 0 !important;
    color: #ffe84d !important;
    font-size: clamp(1.08rem, 1.45vw, 1.32rem) !important;
    line-height: 1.1 !important;
    font-weight: 1000 !important;
    letter-spacing: 0.01em !important;
}

.elmina-social-subtitle {
    margin: 0.1rem 0 0 !important;
    color: #ffffff !important;
    font-size: clamp(0.74rem, 0.86vw, 0.86rem) !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
}

.elmina-social-hub-content {
    min-height: 0 !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(0.36rem, 0.58vw, 0.52rem) !important;
}

.elmina-social-loading,
.elmina-social-empty-preview,
.elmina-social-link-card {
    width: 100% !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.22) !important;
    background: rgba(255,255,255,0.08) !important;
    color: #ffffff !important;
}

.elmina-social-loading {
    padding: 1rem !important;
    text-align: center !important;
    font-size: 0.82rem !important;
    font-weight: 900 !important;
}

.elmina-social-platforms {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.28rem !important;
    flex-wrap: nowrap !important;
    min-width: 0 !important;
}

.elmina-social-platform-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.22rem !important;
    min-width: 0 !important;
    max-width: 33% !important;
    padding: 0.26rem 0.38rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,0.20) !important;
    background: rgba(255,255,255,0.10) !important;
    color: #eaf6ff !important;
    font-size: clamp(0.62rem, 0.7vw, 0.72rem) !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.elmina-social-platform-pill.is-active {
    background: linear-gradient(135deg, #fff27a, #ffe84d 60%, #d8b500) !important;
    color: #004aad !important;
    border-color: rgba(255,232,77,0.78) !important;
}

.elmina-social-platform-icon {
    flex: 0 0 auto !important;
    font-weight: 1000 !important;
}

.elmina-social-preview {
    min-height: clamp(5.6rem, 8.4vw, 7.4rem) !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    border-radius: 15px !important;
    overflow: hidden !important;
}

.elmina-social-embed-frame {
    position: relative !important;
    width: 100% !important;
    height: clamp(5.5rem, 8.2vw, 7.2rem) !important;
    overflow: hidden !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.20) !important;
    background: #001d43 !important;
}

.elmina-social-embed-frame iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    background: #001d43 !important;
}

.elmina-social-caption-row {
    margin-top: 0.25rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0.45rem !important;
    min-width: 0 !important;
    color: #ffffff !important;
    font-size: clamp(0.68rem, 0.72vw, 0.78rem) !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
}

.elmina-social-caption-row span {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.elmina-social-open-link {
    flex: 0 0 auto !important;
    color: #004aad !important;
    background: #ffe84d !important;
    border-radius: 999px !important;
    padding: 0.16rem 0.42rem !important;
    text-decoration: none !important;
    font-size: 0.62rem !important;
    line-height: 1.1 !important;
    font-weight: 1000 !important;
}

.elmina-social-meta {
    margin-top: 0.1rem !important;
    color: rgba(255,232,77,0.92) !important;
    font-size: 0.66rem !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.elmina-social-empty-preview,
.elmina-social-link-card {
    min-height: clamp(5.6rem, 8.4vw, 7.4rem) !important;
    padding: clamp(0.65rem, 0.95vw, 0.88rem) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    gap: 0.22rem !important;
}

.elmina-social-empty-title,
.elmina-social-link-card strong {
    color: #ffe84d !important;
    font-size: clamp(0.82rem, 0.92vw, 0.96rem) !important;
    line-height: 1.12 !important;
    font-weight: 1000 !important;
}

.elmina-social-empty-preview p,
.elmina-social-link-card p {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: clamp(0.68rem, 0.74vw, 0.78rem) !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
}

.elmina-social-link-badge {
    color: #004aad !important;
    background: #ffe84d !important;
    border-radius: 999px !important;
    padding: 0.18rem 0.48rem !important;
    font-size: 0.62rem !important;
    font-weight: 1000 !important;
}

.elmina-social-controls {
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: 2.35rem minmax(6.6rem, 1fr) minmax(3.6rem, auto) 2.35rem !important;
    gap: 0.38rem !important;
    align-items: center !important;
    width: 100% !important;
}

.elmina-social-arrow {
    width: 2.35rem !important;
    height: 2.35rem !important;
    min-width: 2.35rem !important;
    min-height: 2.35rem !important;
    border-radius: 999px !important;
    border: 0 !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: transparent !important;
    font-size: 0 !important;
    position: relative !important;
    box-shadow: inset 0 1px 1px rgba(255,255,255,0.55), 0 8px 16px rgba(0,0,0,0.16) !important;
}

.elmina-social-arrow::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 0.68rem !important;
    height: 0.68rem !important;
    border-top: 0.20rem solid #004aad !important;
    border-left: 0.20rem solid #004aad !important;
}

#elmina-social-prev::before {
    transform: translate(-38%, -50%) rotate(-45deg) !important;
}

#elmina-social-next::before {
    transform: translate(-62%, -50%) rotate(135deg) !important;
}

.elmina-social-share {
    min-height: 2.25rem !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0.35rem 0.78rem !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    font-size: clamp(0.64rem, 0.7vw, 0.74rem) !important;
    line-height: 1.02 !important;
    font-weight: 1000 !important;
    text-align: center !important;
    box-shadow: inset 0 1px 1px rgba(255,255,255,0.55), 0 8px 16px rgba(0,0,0,0.14) !important;
}

.elmina-social-center {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.08rem !important;
    min-width: 0 !important;
}

.elmina-social-count {
    color: #ffffff !important;
    font-size: 0.78rem !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    white-space: nowrap !important;
}

.elmina-social-dots {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.16rem !important;
    min-height: 0.4rem !important;
}

.elmina-social-dot {
    display: block !important;
    width: 0.34rem !important;
    height: 0.34rem !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,0.42) !important;
}

.elmina-social-dot.is-active {
    width: 0.72rem !important;
    background: #ffe84d !important;
}

.elmina-social-form-panel {
    position: absolute !important;
    z-index: 12 !important;
    left: 0.64rem !important;
    right: 0.64rem !important;
    top: 0.64rem !important;
    bottom: 0.64rem !important;
    display: none !important;
    flex-direction: column !important;
    gap: 0.44rem !important;
    padding: 0.74rem !important;
    border-radius: 18px !important;
    border: 1px solid rgba(255,255,255,0.30) !important;
    background: linear-gradient(145deg, rgba(0,74,173,0.98), rgba(0,63,158,0.98)) !important;
    box-shadow: 0 20px 36px rgba(0,0,0,0.24) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

.elmina-social-form-panel.is-open {
    display: flex !important;
}

.elmina-social-form-head {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 0.45rem !important;
    flex: 0 0 auto !important;
}

.elmina-social-form-title {
    margin: 0 !important;
    color: #ffe84d !important;
    font-size: 1rem !important;
    line-height: 1.1 !important;
    font-weight: 1000 !important;
}

.elmina-social-form-intro {
    margin: 0.16rem 0 0 !important;
    color: #ffffff !important;
    font-size: 0.72rem !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
}

.elmina-social-form-close {
    flex: 0 0 auto !important;
    width: 1.9rem !important;
    height: 1.9rem !important;
    border-radius: 999px !important;
    border: 0 !important;
    background: #ffe84d !important;
    color: #004aad !important;
    font-size: 1.25rem !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
}

.elmina-social-form {
    display: grid !important;
    gap: 0.38rem !important;
}

.elmina-social-form input,
.elmina-social-form select,
.elmina-social-form textarea {
    width: 100% !important;
    border: 1px solid rgba(255,255,255,0.24) !important;
    border-radius: 12px !important;
    padding: 0.48rem 0.58rem !important;
    background: #ffffff !important;
    color: #004aad !important;
    font-size: 0.76rem !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    outline: none !important;
}

.elmina-social-form textarea {
    min-height: 3.2rem !important;
    resize: vertical !important;
}


.elmina-social-preview-gate {
    border: 1px solid rgba(255,255,255,0.24) !important;
    border-radius: 12px !important;
    padding: 0.48rem 0.58rem !important;
    background: rgba(255,255,255,0.10) !important;
    color: #ffffff !important;
    font-size: 0.72rem !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
}

.elmina-social-preview-gate.is-idle {
    color: rgba(255,255,255,0.86) !important;
}

.elmina-social-preview-gate.is-checking {
    color: #ffe84d !important;
    border-color: rgba(255,232,77,0.42) !important;
}

.elmina-social-preview-gate.is-accepted {
    border-color: rgba(255,232,77,0.62) !important;
    background: rgba(255,232,77,0.12) !important;
}

.elmina-social-preview-gate.is-rejected {
    border-color: rgba(255,130,130,0.66) !important;
    background: rgba(255,70,70,0.14) !important;
    color: #fff2f2 !important;
}

.elmina-social-preview-gate p {
    margin: 0.16rem 0 0 !important;
}

.elmina-social-preview-accepted-title {
    color: #ffe84d !important;
    font-size: 0.78rem !important;
    line-height: 1.1 !important;
    font-weight: 1000 !important;
}

.elmina-social-preview-warning {
    color: #ffe84d !important;
    font-weight: 900 !important;
}

.elmina-social-form-embed {
    position: relative !important;
    width: 100% !important;
    height: clamp(5.2rem, 22vw, 7.4rem) !important;
    margin-top: 0.35rem !important;
    overflow: hidden !important;
    border-radius: 11px !important;
    border: 1px solid rgba(255,255,255,0.20) !important;
    background: #001d43 !important;
}

.elmina-social-form-embed iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    background: #001d43 !important;
}

.elmina-social-form input:focus,
.elmina-social-form select:focus,
.elmina-social-form textarea:focus {
    border-color: #ffe84d !important;
    box-shadow: 0 0 0 3px rgba(255,232,77,0.30) !important;
}

.elmina-social-form-actions {
    display: flex !important;
    gap: 0.42rem !important;
    align-items: center !important;
    justify-content: flex-end !important;
}

.elmina-social-form-cancel,
.elmina-social-form-preview-check,
.elmina-social-form-submit {
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0.46rem 0.82rem !important;
    font-size: 0.76rem !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
}

.elmina-social-form-cancel {
    background: rgba(255,255,255,0.16) !important;
    color: #ffffff !important;
}

.elmina-social-form-preview-check {
    background: rgba(255,255,255,0.94) !important;
    color: #004aad !important;
}

.elmina-social-form-submit {
    background: #ffe84d !important;
    color: #004aad !important;
}

.elmina-social-form-submit:disabled {
    opacity: 0.54 !important;
    cursor: not-allowed !important;
}

.elmina-social-form-status {
    min-height: 1rem !important;
    margin: 0 !important;
    color: #ffe84d !important;
    font-size: 0.72rem !important;
    line-height: 1.22 !important;
    font-weight: 900 !important;
}

@media (max-width: 1023px) {
    #elmina-social-card {
        min-height: clamp(13.4rem, 48vw, 17.5rem) !important;
    }

    .elmina-social-preview,
    .elmina-social-empty-preview,
    .elmina-social-link-card,
    .elmina-social-embed-frame {
        min-height: clamp(7.4rem, 28vw, 10.2rem) !important;
        height: auto !important;
    }

    .elmina-social-embed-frame {
        height: clamp(7.4rem, 28vw, 10.2rem) !important;
    }

    .elmina-social-controls {
        grid-template-columns: 2.6rem minmax(7.8rem, 1fr) minmax(3.8rem, auto) 2.6rem !important;
    }

    .elmina-social-arrow {
        width: 2.6rem !important;
        height: 2.6rem !important;
        min-width: 2.6rem !important;
        min-height: 2.6rem !important;
    }
}

@media (max-width: 460px) {
    .elmina-social-platform-pill {
        font-size: 0.58rem !important;
        padding-left: 0.26rem !important;
        padding-right: 0.26rem !important;
    }

    .elmina-social-controls {
        grid-template-columns: 2.35rem minmax(6.6rem, 1fr) minmax(3.2rem, auto) 2.35rem !important;
        gap: 0.28rem !important;
    }

    .elmina-social-share {
        padding-left: 0.56rem !important;
        padding-right: 0.56rem !important;
        font-size: 0.62rem !important;
    }

    .elmina-social-count {
        font-size: 0.72rem !important;
    }
}


#elmina-social-card {
    --elmina-card-shared-bg: linear-gradient(135deg, #004aad, #003f9e);
    --elmina-card-shared-radius: clamp(0.95rem, 1.45vw, 1.25rem);
    --elmina-card-shared-border: rgba(255, 255, 255, 0.12);
    --elmina-card-shared-shadow: 0 14px 28px rgba(0, 74, 173, 0.13);
    background: var(--elmina-card-shared-bg) !important;
    color: #ffffff !important;
    border: 1px solid var(--elmina-card-shared-border) !important;
    border-radius: var(--elmina-card-shared-radius) !important;
    box-shadow: var(--elmina-card-shared-shadow) !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: clamp(0.36rem, 0.6vw, 0.5rem) !important;
    color-scheme: only light !important;
}

#elmina-social-card,
#elmina-social-card * {
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    box-sizing: border-box !important;
}

#elmina-social-card .elmina-social-head {
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
}

#elmina-social-card .elmina-social-title {
    margin: 0 !important;
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-size: var(--elmina-type-title-tight) !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.01em !important;
    text-align: left !important;
    text-wrap: balance !important;
    overflow-wrap: anywhere !important;
}

#elmina-social-card .elmina-social-subtitle {
    margin: 0.08rem 0 0 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: var(--elmina-type-subtitle) !important;
    font-weight: 800 !important;
    line-height: 1.24 !important;
    text-align: left !important;
    opacity: 0.96 !important;
    overflow-wrap: anywhere !important;
}

#elmina-social-card .elmina-social-hub-content {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    gap: clamp(0.42rem, 0.72vw, 0.62rem) !important;
    width: 100% !important;
}

#elmina-social-card .elmina-social-platforms,
#elmina-social-card .elmina-social-platform-pill {
    display: none !important;
}

#elmina-social-card .elmina-social-preview {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}

#elmina-social-card .elmina-social-loading,
#elmina-social-card .elmina-social-empty-preview,
#elmina-social-card .elmina-social-link-card {
    width: 100% !important;
    height: 100% !important;
    min-height: clamp(3.9rem, 5.6vw, 5.1rem) !important;
    padding: clamp(0.46rem, 0.74vw, 0.62rem) clamp(0.62rem, 0.95vw, 0.82rem) !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.22) !important;
    background: rgba(255,255,255,0.08) !important;
    color: #ffffff !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 0.14rem !important;
}

#elmina-social-card .elmina-social-empty-title,
#elmina-social-card .elmina-social-link-card strong {
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-size: clamp(0.78rem, 0.9vw, 0.9rem) !important;
    line-height: 1.08 !important;
    font-weight: 900 !important;
    letter-spacing: -0.01em !important;
}

#elmina-social-card .elmina-social-empty-preview p,
#elmina-social-card .elmina-social-link-card p {
    margin: 0 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: var(--elmina-type-meta) !important;
    line-height: 1.14 !important;
    font-weight: 800 !important;
}

#elmina-social-card .elmina-social-embed-frame {
    height: clamp(4.5rem, 6.2vw, 5.5rem) !important;
    min-height: 0 !important;
    border-radius: 14px !important;
}

#elmina-social-card .elmina-social-caption-row,
#elmina-social-card .elmina-social-meta {
    font-size: var(--elmina-type-meta) !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
}

#elmina-social-card .elmina-social-controls.elmina-carousel-controls {
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns:
        var(--elmina-canon-control-arrow)
        minmax(0, var(--elmina-canon-control-action))
        var(--elmina-canon-control-center)
        var(--elmina-canon-control-arrow) !important;
    column-gap: var(--elmina-canon-control-gap) !important;
    row-gap: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    justify-items: stretch !important;
    width: 100% !important;
    max-width: min(100%, var(--elmina-canon-control-rail)) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: hidden !important;
}

#elmina-social-card .elmina-social-arrow,
#elmina-social-card #elmina-social-prev,
#elmina-social-card #elmina-social-next {
    width: var(--elmina-canon-control-arrow) !important;
    height: var(--elmina-canon-control-arrow) !important;
    min-width: var(--elmina-canon-control-arrow) !important;
    max-width: var(--elmina-canon-control-arrow) !important;
    min-height: var(--elmina-canon-control-arrow) !important;
    max-height: var(--elmina-canon-control-arrow) !important;
    flex: 0 0 var(--elmina-canon-control-arrow) !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.62), 0 0.35rem 0.72rem rgba(0,0,0,0.15) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    opacity: 1 !important;
}

#elmina-social-card #elmina-social-prev {
    grid-column: 1 !important;
    justify-self: start !important;
}

#elmina-social-card #elmina-social-next {
    grid-column: 4 !important;
    justify-self: end !important;
}

#elmina-social-card .elmina-social-arrow::before {
    content: "" !important;
    display: block !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: calc(var(--elmina-canon-control-arrow) * 0.28) !important;
    height: calc(var(--elmina-canon-control-arrow) * 0.28) !important;
    border-style: solid !important;
    border-color: #004aad !important;
    border-width: 0 0 calc(var(--elmina-canon-control-arrow) * 0.075) calc(var(--elmina-canon-control-arrow) * 0.075) !important;
    border-radius: 0.06rem !important;
    box-sizing: border-box !important;
}

#elmina-social-card #elmina-social-prev::before {
    transform: translateX(8%) rotate(45deg) !important;
}

#elmina-social-card #elmina-social-next::before {
    transform: translateX(-8%) rotate(225deg) !important;
}

#elmina-social-card .elmina-social-share.elmina-carousel-action {
    grid-column: 2 !important;
    justify-self: stretch !important;
    align-self: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: var(--elmina-canon-control-height) !important;
    height: var(--elmina-canon-control-height) !important;
    max-height: var(--elmina-canon-control-height) !important;
    padding: 0.28rem clamp(0.28rem, 1vw, 0.58rem) !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.58), 0 0.3rem 0.68rem rgba(0,0,0,0.12) !important;
}

#elmina-social-card .elmina-social-center.elmina-carousel-center {
    grid-column: 3 !important;
    width: var(--elmina-canon-control-center) !important;
    min-width: var(--elmina-canon-control-center) !important;
    max-width: var(--elmina-canon-control-center) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(0.16rem, 0.62vw, 0.28rem) !important;
}

#elmina-social-card .elmina-social-count {
    width: 100% !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-align: center !important;
    white-space: nowrap !important;
    font-variant-numeric: tabular-nums !important;
    font-size: clamp(0.78rem, 2.9vw, 1.03rem) !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: -0.02em !important;
}

#elmina-social-card .elmina-social-dots {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(0.12rem, 0.64vw, 0.24rem) !important;
    min-height: 0.5rem !important;
    line-height: 1 !important;
}

#elmina-social-card .elmina-social-dot {
    width: clamp(0.32rem, 1.4vw, 0.42rem) !important;
    height: clamp(0.32rem, 1.4vw, 0.42rem) !important;
    min-width: clamp(0.32rem, 1.4vw, 0.42rem) !important;
    border-radius: 999px !important;
    background: rgba(159, 197, 239, 0.72) !important;
    opacity: 0.78 !important;
}

#elmina-social-card .elmina-social-dot.is-active {
    width: clamp(0.88rem, 3.4vw, 1.1rem) !important;
    min-width: clamp(0.88rem, 3.4vw, 1.1rem) !important;
    background: #ffe84d !important;
    opacity: 1 !important;
}

@media (min-width: 1024px) {
    #elmina-social-card {
        min-height: 0 !important;
        height: 100% !important;
        padding: clamp(0.82rem, 1vw, 1rem) !important;
    }

    #elmina-social-card .elmina-social-hub-content {
        gap: clamp(0.34rem, 0.5vw, 0.46rem) !important;
    }
}

@media (max-width: 1023px) {
    #elmina-social-card {
        min-height: clamp(12.4rem, 42vw, 15.8rem) !important;
        padding: clamp(1rem, 3.6vw, 1.25rem) !important;
    }

    #elmina-social-card .elmina-social-preview,
    #elmina-social-card .elmina-social-empty-preview,
    #elmina-social-card .elmina-social-link-card,
    #elmina-social-card .elmina-social-embed-frame {
        min-height: clamp(5.6rem, 20vw, 8.3rem) !important;
    }
}


.elmina-youtube-caption {
    text-align: left !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#elmina-social-card .elmina-social-caption-row {
    margin-top: clamp(0.28rem, 0.55vw, 0.42rem) !important;
    justify-content: space-between !important;
    align-items: center !important;
    text-align: left !important;
}

#elmina-social-card .elmina-social-caption-row span {
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: var(--elmina-type-caption) !important;
    line-height: 1.14 !important;
    font-weight: 850 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#elmina-social-card .elmina-social-meta {
    display: none !important;
}

#elmina-social-card .elmina-social-form-panel {
    gap: 0 !important;
    padding: clamp(0.82rem, 1.25vw, 1rem) !important;
    border-radius: clamp(0.85rem, 1.25vw, 1rem) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    background: linear-gradient(145deg, rgba(0,74,173,0.98), rgba(0,63,158,0.98)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 20px 36px rgba(0,0,0,0.22) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

#elmina-social-card .elmina-social-form-head {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 0.75rem !important;
    margin-bottom: 0.65rem !important;
}

#elmina-social-card .elmina-social-form-title {
    margin: 0 !important;
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 1rem !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

#elmina-social-card .elmina-social-form-intro {
    margin: 0.35rem 0 0 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.82rem !important;
    line-height: 1.4 !important;
    font-weight: 800 !important;
    opacity: 0.9 !important;
}

#elmina-social-card .elmina-social-form-close {
    display: none !important;
}

#elmina-social-card .elmina-social-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.55rem !important;
}

#elmina-social-card .elmina-social-form input,
#elmina-social-card .elmina-social-form select,
#elmina-social-card .elmina-social-form textarea {
    width: 100% !important;
    border: 1px solid rgba(255,255,255,0.24) !important;
    border-radius: 0.75rem !important;
    background: rgba(255,255,255,0.13) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    padding: 0.68rem 0.78rem !important;
    font: 600 0.86rem var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    line-height: 1.2 !important;
    outline: none !important;
}

#elmina-social-card .elmina-social-form input::placeholder,
#elmina-social-card .elmina-social-form textarea::placeholder {
    color: rgba(255,255,255,0.72) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
}

#elmina-social-card .elmina-social-form textarea {
    min-height: 4.4rem !important;
    resize: vertical !important;
}

#elmina-social-card .elmina-social-preview-gate {
    border: 1px solid rgba(255,255,255,0.22) !important;
    border-radius: 0.75rem !important;
    padding: 0.62rem 0.72rem !important;
    background: rgba(255,255,255,0.10) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.78rem !important;
    line-height: 1.28 !important;
    font-weight: 800 !important;
}

#elmina-social-card .elmina-social-preview-gate.is-checking,
#elmina-social-card .elmina-social-preview-gate.is-accepted {
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    border-color: rgba(255,232,77,0.44) !important;
    background: rgba(255,232,77,0.11) !important;
}

#elmina-social-card .elmina-social-preview-gate.is-rejected {
    color: #fff2f2 !important;
    -webkit-text-fill-color: #fff2f2 !important;
    border-color: rgba(255,130,130,0.66) !important;
    background: rgba(255,70,70,0.14) !important;
}

#elmina-social-card .elmina-social-preview-accepted-title {
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-size: 0.82rem !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
}

#elmina-social-card .elmina-social-form-embed {
    height: clamp(5.2rem, 20vw, 7.4rem) !important;
    margin-top: 0.42rem !important;
    border-radius: 0.7rem !important;
}

#elmina-social-card .elmina-social-form input:focus,
#elmina-social-card .elmina-social-form select:focus,
#elmina-social-card .elmina-social-form textarea:focus {
    border-color: #ffe84d !important;
    box-shadow: 0 0 0 3px rgba(255,232,77,0.18) !important;
}

#elmina-social-card .elmina-social-form-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.6rem !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin-top: 0.2rem !important;
}

#elmina-social-card .elmina-social-form-actions button {
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0.6rem 0.95rem !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: 0.82rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    cursor: pointer !important;
}

#elmina-social-card .elmina-social-form-cancel {
    background: rgba(255,255,255,0.14) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.22) !important;
}

#elmina-social-card .elmina-social-form-preview-check,
#elmina-social-card .elmina-social-form-submit {
    background: linear-gradient(145deg, #fff27a, #ffe84d 55%, #d8b500) !important;
    color: #004aad !important;
    -webkit-text-fill-color: #004aad !important;
}

#elmina-social-card .elmina-social-form-submit:disabled {
    opacity: 0.54 !important;
    cursor: not-allowed !important;
}

#elmina-social-card .elmina-social-form-status {
    margin: 0.35rem 0 0 !important;
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-size: 0.82rem !important;
    font-weight: 900 !important;
    line-height: 1.35 !important;
    min-height: 1.1rem !important;
}

@media (max-width: 640px) {
    #elmina-social-card .elmina-social-form-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    #elmina-social-card .elmina-social-form-actions button {
        width: 100% !important;
    }

    #elmina-social-card .elmina-social-form-preview-check {
        order: 1 !important;
    }

    #elmina-social-card .elmina-social-form-submit {
        order: 2 !important;
    }

    #elmina-social-card .elmina-social-form-cancel {
        order: 3 !important;
    }
}


#elmina-social-card .elmina-social-form-panel {
    position: static !important;
    z-index: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    display: none !important;
    margin-top: 1rem !important;
    padding: 1rem !important;
    border-radius: 1rem !important;
    background: rgba(255,255,255,0.11) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.14) !important;
    overflow: visible !important;
    overflow-y: visible !important;
    max-height: none !important;
    -webkit-overflow-scrolling: auto !important;
    scroll-margin-top: 5.5rem !important;
}

#elmina-social-card .elmina-social-form-panel.is-open {
    display: block !important;
}

#elmina-social-card.is-social-form-open {
    justify-content: flex-start !important;
    overflow: hidden !important;
}

#elmina-social-card.is-social-form-open .elmina-social-hub-content {
    flex: 0 0 auto !important;
    justify-content: flex-start !important;
}

@media (min-width: 1024px) {
    body.elmina-social-form-active #elmina-right-column.elmina-template-column-side {
        height: auto !important;
        min-height: 100% !important;
        grid-template-rows: auto auto auto !important;
        align-content: start !important;
    }

    body.elmina-social-form-active #elmina-social-card {
        height: auto !important;
        min-height: var(--elmina-pc-side-bottom-card-min) !important;
    }
}

@media (max-width: 640px) {
    #elmina-social-card .elmina-social-form-panel {
        margin-top: 0.9rem !important;
        padding: 1rem !important;
    }
}


#elmina-social-card .elmina-social-preview-warning.is-facebook-warning {
    display: inline-block !important;
    margin: 0.28rem 0 0 !important;
    padding: 0.34rem 0.52rem !important;
    border-radius: 0.62rem !important;
    border: 1px solid rgba(255,130,130,0.62) !important;
    background: rgba(255,70,70,0.16) !important;
    color: #fff2f2 !important;
    -webkit-text-fill-color: #fff2f2 !important;
    font-size: 0.76rem !important;
    line-height: 1.18 !important;
    font-weight: 900 !important;
}


#elmina-social-card .elmina-social-form-preview-check {
    display: none !important;
}

#elmina-social-card .elmina-social-form-actions {
    grid-template-columns: auto auto !important;
}

.elmina-social-embed-frame.is-facebook iframe,
#elmina-social-card .elmina-social-form-embed.is-facebook iframe {
    width: 125% !important;
    height: 125% !important;
    max-width: none !important;
    transform: scale(0.8) !important;
    transform-origin: top left !important;
}

.elmina-social-embed-frame.is-facebook,
#elmina-social-card .elmina-social-form-embed.is-facebook {
    background: #001d43 !important;
}

@media (max-width: 640px) {
    #elmina-social-card .elmina-social-form-actions {
        grid-template-columns: 1fr !important;
    }
}


#elmina-social-card .elmina-social-embed-frame.is-facebook {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding-top: 0.08rem !important;
    background: radial-gradient(circle at 50% 18%, rgba(24,119,242,0.22), rgba(0,29,67,0.94) 58%, #001d43 100%) !important;
}

#elmina-social-card .elmina-social-embed-frame.is-facebook iframe {
    width: min(360px, 132%) !important;
    height: 146% !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    transform: scale(0.72) !important;
    transform-origin: top center !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 18px rgba(0,0,0,0.24) !important;
}

#elmina-social-card .elmina-social-link-card.is-social-fallback-card {
    height: 100% !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 0.28rem !important;
}

#elmina-social-card .elmina-social-link-card.is-social-fallback-card strong {
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-size: clamp(0.78rem, 0.88vw, 0.92rem) !important;
    line-height: 1.12 !important;
}

#elmina-social-card .elmina-social-link-card.is-social-fallback-card p {
    margin: 0 !important;
    color: rgba(255,255,255,0.86) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.86) !important;
    font-size: clamp(0.68rem, 0.78vw, 0.8rem) !important;
    line-height: 1.18 !important;
}

#elmina-social-card .elmina-social-link-card.is-social-fallback-card .elmina-social-open-link {
    margin-top: 0.1rem !important;
}

@media (max-width: 640px) {
    #elmina-social-card .elmina-social-embed-frame.is-facebook iframe {
        width: min(340px, 134%) !important;
        height: 148% !important;
        transform: scale(0.71) !important;
    }
}


#elmina-social-card .elmina-social-embed-frame.is-facebook {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    background: radial-gradient(circle at 50% 50%, rgba(24,119,242,0.18), rgba(0,29,67,0.94) 56%, #001d43 100%) !important;
}

#elmina-social-card .elmina-social-embed-frame.is-facebook iframe {
    width: 230px !important;
    height: 132px !important;
    max-width: none !important;
    max-height: none !important;
    flex: 0 0 auto !important;
    transform: scale(0.60) !important;
    transform-origin: center center !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 18px rgba(0,0,0,0.25) !important;
}

@media (max-width: 640px) {
    #elmina-social-card .elmina-social-embed-frame.is-facebook iframe {
        width: 230px !important;
        height: 132px !important;
        transform: scale(0.58) !important;
    }
}


#elmina-memory-wall-card,
#elmina-youtube-card,
#elmina-social-card {
    --elmina-right-family-arrow: clamp(2.24rem, 7.2vw, 2.78rem);
    --elmina-right-family-height: clamp(2.24rem, 7.2vw, 2.78rem);
    --elmina-canon-control-arrow: var(--elmina-right-family-arrow);
    --elmina-canon-control-height: var(--elmina-right-family-height);
    --elmina-right-family-content-radius: 14px;
}

#memory-wall-subtitle,
#elmina-youtube-card .elmina-card-subtitle-main,
#elmina-youtube-card .elmina-video-card-subtitle,
#elmina-youtube-current-caption.elmina-youtube-caption,
#elmina-social-card .elmina-social-subtitle,
#elmina-social-card .elmina-social-caption-row {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#memory-wall-top,
#elmina-social-card .elmina-social-head {
    margin-bottom: clamp(0.54rem, 0.85vw, 0.78rem) !important;
}

#memory-wall-title,
#elmina-youtube-card .elmina-card-title-main,
#elmina-social-card .elmina-social-title {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
    font-size: var(--elmina-type-title-tight) !important;
    font-weight: 900 !important;
    line-height: 1.06 !important;
    letter-spacing: -0.012em !important;
    text-align: left !important;
}

#elmina-social-card .elmina-social-head {
    text-align: left !important;
}

#elmina-memory-wall-card,
#elmina-youtube-card,
#elmina-social-card {
    padding-top: clamp(0.86rem, 1.25vw, 1.08rem) !important;
    padding-bottom: clamp(0.86rem, 1.25vw, 1.08rem) !important;
}

#memory-wall-inner,
#elmina-youtube-card .elmina-youtube-carousel,
#elmina-social-card,
#elmina-social-card .elmina-social-hub-content {
    min-height: 0 !important;
}

#memory-wall-inner,
#elmina-youtube-card .elmina-youtube-carousel,
#elmina-social-card .elmina-social-hub-content {
    display: flex !important;
    flex-direction: column !important;
}

#memory-wall-content,
#memory-wall-content.is-memory-expanded,
#elmina-youtube-card .elmina-youtube-frame,
#elmina-social-card .elmina-social-preview,
#elmina-social-card .elmina-social-embed-frame,
#elmina-social-card .elmina-social-empty-preview,
#elmina-social-card .elmina-social-link-card {
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    flex: 0 0 auto !important;
    border-radius: var(--elmina-right-family-content-radius) !important;
}

#memory-wall-content,
#memory-wall-content.is-memory-expanded {
    flex-basis: auto !important;
}

#elmina-social-card .elmina-social-preview {
    display: block !important;
    overflow: hidden !important;
}

#elmina-youtube-card .elmina-youtube-controls.elmina-carousel-controls,
#elmina-social-card .elmina-social-controls.elmina-carousel-controls,
#memory-wall-bottom.elmina-carousel-controls {
    margin-top: clamp(0.52rem, 0.82vw, 0.72rem) !important;
    margin-bottom: 0 !important;
}

#memory-wall-share-button,
#elmina-youtube-share-button.elmina-youtube-share,
#elmina-social-share-button.elmina-social-share {
    padding-top: 0.20rem !important;
    padding-bottom: 0.20rem !important;
}

@media (min-width: 1024px) {
    #elmina-right-column.elmina-template-column-side {
        grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
        align-items: stretch !important;
    }

    #elmina-memory-wall-card,
    #elmina-youtube-card,
    #elmina-social-card {
        height: 100% !important;
        min-height: 0 !important;
        align-self: stretch !important;
        display: flex !important;
        flex-direction: column !important;
    }

    #memory-wall-inner,
    #elmina-youtube-card .elmina-youtube-carousel,
    #elmina-social-card .elmina-social-hub-content {
        flex: 1 1 auto !important;
        justify-content: space-between !important;
    }
}

@media (max-width: 1023px) {
    #elmina-memory-wall-card,
    #elmina-youtube-card,
    #elmina-social-card {
        min-height: 0 !important;
    }

    #memory-wall-top,
    #elmina-social-card .elmina-social-head {
        margin-bottom: clamp(0.48rem, 2.0vw, 0.68rem) !important;
    }

    #memory-wall-content,
    #memory-wall-content.is-memory-expanded,
    #elmina-youtube-card .elmina-youtube-frame,
    #elmina-social-card .elmina-social-preview,
    #elmina-social-card .elmina-social-embed-frame,
    #elmina-social-card .elmina-social-empty-preview,
    #elmina-social-card .elmina-social-link-card {
        aspect-ratio: 16 / 9 !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        flex-basis: auto !important;
    }
}

@media (max-width: 380px) {
    #elmina-memory-wall-card,
    #elmina-youtube-card,
    #elmina-social-card {
        --elmina-right-family-arrow: 2.18rem;
        --elmina-right-family-height: 2.18rem;
    }
}


#elmina-social-card .elmina-social-embed-frame.is-facebook {
    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    padding: 0 !important;
    background: #001d43 !important;
}

#elmina-social-card .elmina-social-embed-frame.is-facebook iframe {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    flex: 1 1 auto !important;
    transform: none !important;
    transform-origin: center center !important;
    border-radius: var(--elmina-right-family-content-radius) !important;
    box-shadow: none !important;
    background: #001d43 !important;
}


#elmina-memory-wall-card,
#elmina-youtube-card,
#elmina-social-card {
    --elmina-right-family-pad-y: clamp(0.82rem, 1.18vw, 1.02rem);
    --elmina-right-family-title-gap: clamp(0.66rem, 1.02vw, 0.86rem);
    --elmina-right-family-control-gap: clamp(0.66rem, 1.02vw, 0.82rem);
    --elmina-right-family-card-gap: clamp(0.95rem, 1.35vw, 1.18rem);
    padding-top: var(--elmina-right-family-pad-y) !important;
    padding-bottom: var(--elmina-right-family-pad-y) !important;
    min-height: 0 !important;
    height: auto !important;
    align-self: stretch !important;
    justify-content: flex-start !important;
}

#memory-wall-title,
#elmina-youtube-card .elmina-card-title-main,
#elmina-social-card .elmina-social-title {
    margin: 0 !important;
    min-height: 0 !important;
}

#memory-wall-top,
#elmina-social-card .elmina-social-head {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}

#memory-wall-logo {
    display: none !important;
}

#memory-wall-inner {
    display: grid !important;
    grid-template-rows: auto auto auto !important;
    grid-auto-rows: auto !important;
    row-gap: var(--elmina-right-family-title-gap) !important;
    justify-content: stretch !important;
    align-content: start !important;
    min-height: 0 !important;
    height: auto !important;
}

#memory-wall-bottom.elmina-carousel-controls {
    margin-top: 0 !important;
}

#elmina-youtube-card {
    display: grid !important;
    grid-template-rows: auto auto !important;
    grid-auto-rows: auto !important;
    row-gap: var(--elmina-right-family-title-gap) !important;
    align-content: start !important;
}

#elmina-youtube-card #elmina-youtube-video-list,
#elmina-youtube-card .elmina-youtube-carousel {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

#elmina-youtube-card .elmina-youtube-carousel {
    display: grid !important;
    grid-template-rows: auto auto !important;
    grid-auto-rows: auto !important;
    row-gap: var(--elmina-right-family-control-gap) !important;
    align-content: start !important;
    justify-content: stretch !important;
}

#elmina-youtube-card .elmina-youtube-controls.elmina-carousel-controls {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#elmina-social-card {
    display: grid !important;
    grid-template-rows: auto auto !important;
    grid-auto-rows: auto !important;
    row-gap: var(--elmina-right-family-title-gap) !important;
    align-content: start !important;
}

#elmina-social-card .elmina-social-hub-content {
    display: grid !important;
    grid-template-rows: auto auto !important;
    grid-auto-rows: auto !important;
    row-gap: var(--elmina-right-family-control-gap) !important;
    align-content: start !important;
    justify-content: stretch !important;
    min-height: 0 !important;
    height: auto !important;
}

#elmina-social-card .elmina-social-controls.elmina-carousel-controls {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#memory-wall-content,
#memory-wall-content.is-memory-expanded,
#elmina-youtube-card .elmina-youtube-frame,
#elmina-social-card .elmina-social-preview,
#elmina-social-card .elmina-social-embed-frame,
#elmina-social-card .elmina-social-empty-preview,
#elmina-social-card .elmina-social-link-card {
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

#memory-wall-content,
#memory-wall-content.is-memory-expanded {
    align-self: stretch !important;
}

#elmina-youtube-card .elmina-youtube-frame,
#elmina-social-card .elmina-social-preview {
    align-self: stretch !important;
}

@media (min-width: 1024px) {
    #elmina-right-column.elmina-template-column-side {
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        align-items: stretch !important;
        gap: var(--elmina-right-family-card-gap) !important;
    }

    #elmina-memory-wall-card,
    #elmina-youtube-card,
    #elmina-social-card {
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
    }

    #memory-wall-inner,
    #elmina-youtube-card .elmina-youtube-carousel,
    #elmina-social-card .elmina-social-hub-content {
        flex: 0 0 auto !important;
        justify-content: flex-start !important;
        align-content: start !important;
    }
}

@media (max-width: 1023px) {
    #elmina-memory-wall-card,
    #elmina-youtube-card,
    #elmina-social-card {
        --elmina-right-family-pad-y: clamp(0.78rem, 3.0vw, 0.98rem);
        --elmina-right-family-title-gap: clamp(0.62rem, 2.45vw, 0.82rem);
        --elmina-right-family-control-gap: clamp(0.62rem, 2.45vw, 0.82rem);
    }
}

@media (max-width: 380px) {
    #elmina-memory-wall-card,
    #elmina-youtube-card,
    #elmina-social-card {
        --elmina-right-family-title-gap: 0.58rem;
        --elmina-right-family-control-gap: 0.58rem;
    }
}


:root {
    --elmina-page-mesh-column-gap: clamp(1.75rem, 2.5vw, 2.35rem);
    --elmina-page-mesh-stack-gap: clamp(1.08rem, 1.45vw, 1.42rem);
    --elmina-page-mesh-right-gap: clamp(1.02rem, 1.35vw, 1.34rem);
    --elmina-page-mesh-live-inner-gap: clamp(0.46rem, 0.72vw, 0.64rem);
    --elmina-page-mesh-main-pad-y: clamp(1.55rem, 2.45vw, 2.1rem);
    --elmina-page-mesh-footer-gap: clamp(2.1rem, 3.2vw, 3.15rem);
}

#elmina-site-main.elmina-template-main {
    padding-top: var(--elmina-page-mesh-main-pad-y) !important;
    padding-bottom: var(--elmina-page-mesh-main-pad-y) !important;
}

#elmina-main-layout-grid.elmina-template-layout-grid {
    gap: var(--elmina-page-mesh-column-gap) !important;
}

#elmina-left-column.elmina-template-column-main {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--elmina-page-mesh-stack-gap) !important;
}

#elmina-live-frame-card.elmina-template-live-frame {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--elmina-page-mesh-live-inner-gap) !important;
}

#elmina-live-frame-card > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#elmina-right-column.elmina-template-column-side {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--elmina-page-mesh-right-gap) !important;
}

#elmina-right-column.elmina-template-column-side > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

footer.elmina-template-footer {
    margin-top: var(--elmina-page-mesh-footer-gap) !important;
}

@media (min-width: 1024px) {
    #elmina-main-layout-grid.elmina-template-layout-grid {
        column-gap: var(--elmina-page-mesh-column-gap) !important;
        row-gap: var(--elmina-page-mesh-column-gap) !important;
    }

    #elmina-right-column.elmina-template-column-side {
        justify-content: flex-start !important;
        align-items: stretch !important;
    }
}

@media (max-width: 1023px) {
    :root {
        --elmina-page-mesh-column-gap: clamp(1.2rem, 5.0vw, 1.75rem);
        --elmina-page-mesh-stack-gap: clamp(1.0rem, 4.4vw, 1.35rem);
        --elmina-page-mesh-right-gap: clamp(1.0rem, 4.4vw, 1.35rem);
        --elmina-page-mesh-live-inner-gap: clamp(0.40rem, 1.8vw, 0.58rem);
        --elmina-page-mesh-main-pad-y: clamp(1.25rem, 5.2vw, 1.75rem);
        --elmina-page-mesh-footer-gap: clamp(1.85rem, 7.5vw, 2.65rem);
    }

    #elmina-main-layout-grid.elmina-template-layout-grid {
        row-gap: var(--elmina-page-mesh-column-gap) !important;
    }
}

@media (max-width: 390px) {
    :root {
        --elmina-page-mesh-stack-gap: 0.96rem;
        --elmina-page-mesh-right-gap: 0.96rem;
        --elmina-page-mesh-main-pad-y: 1.1rem;
    }
}


#elmina-memory-wall-card {

    --elmina-memory-story-preview-ratio: 16 / 11.90;
}

#memory-wall-content,
#memory-wall-content.is-memory-expanded {
    aspect-ratio: var(--elmina-memory-story-preview-ratio) !important;
}


:root {
    --elmina-page-mesh-stack-gap: var(--elmina-page-mesh-right-gap);
}

@media (max-width: 1023px) {
    :root {
        --elmina-page-mesh-stack-gap: var(--elmina-page-mesh-right-gap);
    }
}

@media (max-width: 390px) {
    :root {
        --elmina-page-mesh-stack-gap: var(--elmina-page-mesh-right-gap);
    }
}


#elmina-left-column.elmina-template-column-main > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#elmina-left-column.elmina-template-column-main {
    gap: var(--elmina-page-mesh-right-gap) !important;
}

@media (max-width: 1023px) {
    #elmina-left-column.elmina-template-column-main > * {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    #elmina-left-column.elmina-template-column-main {
        gap: var(--elmina-page-mesh-right-gap) !important;
    }
}


#elmina-social-card .elmina-social-embed-frame.is-instagram {
    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    padding: 0 !important;
    background: #001d43 !important;
}

#elmina-social-card .elmina-social-embed-frame.is-instagram iframe {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    flex: 1 1 auto !important;
    transform: none !important;
    transform-origin: center center !important;
    border-radius: var(--elmina-right-family-content-radius) !important;
    box-shadow: none !important;
    background: #001d43 !important;
}

#elmina-social-card .elmina-social-form-embed.is-instagram {
    background: #001d43 !important;
}

#elmina-social-card .elmina-social-form-embed.is-instagram iframe {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    transform: none !important;
    background: #001d43 !important;
}

#elmina-social-card .elmina-social-preview-warning.is-instagram-warning {
    color: #ffe84d !important;
    -webkit-text-fill-color: #ffe84d !important;
}


#elmina-social-card .elmina-social-embed-frame.is-instagram.is-instagram-static-preview,
#elmina-social-card .elmina-social-form-embed.is-instagram.is-instagram-static-preview {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
    background: radial-gradient(circle at 50% 18%, rgba(255,255,255,0.12), rgba(0,29,67,0.96) 54%, #001d43 100%) !important;
}

#elmina-social-card .elmina-social-embed-frame.is-instagram.is-instagram-static-preview iframe,
#elmina-social-card .elmina-social-form-embed.is-instagram.is-instagram-static-preview iframe {
    pointer-events: none !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

#elmina-social-card .elmina-social-instagram-shield {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    pointer-events: none !important;
    background: linear-gradient(180deg, rgba(0,29,67,0.00) 58%, rgba(0,29,67,0.42) 100%) !important;
}

#elmina-social-card .elmina-social-instagram-open,
#elmina-social-card .elmina-social-instagram-form-open {
    position: absolute !important;
    right: clamp(0.42rem, 0.85vw, 0.62rem) !important;
    bottom: clamp(0.38rem, 0.76vw, 0.56rem) !important;
    z-index: 3 !important;
    pointer-events: auto !important;
    box-shadow: 0 8px 18px rgba(0,0,0,0.28) !important;
}

#elmina-social-card .elmina-social-form-embed.is-instagram.is-instagram-static-preview {
    min-height: clamp(6.0rem, 24vw, 8.6rem) !important;
}

#elmina-social-card .elmina-social-link-card.is-instagram-static-fallback .elmina-social-open-link {
    margin-top: 0.18rem !important;
}


@media (max-width: 767px) {
    #elmina-youtube-card,
    #elmina-social-card {
        --elmina-mobile-media-rail-x: clamp(1.50rem, 5.55vw, 2.08rem);
        --elmina-mobile-media-title-gap: clamp(0.64rem, 2.45vw, 0.86rem);
        --elmina-mobile-media-control-gap-y: clamp(0.66rem, 2.55vw, 0.88rem);
        --elmina-mobile-media-arrow: clamp(2.72rem, 10.6vw, 3.40rem);
        --elmina-mobile-media-center: clamp(3.55rem, 13.0vw, 4.75rem);
        --elmina-mobile-media-grid-gap: clamp(0.28rem, 1.28vw, 0.56rem);
        --elmina-mobile-media-ratio: 16 / 9;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        padding-left: var(--elmina-mobile-media-rail-x) !important;
        padding-right: var(--elmina-mobile-media-rail-x) !important;
        min-height: 0 !important;
        height: auto !important;
        box-sizing: border-box !important;
    }

    #elmina-youtube-card .elmina-card-title-main,
    #elmina-social-card .elmina-social-head {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: var(--elmina-mobile-media-title-gap) !important;
        align-self: stretch !important;
        justify-self: stretch !important;
    }

    #elmina-youtube-card #elmina-youtube-video-list,
    #elmina-youtube-card .elmina-youtube-carousel,
    #elmina-social-card .elmina-social-hub-content {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        align-self: stretch !important;
        justify-self: stretch !important;
        box-sizing: border-box !important;
    }

    #elmina-youtube-card .elmina-youtube-carousel,
    #elmina-social-card .elmina-social-hub-content {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-auto-rows: auto !important;
        row-gap: var(--elmina-mobile-media-control-gap-y) !important;
        align-content: start !important;
        justify-content: stretch !important;
    }

    #elmina-youtube-card .elmina-youtube-frame,
    #elmina-social-card .elmina-social-preview {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        aspect-ratio: var(--elmina-mobile-media-ratio) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        align-self: stretch !important;
        justify-self: stretch !important;
        flex: 0 0 auto !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        border-radius: var(--elmina-right-family-content-radius, 0.95rem) !important;
    }

    #elmina-youtube-card .elmina-youtube-frame iframe {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        border: 0 !important;
        display: block !important;
    }

    #elmina-social-card .elmina-social-preview > .elmina-social-embed-frame,
    #elmina-social-card .elmina-social-preview > .elmina-social-empty-preview,
    #elmina-social-card .elmina-social-preview > .elmina-social-link-card {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: none !important;
        max-height: none !important;
        aspect-ratio: auto !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        border-radius: var(--elmina-right-family-content-radius, 0.95rem) !important;
        overflow: hidden !important;
    }

    #elmina-social-card .elmina-social-embed-frame iframe {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        border: 0 !important;
        display: block !important;
    }

    #elmina-youtube-card .elmina-youtube-controls.elmina-carousel-controls,
    #elmina-social-card .elmina-social-controls.elmina-carousel-controls {
        --elmina-canon-control-arrow: var(--elmina-mobile-media-arrow);
        --elmina-canon-control-center: var(--elmina-mobile-media-center);
        --elmina-canon-control-gap: var(--elmina-mobile-media-grid-gap);
        --elmina-canon-control-height: var(--elmina-mobile-media-arrow);
        display: grid !important;
        grid-template-columns:
            var(--elmina-mobile-media-arrow)
            minmax(0, 1fr)
            var(--elmina-mobile-media-center)
            var(--elmina-mobile-media-arrow) !important;
        column-gap: var(--elmina-mobile-media-grid-gap) !important;
        row-gap: 0 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        align-self: stretch !important;
        justify-self: stretch !important;
        justify-content: stretch !important;
        justify-items: stretch !important;
        align-items: center !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    #elmina-youtube-card #elmina-youtube-prev,
    #elmina-youtube-card #elmina-youtube-next,
    #elmina-social-card #elmina-social-prev,
    #elmina-social-card #elmina-social-next,
    #elmina-youtube-card .elmina-youtube-arrow,
    #elmina-social-card .elmina-social-arrow {
        width: var(--elmina-mobile-media-arrow) !important;
        height: var(--elmina-mobile-media-arrow) !important;
        min-width: var(--elmina-mobile-media-arrow) !important;
        min-height: var(--elmina-mobile-media-arrow) !important;
        max-width: var(--elmina-mobile-media-arrow) !important;
        max-height: var(--elmina-mobile-media-arrow) !important;
        flex: 0 0 var(--elmina-mobile-media-arrow) !important;
        align-self: center !important;
        justify-self: stretch !important;
    }

    #elmina-youtube-card #elmina-youtube-share-button.elmina-youtube-share,
    #elmina-social-card #elmina-social-share-button.elmina-social-share {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: var(--elmina-mobile-media-arrow) !important;
        min-height: var(--elmina-mobile-media-arrow) !important;
        max-height: var(--elmina-mobile-media-arrow) !important;
        padding-left: clamp(0.36rem, 1.45vw, 0.62rem) !important;
        padding-right: clamp(0.36rem, 1.45vw, 0.62rem) !important;
        align-self: center !important;
        justify-self: stretch !important;
        font-size: clamp(0.76rem, 3.15vw, 1.0rem) !important;
        line-height: 1.04 !important;
        letter-spacing: -0.04em !important;
        white-space: normal !important;
        overflow: hidden !important;
        text-overflow: clip !important;
    }

    #elmina-youtube-card .elmina-youtube-center,
    #elmina-social-card .elmina-social-center.elmina-carousel-center {
        width: var(--elmina-mobile-media-center) !important;
        min-width: var(--elmina-mobile-media-center) !important;
        max-width: var(--elmina-mobile-media-center) !important;
        flex: 0 0 var(--elmina-mobile-media-center) !important;
        align-self: center !important;
        justify-self: center !important;
    }
}

@media (max-width: 390px) {
    #elmina-youtube-card,
    #elmina-social-card {
        --elmina-mobile-media-rail-x: clamp(1.22rem, 5.0vw, 1.56rem);
        --elmina-mobile-media-arrow: 2.40rem;
        --elmina-mobile-media-center: 3.22rem;
        --elmina-mobile-media-grid-gap: 0.16rem;
    }

    #elmina-youtube-card #elmina-youtube-share-button.elmina-youtube-share,
    #elmina-social-card #elmina-social-share-button.elmina-social-share {
        font-size: 0.74rem !important;
        letter-spacing: -0.052em !important;
        padding-left: 0.28rem !important;
        padding-right: 0.28rem !important;
    }
}

/* ==========================================================================
   RUNTIME STYLE RINSE — YOUTUBE MODULE
   Fixed module visuals formerly injected by youtube-video-player.js.
   Brand colors remain runtime-editable through the three module CSS tokens.
   ========================================================================== */

:root {
    --elmina-youtube-white: var(--elmina-theme-white, #ffffff);
    --elmina-youtube-yellow: var(--elmina-theme-accent, #ffe84d);
    --elmina-youtube-blue-dark: var(--elmina-theme-secondary, #003f9e);
}

.elmina-youtube-carousel {
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif);
    touch-action: pan-y;
    -webkit-overflow-scrolling: touch;
}

.elmina-youtube-frame {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #000;
    border-radius: 0.65rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16);
}

.elmina-youtube-frame iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.elmina-youtube-caption {
    margin: 0.72rem 0 0;
    text-align: center;
    color: var(--elmina-youtube-white);
    font-size: clamp(0.9rem, 0.96vw, 1rem);
    font-weight: 800;
    line-height: 1.22;
}

.elmina-youtube-controls {
    margin-top: 0.78rem;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    column-gap: 0.48rem;
}

.elmina-youtube-arrow {
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.38);
    background: linear-gradient(145deg, #fff27a, var(--elmina-youtube-yellow) 55%, #d8b500);
    color: var(--elmina-youtube-blue-dark);
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.58), 0 6px 14px rgba(0, 0, 0, 0.16);
    cursor: pointer;
    transition: transform 160ms ease, filter 160ms ease;
}

.elmina-youtube-arrow:hover {
    transform: none;
    border-radius: 999px;
    filter: brightness(1.045);
    box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.62), 0 7px 15px rgba(0, 0, 0, 0.18);
}

.elmina-youtube-arrow:focus-visible {
    outline: 2px solid rgba(255, 232, 77, 0.72);
    outline-offset: 3px;
    border-radius: 999px;
}

.elmina-youtube-arrow-symbol {
    display: block;
    width: 0.62rem;
    height: 0.62rem;
    border-style: solid;
    border-color: var(--elmina-youtube-blue-dark);
    border-width: 0 0 4px 4px;
    box-sizing: border-box;
}

.elmina-youtube-arrow-prev {
    transform: translateX(0.08rem) rotate(45deg);
}

.elmina-youtube-arrow-next {
    transform: translateX(-0.08rem) rotate(225deg);
}

.elmina-youtube-share {
    border: 1px solid rgba(255, 255, 255, 0.34);
    border-radius: 999px;
    background: linear-gradient(145deg, #fff27a, var(--elmina-youtube-yellow) 55%, #d8b500);
    color: var(--elmina-youtube-blue-dark);
    font-size: 0.69rem;
    font-weight: 900;
    line-height: 1.05;
    min-height: 2.05rem;
    padding: 0.46rem 0.72rem;
    cursor: pointer;
    box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.58), 0 6px 14px rgba(0, 0, 0, 0.14);
    white-space: normal !important;
    word-break: normal;
    overflow-wrap: normal;
    justify-self: center;
    align-self: center;
    max-width: 100%;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.elmina-youtube-share-line {
    display: block;
    white-space: nowrap;
}

.elmina-youtube-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    justify-self: end;
    gap: 0.25rem;
    min-width: 3.4rem;
}

.elmina-youtube-count {
    color: var(--elmina-youtube-white);
    font-size: 0.86rem;
    font-weight: 900;
    line-height: 1;
}

.elmina-youtube-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.28rem;
    min-height: 0.5rem;
    line-height: 1;
    white-space: nowrap;
}

.elmina-youtube-dot {
    width: 0.38rem;
    height: 0.38rem;
    min-width: 0.38rem;
    border-radius: 999px;
    background: rgba(159, 197, 239, 0.72);
    display: block;
    opacity: 0.78;
    transition: width 0.18s ease, background 0.18s ease, opacity 0.18s ease;
}

.elmina-youtube-dot.is-active {
    width: 1.02rem;
    min-width: 1.02rem;
    background: var(--elmina-youtube-yellow);
    opacity: 1;
}

.elmina-youtube-current-title {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.elmina-video-form-panel {
    display: none;
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.11);
    border: 1px solid rgba(255, 255, 255, 0.18);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
    scroll-margin-top: 5.5rem;
}

.elmina-video-form-panel.is-open {
    display: block;
}

.elmina-video-form-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 0.65rem;
}

.elmina-video-form-title {
    margin: 0;
    color: var(--elmina-youtube-yellow);
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.15;
}

.elmina-video-form-intro {
    margin: 0.35rem 0 0;
    color: var(--elmina-youtube-white);
    font-size: 0.82rem;
    line-height: 1.4;
    opacity: 0.9;
}

.elmina-video-form-close {
    display: none;
}

.elmina-video-form {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.elmina-video-form input,
.elmina-video-form textarea {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 0.75rem;
    background: rgba(255, 255, 255, 0.13);
    color: var(--elmina-youtube-white);
    padding: 0.68rem 0.78rem;
    font: 600 0.86rem var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif);
    outline: none;
}

.elmina-video-form input::placeholder,
.elmina-video-form textarea::placeholder {
    color: rgba(255, 255, 255, 0.72);
}

.elmina-video-form input:focus,
.elmina-video-form textarea:focus {
    border-color: var(--elmina-youtube-yellow);
    box-shadow: 0 0 0 3px rgba(255, 232, 77, 0.18);
}

.elmina-video-form textarea {
    min-height: 5rem;
    resize: vertical;
}

.elmina-video-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    justify-content: flex-start;
    margin-top: 0.2rem;
}

.elmina-video-form-actions button {
    border: 0;
    border-radius: 999px;
    padding: 0.6rem 0.95rem;
    font-size: 0.82rem;
    font-weight: 900;
    cursor: pointer;
    font-family: var(--elmina-font-primary, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif);
}

.elmina-video-form-cancel {
    background: rgba(255, 255, 255, 0.14);
    color: var(--elmina-youtube-white);
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
}

.elmina-video-form-submit {
    background: linear-gradient(145deg, #fff27a, var(--elmina-youtube-yellow) 55%, #d8b500);
    color: var(--elmina-youtube-blue-dark);
}

.elmina-video-form-status {
    margin: 0.35rem 0 0;
    color: var(--elmina-youtube-yellow);
    font-size: 0.82rem;
    font-weight: 900;
    line-height: 1.35;
    min-height: 1.1rem;
}

@media (max-width: 640px) {
    .elmina-youtube-arrow {
        width: 2.15rem;
        height: 2.15rem;
    }

    .elmina-youtube-controls {
        column-gap: 0.32rem;
        grid-template-columns: auto minmax(7.15rem, 1fr) auto auto;
    }

    .elmina-youtube-share {
        font-size: 0.62rem;
        padding: 0.42rem 0.48rem;
        min-width: 7.15rem;
        white-space: normal !important;
    }

    .elmina-youtube-center {
        min-width: 2.85rem;
    }

    .elmina-youtube-caption {
        font-size: 0.94rem;
    }

    .elmina-video-form-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .elmina-video-form-actions button {
        width: 100%;
    }

    .elmina-video-form-submit {
        order: 1;
    }

    .elmina-video-form-cancel {
        order: 2;
    }
}

/* ==========================================================================
   RUNTIME STYLE RINSE — MEMORY WALL MODULE
   Fixed module visuals formerly injected by memory-wall.js.
   ========================================================================== */

#elmina-memory-wall-card {
    overflow: hidden;
}

#memory-wall-inner::before {
    content: "";
    position: absolute;
    inset: -25% -15% auto auto;
    width: 180px;
    height: 180px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(255, 232, 77, 0.24), rgba(255, 232, 77, 0.04) 45%, transparent 72%);
    pointer-events: none;
}

#memory-wall-inner::after {
    content: "";
    position: absolute;
    left: -12%;
    right: -12%;
    bottom: -35px;
    height: 90px;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.14), transparent 68%);
    pointer-events: none;
}

#memory-wall-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.28rem;
    min-height: 0.5rem;
    line-height: 1;
    white-space: nowrap;
}

.memory-wall-dot {
    width: 0.38rem;
    height: 0.38rem;
    min-width: 0.38rem;
    border-radius: 999px;
    background: rgba(159, 197, 239, 0.72);
    display: block;
    margin: 0;
    opacity: 0.78;
    transition: width 0.18s ease, background 0.18s ease, opacity 0.18s ease;
}

.memory-wall-dot.is-active {
    width: 1.02rem;
    min-width: 1.02rem;
    background: rgba(255, 232, 77, 0.98);
    opacity: 1;
}

.memory-wall-arrow-symbol {
    display: block;
    width: 0.52rem;
    height: 0.52rem;
    border-style: solid;
    border-color: #003f9e;
    border-width: 0 0 4px 4px;
    box-sizing: border-box;
}

.memory-wall-arrow-prev {
    transform: rotate(45deg);
    margin-left: 0.18rem;
}

.memory-wall-arrow-next {
    transform: rotate(225deg);
    margin-right: 0.18rem;
}

#memory-wall-content,
#memory-wall-form-card {
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 232, 77, 0.96) rgba(0, 63, 158, 0.35);
}

#memory-wall-content::-webkit-scrollbar,
#memory-wall-form-card::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

#memory-wall-content::-webkit-scrollbar-track,
#memory-wall-form-card::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 999px;
}

#memory-wall-content::-webkit-scrollbar-thumb,
#memory-wall-form-card::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #fff27a, rgba(255, 232, 77, 0.98), #d8b500);
    border-radius: 999px;
    border: 1px solid rgba(0, 63, 158, 0.24);
}

