@media (max-width: 1100px) {
  .header-inner { min-height: 82px; }
  .menu-toggle { display: block; position: relative; z-index: 1002; }
  .menu-toggle[aria-expanded="true"] > span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] > span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] > span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .primary-nav { position: fixed; z-index: 1001; inset: 0 0 0 auto; width: min(88vw, 420px); padding: 110px 34px 40px; flex-direction: column; align-items: stretch; background: #fff; box-shadow: -20px 0 60px rgba(12,39,72,.15); visibility: hidden; pointer-events: none; transform: translateX(100%); transition: transform .3s ease, visibility 0s linear .3s; }
  .primary-nav.is-open { visibility: visible; pointer-events: auto; transform: translateX(0); transition-delay: 0s; }
  .primary-nav .menu { flex-direction: column; align-items: stretch; gap: 0; }
  .primary-nav .menu a { padding: 15px 0; font-size: 1.08rem; border-bottom: 1px solid #edf3f7; }
  .nav-cta { margin-top: 20px; }
  .hero-grid { grid-template-columns: 1fr 1fr; gap: 30px; }
  .hero-visual { min-height: 560px; }
  .hero-benefits { gap: 14px; }
  .hero-benefits li { flex-direction: column; text-align: center; }
  .about { min-height: 0; padding: 0; }
  .about-grid { display: flex; width: min(calc(100% - 40px), var(--container)); flex-direction: column; }
  .about-visual { position: relative; inset: auto; order: 0; width: 100vw; height: clamp(520px, 72vw, 680px); margin-left: calc((100vw - 100%) / -2); }
  .about-content { order: 1; width: 100%; margin: 0; padding: 66px 0 72px; }
  .about-copy { max-width: 760px; }
  .about-copy > p:not(.eyebrow) { max-width: 720px; }
  .about-signature > div { min-width: 265px; }
  .about-values { margin-top: 58px; }
  .about-values-grid article { padding-inline: 22px; }
  .service-grid { grid-template-columns: repeat(2, 1fr); }
  .results-image { width: 30%; }
  .results-content { padding-left: 29%; }
  .process-grid { grid-template-columns: 1fr; }
  .process-intro { max-width: 600px; }
  .final-cta-inner { gap: 30px; padding-right: clamp(70px, 9vw, 100px); }
  .final-cta .button { min-width: 280px; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 780px) {
  .container { width: min(calc(100% - 32px), var(--container)); }
  .section { padding: 74px 0; }
  .about { padding: 0; }
  .brand img { width: 158px; }
  .hero { padding-top: 44px; }
  .hero-grid { display: flex; flex-direction: column; }
  .hero-copy { padding-bottom: 10px; }
  .hero-intro { font-size: .96rem; }
  .hero-benefits { margin-top: 38px; }
  .hero-visual { width: calc(100% + 16px); min-height: 520px; margin-right: -16px; }
  .hero-image-wrap { inset: 0; border-radius: 70px 0 0 0; }
  .hero-image-wrap img { object-position: 48% 58%; }
  .hero-ribbon { right: 0; bottom: 0; width: 78%; padding-right: 25px; }
  .section-heading { display: block; }
  .heading-side { margin-top: 28px; }
  .about-grid { width: min(calc(100% - 32px), var(--container)); }
  .about-visual { height: clamp(470px, 82vw, 620px); }
  .about-image-wrap { clip-path: ellipse(100% 93% at 0 50%); }
  .about-content { padding-block: 58px 66px; }
  .about-values-heading { align-items: flex-start; }
  .about-values-heading h3 { white-space: normal; }
  .about-values-grid { grid-template-columns: repeat(2, 1fr); gap: 30px 0; }
  .about-values-grid article:nth-child(3) { padding-left: 0; border-left: 0; }
  .results-band { display: block; }
  .results-image { position: relative; width: 100%; height: 220px; }
  .results-image { -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 72%, transparent 100%); mask-image: linear-gradient(180deg, #000 0%, #000 72%, transparent 100%); }
  .results-content { padding: 42px 0 48px; }
  .results-content .eyebrow { margin-left: 0; }
  .metrics { grid-template-columns: repeat(2, 1fr); gap: 25px 0; }
  .metric:nth-child(2) { border-right: 0; }
  .process-steps { grid-template-columns: repeat(2, 1fr); gap: 45px 0; }
  .process-steps::before { display: none; }
  .process-step:nth-child(2)::after { display: none; }
  .cases-preview { grid-template-columns: 1fr; gap: 50px; }
  .cases-image { height: clamp(320px, 47vw, 360px); border-radius: 0 55px 55px 0; margin-right: 20px; }
  .cases-copy { padding: 0 20px; }
  .testimonial-track { grid-auto-columns: 78%; }
  .final-cta-inner { display: block; padding-right: 0; }
  .final-cta .button { margin-top: 25px; }
  .archive-grid { grid-template-columns: repeat(2, 1fr); }
  .contact-grid { grid-template-columns: 1fr; }
  .legal-layout { grid-template-columns: 1fr; gap: 42px; }
  .legal-summary { position: static; }
  .legal-summary ol { columns: 2; column-gap: 30px; }
  .legal-summary li { break-inside: avoid; }
  .legal-summary li + li { border-top: 0; }
}

@media (max-width: 520px) {
  html { scroll-padding-top: 76px; }
  h1 { font-size: clamp(2.25rem, 11.5vw, 3.15rem); }
  h2 { font-size: clamp(1.85rem, 8.5vw, 2.4rem); }
  .section { padding: 62px 0; }
  .about { padding: 0; }
  .header-inner { min-height: 74px; }
  .is-scrolled .header-inner { min-height: 68px; }
  .brand img { width: 146px; }
  .primary-nav { width: min(90vw, 360px); padding: 92px 24px 32px; }
  .primary-nav .menu a { padding: 13px 0; font-size: 1rem; }
  .nav-cta { width: 100%; margin-top: 18px; }
  .button-row { display: grid; }
  .hero { padding-top: 34px; }
  .hero-copy { padding-bottom: 0; }
  .hero .eyebrow { font-size: .66rem; letter-spacing: .09em; }
  .hero-intro { line-height: 1.6; }
  .hero-benefits { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 32px; }
  .hero-benefits li { flex-direction: column; gap: 9px; min-width: 0; text-align: center; font-size: .68rem; line-height: 1.25; }
  .hero-benefits span { width: 50px; height: 50px; flex-basis: 50px; }
  .hero-benefits span svg { width: 27px; height: 27px; }
  .hero-visual { min-height: 390px; }
  .hero-image-wrap img { object-position: 50% 60%; }
  .hero-ribbon { min-height: 170px; padding: 45px 20px 25px 36%; font-size: .8rem; }
  .section-heading { margin-bottom: 30px; }
  .heading-side { margin-top: 20px; }
  .service-grid { grid-template-columns: 1fr; }
  .about::before { right: -55%; bottom: -7%; width: 135vw; border-width: 17vw; }
  .about-visual { height: 430px; }
  .about-image-wrap { clip-path: ellipse(118% 94% at 0 50%); }
  .about-image-wrap img { object-position: 40% center; }
  .about-visual blockquote { top: 12%; left: 18px; width: 42%; min-width: 0; padding-top: 31px; font-size: .78rem; }
  .about-visual blockquote::before { font-size: 3.8rem; }
  .about-visual cite { margin-top: 11px; padding-top: 8px; font-size: .64rem; }
  .about-content { padding-block: 52px 60px; }
  .about-copy h2 { margin-top: 15px; }
  .about-signature { display: block; margin-top: 28px; }
  .about-signature > div { min-width: 0; }
  .about-signature strong { font-size: 3.35rem; }
  .about-signature p { margin-top: 20px; padding: 13px 0 0; border-top: 1px solid #c7ddeb; border-left: 0; }
  .about-values { margin-top: 48px; }
  .about-values-heading { display: block; }
  .about-values-heading .button { width: 100%; margin-top: 22px; }
  .about-values-grid { gap: 27px 0; }
  .about-values-grid article { min-height: 0; padding-inline: 14px; }
  .about-value-icon { width: 56px; height: 56px; }
  .service-card { min-height: 0; padding: 26px 24px 24px; }
  .service-icon { margin-bottom: 18px; }
  .service-card h3 { margin-bottom: 14px; }
  .service-card p { margin-bottom: 22px; }
  .service-card .text-link { margin-top: 0; }
  .results-image { height: 190px; }
  .results-content { padding: 35px 0 42px; }
  .results-content .eyebrow { font-size: .66rem; }
  .metrics { grid-template-columns: 1fr 1fr; }
  .metric { padding: 8px 12px 0 15px; }
  .metric strong { font-size: 2rem; }
  .process-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 46px 14px; }
  .process-step { display: flex; flex-direction: column; align-items: center; padding: 0 4px; text-align: center; }
  .process-step::after { display: none; }
  .step-number { left: 50%; width: 40px; height: 40px; transform: translate(9px, -22%); font-size: .9rem; }
  .step-icon { width: 88px; height: 88px; margin: 15px auto 15px; font-size: 1.9rem; }
  .step-icon svg { width: 40px; height: 40px; }
  .process-step h3 { margin: 0 0 5px; font-size: 1rem; }
  .process-step p { max-width: 150px; margin: 0 auto; font-size: .8rem; line-height: 1.45; }
  .cases-preview { gap: 38px; }
  .cases-image { height: clamp(285px, 76vw, 330px); margin-right: 16px; border-radius: 0 46px 46px 0; }
  .cases-image span { left: 25px; top: 35px; }
  .cases-copy { padding-inline: 16px; }
  .testimonials { padding-block: 62px; }
  .testimonial-heading { display: flex; align-items: flex-end; gap: 16px; }
  .testimonial-heading > div:first-child { min-width: 0; }
  .testimonial-heading h2 { font-size: 1.7rem; }
  .slider-controls { flex: 0 0 auto; gap: 8px; }
  .slider-controls button { width: 44px; height: 44px; }
  .testimonial-track { grid-auto-columns: 92%; }
  .testimonial-card { min-height: 0; padding: 24px; }
  .final-cta { padding: 50px 0; background-position: 64% center; }
  .final-cta h2 { font-size: 2rem; }
  .final-cta .button { width: 100%; min-width: 0; min-height: 60px; padding-inline: 18px; }
  .site-footer { padding-top: 48px; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 38px 24px; padding-bottom: 42px; }
  .footer-brand, .footer-contact { grid-column: 1 / -1; }
  .footer-brand img { width: 180px; margin-bottom: 20px; }
  .footer-brand p { font-size: .86rem; }
  .site-footer h3 { margin-bottom: 18px; }
  .site-footer li { font-size: .82rem; }
  .footer-contact { min-width: 0; }
  .contact-list li { grid-template-columns: 27px minmax(0, 1fr); gap: 11px; font-size: .88rem; }
  .contact-list a, .contact-list span { white-space: normal; overflow-wrap: anywhere; }
  .contact-list svg { width: 23px; height: 23px; }
  .footer-bottom { display: block; padding-bottom: 48px; text-align: center; line-height: 1.7; }
  .footer-bottom p + p { margin-top: 12px; }
  .archive-grid { grid-template-columns: 1fr; }
  .contact-form { padding: 28px 20px; }
  .legal-hero { padding-block: 62px 68px; }
  .legal-hero h1 { margin-top: 16px; }
  .legal-section { padding-block: 58px; }
  .legal-summary { padding: 22px 20px; }
  .legal-summary ol { columns: 1; }
  .legal-summary li + li { border-top: 1px solid #e5f0f6; }
  .legal-block { grid-template-columns: 40px minmax(0,1fr); gap: 14px; }
  .legal-number { width: 40px; height: 40px; }
  .legal-block + .legal-block { margin-top: 40px; padding-top: 40px; }
  .legal-block h2 { margin-top: 3px; }
  .legal-block p, .legal-block li { font-size: .9rem; }
  .legal-note { grid-template-columns: 1fr; gap: 16px; margin-top: 50px; padding: 25px 22px; }
  .legal-note-icon { width: 52px; height: 52px; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .whatsapp-float { right: 14px; bottom: max(14px, env(safe-area-inset-bottom)); width: 54px; height: 54px; }
  .whatsapp-float svg { width: 30px; height: 30px; }
  .whatsapp-float span { display: none; }
  .reveal[data-reveal="left"]:not(.is-visible) { transform: translate3d(-22px, 0, 0); }
  .reveal[data-reveal="right"]:not(.is-visible) { transform: translate3d(22px, 0, 0); }
}

@media (max-width: 350px) {
  .container { width: min(calc(100% - 28px), var(--container)); }
  .brand img { width: 138px; }
  .menu-toggle { margin-right: -8px; }
  .hero-visual { width: calc(100% + 14px); margin-right: -14px; }
  .hero-benefits { gap: 12px; }
  .hero-benefits li { font-size: .63rem; }
  .hero-benefits span { width: 46px; height: 46px; flex-basis: 46px; }
  .testimonial-heading { align-items: flex-start; }
  .testimonial-heading h2 { font-size: 1.55rem; }
  .footer-grid { gap-inline: 18px; }
}
