/* ===============================
   Tablet: 768px - 1199px
================================= */
@media (min-width: 768px) and (max-width: 1199px) {
    :root {
        --section-padding: 80px;
    }

    h1 {
        font-size: 42px;
    }

    h2 {
        font-size: 34px;
    }

    h3 {
        font-size: 26px;
    }

    body {
        font-size: 17px;
    }

    .site-nav,
    .site-header__cta {
        display: none;
    }

    .site-header__toggle {
        display: inline-flex;
    }

    .mobile-drawer {
        display: flex;
    }

    .mobile-drawer__overlay {
        display: block;
    }

    .site-logo__text {
        font-size: 21px;
    }

    .site-header__inner {
        min-height: 74px;
    }

    .hero-home {
        height: calc(100svh - 74px);
        min-height: 0;
        box-sizing: border-box;
        padding: 42px 0 34px;
        overflow: hidden;
    }

    .hero-home__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .hero-home__content {
        max-width: 100%;
    }

    .hero-home__intent {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hero-home__visual {
        justify-self: center;
        max-width: 480px;
    }

    .hero-wheel__signs li {
        transform: rotate(calc(var(--i) * 30deg)) translate(0, -180px) rotate(calc(var(--i) * -30deg));
    }

    .hero-wheel__signs a {
        width: 58px;
        height: 58px;
        font-size: 1.22rem;
    }

    .hero-wheel__signs em {
        font-size: 0.53rem;
    }

    .page-hero__grid.page-hero__grid--feature {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .page-hero {
        height: calc(100svh - 74px);
        min-height: 0;
        box-sizing: border-box;
        padding: 42px 0 30px;
        display: flex;
        align-items: center;
        overflow: hidden;
    }

    .page-hero::before {
        width: 300px;
        height: 300px;
        right: -165px;
        top: -120px;
        opacity: 0.54;
    }

    .page-hero::after {
        opacity: 0.22;
    }

    .page-hero__content {
        max-width: 100%;
    }

    .page-hero__visual {
        max-width: 520px;
        justify-self: center;
    }

    .page-hero__chakra {
        width: min(100%, 430px);
    }

    .page-hero__chakra-nodes li {
        width: 10px;
        height: 10px;
        transform: rotate(calc(var(--i) * 30deg)) translateY(-156px);
    }

    .page-hero__chakra-core {
        inset: 33%;
    }

    .about-brief__grid,
    .contact-layout,
    .payment-section__grid,
    .page-hero__grid,
    .two-column-content {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-story__grid,
    .about-purpose__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-journey__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-brief__image {
        aspect-ratio: 1 / 1;
    }

    .about-brief__content {
        padding: 22px 20px;
    }

    .about-brief__content h2 {
        font-size: clamp(1.85rem, 1.35rem + 1.1vw, 2.2rem);
    }

    .about-brief__highlights li {
        font-size: 0.84rem;
    }

    .services-category__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .services-location__card {
        grid-template-columns: 1fr 1fr;
        align-items: stretch;
    }

    .card-grid--services,
    .card-grid--blog-list,
    .card-grid--blog,
    .card-grid--why-us,
    .card-grid--three,
    .consultation-flow .card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-footer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-footer__grid > div {
        padding: 17px 15px;
    }

    .site-footer__city-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-subfooter__inner {
        align-items: flex-start;
    }

    .blog-post__layout {
        grid-template-columns: 280px minmax(0, 1fr);
    }

    .blog-post__toc {
        position: sticky;
        top: 96px;
        align-self: start;
    }

    .testimonials__track {
        gap: 16px;
    }

    .testimonial-card {
        flex: 0 0 calc((100% - 16px) / 2);
        min-height: 250px;
    }
}

/* ===============================
   Desktop: 1200px+
================================= */
@media (min-width: 1200px) {
    :root {
        --section-padding: 80px;
    }

    h1 {
        font-size: 48px;
    }

    h2 {
        font-size: 36px;
    }

    h3 {
        font-size: 28px;
    }

    body {
        font-size: 18px;
    }

    .about-brief__grid,
    .contact-layout,
    .payment-section__grid,
    .page-hero__grid,
    .two-column-content {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-story__grid {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    }

    .about-purpose__grid {
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    }

    .about-journey__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .about-story__panel {
        position: sticky;
        top: 98px;
    }

    .services-category__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .services-location__card {
        grid-template-columns: 1fr 1fr;
        align-items: stretch;
    }

    .card-grid--services,
    .card-grid--blog-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .card-grid--why-us,
    .card-grid--three,
    .card-grid--blog {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .consultation-flow .card-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hero-home {
        height: calc(100svh - 80px);
        min-height: 0;
        box-sizing: border-box;
        padding: clamp(40px, 5vh, 56px) 0 clamp(26px, 3.5vh, 38px);
        overflow: hidden;
    }

    .hero-home__grid {
        grid-template-columns: minmax(0, 1.06fr) minmax(0, 0.94fr);
        gap: clamp(18px, 2vw, 28px);
        align-items: center;
    }

    .hero-home__content {
        max-width: 760px;
        gap: 13px;
        padding: clamp(20px, 1.3vw, 28px) clamp(18px, 1.2vw, 24px) clamp(18px, 1.1vw, 24px);
        border-radius: 24px;
        border: 1px solid rgba(255, 255, 255, 0.16);
        background:
            linear-gradient(145deg, rgba(10, 22, 87, 0.28), rgba(9, 15, 58, 0.44)),
            radial-gradient(circle at 18% 12%, rgba(255, 215, 0, 0.14), rgba(255, 215, 0, 0));
        backdrop-filter: blur(4px);
        box-shadow: 0 24px 44px rgba(5, 9, 41, 0.28);
    }

    .hero-home__eyebrow {
        font-size: 0.9rem;
        padding: 7px 13px;
    }

    .hero-home h1 {
        font-size: clamp(2.2rem, 1.7vw + 1.32rem, 3rem);
        line-height: 1.07;
        letter-spacing: -0.01em;
        max-width: 18.8ch;
        text-wrap: balance;
    }

    .hero-home__subtitle {
        max-width: 50ch;
        font-size: clamp(1rem, 0.34vw + 0.9rem, 1.14rem);
        line-height: 1.62;
        text-wrap: pretty;
    }

    .hero-home__actions {
        gap: 10px;
        margin-top: 2px;
    }

    .hero-home__actions .btn {
        min-height: 48px;
        padding-inline: 22px;
    }

    .hero-home__proof {
        gap: 9px 12px;
    }

    .hero-home__proof li {
        font-size: 0.92rem;
    }

    .hero-home__intent {
        gap: 8px;
    }

    .hero-home__intent-item {
        min-height: 42px;
        font-size: 0.92rem;
    }

    .hero-home__micro {
        max-width: 56ch;
        font-size: 0.9rem;
        line-height: 1.56;
    }

    .hero-home__visual {
        max-width: 452px;
        align-self: center;
    }

    .hero-wheel {
        width: min(100%, 430px);
    }

    .hero-wheel__signs li {
        transform: rotate(calc(var(--i) * 30deg)) translate(0, -186px) rotate(calc(var(--i) * -30deg));
    }

    .hero-wheel__signs a {
        width: 64px;
        height: 64px;
        font-size: 1.22rem;
        gap: 4px;
        padding: 6px 4px 5px;
    }

    .hero-wheel__signs em {
        font-size: 0.5rem;
    }

    .hero-home__visual-caption {
        margin-top: 30px;
        max-width: 32ch;
        padding: 10px 14px;
        border-radius: 14px;
        border: 1px solid rgba(255, 255, 255, 0.2);
        background: rgba(9, 20, 76, 0.42);
        line-height: 1.42;
    }

    .page-hero {
        height: calc(100svh - 80px);
        min-height: 0;
        box-sizing: border-box;
        padding: clamp(38px, 5vh, 54px) 0 clamp(26px, 3.4vh, 36px);
        display: flex;
        align-items: center;
        overflow: hidden;
    }

    .site-footer__city-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .site-footer__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .video-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .blog-post__layout {
        grid-template-columns: 300px minmax(0, 1fr);
    }

    .blog-post__toc {
        position: sticky;
        top: 96px;
        align-self: start;
    }

}

@media (min-width: 1200px) and (max-height: 860px) {
    .hero-home {
        height: calc(100svh - 76px);
        min-height: 0;
        padding: 28px 0 16px;
    }

    .hero-home h1 {
        font-size: clamp(2.04rem, 1.85vw + 1rem, 2.7rem);
    }

    .hero-home__content {
        gap: 10px;
        padding: 16px 16px 14px;
    }

    .hero-home__actions .btn {
        min-height: 44px;
    }

    .hero-home__proof {
        gap: 7px 9px;
    }

    .hero-home__intent-item {
        min-height: 38px;
        padding: 7px 9px;
        font-size: 0.84rem;
    }

    .hero-home__visual {
        max-width: 386px;
    }

    .hero-wheel {
        width: min(100%, 370px);
    }

    .hero-wheel__signs li {
        transform: rotate(calc(var(--i) * 30deg)) translate(0, -156px) rotate(calc(var(--i) * -30deg));
    }

    .hero-wheel__signs a {
        width: 54px;
        height: 54px;
        font-size: 1rem;
        gap: 3px;
        padding: 5px 3px 4px;
    }

    .hero-wheel__signs em {
        font-size: 0.45rem;
    }

    .hero-home__visual-caption {
        margin-top: 18px;
        padding: 8px 10px;
        font-size: 0.84rem;
    }

    .page-hero {
        height: calc(100svh - 76px);
        min-height: 0;
        padding: 26px 0 14px;
    }
}

@media (min-width: 1200px) and (max-width: 1380px) {
    .site-header__cta {
        display: none;
    }

    .site-nav__list {
        gap: 8px;
    }

    .site-nav__list a {
        font-size: 0.92rem;
        padding: 7px 8px;
    }

    .site-logo__text {
        font-size: 1.24rem;
    }
}

/* ===============================
   Mobile: < 768px
================================= */
@media (max-width: 767px) {
    :root {
        --section-padding: 60px;
    }

    .site-nav,
    .site-header__cta {
        display: none;
    }

    .site-header__toggle {
        display: inline-flex;
    }

    .mobile-drawer {
        display: flex;
    }

    .mobile-drawer__overlay {
        display: block;
    }

    .site-logo__text {
        font-size: 20px;
    }

    .site-header__inner {
        min-height: 70px;
    }

    .hero-home {
        height: auto;
        min-height: calc(100svh - 70px - 62px - env(safe-area-inset-bottom));
        box-sizing: border-box;
        padding: 74px 0 14px;
        display: flex;
        align-items: flex-start;
        overflow: visible;
    }

    .hero-home__grid {
        grid-template-columns: 1fr;
        gap: 10px;
        position: relative;
        min-height: auto;
    }

    .hero-home__content {
        gap: 10px;
        padding: 14px 14px 12px;
        margin-right: 44px;
        max-width: calc(100% - 44px);
        position: relative;
        z-index: 2;
        border-radius: 20px;
        border: 1px solid rgba(255, 255, 255, 0.16);
        background:
            linear-gradient(165deg, rgba(11, 18, 72, 0.5), rgba(8, 14, 54, 0.36)),
            radial-gradient(circle at 15% 12%, rgba(255, 215, 0, 0.14), rgba(255, 215, 0, 0));
        backdrop-filter: blur(4px);
        box-shadow: 0 14px 28px rgba(5, 8, 37, 0.24);
    }

    .hero-home h1 {
        font-size: clamp(1.7rem, 6.6vw, 2.1rem);
        line-height: 1.08;
        max-width: 15ch;
    }

    .hero-home__subtitle {
        font-size: 0.94rem;
        line-height: 1.5;
        max-width: 42ch;
    }

    .hero-home__eyebrow {
        font-size: 0.7rem;
        padding: 6px 10px 6px 24px;
        display: inline-block;
        width: auto;
        max-width: 224px;
        white-space: normal;
        overflow: visible;
        text-overflow: clip;
        line-height: 1.25;
        align-self: flex-start;
        justify-self: start;
        position: relative;
    }

    .hero-home__eyebrow i {
        position: absolute;
        left: 8px;
        top: 50%;
        transform: translateY(-50%);
        margin: 0;
    }

    .hero-home__actions {
        grid-template-columns: 1fr;
        display: grid;
    }

    .hero-home__actions .btn {
        width: 100%;
        min-height: 54px;
        padding: 12px 18px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        line-height: 1.2;
    }

    .hero-home__actions .btn--large {
        min-height: 54px;
        padding: 12px 18px;
    }

    .hero-home__proof {
        gap: 7px;
        display: grid;
        font-size: 0.84rem;
    }

    .hero-home__proof li {
        padding: 6px 10px;
        border-radius: 999px;
        border: 1px solid rgba(255, 255, 255, 0.2);
        background: rgba(255, 255, 255, 0.07);
        width: 100%;
    }

    .hero-home__intent {
        display: none;
    }

    .hero-home__intent-item {
        min-height: 42px;
        font-size: 0.84rem;
        padding: 8px 7px;
        gap: 6px;
    }

    .hero-home__micro {
        font-size: 0.74rem;
        line-height: 1.4;
        color: rgba(255, 255, 255, 0.82);
        max-width: 35ch;
    }

    .hero-home__visual {
        display: block;
        position: absolute;
        top: -30px;
        right: -10px;
        width: 188px;
        max-width: none;
        opacity: 0.96;
        filter: drop-shadow(0 10px 24px rgba(255, 215, 0, 0.26));
        pointer-events: none;
        z-index: 3;
    }

    .hero-wheel {
        width: 188px;
    }

    .hero-wheel__ring {
        inset: 12%;
    }

    .hero-wheel__center {
        inset: 35%;
    }

    .hero-wheel__signs li {
        transform: rotate(calc(var(--i) * 30deg)) translate(0, -72px) rotate(calc(var(--i) * -30deg));
    }

    .hero-wheel__signs a {
        width: 24px;
        height: 24px;
        padding: 0;
        font-size: 0.66rem;
        border-width: 1px;
    }

    .hero-wheel__signs em {
        display: none;
    }

    .hero-home__visual-caption {
        display: none;
    }

    .about-hero__proof li {
        width: 100%;
        font-size: 0.82rem;
        padding: 7px 10px;
    }

    .about-hero__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .about-hero__actions .btn {
        width: 100%;
    }

    .about-story__content,
    .about-story__panel,
    .about-journey__item,
    .about-purpose__content,
    .about-purpose__prep {
        padding: 18px 16px;
        border-radius: 16px;
    }

    .about-story__checklist li,
    .about-purpose__prep-list li {
        font-size: 0.94rem;
    }

    .about-journey__phase {
        font-size: 11px;
    }

    .about-brief__grid {
        gap: 20px;
    }

    .about-brief__image-wrap {
        padding: 8px;
        border-radius: 20px;
    }

    .about-brief__image-wrap::after {
        width: 120px;
        height: 120px;
        right: -20px;
        bottom: -18px;
    }

    .about-brief__image-badge {
        left: 14px;
        bottom: 14px;
        gap: 6px;
        font-size: 0.72rem;
        padding: 6px 9px;
    }

    .about-brief__content {
        padding: 18px 16px;
        border-radius: 16px;
    }

    .about-brief__eyebrow {
        font-size: 0.74rem;
        padding: 6px 10px;
    }

    .about-brief__content h2 {
        font-size: clamp(1.75rem, 6.8vw, 2.26rem);
        line-height: 1.14;
    }

    .about-brief__highlights {
        gap: 8px;
    }

    .about-brief__highlights li {
        font-size: 0.8rem;
        padding: 6px 10px;
    }

    .about-brief__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .about-brief__actions .btn {
        width: 100%;
        min-width: 0;
    }

    .section-heading {
        margin-bottom: 24px;
    }

    .testimonials__track {
        gap: 14px;
    }

    .testimonial-card {
        flex: 0 0 100%;
        padding: 22px 18px 18px;
        min-height: auto;
    }

    .testimonial-card__stars {
        gap: 5px;
        padding-bottom: 10px;
        flex-wrap: wrap;
    }

    .testimonial-card__stars i {
        font-size: 14px;
    }

    .testimonial-card__stars::after {
        margin-left: 0;
        margin-top: 8px;
        font-size: 10.5px;
        padding: 5px 9px;
    }

    .testimonial-card h3 {
        font-size: 1.56rem;
    }

    .testimonial-card__quote {
        font-size: 1rem;
        line-height: 1.62;
    }

    .testimonials__trust {
        gap: 8px;
        margin-bottom: 14px;
    }

    .testimonials__trust span {
        font-size: 12px;
        padding: 6px 10px;
    }

    .testimonials__dots {
        display: none;
    }

    .testimonials__counter {
        font-size: 13px;
    }

    .testimonials__controls .btn {
        width: 52px;
        height: 48px;
        min-width: 52px;
    }

    .consultation-step {
        padding: 20px 16px;
    }

    .page-hero {
        height: calc(100svh - 70px - 62px - env(safe-area-inset-bottom));
        min-height: 0;
        box-sizing: border-box;
        padding: 74px 0 10px;
        display: flex;
        align-items: flex-start;
        overflow: hidden;
    }

    .page-hero h1 {
        font-size: clamp(1.62rem, 6vw, 2rem);
        line-height: 1.1;
        margin: 6px 0 8px;
        max-width: 16ch;
    }

    .page-hero p {
        font-size: 0.94rem;
        line-height: 1.62;
    }

    .page-hero__eyebrow {
        font-size: 0.72rem;
    }

    .page-hero__grid {
        gap: 8px;
        position: relative;
        min-height: 100%;
    }

    .page-hero__actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .page-hero__actions .btn {
        width: 100%;
    }

    .page-hero__grid.page-hero__grid--feature {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .page-hero::before {
        width: 220px;
        height: 220px;
        right: -120px;
        top: -96px;
        opacity: 0.46;
    }

    .page-hero::after {
        opacity: 0.15;
    }

    .page-hero__content {
        gap: 8px;
        padding: 14px 14px 12px;
        position: relative;
        z-index: 2;
        border-radius: 20px;
        border: 1px solid rgba(255, 255, 255, 0.16);
        background:
            linear-gradient(165deg, rgba(12, 21, 78, 0.48), rgba(8, 14, 56, 0.34)),
            radial-gradient(circle at 18% 10%, rgba(255, 215, 0, 0.12), rgba(255, 215, 0, 0));
        backdrop-filter: blur(4px);
        box-shadow: 0 14px 28px rgba(5, 8, 37, 0.22);
    }

    .page-hero__chips {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 6px;
        padding-bottom: 2px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .page-hero__chips::-webkit-scrollbar {
        display: none;
    }

    .page-hero__chips span {
        min-height: 30px;
        white-space: nowrap;
        font-size: 0.7rem;
        padding: 5px 9px;
    }

    .page-hero__visual {
        display: block;
        position: absolute;
        top: -16px;
        right: -28px;
        width: 196px;
        max-width: none;
        padding: 0;
        opacity: 1;
        filter: drop-shadow(0 12px 26px rgba(255, 215, 0, 0.26));
        pointer-events: none;
        z-index: 0;
    }

    .page-hero__chakra {
        width: 196px;
    }

    .page-hero__chakra-axis {
        width: 66%;
    }

    .page-hero__chakra-ring--middle {
        inset: 21%;
    }

    .page-hero__chakra-ring--inner {
        inset: 31%;
    }

    .page-hero__chakra-nodes li {
        width: 6px;
        height: 6px;
        transform: rotate(calc(var(--i) * 30deg)) translateY(-72px);
    }

    .page-hero__chakra-core {
        inset: 35%;
        gap: 2px;
        padding: 2px;
    }

    .page-hero__chakra-symbol {
        font-size: 0.8rem;
    }

    .page-hero__chakra-core strong {
        font-size: 0.56rem;
        line-height: 1.14;
        max-width: 7ch;
        margin-inline: auto;
        overflow-wrap: anywhere;
    }

    .page-hero__chakra-core small {
        display: none;
    }

    .blog-post__hero img {
        max-height: 240px;
    }

    .blog-post__hero-content {
        margin-top: 14px;
    }

    .videos-showcase__meta {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 12px;
    }

    .videos-showcase__meta .btn {
        width: 100%;
    }

    body[data-page="videos"] .videos-showcase {
        gap: 14px;
    }

    body[data-page="videos"] .videos-showcase .section-heading {
        margin-bottom: 0;
    }

    body[data-page="videos"] .video-grid {
        grid-template-columns: 1fr;
        gap: 12px;
        height: calc(var(--shorts-vh, 100vh) - 190px);
        overflow-y: auto;
        overflow-x: hidden;
        scroll-snap-type: y mandatory;
        overscroll-behavior-y: contain;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-inline: 2px;
    }

    body[data-page="videos"] .video-grid::-webkit-scrollbar {
        display: none;
    }

    body[data-page="videos"] .video-card--local {
        min-height: calc(var(--shorts-vh, 100vh) - 210px);
        scroll-snap-align: start;
        scroll-snap-stop: always;
        border-radius: 14px;
    }

    body[data-page="videos"] .video-card--local .video-card__content {
        padding: 14px 12px 12px;
        gap: 10px;
    }

    body[data-page="videos"] .video-card__embed {
        width: min(100%, 320px);
        max-height: calc(var(--shorts-vh, 100vh) - 300px);
    }

    body[data-page="videos"] .video-card--local.is-active {
        border-color: rgba(255, 111, 0, 0.36);
        box-shadow: 0 16px 30px rgba(26, 35, 126, 0.2);
    }

    body[data-page="videos"] .mobile-sticky-cta {
        display: none;
    }

    body[data-page="videos"] {
        padding-bottom: env(safe-area-inset-bottom);
    }

    .video-card__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .video-card__actions .btn {
        width: 100%;
    }

    .services-category {
        padding: 20px 16px;
    }

    .services-category__head {
        gap: 10px;
        margin-bottom: 14px;
    }

    .services-category__icon {
        width: 42px;
        height: 42px;
        font-size: 18px;
    }

    .service-item-card {
        padding: 16px 14px;
        min-height: auto;
    }

    .service-item-card .btn {
        width: 100%;
    }

    .services-location__card {
        padding: 20px 16px;
    }

    .services-location__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .services-location__actions .btn {
        width: 100%;
    }

    .payment-section__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .payment-section__actions .btn {
        width: 100%;
    }

    .consultation-step h3 {
        font-size: 1.24rem;
    }

    .consultation-step__tag {
        font-size: 12px;
        padding: 6px 10px;
    }

    .consultation-step__meta {
        font-size: 13px;
    }

    .service-detail-card__price {
        font-size: 24px;
    }

    .contact-cta__box {
        padding: 28px 16px;
    }

    .video-card__embed iframe,
    .video-card__embed video {
        min-height: 0;
    }

    .blog-filter {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 4px;
        -webkit-overflow-scrolling: touch;
    }

    .blog-filter .btn {
        white-space: nowrap;
        flex: 0 0 auto;
    }

    .blog-post__layout,
    .blog-post__content-wrap,
    .blog-post__content {
        min-width: 0;
        max-width: 100%;
    }

    .blog-post__content {
        overflow-x: hidden;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .blog-post__content p,
    .blog-post__content li,
    .blog-post__content a,
    .blog-post__content h2,
    .blog-post__content h3 {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .blog-post__content table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    body[data-page="blog"] .blog-card__content h2,
    body[data-page="blog"] .blog-card__content h3 {
        font-size: 1.18rem;
    }

    body[data-page="blog-post"] .blog-post__hero-content h1 {
        font-size: clamp(1.56rem, 5.9vw, 2.02rem);
        line-height: 1.14;
        max-width: 100%;
        text-wrap: balance;
    }

    body[data-page="blog-post"] .blog-post__hero-content > p:first-child {
        gap: 8px;
        margin-bottom: 10px;
    }

    body[data-page="blog-post"] .blog-post__breadcrumb {
        gap: 6px;
        font-size: 0.84rem;
        margin-bottom: 10px;
    }

    body[data-page="blog-post"] .blog-post__hero-content > p:first-child .badge,
    body[data-page="blog-post"] .blog-post__hero-content > p:first-child span:not(.badge):not(.blog-post__meta-dot) {
        min-height: 34px;
        padding: 0 12px;
        font-size: 0.87rem;
    }

    body[data-page="blog-post"] .blog-post__hero-content > p:nth-of-type(2) {
        font-size: 0.95rem;
    }

    body[data-page="blog-post"] .blog-post__content {
        font-size: 1rem;
        line-height: 1.86;
        padding: 22px 16px;
        overflow: visible;
        overflow-x: clip;
        max-width: 100%;
    }

    body[data-page="blog-post"] .blog-post__content > * {
        max-width: 100%;
    }

    body[data-page="blog-post"] .blog-post__content table {
        display: block;
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    body[data-page="blog-post"] .blog-post__content h2 {
        font-size: 1.46rem;
        margin-top: 28px;
    }

    body[data-page="blog-post"] .blog-post__takeaways {
        margin-bottom: 18px;
        padding: 16px 14px;
    }

    body[data-page="blog-post"] .blog-post__author-bio {
        padding: 14px 14px 12px;
    }

    .floating-whatsapp {
        display: none;
    }

    .mobile-sticky-cta {
        display: inline-flex;
    }

    body {
        padding-bottom: calc(62px + env(safe-area-inset-bottom));
    }

    .site-footer__bottom-inner {
        text-align: center;
        justify-content: center;
    }

    .site-footer__top {
        padding: 44px 0 38px;
    }

    .site-subfooter__inner {
        align-items: flex-start;
    }

    .site-subfooter__links {
        gap: 8px 12px;
    }

    .site-footer__city-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .site-footer__grid {
        gap: 12px;
    }

    .site-footer__grid > div {
        padding: 16px 14px;
        border-radius: 12px;
    }

    .site-footer h3 {
        font-size: 1.36rem;
    }

    .site-footer__cities-head p {
        font-size: 0.92rem;
    }

    .site-footer__keywords {
        font-size: 0.96rem;
        line-height: 1.62;
    }

    .site-footer__socials a {
        width: 38px;
        height: 38px;
    }

    .seo-faq__heading {
        margin-bottom: 18px;
    }

    .seo-faq__question {
        font-size: 0.94rem;
        line-height: 1.45;
        padding: 12px 42px 12px 12px;
    }

    .seo-faq__question::after {
        right: 12px;
        width: 24px;
        height: 24px;
        font-size: 16px;
    }

    .seo-faq__answer p {
        font-size: 0.95rem;
        line-height: 1.7;
        padding: 0 12px 12px;
    }

    .btn,
    button,
    input,
    textarea {
        min-height: 44px;
    }
}

@media (max-width: 480px) {
    .hero-home {
        height: auto;
        min-height: calc(100svh - 70px - 62px - env(safe-area-inset-bottom));
        padding: 72px 0 14px;
    }

    .hero-home__visual {
        width: 166px;
        right: -8px;
        top: -26px;
    }

    .hero-home__eyebrow {
        font-size: 0.64rem;
        line-height: 1.2;
        width: auto;
        max-width: 196px;
        justify-self: start;
        padding-left: 22px;
    }

    .hero-home__eyebrow i {
        left: 7px;
    }

    .hero-home__content {
        margin-right: 36px;
        max-width: calc(100% - 36px);
    }

    .hero-wheel {
        width: 166px;
    }

    .hero-wheel__signs li {
        transform: rotate(calc(var(--i) * 30deg)) translate(0, -64px) rotate(calc(var(--i) * -30deg));
    }

    .hero-wheel__signs a {
        width: 22px;
        height: 22px;
        font-size: 0.6rem;
    }

    .page-hero {
        height: calc(100svh - 70px - 62px - env(safe-area-inset-bottom));
        min-height: 0;
        padding: 72px 0 10px;
    }

    .page-hero__visual {
        width: 168px;
        right: -22px;
        top: -12px;
    }

    .page-hero__chakra {
        width: 168px;
    }

    .page-hero__chakra-nodes li {
        transform: rotate(calc(var(--i) * 30deg)) translateY(-62px);
    }

    .page-hero__chakra-core strong {
        font-size: 0.5rem;
        max-width: 6.4ch;
    }

    .page-hero__chakra-core small {
        display: none;
    }
}

/* ===============================
   Laptop Height Safety
================================= */
@media (min-width: 768px) and (max-width: 1199px) and (max-height: 900px) {
    .page-hero {
        height: auto;
        min-height: calc(100svh - 74px);
        align-items: flex-start;
        overflow: visible;
        padding-bottom: 26px;
    }

    .page-hero__grid.page-hero__grid--feature {
        gap: 16px;
    }

    .page-hero__visual {
        max-width: min(72vw, 420px);
        margin-top: 4px;
    }

    .page-hero__chakra {
        width: min(100%, 360px);
    }
}

@media (min-width: 1200px) and (max-height: 900px) {
    .page-hero {
        height: auto;
        min-height: calc(100svh - 80px);
        align-items: flex-start;
        overflow: visible;
        padding-bottom: 22px;
    }

    .page-hero__visual {
        align-self: flex-start;
        max-width: min(34vw, 420px);
        margin-top: 6px;
    }

    .page-hero__chakra {
        width: min(100%, 360px);
    }
}
