/* Atlas motion: precise, architectural and directional. */
.atlas-theme .sg-submenu {
    transform: translateY(-12px) scaleY(.96);
    transform-origin: center top;
    transition:
        opacity var(--sg-motion-duration) var(--sg-motion-ease),
        transform var(--sg-motion-duration) var(--sg-motion-ease),
        visibility 0s linear var(--sg-motion-duration);
}
.atlas-theme .sg-desktop-nav li:hover > .sg-submenu,
.atlas-theme .sg-desktop-nav li:focus-within > .sg-submenu,
.atlas-theme .sg-desktop-nav li.is-open > .sg-submenu,
.atlas-theme .sg-sticky-nav li:hover > .sg-submenu,
.atlas-theme .sg-sticky-nav li:focus-within > .sg-submenu,
.atlas-theme .sg-sticky-nav li.is-open > .sg-submenu {
    transform: none;
    transition-delay: 0s;
}
.atlas-theme .sg-submenu > li {
    opacity: 0;
    transform: translateY(-7px);
    transition: opacity var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme li:hover > .sg-submenu > li,
.atlas-theme li:focus-within > .sg-submenu > li,
.atlas-theme li.is-open > .sg-submenu > li { opacity: 1; transform: none; }
.atlas-theme li > .sg-submenu > li:nth-child(2) { transition-delay: 45ms; }
.atlas-theme li > .sg-submenu > li:nth-child(3) { transition-delay: 90ms; }
.atlas-theme li > .sg-submenu > li:nth-child(4) { transition-delay: 135ms; }
.atlas-theme li > .sg-submenu > li:nth-child(n+5) { transition-delay: 180ms; }

.atlas-theme .sg-mobile-menu nav > ul > li {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme .sg-mobile-menu.is-open nav > ul > li { opacity: 1; transform: none; }
.atlas-theme .sg-mobile-menu.is-open nav > ul > li:nth-child(2) { transition-delay: 55ms; }
.atlas-theme .sg-mobile-menu.is-open nav > ul > li:nth-child(3) { transition-delay: 110ms; }
.atlas-theme .sg-mobile-menu.is-open nav > ul > li:nth-child(4) { transition-delay: 165ms; }
.atlas-theme .sg-mobile-menu.is-open nav > ul > li:nth-child(n+5) { transition-delay: 220ms; }
.atlas-theme .sg-mobile-menu nav li ul { transform: translateY(-10px); transition-timing-function: var(--sg-motion-ease); }
.atlas-theme .sg-submenu-toggle span,
.atlas-theme .sg-mobile-menu nav li button span[aria-hidden="true"] {
    display: inline-block;
    transition: transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme .sg-submenu-toggle[aria-expanded="true"] span,
.atlas-theme .sg-mobile-menu nav li button[aria-expanded="true"] span[aria-hidden="true"] { transform: rotate(45deg); }

.atlas-theme .sg-search-panel {
    clip-path: inset(0 0 35% 0);
    transition: clip-path var(--sg-motion-duration) var(--sg-motion-ease), opacity var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme .sg-search-panel.is-open { clip-path: inset(0); }
.atlas-theme .sg-search-panel__form > * {
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme .sg-search-panel.is-open .sg-search-panel__form > * { opacity: 1; transform: none; transition-delay: 110ms; }

.atlas-theme .sg-reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme .sg-reveal.is-revealed { opacity: 1; transform: none; }

.atlas-theme .sg-button,
.atlas-theme main form button[type="submit"],
.atlas-theme main form input[type="submit"] {
    transition: background-color var(--sg-motion-duration) var(--sg-motion-ease), border-color var(--sg-motion-duration) var(--sg-motion-ease), color var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme .sg-card[href] {
    transition: background-color var(--sg-motion-duration) var(--sg-motion-ease), color var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme .sg-carousel__controls button,
.atlas-theme .sg-gallery__controls button,
.atlas-theme .sg-pagination > *,
.atlas-theme .sg-social-strip__link,
.atlas-theme .sg-whatsapp,
.atlas-theme .sg-back-to-top {
    transition: background-color var(--sg-motion-duration) var(--sg-motion-ease), border-color var(--sg-motion-duration) var(--sg-motion-ease), color var(--sg-motion-duration) var(--sg-motion-ease), opacity var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
.atlas-theme .sg-desktop-nav > ul > li > a,
.atlas-theme .sg-sticky-nav__links > ul > li > a,
.atlas-theme .sg-search-toggle,
.atlas-theme .sg-language-toggle,
.atlas-theme .sg-menu-toggle,
.atlas-theme .sg-sticky-nav__toggle,
.atlas-theme .sg-tabs [role="tab"],
.atlas-theme .sg-accordion button,
.atlas-theme [data-sg-filter] button {
    transition: background-color var(--sg-motion-duration) var(--sg-motion-ease), color var(--sg-motion-duration) var(--sg-motion-ease), transform var(--sg-motion-duration) var(--sg-motion-ease);
}
/* Atlas hover feedback is colour-only; cancel shared media zoom as well. */
.atlas-theme .sg-card[href]:hover .sg-card__media img,
.atlas-theme .sg-card[href]:focus-visible .sg-card__media img,
.atlas-theme .sg-pagination__project:hover .sg-pagination__project-media img,
.atlas-theme .sg-pagination__project:focus-visible .sg-pagination__project-media img { transform: none; }
/* Inner-page hero: precise vertical reveal after the preloader has fully exited. */
html:not(.sg-page-entered) body:not(.home).atlas-theme .sg-inner-hero__media {
    clip-path: inset(0 0 18% 0);
    opacity: .45;
    transform: scale(1.025);
}
html:not(.sg-page-entered) body:not(.home).atlas-theme .sg-inner-hero__content > * {
    opacity: 0;
    transform: translateY(24px);
}
html.sg-page-entered body:not(.home).atlas-theme .sg-inner-hero__media {
    animation: atlas-inner-hero-media var(--sg-motion-duration) var(--sg-motion-ease) both;
}
html.sg-page-entered body:not(.home).atlas-theme .sg-inner-hero__content > * {
    animation: atlas-inner-hero-copy var(--sg-motion-duration) var(--sg-motion-ease) both;
}
html.sg-page-entered body:not(.home).atlas-theme .sg-inner-hero__content > *:nth-child(2) { animation-delay: 70ms; }
html.sg-page-entered body:not(.home).atlas-theme .sg-inner-hero__content > *:nth-child(3) { animation-delay: 140ms; }
html.sg-page-entered body:not(.home).atlas-theme .sg-inner-hero__content > *:nth-child(4) { animation-delay: 210ms; }
html.sg-page-entered body:not(.home).atlas-theme .sg-inner-hero__content > *:nth-child(n+5) { animation-delay: 280ms; }
@keyframes atlas-inner-hero-media {
    from { clip-path: inset(0 0 18% 0); opacity: .45; transform: scale(1.025); }
    to { clip-path: inset(0); opacity: 1; transform: none; }
}
@keyframes atlas-inner-hero-copy {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .atlas-theme .sg-reveal { opacity: 1; transform: none; }
}
