/* Scoped to service content: desktop columns and image sizes stay unchanged. */
.related-services-section h2 { width:fit-content; max-width:100%; margin-left:auto; margin-right:auto; padding:14px 25px; border:1px solid #60a5fa; border-radius:18px; background:linear-gradient(120deg,#102c64,#1d4ed8); color:white; box-shadow:0 0 22px #3b82f633; line-height:1.4; }
.service-related-track > a { background:white; box-shadow:0 0 12px #3b82f61a; }
.service-related-track > a:hover { box-shadow:0 0 20px #3b82f633; }
.service-story { --service-accent:#1d4ed8; --service-tint:#eff6ff; --service-border:#bfdbfe; }
.service-tone-express { --service-accent:#6d28d9; --service-tint:#f5f3ff; --service-border:#ddd6fe; }
.service-story__tag { background:var(--service-tint); border-color:var(--service-border); color:var(--service-accent); }
.service-story__cta,.service-contact-cta { background:#1d4ed8; color:#fff; box-shadow:0 8px 22px #1d4ed81a; }
.service-story__cta { background:var(--service-accent); }
.service-story__media .service-contact-cta { width:auto; max-width:100%; margin:0 auto; }
.service-contact-cta:hover,.service-story__cta:hover { background:#1e40af; color:#fff; box-shadow:0 10px 25px #1d4ed829; }
.service-tone-express .service-story__cta:hover { background:#5b21b6; }
.service-contact-cta:focus-visible { outline:3px solid #93c5fd; outline-offset:4px; }
.service-story + .service-story,.service-soft-divider { position:relative; border-top:0; }
.service-story + .service-story::before,.service-soft-divider::before { content:''; position:absolute; top:-12px; left:0; right:0; height:40px; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g'%3E%3Cstop stop-color='%233b82f6' stop-opacity='.16'/%3E%3Cstop offset='.6' stop-color='%2393c5fd' stop-opacity='.1'/%3E%3Cstop offset='1' stop-color='%23fb923c' stop-opacity='.16'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 32 Q240 0 480 30 T960 30 T1440 24 L1440 45 Q1200 18 960 44 T480 44 T0 47Z' fill='url(%23g)'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
.service-story + .service-story::after,.service-soft-divider::after {
  content:'';
  position:absolute;
  top:-12px;
  left:0;
  right:0;
  height:40px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,#93c5fd 28%,#2563eb 45%,#fff 55%,#fb923c 70%,transparent 100%) -60% 0 / 30% 100% no-repeat;
  -webkit-mask:center / 100% 100% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 32 Q240 0 480 30 T960 30 T1440 24' fill='none' stroke='white' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
  mask:center / 100% 100% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 32 Q240 0 480 30 T960 30 T1440 24' fill='none' stroke='white' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
  animation:abk-inner-wave-charge 3.6s linear infinite;
}
@keyframes abk-inner-wave-charge { to { background-position:160% 0; } }
.service-showcase__heading--maritimo { margin-bottom:1.5rem; }
.service-showcase__intro-wave { height:36px; margin:1.1rem auto 0; width:100%; }
.service-showcase__intro-wave::before,.service-showcase__intro-wave::after { top:0; height:36px; }
@media(prefers-reduced-motion:reduce){.service-story + .service-story::after,.service-soft-divider::after{display:none}}
@media(max-width:1023px) {
  .service-contact-cta { display:flex; align-items:center; justify-content:center; width:100%; max-width:480px; min-height:48px; margin-left:auto; margin-right:auto; text-align:center; box-sizing:border-box; }
  .service-mobile-intro .service-mobile-visual { width:100%; height:auto; min-height:220px; aspect-ratio:4/3; margin-top:24px; overflow:hidden; }
  .service-mobile-visual img { width:100%; height:100%; object-fit:cover; }
}
@media(max-width:900px) {
  .service-story__content > .service-carousel { width:100%; height:auto; min-height:0; aspect-ratio:4/3; max-height:460px; margin-top:24px; box-shadow:0 12px 28px #0f17241f; }
  .service-story__content > .service-story__media { width:100%; margin-top:24px; }
  .service-story__content > .service-story__media .service-carousel { width:100%; height:auto; min-height:0; aspect-ratio:4/3; max-height:460px; box-shadow:0 12px 28px #0f17241f; }
  .service-story__content > .service-story__media .service-carousel--grupal-maritimo { aspect-ratio:1 / 1.08; max-height:none; }
  .service-carousel__caption { left:1rem; right:1rem; }
  .service-carousel__caption strong { font-size:.95rem; }
  .service-carousel__caption span { font-size:.74rem; }
}
@media(max-width:700px) {
  .service-story .service-features { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; width:100%; min-width:0; }
  .service-story .service-features.maritime-features { grid-auto-flow:row; grid-auto-columns:auto; overflow:visible; padding-bottom:0; scroll-snap-type:none; }
  .service-story .maritime-flip-card { height:148px; scroll-snap-align:none; }
}
.service-carousel--reel { display:grid; place-items:center; background:#061b3e; }
.service-carousel--reel .service-carousel__slide { align-items:center; display:flex; justify-content:center; }
.service-carousel--reel .service-carousel__slide::after { background:none; }
.service-carousel--reel .service-carousel__video { width:auto; height:100%; max-width:100%; aspect-ratio:9/16; object-fit:contain; }
@media(max-width:900px) {
  .service-carousel.service-carousel--reel { width:100%; height:auto; min-height:0; max-height:none; aspect-ratio:1/1; }
  .service-carousel--reel .service-carousel__video { width:100%; height:100%; aspect-ratio:1/1; object-fit:cover; }
}
