/* Apple gallery composition, adapted to the OctoNex violet identity. */
.octonex-premium #oferta .home-section-heading { margin-inline: auto; text-align: center; }
.octonex-premium #oferta .home-section-heading p { max-width: 65ch; margin-inline: auto; }
.octonex-premium :is(#main-header,section,footer,.footer-bottom) { border-top: 0; border-bottom: 0; }
.octonex-premium :is(details.case-details,.process-step) { border-top: 0; }
.octonex-premium .home-process { background: #171120; }
.octonex-premium .home-process .process-steps > li { background: #21192e; border-radius: 18px; border-top: 1px solid #49365e; }
.octonex-premium .home-cases .case-summary { flex: 1; }
.octonex-premium .home-cases { column-gap: 32px; }
.octonex-premium .home-cases .case-details-content { display: grid; gap: 20px; }
@supports (grid-template-rows: subgrid) {
  @media (min-width: 769px) {
    .octonex-premium .home-cases .case-card { display: grid; grid-template-rows: subgrid; grid-row: span 4; }
  }
}
.octonex-premium .home-process .process-steps { gap: 24px; }
.octonex-premium .carousel-controls { gap: 12px; }
.octonex-premium .hero { padding: 32px 0 48px; overflow: hidden; background: #000; }
.octonex-premium .hero::before,.octonex-premium .hero::after { display: none; }
.octonex-premium .hero-slider { max-width: none; padding: 0; }
.octonex-premium .carousel-track-wrapper { width: 100%; overflow: visible; }
.octonex-premium .carousel-track { width: min(1120px,86vw); margin-inline: auto; }
.octonex-premium .hero-slide { width: 100%; min-height: 560px; padding: 56px; gap: 40px; grid-template-columns: 1.15fr 1fr; border-radius: 18px; background: #1d1b24; opacity: .35; visibility: visible; transform: translateX(calc(-100% - 16px)); transition: transform 500ms var(--ease-out),opacity 500ms var(--ease-out); }
.octonex-premium .hero-slide:nth-child(2) { background: #f5f5f7; }
.octonex-premium .hero-slide:nth-child(3) { background: #251a39; }
.octonex-premium .hero-slide[data-position=next] { transform: translateX(calc(100% + 16px)); }
.octonex-premium .hero-slide[aria-hidden=false],.octonex-premium .hero-slide:first-child:not([aria-hidden]) { transform: translateX(0); opacity: 1; }
.octonex-premium .hero-slide-content { min-width: 0; }
.octonex-premium .hero-slide-content::before { display: none; }
.octonex-premium .hero-slide-content :is(h1,h2) { font-family: system-ui,-apple-system,BlinkMacSystemFont,sans-serif; font-weight: 600; font-size: clamp(32px,4vw,56px); line-height: 1.07; letter-spacing: -.035em; }
.octonex-premium .hero-slide-content p { font-size: 17px; line-height: 1.47; color: #d2cfd9; }
.octonex-premium .hero-slide:nth-child(2) :is(h2,p) { color: #1d1d1f; }
.octonex-premium .hero-slide .button { border-radius: 999px; padding: 11px 22px; min-height: 44px; font-size: 15px; font-weight: 400; }
.octonex-premium .hero-slide-icon { background: none; border: 0; aspect-ratio: auto; }
.octonex-premium .visual-panel { width: 100%; padding: 28px; transform: none; background: #0d0b12; border-color: #3a3447; border-radius: 18px; box-shadow: 3px 5px 30px rgba(0,0,0,.22); }
.octonex-premium .carousel-controls { justify-content: center; margin: 24px 0 0; gap: 20px; }
.octonex-premium .carousel-arrow { border: 0; border-radius: 50%; background: #d2d2d7; color: #1d1d1f; font-size: 17px; }
.octonex-premium .carousel-pagination { display: flex; align-items: center; gap: 0; }
.octonex-premium .carousel-dot { width: 44px; min-width: 44px; height: 44px; border: 0; background: transparent; position: relative; }
.octonex-premium .carousel-dot::after { content: ''; position: absolute; width: 8px; height: 8px; border-radius: 50%; background: #77747f; inset: 18px; }
.octonex-premium .carousel-dot[aria-current=true] { background: transparent; }
.octonex-premium .carousel-dot[aria-current=true]::after { background: #c49aff; }
.octonex-premium .keyboard-navigation .hero-slide { transition: none; }
.octonex-premium .hero-slide.carousel-recycling { transition: none !important; }
@media (hover:hover) { .octonex-premium .carousel-arrow:hover { background: #f5f5f7; } }
@media (max-width: 900px) { .octonex-premium .hero-slide { padding: 36px; gap: 24px; grid-template-columns: 1fr; min-height: 640px; align-content: center; } .octonex-premium .hero-slide-icon { max-width: 420px; margin-inline: auto; max-height: none; } }
@media (max-width: 480px) { .octonex-premium .hero { padding: 20px 0 32px; } .octonex-premium .carousel-track { width: 88vw; } .octonex-premium .hero-slide { min-height: 650px; padding: 28px 22px; gap: 24px; border-radius: 18px; } .octonex-premium .hero-slide-content :is(h1,h2) { font-size: 32px; margin-bottom: 20px; } .octonex-premium .hero-slide-content p { font-size: 17px; margin-bottom: 24px; } .octonex-premium .visual-panel { padding: 18px; } .octonex-premium .hero-slide-icon:has(.visual-panel) { padding: 0; } .octonex-premium .visual-bars { height: 120px; } }
@media (max-width: 768px) {
  .octonex-premium .hero-slide-content { display: contents; }
  .octonex-premium .hero-slide-content :is(h1,h2) { order: 1; margin-bottom: 0; }
  .octonex-premium .hero-slide-content p { order: 2; margin-bottom: 0; }
  .octonex-premium .hero-slide-icon { order: 3; }
  .octonex-premium .hero-slide-content .button { order: 4; justify-self: center; max-width: 100%; margin: 0; }
}
@media (prefers-reduced-motion:reduce) { .octonex-premium .hero-slide { transition: none; } }
