/* TaxAdvizor Responsive Fix
   Frontend-only correction layer. No theme files are edited. */
@media (max-width: 1024px) {
  html, body { max-width: 100%; }
  body { overflow-x: hidden; }
  img, svg, video, iframe, canvas { max-width: 100%; }
  .ta-shell { width: min(720px, calc(100% - 38px)) !important; }
  .site-header__inner { min-width: 0; }
  .site-header__brand, .ta-brand, .custom-logo-link { min-width: 0; }
  .site-header .custom-logo, .site-header .taxadvizor-logo-control-image { max-width: 180px !important; height: auto !important; max-height: 48px !important; object-fit: contain !important; }
  .hero-home--crystal .hero-home__grid, .services-hero__grid, .why-hero__grid, .process-hero__grid, .about-hero__grid, .contact-hero__grid, .pricing-hero__grid, .service-hero__grid { grid-template-columns: 1fr !important; }
  .hero-home--crystal .hero-home__copy { max-width: 680px; }
  .hero-crystal-scene { width: min(640px, 100%) !important; margin-left: auto !important; }
  .tool-shell, .tool-shell--health { grid-template-columns: 1fr !important; }
  .tool-shell__intro > p, .section-heading p, .hero-home__copy > p { max-width: 620px; }
  .site-footer__grid, .footer-data-grid { grid-template-columns: 1fr 1fr !important; }
  .footer-contact-rail { grid-template-columns: 1fr !important; }
  .service-story__grid, .service-inclusions__grid, .pricing-explainer__grid, .about-story__grid, .contact-page__grid { grid-template-columns: 1fr !important; }
  .service-story__sticky { position: static !important; }
  .service-workbench__grid, .related-services__grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .choice-grid--business { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
  .taa-widget { max-width: calc(100vw - 24px); }
}

@media (max-width: 780px) {
  .ta-shell { width: min(680px, calc(100% - 30px)) !important; }
  .site-header { padding-right: 0 !important; padding-left: 0 !important; }
  .site-header__nav { display: none !important; }
  .menu-toggle { display: block !important; flex: 0 0 auto; }
  .site-header__actions { margin-left: auto !important; gap: 7px; }
  .header-call { min-width: 0; }
  .hero-home, .hero-home--crystal { min-height: 0 !important; padding-bottom: 70px !important; }
  .hero-home--crystal h1 { max-width: 650px; }
  .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .why-section__cards { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .process-line { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .process-line::before { display: none !important; }
  .process-line li:last-child { grid-column: 1 / -1; }
  .stage-section__inner { grid-template-columns: 1fr !important; }
  .cta-section__inner { grid-template-columns: 1fr !important; }
  .cta-chess { transform: scale(.84); transform-origin: left center; margin-bottom: -26px; }
  .footer-data-grid { grid-template-columns: 1fr 1fr !important; }
  .footer-manifesto { grid-column: 1 / -1; }
  .contact-page__side { grid-template-columns: 1fr !important; }
  .service-workbench__grid, .related-services__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .tas-service-outputs__grid { grid-template-columns: 1fr !important; }
  .tas-service-documents__body, .ta-required-documents__body { grid-template-columns: 1fr !important; }
}

@media (max-width: 600px) {
  html { -webkit-text-size-adjust: 100%; }
  .ta-shell { width: calc(100% - 28px) !important; }
  .site-header__inner { min-height: 52px !important; }
  .site-header .custom-logo, .site-header .taxadvizor-logo-control-image { max-width: 145px !important; max-height: 38px !important; }
  .ta-brand-mark { width: 30px !important; height: 30px !important; }
  .ta-brand-lockup strong { font-size: 14px !important; }
  .header-call { min-height: 38px !important; padding: 8px !important; }
  .header-call > span:last-child { display: none !important; }
  .menu-toggle { width: 39px !important; height: 39px !important; margin-left: 5px !important; }
  .mobile-navigation { max-height: calc(100vh - 55px); overflow-y: auto; }
  .mobile-navigation .ta-menu { grid-template-columns: 1fr !important; }
  .mobile-navigation .ta-menu li { border-right: 0 !important; }
  .mobile-navigation .ta-menu .sub-menu, .mobile-navigation .ta-menu .sub-menu.tas-service-mega { grid-template-columns: 1fr !important; width: auto !important; }
  .hero-home--crystal { padding-top: 112px !important; }
  .hero-home--crystal h1, .hero-home h1 { font-size: clamp(45px, 13vw, 64px) !important; line-height: .93 !important; }
  .hero-home__copy > p, .hero-home--crystal .hero-home__copy > p { font-size: 15px !important; line-height: 1.65 !important; }
  .hero-home__actions, .service-hero__actions { display: grid !important; grid-template-columns: 1fr !important; width: 100%; }
  .hero-home__actions .button, .service-hero__actions .button { width: 100%; }
  .hero-home__mini-proof { display: grid !important; gap: 9px !important; }
  .hero-crystal-scene { min-height: 370px !important; width: 100% !important; margin: 0 !important; transform: none !important; }
  .crystal-frame--back { top: 10px !important; right: 11% !important; width: 205px !important; height: 275px !important; }
  .crystal-frame--mid { top: 0 !important; right: 1% !important; width: 245px !important; height: 310px !important; }
  .crystal-frame--front { top: 31px !important; right: 15% !important; width: 225px !important; height: 286px !important; }
  .crystal-compliance-card { top: 47px !important; right: 15% !important; width: 232px !important; padding: 15px !important; }
  .crystal-compliance-card h2 b { font-size: 29px !important; }
  .crystal-compliance-card li { padding: 7px 0 !important; font-size: 10px !important; }
  .crystal-compliance-card li small { display: none !important; }
  .crystal-note--top { top: 12px !important; left: 1% !important; transform: scale(.78) rotate(5deg) !important; }
  .crystal-note--bottom { right: -2% !important; bottom: 51px !important; transform: scale(.73) rotate(3deg) !important; }
  .crystal-cube--red { top: 168px !important; left: 2% !important; transform: scale(.72) rotate(30deg) skew(-2deg,-2deg) !important; }
  .crystal-cube--blue { right: 2% !important; bottom: 66px !important; transform: scale(.65) rotate(30deg) skew(-2deg,-2deg) !important; }
  .crystal-cube--coral { right: 19% !important; bottom: 11px !important; transform: scale(.73) rotate(30deg) skew(-2deg,-2deg) !important; }
  .crystal-city { right: -51px !important; bottom: 18px !important; transform: scale(.66) !important; transform-origin: bottom right; }
  .hero-service-ribbon { justify-content: flex-start !important; padding-left: 13px !important; font-size: 7px !important; }
  .section { padding-top: 63px !important; padding-bottom: 63px !important; }
  .section-heading { margin-bottom: 30px !important; }
  .section-heading h2 { font-size: clamp(37px, 10vw, 53px) !important; }
  .section-heading p { font-size: 14px !important; }
  .service-grid, .directory-grid, .value-grid, .team-grid, .archive-grid { grid-template-columns: 1fr !important; }
  .service-card { min-height: 164px !important; }.service-card__link { padding: 18px !important; }.service-card h3 { font-size: 16px !important; }.service-card p { font-size: 12px !important; -webkit-line-clamp: 3 !important; }
  .why-section__shell { padding: 20px 16px !important; }.why-section__cards { grid-template-columns: 1fr !important; }.why-card { display: grid !important; grid-template-columns: 40px 1fr !important; gap: 0 12px !important; text-align: left !important; padding: 15px 0 !important; border-bottom: 1px solid var(--ta-line, rgba(0,72,132,.14)) !important; }.why-card::after { display: none !important; }.why-card i { grid-row: 1 / 3; margin: 0 !important; }.why-card h3 { align-self: end; margin: 0 !important; font-size: 14px !important; }.why-card p { margin: 4px 0 0 !important; font-size: 11px !important; }
  .tool-shell, .tool-shell--health { padding: 23px 15px !important; border-radius: 18px !important; }.tool-shell h2 { font-size: clamp(35px, 10vw, 48px) !important; }.tool-shell__intro > p { font-size: 14px !important; }.tool-calculator, .tool-calculator--choice, .tool-calculator--wizard { padding: 18px 13px !important; border-radius: 14px !important; }.choice-grid--four, .choice-grid--five { grid-template-columns: 1fr 1fr !important; }.choice-grid--business { grid-template-columns: 1fr 1fr !important; }.choice-grid--business .choice-option:last-child { grid-column: 1 / -1; }.choice-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }.choice-columns, .choice-columns--health { grid-template-columns: 1fr !important; gap: 0 !important; }.choice-option > span { min-height: 63px !important; }.tool-wizard__actions { align-items: stretch !important; flex-direction: column-reverse !important; }.tool-wizard__actions .button { width: 100% !important; min-width: 0 !important; margin-left: 0 !important; }.wizard-back { align-self: flex-start !important; }
  .form-grid, .cta-contact-options, .footer-contact-rail__actions, .service-inclusions__grid, .service-story__grid, .pricing-explainer__grid, .about-story__grid, .process-note__inner, .reassurance-section__card { grid-template-columns: 1fr !important; }.field--full { grid-column: auto !important; }.field input, .field select, .field textarea, .taa-lead-grid input, .taa-lead-grid select, .taa-lead-grid textarea { font-size: 16px !important; }
  .process-line { grid-template-columns: 1fr 1fr !important; gap: 23px 13px !important; }.process-line li:last-child { grid-column: 1 / -1 !important; }.stage-tabs__controls { grid-template-columns: 1fr !important; }.stage-panel { grid-template-columns: auto 1fr !important; }.cta-chess { min-height: 153px !important; transform: scale(.64) !important; transform-origin: center top; margin-bottom: -38px !important; }.cta-section h2 { font-size: clamp(34px, 9.6vw, 48px) !important; }
  .site-footer--v13, .site-footer { margin-top: 0 !important; }.footer-contact-rail { gap: 22px !important; padding: 44px 0 33px !important; }.footer-contact-rail__copy h2 { font-size: clamp(35px, 10.5vw, 48px) !important; }.footer-contact-rail__actions { grid-template-columns: 1fr !important; }.footer-data-grid, .site-footer__grid { grid-template-columns: 1fr !important; gap: 28px !important; padding: 33px 0 !important; }.footer-manifesto { grid-column: auto !important; }.site-footer__bottom { align-items: flex-start !important; flex-direction: column !important; gap: 11px !important; padding: 18px 0 !important; }.site-footer__bottom > div { flex-wrap: wrap !important; gap: 9px 14px !important; }.footer-menu { grid-template-columns: 1fr 1fr !important; }
  .service-hero, .inner-hero { padding-top: 108px !important; padding-bottom: 61px !important; }.service-hero h1, .services-hero h1, .why-hero h1, .process-hero h1, .about-hero h1, .contact-hero h1, .pricing-hero h1 { font-size: clamp(42px, 11.8vw, 60px) !important; }.service-visual { min-height: 335px !important; }.service-story__sticky h2, .service-inclusions h2 { font-size: 37px !important; }.service-story__body p { font-size: 15px !important; }.service-workbench__grid, .related-services__grid { grid-template-columns: 1fr !important; }.workbench-card { min-height: 0 !important; }.related-services__head { align-items: flex-start !important; flex-direction: column !important; }.service-contact-band__inner { align-items: flex-start !important; flex-direction: column !important; }.service-contact-band__inner .button { width: 100% !important; }
  .tas-service-outputs__head, .tas-service-documents__head, .ta-required-documents__top { padding: 21px 16px 17px !important; }.tas-service-outputs h2, .tas-service-documents__head h2, .ta-required-documents__top h2 { font-size: 29px !important; }.tas-service-outputs__grid article, .tas-service-documents__body, .ta-required-documents__body { padding-left: 16px !important; padding-right: 16px !important; }.tas-service-outputs__disclaimer { padding-left: 16px !important; padding-right: 16px !important; }
}

@media (max-width: 375px) {
  .ta-shell { width: calc(100% - 22px) !important; }
  .site-header .custom-logo, .site-header .taxadvizor-logo-control-image { max-width: 126px !important; max-height: 34px !important; }
  .hero-home--crystal h1, .hero-home h1 { font-size: 45px !important; }
  .crystal-compliance-card { right: 11% !important; transform: scale(.92) rotate(-4deg) !important; transform-origin: top right; }
  .crystal-note--top { display: none !important; }
  .choice-grid--three { grid-template-columns: 1fr 1fr !important; }.choice-grid--three .choice-option:last-child { grid-column: 1 / -1 !important; }
  .footer-menu { grid-template-columns: 1fr !important; }
}
