/* App packaging agency: interactive relay UI */
.agency-footer-reveal {position: relative; width: 100%;}
/* Clip only the footer's own space, leaving page content and its overlays untouched. */
.agency-footer-reveal.is-active {height: var(--agency-footer-height); clip-path: inset(0);}
.agency-footer-reveal.is-active > footer.agency-footer {position: fixed; right: 0; bottom: 0; left: 0; width: 100%;}

footer.agency-footer {
    --agency-footer-ink: #17181c;
    --agency-footer-muted: #777a83;
    --agency-footer-line: #e5e5df;
    --agency-footer-iris: var(--rb-main-color, #5a50f5);
    --agency-footer-coral: var(--rb-main-color, #ff7a62);
    margin: 0;
    border: 0;
    color: var(--agency-footer-ink);
    background: var(--rb-main-bg, #fff);
}
.agency-footer *, .agency-footer *::before, .agency-footer *::after {box-sizing: border-box;}
.agency-footer__shell {width: min(var(--rb-footer-width, 1200px), calc(100% - 48px)); margin: 0 auto;}
.agency-footer--fluid .agency-footer__shell {width: 100%; padding-right: 40px; padding-left: 40px;}
.agency-footer__cta {border-top: 1px solid var(--agency-footer-line); border-bottom: 1px solid var(--agency-footer-line); background: #f6f6f2;}
.agency-footer__cta-inner {display: flex; align-items: center; justify-content: space-between; gap: 25px; min-height: 122px;}
.agency-footer__cta p {margin: 0; color: var(--agency-footer-iris); font-size: 11px; font-weight: 800; letter-spacing: .1em;}
.agency-footer__cta a {display: inline-flex; align-items: center; gap: 18px; color: var(--agency-footer-ink); font-size: clamp(21px, 2.5vw, 31px); font-weight: 800; letter-spacing: -.06em;}
.agency-footer__cta a .ti {color: var(--agency-footer-coral); font-size: 27px; line-height: 1;}
.agency-footer__main {padding: 76px 0 26px;}
.agency-footer__top {display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; padding-bottom: 65px; border-bottom: 1px solid var(--agency-footer-line);}
.agency-footer__brand {display: block; width: min(218px, 50vw);}
.agency-footer__brand img {display: block; max-width: 100%; height: 42px; object-fit: contain; object-position: left center;}
.agency-footer__top p {margin: 0; color: var(--agency-footer-muted); font-size: 14px; line-height: 1.65; text-align: right;}
.agency-footer__grid {display: grid; grid-template-columns: 1.1fr .8fr 1.1fr; gap: 34px; padding: 45px 0 52px;}
.agency-footer h2 {margin: 0 0 18px; color: var(--agency-footer-iris); font-size: 11px; font-weight: 800; letter-spacing: .1em;}
.agency-footer__company, .agency-footer__links {display: flex; align-items: flex-start; flex-direction: column;}
.agency-footer__company a, .agency-footer__links a {color: var(--agency-footer-ink); font-size: 14px; line-height: 1.8;}
.agency-footer__company a:first-of-type {margin-bottom: 8px; font-size: 18px; font-weight: 800; letter-spacing: -.04em;}
.agency-footer__company a .ti {margin-left: 9px; color: var(--agency-footer-coral); font-size: 20px; line-height: 1;}
.agency-footer__links a + a {margin-top: 4px;}
.agency-footer__status {padding-left: 40px; border-left: 1px solid var(--agency-footer-line);}
.agency-footer__status p {margin: 0; color: var(--agency-footer-ink); font-size: 16px; font-weight: 700; line-height: 1.5; letter-spacing: -.035em;}
.agency-footer__status span {display: flex; align-items: center; gap: 8px; margin-top: 23px; color: var(--agency-footer-muted); font-size: 9px; font-weight: 800; letter-spacing: .08em;}
.agency-footer__status i {width: 7px; height: 7px; border-radius: 50%; background: #22b88a; box-shadow: 0 0 0 4px rgba(34,184,138,.12);}
.agency-footer__details {display: flex; flex-wrap: wrap; gap: 5px 17px; padding: 18px 0; border-top: 1px solid var(--agency-footer-line); color: var(--agency-footer-muted); font-size: 11px; line-height: 1.6;}
.agency-footer__bottom {display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 23px; border-top: 1px solid var(--agency-footer-line); color: #999b9e; font-size: 10px; font-weight: 800; letter-spacing: .06em;}
.agency-footer__bottom a {display: inline-flex; align-items: center; gap: 6px; color: var(--agency-footer-ink);}
.agency-footer__bottom a .ti {font-size: 14px; line-height: 1;}
@media (hover: hover) and (pointer: fine) {
    .agency-footer__cta a:hover {color: var(--agency-footer-iris);}
}
@media (max-width: 1024px) {
    .agency-footer__main {padding-top: 59px;}
    .agency-footer__top {padding-bottom: 48px;}
    .agency-footer__grid {grid-template-columns: 1fr 1fr;}
    .agency-footer__status {grid-column: 1 / -1; padding: 28px 0 0; border-top: 1px solid var(--agency-footer-line); border-left: 0;}
}
@media (max-width: 640px) {
    .agency-footer__shell {width: calc(100% - 40px);}
    .agency-footer--fluid .agency-footer__shell {width: calc(100% - 40px); padding-right: 0; padding-left: 0;}
    .agency-footer__cta-inner {align-items: flex-start; flex-direction: column; justify-content: center; min-height: 162px;}
    .agency-footer__cta a {font-size: 25px;}
    .agency-footer__top {align-items: flex-start; flex-direction: column; gap: 23px;}
    .agency-footer__top p {text-align: left;}
    .agency-footer__grid {grid-template-columns: 1fr; gap: 36px;}
    .agency-footer__status {grid-column: auto;}
    .agency-footer__bottom {align-items: flex-start; flex-direction: column; padding-bottom: 9px; font-size: 9px;}
}

@media print, (prefers-reduced-motion: reduce) {
    .agency-footer-reveal.is-active {height: auto; clip-path: none;}
    .agency-footer-reveal.is-active > footer.agency-footer {position: static;}
}
