.growth-page{max-width:1120px;margin:0 auto;padding:36px 20px 72px;color:#17212b}.growth-hero{max-width:850px;padding:16px 0 34px}.growth-hero h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1.06;letter-spacing:0;margin:8px 0 18px}.growth-hero>p:last-child{font-size:1.1rem;line-height:1.65}.growth-kicker{margin:0;color:#087f5b;font-size:.8rem;font-weight:700;text-transform:uppercase}.growth-band{padding:30px 0;border-top:1px solid #d7e0e5}.growth-band h2,.growth-lead h2{font-size:1.45rem;letter-spacing:0;margin-top:0}.growth-summary{font-size:1.15rem;line-height:1.65;max-width:850px}.muted-band{color:#52636e}.metric-grid,.event-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.metric-grid>div,.event-grid article{padding:16px;border:1px solid #d4dee3;border-radius:6px;background:#fff}.metric-grid span,.event-grid span{display:block;color:#60717d;font-size:.78rem}.metric-grid strong{display:block;margin-top:7px;font-size:1.15rem}.event-grid h3{font-size:1rem;margin:8px 0}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.table-scroll{overflow-x:auto}.hourly-table{width:100%;border-collapse:collapse;min-width:640px}.hourly-table th,.hourly-table td{text-align:left;padding:11px;border-bottom:1px solid #e0e6ea}.hourly-table th{font-size:.8rem;color:#52636e}.growth-actions{display:flex;flex-wrap:wrap;gap:10px;padding:24px 0}.growth-actions a,.text-link{display:inline-flex;padding:11px 16px;border-radius:4px;background:#087f5b;color:#fff!important;text-decoration:none;font-weight:700}.growth-actions a:nth-child(even){background:#244b5a}.city-links>div{display:flex;flex-wrap:wrap;gap:9px}.city-links a{color:#075f47;padding:4px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px}.split li{margin:10px 0;line-height:1.5}.growth-lead{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;padding:34px 0;border-top:1px solid #d7e0e5}.lead-form{display:grid;gap:12px}.lead-form label{display:grid;gap:5px;font-weight:600}.lead-form input,.lead-form select,.lead-form textarea{box-sizing:border-box;width:100%;padding:10px;border:1px solid #aebac1;border-radius:4px;font:inherit}.lead-form button{justify-self:start;padding:11px 18px;border:0;border-radius:4px;background:#087f5b;color:#fff;font-weight:700}.article-list article{padding:24px 0;border-top:1px solid #d7e0e5}.article-list h2{margin:7px 0}.article-list a{color:#173f4d}.article-body{max-width:780px;line-height:1.75}.errorlist{color:#a61b1b}.form-success{padding:12px;border-left:4px solid #087f5b;background:#e8f7f1}@media(max-width:760px){.metric-grid,.event-grid{grid-template-columns:1fr 1fr}.split,.growth-lead{grid-template-columns:1fr;gap:24px}.growth-page{padding-top:20px}}@media(max-width:420px){.metric-grid,.event-grid{grid-template-columns:1fr}}
/* City SEO theme */
.growth-page[data-city] {
    color: #e7f1f5;
    font-size: 1rem;
    line-height: 1.65;
}

.growth-page[data-city] .growth-hero {
    max-width: 78ch;
    padding-bottom: 38px;
}

.growth-page[data-city] .growth-hero h1 {
    color: #c8edfb;
    text-wrap: balance;
    text-shadow: 0 0 18px rgba(162, 213, 242, 0.16);
}

.growth-page[data-city] .growth-hero > p:last-child,
.growth-page[data-city] .growth-summary,
.growth-page[data-city] .growth-band > p {
    max-width: 72ch;
    color: #d7e5eb;
}

.growth-page[data-city] .growth-kicker {
    color: #f4b06a;
}

.growth-page[data-city] .growth-band {
    border-color: rgba(162, 213, 242, 0.2);
}

.growth-page[data-city] .growth-band h2,
.growth-page[data-city] .growth-lead h2 {
    color: #a9def4;
    line-height: 1.25;
    text-wrap: balance;
}

.growth-page[data-city] .muted-band,
.growth-page[data-city] #forecast-status {
    color: #bfd0d8;
}

