/* =========================================================
   v48 — clean centered origin stamp on sack
   Single centered layout, same size for all countries,
   no heavy outer border, cleaner and more readable.
   ========================================================= */
.origin-film-sack {
    position: relative !important;
    overflow: visible !important;
    isolation: isolate !important;
}

.origin-film-sack-image {
    position: relative !important;
    z-index: 1 !important;
}

.origin-film-patch-stack {
    position: absolute !important;
    inset: 0 !important;
    z-index: 20 !important;
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
    pointer-events: none !important;
}

.origin-film-patch {
    position: relative !important;
    grid-area: 1 / 1 !important;
    width: clamp(260px, 49%, 340px) !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(8%) scale(.96) !important;
    transition: opacity .28s ease, transform .38s ease !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
}

.origin-film-patch.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(8%) scale(1) !important;
}

.origin-film-patch::before,
.origin-film-patch::after,
.origin-film-patch > img,
.origin-film-patch > strong {
    display: none !important;
    content: none !important;
}

.origin-stamp {
    width: 100% !important;
    display: grid !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 10px !important;
    filter: none !important;
    mix-blend-mode: normal !important;
}

.origin-stamp::before,
.origin-stamp::after {
    display: none !important;
    content: none !important;
}

.origin-stamp-seal {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 1 / 1.02 !important;
    display: grid !important;
    justify-items: center !important;
    align-content: start !important;
    padding: 14px 16px 38px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #4d3019 !important;
}

.origin-stamp-seal::before,
.origin-stamp-seal::after {
    display: none !important;
    content: none !important;
}

.origin-stamp-name {
    width: 100% !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #4d3019 !important;
    font-size: clamp(26px, 2.8vw, 38px) !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    letter-spacing: .08em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    text-shadow: 0 1px 0 rgba(255, 246, 225, .08) !important;
}

.origin-stamp-rule {
    width: 74% !important;
    height: 8px !important;
    margin: 10px 0 16px !important;
    display: block !important;
    background:
        linear-gradient(to bottom,
            rgba(77,48,25,.95) 0 2px,
            transparent 2px 5px,
            rgba(77,48,25,.5) 5px 7px,
            transparent 7px 100%) !important;
}

.origin-stamp-flag {
    position: relative !important;
    width: 46% !important;
    max-width: 150px !important;
    aspect-ratio: 1 / 1 !important;
    display: block !important;
    overflow: hidden !important;
    border: 4px solid #4d3019 !important;
    border-radius: 50% !important;
    background: #f2ede2 !important;
    box-shadow: 0 8px 18px rgba(36, 20, 8, .18) !important;
}

.origin-stamp-flag::before,
.origin-stamp-flag::after {
    display: none !important;
    content: none !important;
}

.origin-stamp-flag img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    -webkit-mask: none !important;
    mask: none !important;
}

.origin-stamp-plaque {
    position: relative !important;
    width: 82% !important;
    min-height: 66px !important;
    margin-top: 6px !important;
    padding: 10px 14px !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    text-align: center !important;
    color: #4d3019 !important;
    background: rgba(211, 175, 55, .28) !important;
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: polygon(8% 0, 92% 0, 100% 28%, 94% 100%, 6% 100%, 0 28%) !important;
    box-shadow: inset 0 0 0 1px rgba(77,48,25,.18) !important;
}

.origin-stamp-plaque::before,
.origin-stamp-plaque::after {
    display: none !important;
    content: none !important;
}

.origin-stamp-plaque strong,
.origin-stamp-plaque small {
    width: 100% !important;
    margin: 0 !important;
    display: block !important;
    color: #4d3019 !important;
    text-align: center !important;
    white-space: nowrap !important;
}

.origin-stamp-plaque strong {
    font-size: clamp(15px, 1.35vw, 18px) !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
}

.origin-stamp-plaque small {
    margin-top: 4px !important;
    font-size: clamp(11px, .92vw, 12px) !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    letter-spacing: .05em !important;
    text-transform: uppercase !important;
}

@media (max-width: 900px) {
    .origin-film-patch {
        width: clamp(220px, 58%, 290px) !important;
        transform: translateY(7%) scale(.96) !important;
    }

    .origin-film-patch.is-active {
        transform: translateY(7%) scale(1) !important;
    }

    .origin-stamp-name {
        font-size: clamp(22px, 5vw, 30px) !important;
    }

    .origin-stamp-flag {
        width: 44% !important;
        max-width: 128px !important;
    }

    .origin-stamp-plaque {
        width: 84% !important;
        min-height: 58px !important;
        padding: 9px 10px !important;
    }

    .origin-stamp-plaque strong {
        font-size: clamp(13px, 3vw, 16px) !important;
    }

    .origin-stamp-plaque small {
        font-size: clamp(10px, 2.4vw, 11px) !important;
    }
}
