/* Separate 0.1.2 design review candidate. Accepted patient text is unchanged. */
#header .brand[data-logo-slot] { gap: 0; }
.action-rail .rail-tourism {
    background: #034a5e;
    color: #fff;
    border-color: #034a5e;
}
.action-rail .rail-tourism-symbol {
    width: 112px;
    height: 63px;
}
.action-rail .rail-tourism .rail-label { color: #fff; }
.action-rail[data-collapsed=true] .rail-tourism-symbol {
    width: 32px;
    height: 18px;
}
@media (max-width: 999px), (max-height: 480px) {
    .action-rail[data-collapsed=false] .rail-tourism-symbol {
        width: 60px;
        height: 34px;
    }
}

/* Three source-triaged homepage groups. Keep every fact and caveat visible. */
.home-benefits .sectionhead p,
.home-visit-guide .sectionhead p { max-width: 60ch; }
.home-benefits .benefit-cards { gap: 24px; align-items: stretch; }
.home-benefits .benefit-cards article {
    padding: 24px;
    background: #fff;
    border: 1px solid #d9e5e7;
    border-radius: 12px;
}
.home-benefits .benefit-heading,
.home-benefits .benefit-cards article:first-child .benefit-heading {
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    align-items: flex-start;
    gap: 12px;
}
.home-benefits .benefit-icon { width: 44px; height: 44px; flex-basis: 44px; }
.home-benefits .benefit-icon img { width: 28px; height: 28px; }
.home-benefits .benefit-cards h3 { font-size: 18px; line-height: 1.4; }
.home-benefits .benefit-cards p { padding: 16px 0 0; line-height: 1.65; }

.home-visit-guide .visit-guide-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 24px;
}
.home-visit-guide .visit-guide-card {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 20px;
    column-gap: 16px;
    align-content: start;
    padding: 24px;
}
.home-visit-guide .visit-guide-card:last-child { grid-column: 1 / -1; }
.home-visit-guide .visit-guide-icon {
    grid-column: 1;
    grid-row: 1 / 3;
    width: 48px;
    height: 48px;
    margin: 0;
}
.home-visit-guide .visit-guide-card h3 { grid-column: 2; margin: 0 0 8px; }
.home-visit-guide .visit-guide-card p { grid-column: 2; line-height: 1.65; max-width: 65ch; }
.home-visit-guide .visit-guide-arrow { position: static; grid-column: 3; grid-row: 1 / 3; align-self: center; }

.home-journey-summary .journey-summary-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 40px;
    max-width: 1040px;
    margin: 32px auto 28px;
}
.home-journey-summary .journey-summary-cards article {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    column-gap: 16px;
    align-content: start;
}
.home-journey-summary .journey-circle { width: 48px; height: 48px; margin: 0; grid-row: 1 / 3; }
.home-journey-summary .journey-summary-cards h3 { grid-column: 2; font-size: 18px; margin: 0 0 10px; }
.home-journey-summary .journey-summary-cards p { grid-column: 2; margin: 0; font-size: 16px; line-height: 1.65; }

@media (max-width: 700px) {
    .home-benefits .benefit-cards { grid-template-columns: 1fr; gap: 16px; }
    .home-benefits .benefit-cards article { padding: 20px; }
    .home-visit-guide .visit-guide-cards,
    .home-journey-summary .journey-summary-cards { grid-template-columns: 1fr; gap: 20px; }
    .home-visit-guide .visit-guide-card { padding: 20px; }
}

/* A forced304px focus card cannot fit above a dock in a360px landscape view. */
@media (max-height: 480px) {
    .specialty-panel .specialty { min-height: 0; padding: 16px; }
    .specialty-panel .specialty-icon { width: 44px; height: 44px; margin-bottom: 12px; }
    .specialty-panel .specialty-icon img { width: 28px; height: 28px; }
    .specialty-panel .specialty h3 { font-size: 18px; line-height: 1.35; margin-bottom: 8px; }
    .specialty-panel .specialty p { line-height: 1.5; margin-bottom: 12px; }
}