.growth-page[data-city] .metric-grid > div,
.growth-page[data-city] .event-grid article {
    color: #eaf4f7;
    background: #10212b;
    border-color: rgba(162, 213, 242, 0.24);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.2);
}

.growth-page[data-city] .metric-grid span,
.growth-page[data-city] .event-grid span {
    color: #aac1cb;
}

.growth-page[data-city] .metric-grid strong,
.growth-page[data-city] .event-grid h3,
.growth-page[data-city] .event-grid p {
    color: #f4f8fa;
}

.growth-page[data-city] .table-scroll {
    border: 1px solid rgba(162, 213, 242, 0.22);
    border-radius: 6px;
    background: #0b1922;
}

.growth-page[data-city] .hourly-table th {
    color: #bde7f7;
    background: #132a36;
    font-weight: 700;
}

.growth-page[data-city] .hourly-table td {
    color: #e4eef2;
}

.growth-page[data-city] .hourly-table th,
.growth-page[data-city] .hourly-table td {
    border-color: rgba(162, 213, 242, 0.14);
    padding: 13px 14px;
}

.growth-page[data-city] .hourly-table tbody tr:nth-child(even) {
    background: rgba(162, 213, 242, 0.045);
}

.growth-page[data-city] .hourly-table tbody tr:hover {
    background: rgba(244, 176, 106, 0.08);
}

.growth-page[data-city] .growth-actions a {
    background: #13795b;
    color: #ffffff !important;
    box-shadow: 0 5px 16px rgba(0, 0, 0, 0.22);
}

.growth-page[data-city] .growth-actions a:nth-child(even) {
    background: #245f78;
}

.growth-page[data-city] .city-links a,
.growth-page[data-city] .text-link {
    color: #f3b778;
    text-decoration-color: rgba(243, 183, 120, 0.55);
    text-underline-offset: 3px;
}

.growth-page[data-city] a:hover {
    color: #ffffff;
}

.growth-page[data-city] a:focus-visible,
.growth-page[data-city] button:focus-visible,
.growth-page[data-city] input:focus-visible,
.growth-page[data-city] select:focus-visible,
.growth-page[data-city] textarea:focus-visible {
    outline: 3px solid #f4b06a;
    outline-offset: 3px;
}

.growth-page[data-city] .growth-lead {
    border-color: rgba(162, 213, 242, 0.2);
}

.growth-page[data-city] .lead-form label {
    color: #dce9ee;
}

.growth-page[data-city] .lead-form input,
.growth-page[data-city] .lead-form select,
.growth-page[data-city] .lead-form textarea {
    color: #f4f8fa;
    background: #10212b;
    border-color: #54717e;
}

.growth-page[data-city] .lead-form input::placeholder,
.growth-page[data-city] .lead-form textarea::placeholder {
    color: #9db2bb;
}

