@media (max-width: 1180px) {
    .site-header {
        padding-right: 22px;
        padding-left: 22px;
    }

    .site-nav {
        gap: 2px;
    }

    .site-nav a {
        padding-right: 8px;
        padding-left: 8px;
        font-size: 0.88rem;
    }

    .header-search {
        max-width: 300px;
        margin-left: 0;
    }

    .hub-preview-layout {
        gap: 40px;
    }

    .profile-directory-hero .section-inner {
        gap: 32px;
    }

    .companion-room {
        grid-template-columns: minmax(320px, 34vw) minmax(0, 1fr);
    }
}

@media (max-width: 980px) {
    .site-header {
        flex-wrap: wrap;
    }

    .brand {
        order: 1;
    }

    .nav-toggle {
        order: 2;
        display: block;
        margin-left: auto;
    }

    .header-search {
        order: 3;
        flex: 1 1 100%;
        width: 100%;
        max-width: none;
    }

    .site-nav {
        position: absolute;
        top: 72px;
        right: 16px;
        left: 16px;
        display: none;
        flex-wrap: wrap;
        padding: 10px;
        border: 1px solid var(--line);
        border-radius: 8px;
        background: var(--white);
        box-shadow: var(--shadow);
    }

    .site-nav.is-open {
        display: flex;
    }

    .site-nav a {
        flex: 1 1 140px;
        justify-content: center;
    }

    .site-header {
        min-height: 118px;
    }

    .header-search-results {
        max-height: calc(100vh - 150px);
    }

    .profile-signal-grid,
    .profile-directory-tools .section-inner,
    .hub-metrics,
    .history-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .profile-directory-tools a:nth-child(3) {
        border-left: 1px solid var(--line);
    }

    .profile-directory-tools a:nth-child(-n + 2) {
        border-bottom: 1px solid var(--line);
    }

    .profile-directory-hero .section-inner,
    .hub-preview-layout,
    .profile-personal-grid,
    .experience-layout,
    .planner-layout,
    .settings-layout {
        grid-template-columns: 1fr;
    }

    .experience-sidebar,
    .planner-form-panel,
    .settings-nav {
        position: static;
    }

    .settings-nav {
        display: flex;
        flex-wrap: wrap;
    }

    .companion-content-grid,
    .feature-catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-profile-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-profile-grid .profile-card:nth-child(n + 5) {
        display: none;
    }

    .message-browser {
        grid-template-columns: 290px minmax(0, 1fr);
    }

    .message-thread-head {
        grid-template-columns: 48px minmax(0, 1fr);
    }

    .message-thread-head > div:last-child {
        grid-column: 1 / -1;
    }

    .hub-layout {
        grid-template-columns: 1fr;
    }

    .hub-sidebar {
        position: static;
        display: flex;
        overflow-x: auto;
    }

    .hub-sidebar button {
        flex: 0 0 auto;
    }

    .companion-room {
        grid-template-columns: 1fr;
    }

    .room-visual {
        position: relative;
        height: min(62vh, 620px);
    }

    .room-workspace {
        min-height: auto;
    }

    .room-page {
        overflow-x: visible;
    }
}

