/* Keep the original hero type and rotation; let long roles use a second line.
 * The extracted desktop flex row otherwise shrinks "I'm a" to single letters.
 * Scope to the homepage hero so other animated headings retain their layout. */
@media (max-width: 480px) {
    body[data-route="main-home"] .block-b4f5c92 .headline {
        flex-wrap: wrap;
        align-items: baseline;
    }
    body[data-route="main-home"] .block-b4f5c92 .typed_before {
        white-space: nowrap;
        flex-shrink: 0;
    }
    body[data-route="main-home"] .block-b4f5c92 .words-wrapper {
        display: block;
        flex-basis: 100%;
        width: 100% !important; /* Overrides the animation's desktop pixel measurement. */
        max-width: 100%;
        min-width: 0;
        min-height: 2.4em; /* Reserve two original 1.2em lines for every role. */
    }
    body[data-route="main-home"] .block-b4f5c92 .words-wrapper b {
        white-space: normal;
    }
}
/* Native CF7 status text must remain visible for network errors as well as
 * normal server responses, without changing the untouched form geometry. */
.wpcf7 form .wpcf7-response-output.cm-feedback-visible:not(:empty) {
    display: block !important;
    visibility: visible;
}
/* The original 73px Allan title needs 325px for its longest word. Preserve the
 * original size from 375px up; only the narrowest phone widths need adjustment. */
@media (max-width: 374px) {
    body[data-route="main-training"] .layout-7489 .layout-element.block-7d552090 .layout-heading-title {
        font-size: clamp(63px, calc(20vw - 1px), 73px);
        word-break: normal;
        overflow-wrap: normal;
    }
}

/* Requested proportional logo reduction; original artwork is unchanged. */
.topnav #nt-logo{display:flex;align-items:center;flex:0 0 auto;max-width:100%}
.topnav #nt-logo img{width:240px!important;height:auto!important;max-width:100%;object-fit:contain;flex:0 0 auto}
/* The landscape original avoids enlarging the stacked mobile mark on tablets. */
@media(min-width:481px) and (max-width:1024px){
 .topnav #nt-logo .main-logo{display:block!important;width:200px!important}
 .topnav #nt-logo .mobile-logo{display:none!important}
}
@media(max-width:480px){.topnav #nt-logo .mobile-logo{width:100px!important}}