@media (max-width: 760px) {
    .growth-page[data-city] {
        padding-inline: 16px;
    }

    .growth-page[data-city] .growth-hero h1 {
        line-height: 1.12;
    }

    .growth-page[data-city] .metric-grid > div,
    .growth-page[data-city] .event-grid article {
        padding: 15px;
    }
}
/* Hourly weather impact cues */
.growth-page[data-city] .forecast-note,
.growth-page[data-city] .forecast-caveat {
    max-width: 78ch;
    margin: 8px 0 16px;
    color: #c5d6dd;
    font-size: .9rem;
    line-height: 1.55;
}
.growth-page[data-city] .forecast-caveat {
    margin: 12px 0 0;
    color: #aebfc7;
    font-size: .8rem;
}
.growth-page[data-city] .weather-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin: 0 0 16px;
    color: #cadbe2;
    font-size: .8rem;
}
.growth-page[data-city] .weather-legend span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.growth-page[data-city] .impact-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
}
.growth-page[data-city] .weather-value {
    display: block;
    color: #f4f8fa;
    font-size: 1rem;
    line-height: 1.25;
}
.growth-page[data-city] .impact-label {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    margin-top: 4px;
    padding: 1px 7px;
    border: 1px solid currentColor;
    border-radius: 3px;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.35;
    white-space: nowrap;
}
.growth-page[data-city] .impact-good { color: #7ed9ae; }
.growth-page[data-city] .impact-notice { color: #8dd4f0; }
.growth-page[data-city] .impact-warning { color: #f3bd72; }
.growth-page[data-city] .impact-danger { color: #ff938a; }
.growth-page[data-city] .impact-neutral { color: #aebfc7; }
.growth-page[data-city] .hourly-table th:nth-child(2),
.growth-page[data-city] .hourly-table td:nth-child(2),
.growth-page[data-city] .hourly-table th:nth-child(4),
.growth-page[data-city] .hourly-table td:nth-child(4),
.growth-page[data-city] .hourly-table th:nth-child(5),
.growth-page[data-city] .hourly-table td:nth-child(5) {
    min-width: 118px;
}
@media (max-width: 760px) {
    .growth-page[data-city] .weather-legend { gap: 7px 12px; }
    .growth-page[data-city] .hourly-table th,
    .growth-page[data-city] .hourly-table td { padding: 11px 12px; }
}
/* Wider desktop copy and stacked mobile hourly forecast */
@media (min-width: 761px) {
    .growth-page[data-city] .growth-hero {
        max-width: 960px;
    }
    .growth-page[data-city] .growth-hero > p:last-child,
    .growth-page[data-city] .growth-summary,
    .growth-page[data-city] .growth-band > p,
    .growth-page[data-city] .forecast-note,
    .growth-page[data-city] .forecast-caveat {
        max-width: 105ch;
    }
}
@media (max-width: 760px) {
    .growth-page[data-city] .hourly-forecast .table-scroll {
        overflow: visible;
        border: 0;
        background: transparent;
    }
    .growth-page[data-city] .hourly-table {
        display: block;
        width: 100%;
        min-width: 0;
    }
    .growth-page[data-city] .hourly-table thead {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }
    .growth-page[data-city] .hourly-table tbody {
        display: grid;
        gap: 10px;
    }
    .growth-page[data-city] .hourly-table tbody tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: hidden;
        border: 1px solid rgba(162, 213, 242, 0.22);
        border-radius: 6px;
        background: #0b1922;
    }
    .growth-page[data-city] .hourly-table tbody tr:nth-child(even) {
        background: #10212b;
    }
    .growth-page[data-city] .hourly-table td,
    .growth-page[data-city] .hourly-table td:nth-child(2),
    .growth-page[data-city] .hourly-table td:nth-child(4),
    .growth-page[data-city] .hourly-table td:nth-child(5) {
        display: block;
        box-sizing: border-box;
        min-width: 0;
        padding: 10px 12px;
        border-right: 1px solid rgba(162, 213, 242, 0.12);
        border-bottom: 1px solid rgba(162, 213, 242, 0.12);
    }
    .growth-page[data-city] .hourly-table td:nth-child(odd):not(:first-child) {
        border-right: 0;
    }
    .growth-page[data-city] .hourly-table td:nth-child(4),
    .growth-page[data-city] .hourly-table td:nth-child(5) {
        border-bottom: 0;
    }
    .growth-page[data-city] .hourly-table td:first-child {
        grid-column: 1 / -1;
        border-right: 0;
        background: #132a36;
        color: #d8edf5;
        font-weight: 700;
    }
    .growth-page[data-city] .hourly-table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 4px;
        color: #91abb7;
        font-size: .68rem;
        font-weight: 700;
        line-height: 1.3;
        text-transform: uppercase;
    }
    .growth-page[data-city] .hourly-table td:first-child::before {
        display: none;
    }
    .growth-page[data-city] .impact-label {
        max-width: 100%;
        white-space: normal;
    }
}