﻿/* Mobile & Tablet Fixes for Summers Lake Website */

/* Tablet (<= 991px) */
@media screen and (max-width: 991px) {
  #premium-header {
    height: 72px !important;
  }
  #premium-header .sm-theme-logo {
    max-height: 48px !important;
  }
  #premium-header nav {
    padding-left: 70px !important;
  }
  #premium-header nav>div {
    gap: 8px !important;
    font-size: 14px !important;
  }
  #premium-header nav>div>a,
  #premium-header nav>div>span {
    font-size: 14px !important;
    letter-spacing: 0.9px !important;
  }
  .header-language-switcher,
  .header-theme-switcher {
    transform: scale(0.9);
    transform-origin: top right;
  }
  .w-container,
  .w-layout-blockcontainer {
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  h1 { font-size: clamp(28px, 6vw, 42px) !important; }
  h2 { font-size: clamp(24px, 5vw, 36px) !important; }
  h3 { font-size: clamp(20px, 4.5vw, 28px) !important; }
  p { font-size: clamp(15px, 2.2vw, 17px) !important; line-height: 1.6 !important; }
  article.blog-news { max-width: 100% !important; padding: 24px !important; font-size: 15px !important; }
  article.blog-news header h3 { font-size: 1.1rem !important; letter-spacing: 2px !important; }
}

/* Mobile Landscape / Small Tablet (<= 767px) */
@media screen and (max-width: 767px) {
  #premium-header {
    height: 64px !important;
  }
  #premium-header .sm-theme-logo {
    max-height: 40px !important;
  }
  #premium-header nav {
    padding-left: 56px !important;
  }
  #premium-header nav>div {
    gap: 6px !important;
    font-size: 13px !important;
  }
  #premium-header nav>div>a,
  #premium-header nav>div>span {
    font-size: 13px !important;
    letter-spacing: 0.7px !important;
  }
  #premium-header nav>div>span.nav-text-hide-mobile {
    display: none !important;
  }
  .header-language-switcher,
  .header-theme-switcher {
    transform: scale(0.85);
    transform-origin: top right;
  }
  .section.hero, .section.above-hero, .section.below-hero {
    padding-top: 70px !important;
    padding-bottom: 32px !important;
  }
  .posts-grid, .collection-list-2, .w-row {
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    gap: 16px !important;
  }
  .button {
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 12px 20px !important;
    font-size: 16px !important;
  }
  .w-form { max-width: 100% !important; }
  input[type="text"], input[type="email"], textarea {
    font-size: 16px !important;
    padding: 12px 14px !important;
  }
  img { max-width: 100% !important; height: auto !important; }
  .image-13, .w-image { max-width: 100% !important; }
  .fgx-footer-bottom {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    text-align: center !important;
  }
  .fgx-footer-links { justify-content: center !important; }
  .fgx-footer-social { justify-content: center !important; }
  #titulos, #sobre-autor, #sobre-notas, #sobre-descubra, #midia, #midia-video, #blog-analises, #blog-titulo, #blog-falando, #blog-botao, #contato-ebook, #contato-titulo, #contato-podcasts {
    scroll-margin-top: 80px !important;
  }
}

/* Small Phones (<= 479px) */
@media screen and (max-width: 479px) {
  #premium-header {
    height: 56px !important;
  }
  #premium-header .sm-theme-logo {
    max-height: 34px !important;
  }
  #premium-header nav {
    padding-left: 46px !important;
  }
  #premium-header nav>div {
    gap: 4px !important;
    font-size: 12px !important;
  }
  #premium-header nav>div>a,
  #premium-header nav>div>span {
    font-size: 12px !important;
    letter-spacing: 0.5px !important;
    padding: 4px 6px !important;
  }
  .header-language-switcher, .header-theme-switcher {
    transform: scale(0.8);
    transform-origin: top right;
  }
  .section.hero, .section.above-hero, .section.below-hero {
    padding-top: 56px !important;
    padding-bottom: 20px !important;
  }
  .w-container, .w-layout-blockcontainer {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  h1 { font-size: clamp(22px, 7vw, 30px) !important; }
  h2 { font-size: clamp(18px, 6vw, 26px) !important; }
  h3 { font-size: clamp(16px, 5vw, 22px) !important; }
  p { font-size: clamp(14px, 2.4vw, 16px) !important; }
  article.blog-news { padding: 14px !important; }
  article.blog-news header { padding-bottom: 10px !important; margin-bottom: 16px !important; }
  .button {
    min-height: 44px !important;
    padding: 12px 14px !important;
    font-size: 15px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .header-language-trigger {
    font-size: 11px !important;
    padding: 4px 8px !important;
  }
  #cookie-consent {
    left: 6px !important;
    right: 6px !important;
    max-width: calc(100vw - 12px) !important;
  }
  #cookie-consent-close-fab {
    left: 8px !important;
    bottom: 8px !important;
  }
}

/* Global overflow and embedding fixes */
body {
  overflow-x: hidden !important;
}
html {
  overflow-x: hidden !important;
}
.w-container>*, .w-layout-blockcontainer>* {
  max-width: 100%;
  box-sizing: border-box;
}
iframe, video, embed, object {
  max-width: 100%;
  height: auto;
}
