/* Shared contact button and the OPET affiliate section. */
.whatsapp-contact {
    position: fixed;
    right: max(24px, env(safe-area-inset-right));
    bottom: calc(24px + env(safe-area-inset-bottom));
    z-index: 1000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 54px;
    padding: 13px 22px;
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 999px;
    background: #137b3c;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    box-shadow: 0 6px 24px rgba(0, 0, 0, .2);
    transition: background-color .2s ease, box-shadow .2s ease;
}
.whatsapp-contact i { font-size: 26px; }
.whatsapp-contact:hover,
.whatsapp-contact:focus-visible {
    background: #0b5e2c;
    color: #fff;
    box-shadow: 0 8px 28px rgba(0, 0, 0, .28);
}
.whatsapp-contact:focus-visible { outline: 3px solid #ffb703; outline-offset: 4px; }
.main-footer { padding-bottom: 92px; }
.opet-affiliate { padding: 90px 0; background: var(--secondary-color, #f8f8f8); }
.opet-affiliate .row { row-gap: 32px; }
.opet-affiliate-image { margin: 0; }
.opet-affiliate-image img { display: block; width: 100%; height: auto; border-radius: 16px; }
.opet-affiliate-content { padding-left: 24px; }
.opet-affiliate .section-title { margin-bottom: 24px; }
.opet-affiliate .section-title h2 { font-size: clamp(28px, 3vw, 42px); }
.opet-affiliate-content p:last-child { margin-bottom: 0; }
@media (max-width: 991px) {
    .opet-affiliate { padding: 60px 0; }
    .opet-affiliate-content { padding-left: 0; }
}
@media (max-width: 575px) {
    .whatsapp-contact {
        right: max(14px, env(safe-area-inset-right));
        bottom: calc(14px + env(safe-area-inset-bottom));
        min-height: 48px;
        max-width: calc(100% - 28px);
        padding: 11px 17px;
        font-size: 13px;
    }
    .whatsapp-contact i { font-size: 24px; }
    .opet-affiliate { padding: 40px 0; }
}
@media (prefers-reduced-motion: reduce) {
    .whatsapp-contact { transition: none; }
}
