@media (max-width: 1180px) {
  :root { --gutter: clamp(1.5rem, 3.2vw, 3rem); }
  .site-header { grid-template-columns: 1fr auto; }
  .desktop-nav { display: none; }
  .button--header { display: none; }
  .menu-toggle { display: block; justify-self: end; }
  .mobile-menu {
    position: fixed; inset: 0; z-index: 95; display: flex; visibility: hidden; flex-direction: column; justify-content: space-between;
    padding: calc(var(--header-height) + 2rem) var(--gutter) 2rem; background: var(--primary); color: var(--white); opacity: 0;
    clip-path: inset(0 0 100% 0); transition: clip-path 240ms var(--ease-drawer), opacity 180ms ease, visibility 240ms;
  }
  .mobile-menu.is-open { visibility: visible; opacity: 1; clip-path: inset(0); transition-duration: 420ms, 180ms, 0ms; }
  .mobile-menu nav { display: grid; }
  .mobile-menu nav a { padding: .3rem 0; font-family: var(--display); font-size: clamp(2.4rem, 7vw, 4.5rem); letter-spacing: -.035em; line-height: 1.15; opacity: 0; transform: translateY(10px); transition: opacity 220ms ease, transform 300ms var(--ease-out); }
  .mobile-menu.is-open nav a { opacity: 1; transform: none; }
  .mobile-menu.is-open nav a:nth-child(2) { transition-delay: .04s; }
  .mobile-menu.is-open nav a:nth-child(3) { transition-delay: .08s; }
  .mobile-menu.is-open nav a:nth-child(4) { transition-delay: .12s; }
  .mobile-menu.is-open nav a:nth-child(5) { transition-delay: .16s; }
  .mobile-menu.is-open nav a:nth-child(6) { transition-delay: .2s; }
  .mobile-menu__footer { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding-top: 1.4rem; border-top: 1px solid rgba(255,255,255,.18); }
  .mobile-menu__footer > span { color: rgba(255,255,255,.55); font-size: .65rem; letter-spacing: .15em; text-transform: uppercase; }
  .site-header.menu-active { color: var(--white); background: transparent; box-shadow: none; }
  .site-header.menu-active .brand { position: relative; z-index: 2; }
  .hero::after { left: 52%; }
  .hero__content { width: min(760px, 77vw); }
  .hero__scroll { left: 52%; }
  .about { gap: 5rem; }
  .section-heading { gap: 3rem; }
  .service-card__body { min-height: 180px; }
  .gallery { grid-template-columns: .65fr 1.35fr; gap: 3rem; }
  .experience { gap: 5rem; }
  .instagram__grid { grid-template-columns: repeat(3, 1fr); }
  .location { min-height: 720px; }
}

@media (max-width: 900px) {
  :root { --section-pad: 6.5rem; }
  .trust-strip__track { grid-template-columns: repeat(2, 1fr); }
  .trust-item:nth-child(2) { border-right: 1px solid var(--line); }
  .trust-item:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .about { grid-template-columns: .78fr 1fr; gap: 3.5rem; }
  .about__content { padding-right: 0; }
  .section-heading { grid-template-columns: 1fr; }
  .section-heading > p { max-width: 650px; }
  .services__grid { grid-template-columns: repeat(2, 1fr); }
  .service-card:nth-child(3n) { border-right: 1px solid rgba(255,255,255,.18); }
  .service-card:nth-child(2n) { border-right: 0; }
  .service-card:nth-child(-n+4) { border-bottom: 1px solid rgba(255,255,255,.18); }
  .gallery { grid-template-columns: 1fr; }
  .gallery__heading { position: static; max-width: 650px; }
  .gallery__grid { max-width: 760px; margin-left: auto; }
  .experience { grid-template-columns: 1fr; gap: 3.5rem; }
  .experience__intro { position: static; max-width: 740px; }
  .testimonials__head { grid-template-columns: 1fr; gap: 1.2rem; }
  .testimonials__list {
    display: grid; overflow-x: auto; grid-template-columns: none; grid-auto-flow: column;
    grid-auto-columns: 100%; scroll-snap-type: x mandatory; overscroll-behavior-inline: contain;
  }
  .testimonial { min-width: 0; scroll-snap-align: start; scroll-snap-stop: always; }
  .location { grid-template-columns: 1fr; }
  .location__map { min-height: 500px; }
  .location__content { max-width: none; }
  .site-footer__top { grid-template-columns: .55fr 1.45fr; gap: 3rem; }
}