@media (max-width: 760px) {
    .page-hero.compact .section-inner,
    .companion-directory-hero .section-inner {
        padding-top: 52px;
        padding-bottom: 48px;
    }

    .hero {
        height: auto;
        min-height: 640px;
        background-position: 66% center;
    }


    .hero-content h1 {
        font-size: 3.8rem;
    }

    .page-hero.compact h1,
    .companion-directory-hero h1,
    .profile-directory-hero h1,
    .hub-hero h1,
    .local-center-hero h1,
    .planner-hero h1,
    .memory-hero h1,
    .settings-hero h1 {
        font-size: 3.2rem;
    }

    .experience-hero h1 {
        font-size: 3.5rem;
    }

    .home-profile-grid,
    .companion-content-grid,
    .feature-catalog-grid,
    .related-profile-grid,
    .related-experience-grid,
    .topic-prompt-grid,
    .builder-shell form,
    .quiz-options,
    .room-dashboard-grid,
    .settings-data-summary {
        grid-template-columns: 1fr;
    }

    .home-profile-grid .profile-card:nth-child(n + 4) {
        display: none;
    }

    .hub-preview-grid,
    .hub-data-grid {
        grid-template-columns: 1fr;
    }

    .hub-preview-copy h2 {
        font-size: 2.2rem;
    }

    .hub-preview-grid a {
        min-height: 88px;
    }

    .directory-toolbar,
    .hub-hero,
    .local-center-hero,
    .planner-hero,
    .memory-hero,
    .settings-hero,
    .planner-board-head {
        align-items: stretch;
        flex-direction: column;
    }

    .directory-search {
        flex-basis: auto;
        width: 100%;
    }

    .directory-categories {
        justify-content: flex-start;
    }

    .experience-hero-layout {
        grid-template-columns: 1fr;
        gap: 26px;
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .experience-hero-mark {
        width: 100%;
        height: 94px;
        aspect-ratio: auto;
    }

    .experience-section-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .journey-step-title {
        align-items: flex-start;
        flex-direction: column;
        gap: 2px;
    }

    .builder-shell form .button {
        grid-column: 1;
    }

    .quiz-result-actions,
    .quiz-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .quiz-actions > span {
        display: none;
    }

    .message-browser {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .message-inbox {
        max-height: 420px;
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }

    .message-thread {
        min-height: 620px;
    }

    .message-thread-head > div:last-child {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .message-thread-head .button {
        width: 100%;
    }

    .hub-today-grid {
        grid-template-columns: 1fr;
    }

    .hub-panel {
        min-height: auto;
        padding: 18px;
    }

    .hub-panel-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .hub-control-bar,
    .hub-planner-form {
        grid-template-columns: 1fr;
    }

    .hub-connection-list article {
        grid-template-columns: 52px minmax(0, 1fr);
    }

    .hub-connection-list > article > a {
        grid-column: 1 / -1;
        text-align: center;
    }

    .hub-plan-list article {
        grid-template-columns: 1fr;
    }

    .hub-plan-list button {
        justify-self: start;
    }

    .hub-journey-list article {
        grid-template-columns: 44px minmax(0, 1fr);
    }

    .hub-journey-list article > a {
        grid-column: 1 / -1;
        text-align: center;
    }

    .history-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .call-history-item {
        grid-template-columns: 52px minmax(0, 1fr);
    }

    .call-history-item .button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .memory-toolbar {
        grid-template-columns: 1fr;
    }

    .memory-grid {
        columns: 2 260px;
    }

    .settings-data-actions,
    .settings-inline-actions,
    .memory-hero-actions,
    .hub-actions {
        justify-content: flex-start;
    }

    .room-main {
        width: min(100% - 32px, 760px);
        padding: 34px 0;
    }

    .room-profile-copy {
        right: 20px;
        bottom: 24px;
        left: 20px;
    }

    .room-profile-copy h1 {
        font-size: 3.5rem;
    }

    .room-header,
    .room-footer {
        padding-right: 16px;
        padding-left: 16px;
    }

    .profile-actions .button {
        flex: 1 1 180px;
    }
}

@media (max-width: 560px) {
    .site-header {
        padding-right: 14px;
        padding-left: 14px;
    }

    .header-search-box input {
        font-size: 0.82rem;
    }

    .site-nav {
        right: 8px;
        left: 8px;
    }

    .site-nav a {
        flex-basis: 46%;
    }

    .nav-favorites-text {
        display: inline;
    }

    .hero-content {
        width: min(100% - 32px, 1180px);
    }

    .hero-content h1 {
        font-size: 3.15rem;
    }

    .page-hero.compact h1,
    .companion-directory-hero h1,
    .profile-directory-hero h1,
    .hub-hero h1,
    .local-center-hero h1,
    .planner-hero h1,
    .memory-hero h1,
    .settings-hero h1,
    .experience-hero h1 {
        font-size: 2.55rem;
    }

    .hero-copy {
        font-size: 1.05rem;
    }

    .hero-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .hero-actions .button {
        width: 100%;
    }

    .profile-signal-grid,
    .profile-directory-tools .section-inner,
    .hub-metrics,
    .history-metrics {
        grid-template-columns: 1fr;
    }

    .profile-directory-tools a,
    .profile-directory-tools a:first-child,
    .profile-directory-tools a:nth-child(3) {
        border-right: 1px solid var(--line);
        border-bottom: 1px solid var(--line);
        border-left: 1px solid var(--line);
    }

    .profile-directory-search > div {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .profile-directory-search .button {
        grid-column: 1 / -1;
        width: calc(100% + 2px);
        margin: 0 -1px -1px;
        border-radius: 0 0 6px 6px;
    }

    .profile-heading-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .profile-save-inline {
        align-self: flex-start;
    }

    .compare-columns,
    .form-row {
        grid-template-columns: 1fr;
    }

    .compare-columns {
        gap: 14px;
    }

    .compare-divider {
        grid-template-rows: auto;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        min-height: 20px;
    }

    .compare-divider::before,
    .compare-divider::after {
        width: 100%;
        height: 1px;
    }

    .changelog-list > article {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .help-layout {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .help-index {
        position: static;
    }

    .journey-steps li {
        grid-template-columns: 38px minmax(0, 1fr);
        gap: 10px;
        padding: 15px;
    }

    .journey-step-check {
        width: 36px;
        height: 36px;
    }

    .builder-shell,
    .quiz-shell {
        padding: 18px;
    }

    .message-thread-head {
        grid-template-columns: 44px minmax(0, 1fr);
        padding: 14px;
    }

    .message-list {
        padding: 14px;
    }

    .message-item {
        max-width: 94%;
    }

    .message-thread-footer {
        gap: 8px;
        align-items: flex-start;
        flex-direction: column;
    }

    .hub-memory-list article {
        grid-template-columns: 1fr;
    }

    .memory-grid {
        columns: 1;
    }

    .calendar-plan {
        grid-template-columns: 54px minmax(0, 1fr);
    }

    .calendar-plan > img {
        display: none;
    }

    .calendar-plan-actions {
        grid-column: 1 / -1;
    }

    .settings-panel,
    .planner-form-panel,
    .planner-board {
        padding: 18px;
    }

    .settings-segments {
        width: 100%;
    }

    .settings-segments label {
        flex: 1;
    }

    .settings-segments span {
        text-align: center;
    }

    .room-visual {
        height: 58vh;
        min-height: 430px;
    }

    .room-primary-actions .button {
        flex: 1 1 45%;
    }

    .room-bond-stats {
        grid-template-columns: 1fr;
    }

    .room-footer {
        gap: 8px;
        align-items: flex-start;
        flex-direction: column;
        padding-top: 12px;
        padding-bottom: 12px;
    }
}
