/* Shared banner class keeps Autocom and Elecomp at the same responsive width. */
.enterprise-autocom-banner.enterprise-button-campaign {
    order: -3; display: flex; align-items: center; gap: 18px;
    padding: 16px 20px; direction: rtl; text-align: right;
    background: linear-gradient(120deg, #082438, #075a7c);
    border-color: #64d9ee; color: #fff; perspective: 900px;
    box-shadow: 0 0 0 5px rgba(52,195,234,.12), 0 19px 42px rgba(0,27,47,.3);
}
.enterprise-autocom-banner.enterprise-button-campaign::before,
.enterprise-autocom-banner.enterprise-button-campaign::after { display: none; }
.enterprise-autocom-banner.enterprise-button-campaign img {
    width: 40%; max-width: 230px; height: 140px; flex: 0 0 40%; object-fit: contain;
    animation: autocom-panels-float 6s ease-in-out infinite;
    filter: drop-shadow(0 5px 12px rgba(0,205,255,.3));
}
.enterprise-autocom-banner.enterprise-button-campaign span { min-width: 0; gap: 6px; }
.enterprise-autocom-banner.enterprise-button-campaign span b { font-size: clamp(16px,1.6vw,21px); white-space: normal; }
.enterprise-autocom-banner.enterprise-button-campaign span small { font-size: 14px; white-space: normal; color: #d3f1ff; }
.enterprise-autocom-banner.enterprise-button-campaign strong {
    position: static; display: inline-block; justify-self: start; padding: 7px 12px;
    color: #073650; background: #ffd18b; text-shadow: none; font-size: 17px;
}
.enterprise-autocom-banner.enterprise-button-campaign:hover { background: linear-gradient(120deg,#0b314b,#086b90); border-color: #ffaf37; }
.enterprise-autocom-banner:focus-visible { outline: 3px solid #ffaf37; outline-offset: 4px; }
div.enterprise-button-campaign { cursor: default; }
#autocom-campaign .enterprise-campaign-visual { display: block; overflow: hidden; perspective: 1000px; background: linear-gradient(145deg,#07263e,#075b82); }
#autocom-campaign .enterprise-campaign-visual::before,
#autocom-campaign .enterprise-campaign-visual::after { display: none; }
#autocom-campaign .enterprise-campaign-visual > img { max-height: 260px; object-fit: contain; background: #eaf3fc; }
#autocom-campaign .enterprise-campaign-visual > .enterprise-autocom-art {
    display: block; width: 100%; height: auto; max-height: 300px; margin: 24px auto;
    object-fit: contain; background: transparent; box-shadow: none;
    animation: autocom-panels-float 6s ease-in-out infinite;
    filter: drop-shadow(0 10px 18px rgba(0,205,255,.28));
}
#autocom-campaign .enterprise-campaign-copy { padding-top: 8px; }
#autocom-campaign .enterprise-campaign-copy .enterprise-section-kicker { color: #a9ebff; }
#autocom-campaign .enterprise-campaign-copy h2 { margin-left: 0; }
#autocom-campaign .enterprise-campaign-copy h2 span { white-space: normal; }
#autocom-campaign .enterprise-campaign-copy .enterprise-campaign-badge { position: static; width: auto; height: auto; display: inline-block; padding: 8px 16px; margin-bottom: 16px; border-radius: 30px; color: #073650; background: #ffd18b; }
#autocom-campaign .enterprise-autocom-site { color: #bdefff; text-decoration: underline; }
#autocom-campaign .enterprise-campaign-submit { background: #07688e; }
@keyframes autocom-panels-float {
    0%,100% { transform: translateY(3px) rotateY(-7deg) rotateZ(-1deg); }
    50% { transform: translateY(-6px) rotateY(7deg) rotateZ(1deg); }
}
@media (max-width:480px) {
    .enterprise-autocom-banner.enterprise-button-campaign { padding: 12px; gap: 10px; }
    .enterprise-autocom-banner.enterprise-button-campaign img { height: 125px; }
    .enterprise-autocom-banner.enterprise-button-campaign span small { font-size: 12px; }
    .enterprise-autocom-banner.enterprise-button-campaign strong { font-size: 14px; }
}
@media (prefers-reduced-motion:reduce) {
    .enterprise-autocom-banner.enterprise-button-campaign img,
    #autocom-campaign .enterprise-campaign-visual > .enterprise-autocom-art { animation: none; }
}

/* Native disclosure keeps the location compact and keyboard accessible. */
.enterprise-venue-location { order: -3; position: relative; direction: rtl; text-align: right; color: #fff; }
.enterprise-venue-location summary { display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; border: 1px solid rgba(120,222,245,.6); border-radius: 12px; color: #def8ff; background: #083c54; cursor: pointer; list-style: none; font-size: 14px; }
.enterprise-venue-location summary::-webkit-details-marker { display: none; }
.enterprise-venue-location summary:focus-visible { outline: 3px solid #ffd18b; outline-offset: 3px; }
.enterprise-venue-location summary:hover { background: #075a7c; }
.enterprise-venue-options { position: absolute; top: calc(100% + 8px); right: 0; z-index: 30; width: min(330px,calc(100vw - 40px)); padding: 16px; border: 1px solid #88d4e6; border-radius: 14px; color: #143e53; background: #fff; box-shadow: 0 14px 36px rgba(0,20,40,.25); }
.enterprise-venue-options strong { display: block; color: #073650; font-size: 16px; }
.enterprise-venue-options p { margin: 8px 0; color: #476777; font-size: 14px; line-height: 1.8; }
.enterprise-venue-options a { display: block; margin-top: 9px; padding: 10px 12px; border-radius: 9px; color: #fff; background: #07688e; font-size: 14px; }
.enterprise-venue-options a span { display: block; color: #d4f4ff; font-size: 12px; }
.enterprise-venue-options a:focus-visible { outline: 3px solid #ffaf37; outline-offset: 2px; }

/* Location is a sibling of the campaign link, positioned inside its left edge. */
.enterprise-autocom-banner-wrap { position: relative; order: -3; width: 100%; min-width: 0; }
.enterprise-autocom-banner-wrap .enterprise-autocom-banner { width: 100%; min-width: 0; padding-left: 100px; }
.enterprise-autocom-banner-wrap .enterprise-venue-location { position: absolute; left: 12px; top: 50%; z-index: 3; transform: translateY(-50%); }
.enterprise-autocom-banner-wrap .enterprise-venue-location summary { flex-direction: column; gap: 5px; padding: 8px 5px; border: 0; background: transparent; font-size: 11px; }
.enterprise-autocom-banner-wrap .enterprise-venue-options { right: auto; left: 0; }
@media (max-width:480px) {
 .enterprise-autocom-banner-wrap .enterprise-autocom-banner { padding-left: 75px; gap: 6px; }
 .enterprise-autocom-banner-wrap .enterprise-venue-location { left: 5px; }
 .enterprise-autocom-banner-wrap .enterprise-venue-location summary { font-size: 9px; padding: 5px 2px; }
 .enterprise-autocom-banner-wrap .enterprise-autocom-banner img { flex-basis: 35%; width: 35%; }
 .enterprise-autocom-banner-wrap .enterprise-autocom-banner span b { font-size: 14px; }
 .enterprise-autocom-banner-wrap .enterprise-autocom-banner span small { font-size: 10px; }
 .enterprise-autocom-banner-wrap .enterprise-autocom-banner strong { font-size: 12px; padding: 6px 8px; }
}
.enterprise-autocom-banner-wrap { flex: 0 0 100%; grid-column: 1 / -1; }