@media (max-width: 680px) {
  :root { --header-height: 76px; --gutter: 1.25rem; --section-pad: 5.5rem; }
  .site-header { height: var(--header-height); padding-inline: var(--gutter); }
  .brand__mark { width: 34px; height: 34px; font-size: 1.2rem; }
  .brand__words strong { font-size: 1.25rem; }
  .brand__words small { font-size: .47rem; }
  .mobile-menu { padding-bottom: max(1.5rem, env(safe-area-inset-bottom)); }
  .mobile-menu__footer { align-items: stretch; flex-direction: column; }
  .mobile-menu__footer .button { width: 100%; }
  .hero { min-height: 760px; }
  .hero__image { object-position: 66% center; }
  .hero__veil { background: linear-gradient(90deg, rgba(18,16,15,.88), rgba(18,16,15,.35)), linear-gradient(0deg, rgba(18,16,15,.52), transparent 55%); }
  .hero::after { display: none; }
  .hero__content { min-height: 760px; width: 100%; justify-content: flex-end; padding: calc(var(--header-height) + 3rem) var(--gutter) 8.5rem; }
  .hero h1 { font-size: clamp(3.6rem, 17vw, 5.2rem); line-height: .9; }
  .hero__copy { max-width: 90%; margin-top: 1.5rem; font-size: .94rem; }
  .hero__actions { align-items: flex-start; flex-direction: column; gap: 1.2rem; margin-top: 2rem; }
  .hero__actions .button { width: 100%; }
  .hero__note { right: var(--gutter); bottom: 2.2rem; }
  .hero__scroll { display: none; }
  .trust-strip__track { grid-template-columns: 1fr; padding: 0; }
  .trust-item { min-height: 74px; padding: 1rem var(--gutter); border-right: 0 !important; border-bottom: 1px solid var(--line); border-left: 0; }
  .trust-item:last-child { border-bottom: 0; }
  .about { grid-template-columns: 1fr; gap: 3.8rem; }
  .about__visual { width: 90%; }
  .about h2, .section-heading h2, .experience h2, .testimonials h2, .location h2 { font-size: clamp(2.8rem, 13vw, 4.2rem); }
  .stats { gap: 2rem; }
  .stat strong { font-size: 1.9rem; }
  .section-heading { padding-bottom: 3.5rem; }
  .services__grid { grid-template-columns: 1fr; }
  .service-card { border-right: 0 !important; border-bottom: 1px solid rgba(255,255,255,.18) !important; }
  .service-card:last-child { border-bottom: 0 !important; }
  .service-card__image { aspect-ratio: 1 / 1.08; }
  .service-card__body { min-height: 0; }
  .care-cta { min-height: 650px; }
  .care-cta h2 { font-size: clamp(3.5rem, 17vw, 5.6rem); }
  .gallery__heading h2 { font-size: clamp(4rem, 19vw, 6rem); }
  .gallery__grid { gap: .55rem; }
  .gallery-item { width: 100%; min-height: 0; }
  .gallery-item:nth-child(even) { margin-top: 2rem; }
  .testimonials { padding-inline: 0; }
  .testimonials__head { margin-bottom: 2.75rem; }
  .testimonials__list {
    max-width: none; gap: var(--gutter); padding: 0 var(--gutter) .25rem; border-block: 0;
    grid-auto-columns: calc(100vw - (var(--gutter) * 2)); scroll-padding-inline: var(--gutter);
    scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch;
  }
  .testimonials__list::-webkit-scrollbar { display: none; }
  .testimonial {
    display: flex; min-height: 360px; flex-direction: column; padding: 2rem 1.5rem 1.75rem;
    border: 1px solid var(--line); background: var(--surface);
  }
  .testimonial:last-child { border-right: 1px solid var(--line); }
  .testimonial blockquote { margin: 1.75rem 0 2.25rem; font-size: clamp(1.32rem, 6.2vw, 1.68rem); line-height: 1.38; }
  .testimonial footer { margin-top: auto; }
  .testimonials__controls {
    display: flex; align-items: center; justify-content: space-between; gap: 1rem;
    margin-top: 1.25rem; padding-inline: var(--gutter);
  }
  .testimonials__counter { color: var(--muted); font-size: .68rem; font-weight: 700; letter-spacing: .12em; }
  .testimonials__actions { display: flex; gap: .45rem; }
  .testimonials__nav {
    min-height: 44px; padding: .65rem .85rem; border: 1px solid var(--line); border-radius: var(--radius);
    background: transparent; color: var(--text); font-size: .65rem; font-weight: 700; letter-spacing: .08em;
    text-transform: uppercase; transition: color 160ms ease, background-color 160ms ease, transform 120ms var(--ease-out), opacity 160ms ease;
  }
  .testimonials__nav:active:not(:disabled) { transform: scale(.97); }
  .testimonials__nav:disabled { cursor: default; opacity: .32; }
  .instagram__head { align-items: flex-start; flex-direction: column; gap: 2rem; }
  .instagram__grid { grid-template-columns: repeat(2, 1fr); }
  .instagram__item { aspect-ratio: 1; }
  .location__map { min-height: 420px; }
  .location__content { padding: var(--section-pad) var(--gutter); }
  .location__actions { align-items: flex-start; flex-direction: column; gap: 1.2rem; }
  .location__actions .button { width: 100%; }
  .hours__row { font-size: .77rem; }
  .final-cta { min-height: 620px; }
  .final-cta h2 { font-size: clamp(3.8rem, 18vw, 6rem); }
  .final-cta .button { width: 100%; }
  .site-footer { padding-top: 4rem; }
  .site-footer__top { grid-template-columns: 1fr; gap: 3.5rem; padding-bottom: 2rem; }
  .site-footer__links { grid-template-columns: 1fr 1fr; gap: 1.25rem 1.5rem; }
  .site-footer__links > div { gap: 0; }
  .site-footer__links > div:last-child { grid-column: 1 / -1; gap: .4rem; }
  .site-footer__links span { margin-bottom: .3rem; }
  .site-footer__links a { display: flex; min-height: 44px; align-items: center; }
  .site-footer__bottom { align-items: flex-start; flex-direction: column; gap: .8rem; }
  .whatsapp-float { right: .9rem; bottom: .9rem; }
  .lightbox[open] { grid-template-columns: 1fr; }
  .lightbox figure { width: 100%; height: 100dvh; padding: 4.5rem 1rem 5rem; }
  .lightbox img { max-width: 94vw; max-height: 75dvh; }
  .lightbox__nav { position: fixed; z-index: 1; bottom: 1.2rem; }
  .lightbox__nav--prev { left: 60px; }
  .lightbox__nav--next { right: 60px; }
}

@media (max-width: 390px) {
  .brand__words small { display: none; }
  .hero h1 { font-size: 3.45rem; }
  .hero__copy { max-width: 100%; }
  .whatsapp-float span { display: none; }
  .whatsapp-float { width: 54px; justify-content: center; padding: 0; }
  .testimonial { min-height: 385px; padding-inline: 1.25rem; }
  .testimonial blockquote { font-size: 1.3rem; }
}
