/* ===============================
RESPONSIVE — single breakpoint 992px
Layout overrides only
================================ */

@media (max-width: 992px) {
  .container {
    max-width: 100%;
  }

  :root {
    --header-inline: 2rem;
  }

  .site-header {
    /* Figma-ish mobile top */
    padding-block-start: 1.6rem;
    padding-block-end: 1rem;
  }

  .site-header.is-sticky {
    padding-block-start: 1rem;
    padding-block-end: 1rem;
  }

  .site-header__inner {
    align-items: center;
    flex-wrap: wrap;
    gap: 1.6rem;
  }

  .site-logo,
  .site-header.is-sticky .site-logo {
    width: 14rem;
    height: 8rem;
  }

  .primary-nav,
  .btn--header {
    display: none;
  }

  .open-menu {
    display: inline-block;
  }

  .hero {
    min-height: 0;
  }

  .hero__media {
    inset: 0;
  }

  .hero__content {
    min-height: 64rem;
    justify-content: center;
    padding-block-start: 14rem;
    padding-block-end: 10rem;
    padding-inline: 2rem;
  }

  .hero__copy {
    width: 100%;
  }

  .hero__title {
    /* readable mobile scale with fixed rem root */
    font-size: 3.6rem;
    line-height: 4.2rem;
  }

  .hero__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

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

  .btn,
  .btn--outline,
  .btn--learn {
    width: 100%;
    min-width: 0;
  }

  .hero__banner {
    padding-inline: 2rem;
  }

  .hero__banner-text {
    font-size: 1.3rem;
    letter-spacing: 0.08rem;
  }

  .welcome {
    min-height: 0;
  }

  .welcome__decor-item {
    width: 16rem;
    height: 7.2rem;
  }

  .welcome__inner {
    flex-direction: column;
    gap: 4rem;
    padding-block: 6rem 6rem;
    padding-inline: 2rem;
  }

  .welcome__media {
    width: 100%;
    min-height: 0;
    aspect-ratio: 775 / 835;
  }

  .welcome__image--primary {
    width: 72%;
    height: auto;
    aspect-ratio: 556 / 611;
  }

  .welcome__image--secondary {
    inset-inline-start: 32%;
    inset-block-start: 44%;
    width: 56%;
    height: auto;
    aspect-ratio: 433 / 469;
    border-width: 0.8rem;
  }

  .welcome__badge {
    inset-inline-start: 58%;
    inset-block-start: 22%;
    width: 28%;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .welcome__content {
    width: 100%;
    gap: 3.2rem;
  }

  .welcome__eyebrow-text {
    font-size: 2.2rem;
  }

  .welcome__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .welcome__text {
    margin-block-start: 2rem;
    font-size: 1.8rem;
    line-height: 2.8rem;
  }

  .welcome__highlights {
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
  }

  .welcome__highlight {
    max-width: 100%;
  }

  .welcome__highlight-text {
    font-size: 1.8rem;
    line-height: 2.6rem;
  }

  .welcome__checklist {
    grid-template-columns: 1fr;
    max-width: 100%;
    column-gap: 0;
    row-gap: 1.6rem;
    padding-block: 2.4rem;
  }

  .welcome__checklist span {
    white-space: normal;
    font-size: 1.6rem;
    line-height: 2.2rem;
  }

  .btn--welcome {
    width: 100%;
    justify-content: center;
  }

  .apex-band {
    min-height: 0;
  }

  .apex-band__inner {
    gap: 2.4rem;
    padding-block: 4.8rem;
    padding-inline: 2rem;
  }

  .apex-band__top {
    flex-direction: column;
    gap: 2.4rem;
  }

  .apex-band__title,
  .apex-band__copy {
    width: 100%;
  }

  .apex-band__title {
    font-size: 2.4rem;
    line-height: 3.4rem;
  }

  .apex-band__copy,
  .apex-band__footer-text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .apex-band__footer {
    padding-block: 2.4rem;
  }

  .services__pin {
    height: auto;
    min-height: 0;
    max-height: none;
  }

  .services__glow {
    inset-inline-start: auto;
    inset-inline-end: -8rem;
    inset-block-start: 4rem;
    width: 28rem;
    height: 28rem;
    opacity: 0.7;
  }

  .services__inner {
    flex-direction: column;
    gap: 3.2rem;
    height: auto;
    min-height: 0;
    max-height: none;
    padding-inline: 2rem;
    padding-block: 6rem;
  }

  .services__stage {
    flex-direction: column;
    gap: 3.2rem;
  }

  .services__left,
  .services__right {
    width: 100%;
    padding: 0;
  }

  .services__inner {
    padding-block-start: 2.4rem;
    padding-block-end: 2.4rem;
    max-height: none;
    min-height: 0;
    height: auto;
  }

  .services__intro {
    margin-block-end: 3.2rem;
    gap: 2rem;
    max-width: none;
  }

  .services__eyebrow-text {
    font-size: 2.2rem;
  }

  .services__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  /* Desktop tabs/panels hidden — accordion only on mobile */
  .services__tabs--desktop,
  .services__right--desktop {
    display: none;
  }

  .services__accordion {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
  }

  .services__acc-item {
    border-block-end: 1px solid rgba(255, 255, 255, 0.12);
  }

  .services__acc-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.6rem;
    width: 100%;
    padding-block: 2rem;
    padding-inline: 0;
    text-align: start;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.35;
    color: var(--color-muted);
    background: transparent;
  }

  .services__acc-item.is-open .services__acc-trigger {
    color: var(--color-accent);
  }

  .services__acc-icon {
    position: relative;
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
  }

  .services__acc-icon::before,
  .services__acc-icon::after {
    content: "";
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    width: 1.4rem;
    height: 0.2rem;
    background: currentColor;
    transform: translate(-50%, -50%);
  }

  .services__acc-icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: transform 0.25s ease, opacity 0.25s ease;
  }

  .services__acc-item.is-open .services__acc-icon::after {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(0deg);
  }

  .services__acc-panel {
    overflow: hidden;
    padding-block-end: 2rem;
  }

  .services__acc-media {
    display: block;
    width: 100%;
    margin-block-end: 1.6rem;
    border-radius: 1.2rem;
    overflow: hidden;
  }

  .services__acc-media img {
    width: 100%;
    height: 22rem;
    object-fit: cover;
  }

  .services__acc-text {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2.6rem;
    color: rgba(255, 255, 255, 0.9);
  }

  .btn--services-mobile {
    width: 100%;
    justify-content: center;
    margin-block-start: 2.4rem;
  }

  .contact-cta {
    flex-direction: column;
    min-height: 0;
  }

  .contact-cta__media,
  .contact-cta__content {
    width: 100%;
    min-height: 0;
  }

  .contact-cta__media {
    height: 36rem;
  }

  .contact-cta__parallax {
    inset: -8% 0;
    height: 116%;
  }

  .contact-cta__inner {
    gap: 3.2rem;
    padding-block: 4.8rem;
    padding-inline: 2rem;
  }

  .contact-cta__eyebrow-text {
    font-size: 2.2rem;
  }

  .contact-cta__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
    margin-block-end: 2.4rem;
  }

  .contact-cta__subtitle {
    font-size: 2.2rem;
    margin-block-end: 2.4rem;
  }

  .contact-cta__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
    padding-block-start: 2.4rem;
  }

  .contact-cta__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .btn--contact,
  .btn--request {
    width: 100%;
    justify-content: center;
  }

  .site-footer__top {
    padding: 4.8rem 2rem;
  }

  .site-footer__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 3.2rem;
  }

  .site-footer__logo {
    width: min(100%, 28rem);
    padding: 0;
  }

  .site-footer__info {
    width: 100%;
    gap: 3.2rem;
  }

  .site-footer__brand p:first-child {
    font-size: 2.8rem;
    line-height: 3.4rem;
  }

  .site-footer__brand p:last-child {
    font-size: 1.4rem;
    line-height: 2.4rem;
    letter-spacing: 0.08rem;
  }

  .site-footer__meta {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .site-footer__bottom {
    min-height: 0;
    padding: 2.4rem 2rem 2.8rem;
  }

  .site-footer__bottom-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6rem;
  }

  .site-footer__bottom-inner > p {
    white-space: normal;
    font-size: 1.4rem;
    line-height: 2.2rem;
  }

  .site-footer__nav-list {
    font-size: 1.4rem;
    line-height: 2.2rem;
  }

  .site-footer__nav-list > .menu-item:not(:first-child)::before {
    margin-inline: 1.2rem;
  }

  /* ---------- About page ---------- */
  .about-hero {
    height: 36rem;
  }

  .about-hero__content {
    padding-inline: 2rem;
    padding-block-end: 3.2rem;
  }

  .about-hero__title {
    font-size: 4.2rem;
    line-height: 5rem;
  }

  .about-partner__decor {
    display: none;
  }

  .about-partner__inner {
    flex-direction: column;
    gap: 4rem;
    padding: 6rem 2rem;
  }

  .about-partner__media {
    width: 100%;
    height: auto;
    aspect-ratio: 686 / 669;
    max-width: 48rem;
  }

  .about-partner__image--primary {
    width: 79%;
    height: 68%;
  }

  .about-partner__image--secondary {
    inset-block-start: 46%;
    inset-inline-start: 32%;
    width: 68%;
    height: 53%;
  }

  .about-partner__copy {
    width: 100%;
    gap: 2.4rem;
  }

  .about-partner__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .about-partner__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .why-choose {
    min-height: 0;
  }

  .why-choose__inner {
    gap: 4rem;
    padding: 6rem 2rem;
  }

  .why-choose__eyebrow-text {
    font-size: 2.2rem;
  }

  .why-choose__title {
    font-size: 3.2rem;
    line-height: 4rem;
  }

  .why-choose__lead {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .why-choose__grid {
    grid-template-columns: 1fr;
    border: 0;
  }

  .why-choose__item,
  .why-choose__item--support {
    grid-column: auto;
    gap: 2rem;
    padding: 3.2rem 0;
    border: 0;
    border-block-end: 1px solid rgba(255, 255, 255, 0.2);
  }

  .why-choose__icon {
    width: 7.2rem;
    height: 7.2rem;
  }

  .why-choose__item-title {
    font-size: 2.2rem;
    line-height: 2.8rem;
  }

  .why-choose__item p {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }

  .about-mission__inner {
    flex-direction: column;
    gap: 3.2rem;
    padding: 6rem 2rem;
  }

  .about-mission__copy {
    width: 100%;
    gap: 2.4rem;
  }

  .about-mission__eyebrow-text {
    font-size: 2.2rem;
  }

  .about-mission__title {
    font-size: 3.2rem;
    line-height: 4rem;
  }

  .about-mission__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .need-driver {
    min-height: 0;
  }

  .need-driver__inner {
    gap: 2.4rem;
    padding: 6.4rem 2rem;
  }

  .need-driver__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .need-driver__subtitle {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .need-driver__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .btn--need-request,
  .btn--need-contact {
    width: 100%;
    justify-content: center;
  }

  /* ---------- Services page ---------- */
  .services-intro {
    min-height: 0;
  }

  .services-intro__decor {
    display: none;
  }

  .services-intro__inner {
    gap: 2.4rem;
    padding: 6rem 2rem;
  }

  .services-intro__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .services-intro__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .service-loop__item,
  .service-loop__item.is-reverse {
    flex-direction: column;
    gap: 3.2rem;
    padding: 6rem 2rem;
  }

  .service-loop__media {
    width: 100%;
    max-width: 100%;
  }

  .service-loop__content {
    width: 100%;
    gap: 2rem;
  }

  .service-loop__index {
    font-size: 2.4rem;
  }

  .service-loop__title {
    font-size: 3rem;
    line-height: 3.6rem;
    max-width: none;
  }

  .service-loop__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .service-loop__offer {
    padding: 2.4rem 2rem;
    font-size: 1.5rem;
    line-height: 2.4rem;
    text-align: left;
  }

  .licence-areas {
    padding: 6rem 2rem;
  }

  .licence-areas__inner {
    gap: 6.4rem;
  }

  .licence-block {
    gap: 3.2rem;
  }

  .licence-block__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .licence-block__copy {
    gap: 1.6rem;
  }

  .licence-block__lead {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .licence-cards {
    gap: 2rem;
  }

  .licence-card {
    width: 100%;
    max-width: 33.4rem;
    min-height: 0;
    padding: 4rem 2.4rem 3.2rem;
    gap: 2rem;
  }

  .licence-card h3 {
    font-size: 3rem;
  }

  .licence-card p {
    font-size: 1.8rem;
    line-height: 2.4rem;
  }

  .areas-block {
    flex-direction: column;
    align-items: flex-start;
    gap: 3.2rem;
  }

  .areas-block__copy {
    width: 100%;
    gap: 2.4rem;
  }

  .areas-block__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .areas-block__regions {
    flex-wrap: wrap;
    font-size: 1.6rem;
    line-height: 2.4rem;
  }

  .areas-block__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .areas-block__map {
    width: 100%;
    max-width: 100%;
  }

  .services-commitment {
    flex-direction: column;
    min-height: 0;
  }

  .services-commitment__media img {
    min-height: 28rem;
    aspect-ratio: 1016 / 673;
  }

  .services-commitment__content {
    gap: 2.4rem;
    padding: 6rem 2rem;
  }

  .services-commitment__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .services-commitment__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  /* ---------- Contact page ---------- */
  .contact-intro__decor {
    display: none;
  }

  .contact-intro__inner {
    gap: 2.4rem;
    padding: 6rem 2rem;
  }

  .contact-intro__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .contact-intro__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .contact-panel {
    padding: 0 2rem 6rem;
  }

  .contact-panel__inner {
    flex-direction: column;
    border-radius: 1.6rem;
  }

  .contact-panel__info {
    flex: none;
    max-width: 100%;
    min-height: 0;
  }

  .contact-panel__info-content {
    gap: 2rem;
    padding: 4.8rem 2.4rem 5.6rem;
  }

  .contact-panel__info-title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .contact-panel__company {
    font-size: 2.2rem;
    line-height: 3rem;
  }

  .contact-panel__abn,
  .contact-panel__label,
  .contact-panel__value,
  .contact-panel__areas {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }

  .contact-panel__form-wrap {
    padding: 4.8rem 2.4rem;
  }

  .contact-panel__form-intro {
    gap: 2rem;
    margin-block-end: 3.2rem;
  }

  .contact-panel__eyebrow {
    font-size: 2.2rem;
  }

  .contact-panel__form-title {
    font-size: 3.2rem;
    line-height: 4rem;
  }

  .contact-panel__form-lead {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .contact-cf7 {
    gap: 2.4rem;
  }

  .contact-cf7__row,
  .contact-cf7__row--split {
    flex-direction: column;
    gap: 2.4rem;
  }

  .contact-cf7__stack {
    gap: 2.4rem;
  }

  .contact-cf7__textarea--tall,
  .contact-cf7 .contact-cf7__textarea--tall {
    min-height: 16rem;
  }

  .contact-cf7__label {
    margin-block-end: 1rem;
    font-size: 1.6rem;
    line-height: 2.4rem;
  }

  .btn--cf7-submit,
  .contact-cf7 .wpcf7-submit {
    width: 100%;
    justify-content: center;
  }

  .contact-partner {
    flex-direction: column;
    min-height: 0;
  }

  .contact-partner__media img {
    min-height: 28rem;
    aspect-ratio: 1016 / 673;
  }

  .contact-partner__content {
    gap: 2.4rem;
    padding: 6rem 2rem;
  }

  .contact-partner__title {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .contact-partner__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .contact-partner__cta {
    font-size: 2rem;
    line-height: 2.8rem;
  }

  .utility-page {
    min-height: 70vh;
    padding: 14rem 2rem 8rem;
  }

  .utility-page__title {
    font-size: 4.2rem;
    line-height: 5rem;
  }

  .utility-page__text {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }

  .utility-page__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .utility-page__actions .btn {
    width: 100%;
    justify-content: center;
  }
}
