            /* Banner layout is scoped to the About page. */
            .about-banner {display: grid; grid-template-columns: minmax(0, 60%) minmax(0, 40%); background: #d5d5d5;}
            .about-banner-visual {position: relative; display: flex; align-items: center; justify-content: center; min-height: 360px; padding: 30px 80px 30px 25px;}
            .about-banner-visual::before, .about-banner-visual::after {content: ""; position: absolute; inset: 0 -90px 0 0;}
            .about-banner-visual::before {background: #df1616; clip-path: polygon(0 0, 100% 0, calc(100% - 130px) 100%, 0 100%);}
            .about-banner-visual::after {background: url("../img/banner2.jpg") left center / max(210%, 1800px) auto no-repeat; clip-path: polygon(0 0, calc(100% - 14px) 0, calc(100% - 144px) 100%, 0 100%);}
            .about-banner .about-banner-title {position: relative; z-index: 1; margin: 0; padding: 22px 18px; background: rgba(255, 255, 255, .88); color: #349dda; font-size: clamp(26px, 2.8vw, 40px); line-height: 1.15; text-align: center; text-transform: uppercase;}
            .about-banner .about-banner-title span {display: block; color: #ff0000; margin-bottom: 5px;}
            .about-banner .about-contact {position: relative; z-index: 1; align-self: center; box-sizing: border-box; padding: 20px 24px 20px 8px; margin-left: 0; width: 100%; min-width: 0;}
            .about-contact .pseudo_border {text-align: center; margin: 0 0 25px 98px; font-size: 26px;}
            .about-contact .contact-title {font-size: 17px; line-height: 1.3; margin: 0 0 16px 98px;}
            .about-contact-fields {display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px;}
            .about-contact-fields:first-child {margin-left: 54px;}
            .about-contact-fields + .about-contact-fields {margin-left: 36px;}
            .about-contact input {height: 38px; min-width: 0; margin-bottom: 12px; padding: 0 12px; font-size: 13px;}
            .about-contact-fields input:first-child {clip-path: polygon(14px 0, 100% 0, 100% 100%, 0 100%); padding-left: 26px;}
            .about-contact textarea {height: 90px; min-height: 90px; margin-bottom: 14px; resize: none; padding: 10px 12px 10px 44px; font-size: 13px; clip-path: polygon(32px 0, 100% 0, 100% 100%, 0 100%);}
            .about-contact .button-default {margin-bottom: 0; padding: 7px 30px; font-size: 13px;}
            .about-contact input:focus, .about-contact textarea:focus {outline: 2px solid #16bce1; outline-offset: 2px;}
            .about-contact-fields input:first-child:focus, .about-contact textarea:focus {box-shadow: inset 0 0 0 2px #16bce1;}
            @media (max-width: 991px) {
                .about-banner {grid-template-columns: 1fr;}
                .about-banner-visual {min-height: 250px; padding: 25px;}
                .about-banner-visual::before {inset: 0; clip-path: none;}
                .about-banner-visual::after {inset: 0 0 7px; clip-path: none; background-size: cover;}
                .about-banner .about-contact {max-width: none; padding: 25px 30px; margin-left: 0; width: 100%;}
                .about-contact .pseudo_border, .about-contact .contact-title, .about-contact-fields:first-child, .about-contact-fields + .about-contact-fields {margin-left: 0;}
                .about-contact-fields input:first-child, .about-contact textarea {clip-path: none; padding-left: 12px;}
            }
            @media (max-width: 767px) {
                .about-banner .about-contact {padding: 25px 20px;}
                .about-banner .about-banner-title {font-size: 28px;}
                .about-contact .pseudo_border {font-size: 30px;}
            }
            @media (max-width: 480px) {
                .about-contact-fields {grid-template-columns: minmax(0, 1fr); gap: 0;}
            }

.about-banner .about-banner-title {max-width: 100%; overflow-wrap: break-word;}
