/* Compact desktop and tablet landscape */
@media (max-width: 1080px) {
    .site-nav { gap: 1rem; }
    .desktop-nav { display: none; }
    .nav-account { display: none; }
    .nav-toggle { display: block; }
    .site-footer__grid { grid-template-columns: 1.35fr 1fr 1fr; }
    .footer-contact { grid-column: 1 / -1; }
    .resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Tablet portrait */
@media (max-width: 920px) {
    .utility-bar__inner, .site-nav, .section, .page-wrap, .page-hero, .home-hero, .home-stats, .message-stack {
        width: min(100% - 2.5rem, var(--content-width));
    }

    .utility-bar__inner { justify-content: center; min-height: 34px; }
    .utility-bar__inner > p { display: none; }
    .site-nav { min-height: 74px; }

    .home-hero { grid-template-columns: 1fr; gap: 2rem; }
    .home-hero__visual { min-height: 330px; }
    .hero-portrait { margin: 0 auto; }
    .hero-note { left: max(0px, calc(50% - 180px)); }

    .program-grid, .event-grid, .weekly-program-grid, .program-flyer-grid,
    .ministry-grid, .features-grid, .testimony-grid, .member-program-grid,
    .member-quick-grid, .giving-grid, .leader-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    .split-feature, .event-feature, .contact-layout, .prayer-layout, .auth-layout,
    .daily-word, .member-dashboard__grid, .profile-detail { grid-template-columns: 1fr; }

    .control-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .leader-control-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .editor-layout { grid-template-columns: 1fr; }
    .split-feature__image { min-height: 360px; }
    .story-grid, .content-grid, .update-grid { grid-template-columns: 1fr; }
    .dashboard-lists { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .member-welcome { grid-template-columns: auto minmax(0, 1fr); }
    .member-welcome__actions { grid-column: 1 / -1; justify-content: flex-start; }
}

/* Large phones and small tablets */
@media (max-width: 640px) {
    .site-nav, .section, .page-wrap, .page-hero, .home-hero, .home-stats, .message-stack,
    .utility-bar__inner { width: min(100% - 2rem, var(--content-width)); }

    .site-nav { min-height: 68px; gap: .65rem; }
    .brand { gap: .55rem; min-width: 0; }
    .site-nav .brand__mark { width: 98px; height: 60px; border-radius: 11px; }
    .brand__name { font-size: .94rem; }
    .brand__tagline { font-size: .48rem; letter-spacing: .09em; }
    .nav-actions { gap: .4rem; }
    .nav-actions .btn { min-height: 40px; padding-inline: .72rem; }
    .nav-toggle { width: 42px; height: 40px; border-radius: 11px; }
    .nav-drawer { width: min(360px, calc(100% - .75rem)); padding: 1.15rem; }
    .nav-drawer__eyebrow { margin-top: 1.65rem; }
    .nav-drawer__links a { padding-block: .66rem; }

    .home-hero, .page-hero { margin-top: 1rem; padding: 1.55rem; border-radius: 23px; }
    .home-hero h1 { font-size: clamp(2.25rem, 11vw, 3.35rem); }
    .home-hero__content > p:not(.eyebrow), .page-hero p:not(.eyebrow) { font-size: .96rem; }
    .home-hero__visual { min-height: 270px; }
    .hero-portrait { width: min(100%, 250px); }
    .hero-note { bottom: .5rem; left: 0; max-width: 195px; padding: .7rem; }
    .home-stats { grid-template-columns: 1fr; border-radius: 0 0 18px 18px; }
    .stat { padding: 1rem 1.2rem; }

    .section { margin-top: 3.7rem; }
    .section-heading, .member-section__heading { display: block; margin-bottom: 1.3rem; }
    .section-heading__copy { margin-top: .7rem; }
    .member-section__heading > .text-link { display: inline-block; margin-top: .75rem; }

    .program-grid, .event-grid, .weekly-program-grid, .program-flyer-grid,
    .ministry-grid, .features-grid, .testimony-grid, .resource-grid, .leader-grid,
    .giving-grid, .dashboard-grid, .dashboard-lists, .control-workspace,
    .leader-control-list, .member-program-grid, .member-quick-grid { grid-template-columns: 1fr; }

    .program-card { min-height: 180px; }
    .event-gallery { grid-template-columns: 1fr; }
    .event-gallery img { height: 230px; }
    .sermon-item { grid-template-columns: auto 1fr; }
    .sermon-item__action { grid-column: 2; justify-self: start; }
    .profile-photo-large { max-width: 340px; }

    .member-welcome { gap: 1rem; padding: 1.45rem; border-radius: 23px; }
    .member-welcome__avatar { width: 54px; height: 54px; font-size: 1.45rem; }
    .member-welcome h1 { font-size: clamp(1.65rem, 8vw, 2.25rem); }
    .member-welcome__actions { gap: .6rem; }
    .member-welcome__actions .btn, .member-prayer-toggle { min-height: 42px; }
    .member-devotional, .member-prayer, .member-quick-card { padding: 1.3rem; border-radius: 18px; }

    .control-hero { display: block; padding: 1.6rem; border-radius: 23px; }
    .control-hero__actions { margin-top: 1.25rem; }
    .control-panel { padding: 1.2rem; border-radius: 18px; }
    .control-panel--wide { grid-column: auto; }
    .control-panel__heading { align-items: flex-start; flex-direction: column; gap: .7rem; }
    .control-panel__heading .btn { width: 100%; }
    .control-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; }
    .control-stats article { padding: 1rem; }
    .control-stats strong { font-size: 1.9rem; }
    .control-stats span, .control-stats small { font-size: .67rem; }
    .control-row { align-items: flex-start; flex-wrap: wrap; gap: .6rem; }
    .control-row__content { flex-basis: min(100%, 190px); }
    .control-row__action { margin-left: auto; }
    .control-row p, .leader-control-row p { white-space: normal; }
    .leader-control-row { grid-template-columns: 42px minmax(0, 1fr) auto; padding: .8rem; }
    .control-form { grid-template-columns: 1fr; }
    .control-field, .control-field:has(textarea), .control-field:has(input[type="url"]),
    .control-field:has(input[type="file"]), .control-field--checkbox { grid-column: auto; }
    .editor-card, .editor-aside { padding: 1.5rem; }
    .editor-actions { align-items: stretch; flex-direction: column-reverse; }
    .editor-actions .btn { width: 100%; }

    .alert { align-items: flex-start; padding: .75rem .85rem; }
    .site-footer { margin-top: 4rem; padding: 3rem 1rem 1.2rem; }
    .site-footer__grid { grid-template-columns: 1fr; gap: 1.8rem; }
    .footer-contact { grid-column: auto; }
    .site-footer__bottom { align-items: flex-start; flex-direction: column; margin-top: 2.2rem; }
}

/* Narrow phones */
@media (max-width: 420px) {
    .utility-bar__links { gap: .7rem; font-size: .69rem; }
    .site-nav .brand__mark { width: 84px; height: 50px; }
    .brand__tagline { display: none; }
    .nav-actions .btn { padding-inline: .62rem; font-size: .82rem; }
    .hero-actions { display: grid; grid-template-columns: 1fr; }
    .hero-actions .btn { width: 100%; }
    .member-welcome__actions { display: grid; grid-template-columns: 1fr; width: 100%; }
    .member-welcome__actions .btn, .member-prayer-toggle { width: 100%; }
    .control-stats article { padding: .9rem .8rem; }
    .control-stats strong { font-size: 1.65rem; }
    .control-stats small { display: none; }
}

@media (hover: none) {
    .btn:hover, .program-card:hover, .member-program:hover { transform: none; }
}

@media (max-width: 920px) {
    .beliefs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .founder-profile { grid-template-columns: 1fr; }
    .founder-profile__image { min-height: 360px; }
}

@media (max-width: 640px) {
    .beliefs-grid, .control-inbox-grid { grid-template-columns: 1fr; }
    .outreach-callout { display: block; padding: 1.55rem; border-radius: 23px; }
    .outreach-callout__actions { margin-top: 1.2rem; }
    .outreach-callout__actions .btn { width: 100%; }
    .control-panel__actions { width: 100%; }
    .control-panel__actions .btn { flex: 1 1 160px; }
    .control-panel__note { max-width: none; text-align: left; }
    .founder-profile__image { min-height: 300px; }
}
