@media (max-width: 1024px) {
html { font-size: 17px; }
.my-content { padding: 5rem 3rem; }
.my-heading { font-size: clamp(2.22rem, 5vw, 2.96rem); }
.foot-logo { width: 20rem; }
}

@media (max-width: 768px) {
html { font-size: 16px; }
.site-header { padding: 1rem; }
main > .my:first-child .my-content:not(.sw):not(.se) { justify-content: flex-end; }
.main-navigation { display: none; }
.main-navigation.is-open {
display: block;
position: absolute;
top: 100%; left: 0; right: 0;
background: #0a0a0a;
padding: 1rem;
}
.main-navigation.is-open .nav-list { flex-direction: column; }
.main-navigation.is-open .nav-link { display: flex; align-items: center; padding: 1rem; min-height: 2.75rem; }
.mobile-menu-toggle { display: block; }

.my-content { padding: 4rem 2rem; }
.my-heading { font-size: clamp(1.67rem, 5vw, 2.22rem); }
.my-text, .my-list h3 { font-size: 1.125rem; line-height: 1.6; }
.my-text { max-width: 100%; }
.my-list { max-width: 100%; }
.my-button { padding: 0.875rem 1.75rem; min-height: 2.75rem; }
.my-note { font-size: 0.875rem; }

.foot-cta .my-content { padding: 3rem 2rem; }
.foot-logo { width: 18rem; margin-bottom: 1.5rem; }
.foot-main { padding: 2rem 1rem; }
.foot-row { flex-direction: column; gap: 2rem; }
.foot-contact { font-size: 0.875rem; }
.foot-nav .foot-link { font-size: 0.875rem; }
.foot-copy, .foot-legal .foot-link { font-size: 0.875rem; }
.foot-legal { justify-content: flex-start; }
}

@media (max-width: 480px) {
html { font-size: 16px; }
.my-content { padding: 3rem 1.5rem; }
.my-heading { font-size: clamp(1.5rem, 6vw, 1.95rem); }
.my-text, .my-list h3 { font-size: 1rem; }
.my-button { padding: 0.875rem 1.5rem; margin-top: 1.5rem; }
.my-note { font-size: 0.8125rem; margin-top: 1.5rem; }

.foot-logo { width: 14rem; }
.foot-main { padding: 1.5rem 1rem; }
.foot-legal { flex-direction: column; align-items: flex-start; gap: 0.75rem; }
}