*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;min-width:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h)+12px);font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:none}/* has-ticker: ticker is now position:relative — no extra scroll offset needed */body{font-family:var(--font-body);font-size:var(--text-base);color:var(--white);background:linear-gradient(180deg,#F4FBF8 0%,#EDF7F5 45%,#F9FCFA 100%);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}a{text-decoration:none;color:inherit}img{max-width:100%;display:block;height:auto}ul,ol{list-style:none}button{cursor:pointer;font-family:inherit;border:none;background:none;touch-action:manipulation}input,select,textarea{font-size:16px;font-family:inherit}a,button{touch-action:manipulation}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#EAF5F3}::-webkit-scrollbar-thumb{background:#77B7AD;border-radius:8px}.container{max-width:var(--max-w);margin:0 auto;padding:0 var(--pad)}section{overflow:hidden;contain:layout paint}@supports (overflow:clip){section{overflow:clip}}.section-label{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-cond);font-size:var(--text-xs);font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--orange);margin-bottom:var(--sp-4)}.section-label::before{content:'';display:block;width:28px;height:2px;background:var(--orange);border-radius:2px;flex-shrink:0}.section-title{font-family:var(--font-display);font-size:var(--text-3xl);line-height:1;letter-spacing:0.02em;color:#244C62}.section-title span{color:var(--orange)}.section-desc{font-size:var(--text-md);font-weight:400;color:#436474;max-width:560px;margin-top:var(--sp-3);line-height:1.75}.text-center{text-align:center}.text-center .section-label{justify-content:center}.text-center .section-label::before{display:none}.text-center .section-desc{margin-inline:auto}.section-head{margin-bottom:var(--sp-16)}.btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:13px 28px;border-radius:var(--radius-md);font-family:var(--font-cond);font-size:var(--text-sm);font-weight:700;letter-spacing:0.08em;text-transform:uppercase;transition:all var(--base) var(--ease);white-space:nowrap;border:2px solid transparent;cursor:pointer}.btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;flex-shrink:0}.btn-lg{font-size:var(--text-base);padding:16px 36px}.btn-sm{font-size:11px;padding:8px 18px}.btn-primary{background:var(--orange);color:#FFFFFF;border-color:var(--orange);box-shadow:var(--shadow-yellow)}.btn-primary:hover{background:var(--orange-plain);border-color:var(--orange-plain);box-shadow:0 12px 36px rgba(232,117,34,0.28)}.btn-outline{background:#FFFFFF;color:#2A6780;border-color:rgba(42,103,128,0.24)}.btn-outline:hover{border-color:var(--orange);color:var(--orange)}.btn-yellow-outline{background:#FFFFFF;color:var(--orange);border-color:var(--orange)}.btn-yellow-outline:hover{background:var(--orange);color:#FFFFFF;box-shadow:var(--shadow-yellow)}.btn-contrast{background:#2A6780;color:#FFFFFF;border-color:#2A6780}.btn-contrast:hover{background:#3F8E9D;border-color:#3F8E9D;box-shadow:0 8px 24px rgba(42,103,128,0.20)}.btn-contrast-outline{background:transparent;color:#2A6780;border-color:rgba(42,103,128,0.38)}.btn-contrast-outline:hover{background:rgba(42,103,128,0.10);border-color:#2A6780}.btn-whatsapp{background:var(--wa-green);color:#FFFFFF;border-color:var(--wa-green)}.btn-whatsapp:hover{background:#1ebe5a;border-color:#1ebe5a;box-shadow:0 8px 24px rgba(37,211,102,0.28)}.nav__drawer .btn-outline{color:var(--gray-light);border-color:var(--yellow-border)}.nav__drawer .btn-outline:hover{color:var(--yellow);border-color:var(--yellow);background:var(--yellow-dim)}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-4)}.form-label{font-family:var(--font-cond);font-size:var(--text-xs);font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#6F8790}.form-input,.form-select,.form-textarea{background:#FFFFFF;border:1px solid rgba(42,103,128,0.20);border-radius:var(--radius-md);color:#244C62;padding:12px 16px;width:100%;outline:none;transition:border-color var(--base) var(--ease),box-shadow var(--base) var(--ease)}.form-input::placeholder,.form-textarea::placeholder{color:#8DA2A8}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(232,117,34,0.12)}.form-textarea{min-height:120px;resize:vertical}.form-select option{background:#FFFFFF;color:#244C62}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.error-message{color:#C94A3A;font-size:var(--text-xs);font-weight:600;margin-top:2px}input.error,select.error,textarea.error{border-color:#C94A3A !important;box-shadow:0 0 0 3px rgba(201,74,58,0.12)}.form-success{display:flex;align-items:flex-start;gap:var(--sp-2);background:rgba(46,204,113,0.1);border:1.5px solid #2ecc71;color:#24744B;border-radius:var(--radius-lg);padding:var(--sp-5) var(--sp-6);font-size:var(--text-sm);font-weight:600;margin-top:var(--sp-4);line-height:1.5}.skip-link{position:absolute;top:-100px;left:16px;background:var(--orange);color:#FFFFFF;padding:8px 16px;border-radius:var(--radius-md);font-family:var(--font-cond);font-size:var(--text-sm);font-weight:700;z-index:9999;transition:top 0.2s}.skip-link:focus{top:16px}:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible{outline:2px solid var(--orange);outline-offset:3px}:focus:not(:focus-visible){outline:none}.btn--full{width:100%;justify-content:center}

/* ══ MOBILE TOUCH IMPROVEMENTS ══ */
@media (max-width:1024px) {
  .nav__burger {
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
    user-select: none;
  }
  button, a, .quick-action {
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
  }
}
/* ══ ANIMATION THROTTLE ON HIDDEN TAB ══ */
@media (prefers-reduced-data: reduce) {
  .hero__bg { animation: none !important; }
  .ticker__track, .brands__track { animation-duration: 60s !important; }
}

/* ══ BUTTON HOVER LIFTS — desktop pointer devices only ══ */
@media(hover:hover){
  .btn-primary:hover{transform:translateY(-2px)}
  .btn-outline:hover{transform:translateY(-2px)}
  .btn-yellow-outline:hover{transform:translateY(-2px)}
  .btn-contrast:hover{transform:translateY(-2px)}
  .btn-contrast-outline:hover{transform:translateY(-2px)}
  .btn-whatsapp:hover{transform:translateY(-2px)}
}
/* ══ MINIMUM TAP TARGET — WCAG 44×44px ══ */
.btn{min-height:44px;min-width:44px}
.btn-sm{min-height:44px}
.nav__link,.nav__drawer-link,.footer__link,.topbar__item{min-height:44px;display:inline-flex;align-items:center}

/* ══ AUTOPREFIXER SHIMS — Safari/older browser compatibility ══ */
/* flex gap fallback for iOS < 14.5 */
@supports not (gap: 1px) {
  .nav__links { gap: 0; }
  .nav__links > * + * { margin-left: 24px; }
  .quick-actions { gap: 0; }
  .quick-actions > * + * { margin-top: 14px; }
}
/* scroll-behavior fallback */
@supports not (scroll-behavior: smooth) {
  html { scroll-behavior: auto; }
}

