/* Responsive overrides only: desktop above 1024px remains unchanged. */
@media (max-width: 1024px) {
  .nav, .accountPage .nav, .guidePage .nav { height:auto; min-height:0; padding:14px 24px; gap:16px; flex-wrap:wrap; }
  .nav .brand { flex-shrink:0; }
  .nav>.navActions, .guidePage .navLinks { display:flex; flex-wrap:wrap; gap:12px; min-width:0; }
  .nav>.navActions>a { display:inline-flex; align-items:center; min-height:44px; white-space:normal; }
  .nav .navActions>a:not(.loginLink):not(.navCta) { display:inline-flex; }
  .nav .siteLanguages { display:flex; flex-shrink:0; gap:5px; height:auto; }
  .siteLanguages button { min-width:40px; min-height:44px; }
  .nav .accountTrigger { min-height:44px; }
  .nav .accountMenu { min-width:0; width:min(260px,calc(100vw - 48px)); }
  .commercialHero { grid-template-columns:minmax(0,1fr); padding:52px 28px; gap:36px; min-height:0; }
  .commercialHero h1 { font-size:clamp(40px,6.5vw,64px); line-height:1.08; }
  .heroCopy, .flowVisual, .flowList, .resultCard, .priceCards, .pricing>div { min-width:0; max-width:100%; }
  .flowVisual { width:100%; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; }
  .flowList article:nth-child(n) { transform:none; }
  .connectorLines { display:none; }
  .benefitStrip, .grid, .featureGrid, .countryRow, .tabGrid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .benefitStrip article { min-width:0; padding:18px; }
  .pricing { grid-template-columns:minmax(0,1fr); padding:56px 28px; gap:28px; }
  .priceCards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product, .trust, .guideHero, .guideSection, .legal { padding:52px 28px; }
  .trust { grid-template-columns:minmax(0,1fr); gap:24px; }
  .screenBlock, .screenBlock.reverse { grid-template-columns:minmax(0,1fr)!important; display:flex!important; flex-direction:column!important; gap:24px; margin:40px auto 64px; }
  .screenBlock.reverse .screenCopy { order:0!important; }
  .screenCopy, .screenFrame { min-width:0; max-width:100%; }
  .guideCta { flex-direction:column; align-items:flex-start; padding:28px; }
  .guideFooter { flex-wrap:wrap; padding:28px; }
  .portalShell { grid-template-columns:minmax(0,1fr); }
  .portalContent { padding:24px; }
  .profileForm { grid-template-columns:minmax(0,1fr); }
  .formCard, .profileForm label, .formRow, .formTriple, .tokenCard>div, .dataRow>div { min-width:0; }
  .profileForm label, .pixBox label { font-size:14px; }
  .profileForm input, .profileForm select, .emailAccessForm input, .pixBox textarea { min-width:0; max-width:100%; font-size:16px; }
  .tokenCard { grid-template-columns:minmax(0,1fr); }
  .paymentChoices .paymentMethod { min-width:0; max-width:100%; }
  .paymentChoices .paymentMethod span { white-space:normal; }
  .topTabs button, .sideTabs button, .primary, .secondary, .logoutButton { min-height:44px; }
  .portalContent p, .portalContent strong, .dataRow, footer, .guideFooter, .legal a { overflow-wrap:anywhere; }
  .loginPanel { margin:32px auto; padding:28px; }
  .contentHeader { flex-wrap:wrap; }
  footer { grid-template-columns:repeat(2,minmax(0,1fr)); padding:32px 28px; }
}

@media (max-width: 600px) {
  .nav, .accountPage .nav, .guidePage .nav { position:relative; flex-direction:column; align-items:stretch; padding:12px 18px; gap:10px; }
  .nav .brand { align-self:center; }
  .nav .brand img { width:175px; height:58px; }
  .nav>.navActions, .guidePage .navLinks { justify-content:center; width:100%; gap:8px 12px; }
  .nav>.navActions>a { font-size:14px; }
  .nav .accountMenu { right:0; width:min(260px,calc(100vw - 36px)); }
  .commercialHero, .pricing, .product, .trust, .guideHero, .guideSection, .legal { padding:38px 18px; }
  .commercialHero h1, .guideHero h1 { font-size:clamp(32px,9vw,48px); line-height:1.1; overflow-wrap:break-word; }
  .pill { max-width:100%; border-radius:16px; font-size:12px; line-height:1.45; }
  .heroCopy>p, .guideHero p, .sectionLead, .trust p { font-size:16px; line-height:1.6; }
  .actions, .guideActions { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
  .actions a, .guideActions a { justify-content:center; text-align:center; padding:14px 16px; }
  .flowVisual, .benefitStrip, .grid, .priceCards, .featureGrid, .countryRow, .tabGrid, footer { grid-template-columns:minmax(0,1fr); }
  .flowVisual { gap:18px; }
  .flowList article { padding:14px; gap:12px; }
  .flowList article>span { min-width:0; }
  .flowList strong, .flowList small { overflow-wrap:break-word; }
  .benefitStrip { padding:12px 18px; }
  .benefitStrip article { border-right:0; border-bottom:1px solid var(--line); padding:18px 0; }
  .benefitStrip article:last-child { border-bottom:0; }
  .grid article, .featureCard, .countryCard { min-height:0; padding:22px; }
  .priceCards article { padding:24px; }
  .guideCta h2, .trust h2, .legal h1 { font-size:32px; }
  .guideCta a { width:100%; text-align:center; }
  .screenCopy { text-align:left; }
  .screenCopy li { display:block; margin:10px 0; }
  .stepCard { grid-template-columns:minmax(0,1fr); padding:20px; }
  footer, .guideFooter { padding:28px 18px; gap:22px; }
  footer, .guideFooter { text-align:center; }
  footer .footerLogo { margin-left:auto; margin-right:auto; }
  footer .footerLinks, .guideFooter .footerLinks { align-items:center; justify-content:center; }
  .portalContent { padding:16px 12px; }
  .portalSidebar { padding:22px 12px; }
  .portalWelcome { padding-inline:6px; }
  .sideTabs, .topTabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sideTabs button { padding:10px; gap:7px; font-size:14px; overflow-wrap:break-word; }
  .topTabs button { font-size:14px; }
  .tabPanel, .formCard { padding:14px; }
  .formRow, .formTriple, .paymentGrid, .pixBox { grid-template-columns:minmax(0,1fr); }
  .pixBox { padding:16px; }
  .pixBox img { justify-self:center; }
  .saveArea, .paymentChoices { flex-direction:column; align-items:stretch; }
  .paymentChoices .paymentMethod { width:100%; }
  .paymentChoices .paymentMethod img { max-width:88px; }
  .loginPanel { margin:20px auto; padding:22px 16px; }
  .loginPanel h1, .contentHeader h1 { font-size:28px; }
  #googleButton { max-width:100%; min-width:0; }
  .downloadCard { grid-template-columns:auto minmax(0,1fr); padding:16px; gap:12px; }
  .downloadCard button { grid-column:1/-1; }
  .dataRow { grid-template-columns:minmax(0,1fr); gap:10px; }
  .tokenCard { padding:16px; }
}
