/* Caona's commercial header and homepage hero. */
:root {
  --caona-navy: #101b23;
  --caona-gold: #f5c569;
  --caona-commercial-width: min(1780px, 88.6%);
}
html { scroll-behavior: smooth; scroll-padding-top: 110px; }
.caona-commercial { background: var(--caona-navy); }
.caona-commercial .custom-cursor { display: none !important; }
.caona-commercial :where(a, button, input, summary):focus-visible { outline: 2px solid var(--caona-gold); outline-offset: 5px; }
.caona-skip-link { position: fixed; left: 20px; top: -80px; z-index: 1000; padding: 12px 20px; background: var(--caona-gold); color: #101b23; }
.caona-skip-link:focus { top: 12px; }
.caona-site-header { position: sticky; top: 0; z-index: 110; background: #101a22; border-bottom: 1px solid #ffffff12; font-family: var(--font-primary); }
.caona-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; width: var(--caona-commercial-width); height: 94px; margin-inline: auto; }
.caona-brand { display: inline-flex; align-items: center; flex: 0 0 auto; }
.caona-brand img { display: block; width: 173px; height: auto; }
.caona-navigation { display: flex; align-items: center; justify-content: center; gap: clamp(22px, 2.5vw, 48px); margin-left: auto; margin-right: auto; }
.caona-nav-link { position: relative; display: inline-flex; align-items: center; gap: 9px; padding: 34px 0; color: #e0e3e5; font-size: 16px; line-height: 24px; white-space: nowrap; cursor: pointer; }
.caona-nav-link:hover, .caona-nav-link:focus, .caona-services-menu[open] > summary { color: var(--caona-gold); }
.caona-nav-link.is-current::after { content: ''; position: absolute; height: 2px; left: 0; right: 0; bottom: 24px; background: var(--caona-gold); }
.caona-nav-link svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.caona-services-menu { position: relative; }
.caona-services-menu summary { list-style: none; }
.caona-services-menu summary::-webkit-details-marker { display: none; }
.caona-services-dropdown { position: absolute; z-index: 2; left: -24px; top: calc(100% - 8px); width: 340px; border: 1px solid #ffffff16; background: #15232e; box-shadow: 0 16px 50px #0005; border-radius: 6px; padding: 10px; }
.caona-services-dropdown a { display: block; padding: 15px 14px; border-radius: 3px; color: #fff; }
.caona-services-dropdown a:hover { background: #ffffff08; color: var(--caona-gold); }
.caona-services-dropdown strong { display: block; font-size: 15px; font-weight: 600; }
.caona-services-dropdown span { display: block; margin-top: 4px; font-size: 12px; line-height: 1.5; color: #acb6bd; }
.caona-header-actions { display: flex; align-items: center; gap: 30px; }
.caona-search-toggle, .caona-menu-toggle, .caona-search-close { display: inline-flex; align-items: center; justify-content: center; padding: 8px; border: 0; background: transparent; color: #dbe0e3; cursor: pointer; }
.caona-search-toggle svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.caona-search-toggle:hover { color: var(--caona-gold); }
.caona-button { display: inline-flex; justify-content: center; align-items: center; gap: 20px; min-height: 56px; padding: 14px 25px; border: 1px solid transparent; border-radius: 5px; font-family: var(--font-primary); font-size: 16px; font-weight: 600; line-height: 1.35; text-align: center; text-decoration: none; transition: background .2s, border-color .2s, transform .2s; }
.caona-button svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.3; }
.caona-button--gold { color: #131b21; background: var(--caona-gold); border-color: var(--caona-gold); box-shadow: none; }
.caona-button--gold:hover, .caona-button--gold:focus { color: #101b23; background: #ffda8a; border-color: #ffda8a; transform: translateY(-1px); }
.caona-button--outline { min-width: 220px; color: #f0f2f3; border-color: #9aa4ac; background: #101b2338; font-weight: 400; }
.caona-button--outline:hover, .caona-button--outline:focus { background: #ffffff0d; color: #fff; border-color: #fff; }
.caona-header-cta { min-height: 49px; padding: 12px 23px; font-size: 14px; gap: 16px; }
.caona-menu-toggle, .caona-mobile-cta { display: none; }

/* Same type family and scale as the rest of the website. */
.caona-commercial-hero { position: relative; isolation: isolate; overflow: hidden; background: var(--caona-navy); font-family: var(--font-primary); }
.caona-hero-wind { position: absolute; z-index: -2; inset: 0; overflow: hidden; pointer-events: none; }
.caona-hero-wind svg { display: block; width: 100%; height: 100%; min-height: 100%; opacity: .7; }
.caona-wind-current { transform-origin: center; stroke-width: 1; animation: caona-wind-drift 18s ease-in-out infinite alternate; }
.caona-wind-current--light { animation-duration: 23s; animation-delay: -7s; }
.caona-commercial-inner { display: flex; align-items: center; width: var(--caona-commercial-width); min-height: 410px; margin-inline: auto; padding-block: 64px 48px; }
.caona-commercial-copy { position: relative; width: min(680px, 70%); }
.caona-commercial-eyebrow { margin: 0 0 20px; color: #aab5c0; font-size: 12px; line-height: 1.5; text-transform: uppercase; letter-spacing: .08em; }
.caona-commercial-copy h1 { max-width: 660px; margin: 0 0 20px; color: #f6f7f8; font-family: var(--font-primary); font-size: clamp(36px, 3vw, 48px); font-weight: 700; line-height: 1.2; letter-spacing: -.025em; overflow-wrap: normal; }
.caona-commercial-copy h1 .caona-text-gold { color: var(--caona-gold); font-weight: inherit; }
.caona-commercial-description { max-width: 600px; margin: 0; color: #bdcadc; font-size: 17px; font-weight: 400; line-height: 1.75; }
.caona-commercial-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 28px; }
.caona-commercial-actions .caona-button { min-height: 50px; padding: 12px 22px; font-size: 15px; }
.caona-hero-services { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); width: var(--caona-commercial-width); max-width: 1040px; margin: 0 auto; padding: 24px 0 28px; border-top: 1px solid #ffffff14; }
.caona-hero-services a { display: flex; align-items: center; justify-content: center; gap: 14px; padding: 6px 16px; color: #cbd3da; font-size: 14px; line-height: 1.5; text-align: left; }
.caona-hero-services a + a { border-left: 1px solid #ffffff14; }
.caona-hero-services a:hover { color: var(--caona-gold); }
.caona-hero-services svg { flex: 0 0 auto; width: 25px; height: 25px; color: var(--caona-gold); fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linejoin: round; stroke-linecap: round; }
@keyframes caona-wind-drift {
  from { transform: translate3d(-20px, 9px, 0) rotate(-2deg); }
  to { transform: translate3d(24px, -12px, 0) rotate(2deg); }
}
.caona-commercial .caona-whatsapp-bubble { max-width: 54px; min-height: 54px; width: 54px; padding: 0; justify-content: center; right: 24px; bottom: 24px; }
.caona-commercial .caona-whatsapp-bubble span { display: none; }
.caona-commercial .caona-whatsapp-bubble i { width: auto; height: auto; flex: none; background: none; font-size: 26px; }
#plataformas-caona { scroll-margin-top: 125px; }

.caona-search-dialog { width: min(620px, calc(100% - 32px)); max-height: 85dvh; margin: auto; padding: 30px; color: #f1f3f5; border: 1px solid #ffffff24; border-radius: 10px; background: #14222c; box-shadow: 0 30px 100px #0008; font-family: var(--font-primary); }
.caona-search-dialog::backdrop { background: #070e15c7; backdrop-filter: blur(5px); }
.caona-search-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.caona-search-heading h2 { margin: 0; color: #fff; font-size: 24px; line-height: 1.3; }
.caona-search-close svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.caona-site-search { margin-top: 20px; }
.caona-site-search input { width: 100%; height: 52px; padding: 10px 14px; border: 1px solid #5e6d78; border-radius: 4px; color: #fff; background: #0d1820; font-size: 16px; }
.caona-site-search input::placeholder { color: #a1abb2; }
.caona-search-label { margin: 22px 0 8px; color: #a3aeb7; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.caona-search-results > a { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 15px 0; color: #ecedef; border-bottom: 1px solid #ffffff12; font-size: 15px; line-height: 1.45; }
.caona-search-results > a:hover { color: var(--caona-gold); }
.caona-search-results > a[hidden], .caona-search-empty[hidden] { display: none; }
.caona-search-empty { margin: 18px 0 0; font-size: 15px; }
@media (min-width: 1800px) {
  .caona-header-inner { height: 102px; }
  .caona-brand img { width: 190px; }
  .caona-nav-link { font-size: 18px; }
  .caona-header-cta { font-size: 16px; min-height: 54px; padding-inline: 28px; }
}
@media (max-width: 1199px) {
  .caona-header-inner { gap: 25px; height: 84px; }
  .caona-brand img { width: 155px; }
  .caona-navigation { gap: 20px; }
  .caona-nav-link { font-size: 14px; padding-block: 29px; }
  .caona-nav-link.is-current::after { bottom: 20px; }
  .caona-header-actions { gap: 16px; }
  .caona-header-cta { font-size: 12px; padding-inline: 16px; gap: 10px; }
}
@media (max-width: 991px) {
  .caona-header-inner { width: 90%; height: 78px; }
  .caona-brand img { width: 145px; }
  .caona-header-actions { margin-left: auto; gap: 16px; }
  .caona-header-cta { min-height: 44px; }
  .caona-menu-toggle { display: inline-flex; flex-direction: column; gap: 6px; width: 36px; height: 40px; }
  .caona-menu-toggle span { width: 24px; height: 2px; background: currentColor; transition: transform .2s; }
  .caona-menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(4px) rotate(45deg); }
  .caona-menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-4px) rotate(-45deg); }
  .caona-navigation { display: none; position: absolute; left: 0; right: 0; top: 100%; max-height: calc(100dvh - 78px); overflow: auto; padding: 12px 5% 24px; background: #101b23; border-bottom: 1px solid #ffffff20; box-shadow: 0 15px 30px #0004; }
  .caona-navigation.is-open { display: block; }
  .caona-nav-link { display: flex; justify-content: space-between; padding: 15px 0; font-size: 16px; border-bottom: 1px solid #ffffff0d; }
  .caona-nav-link.is-current { color: var(--caona-gold); }
  .caona-nav-link.is-current::after { display: none; }
  .caona-services-dropdown { position: static; width: 100%; border: 0; border-radius: 0; padding: 2px 4px; background: #ffffff03; box-shadow: none; }
  .caona-mobile-cta { display: flex; justify-content: space-between; padding: 15px 17px; margin-top: 18px; border-radius: 4px; color: #111c24; background: var(--caona-gold); font-size: 15px; font-weight: 700; }
}
@media (max-width: 639px) {
  .caona-header-inner { width: calc(100% - 40px); height: 76px; gap: 15px; }
  .caona-brand img { width: 139px; }
  .caona-header-cta { display: none; }
  .caona-header-actions { gap: 13px; }
  .caona-search-toggle svg { width: 23px; height: 23px; }
  .caona-commercial .caona-whatsapp-bubble { right: 15px; bottom: 15px; width: 48px; min-height: 48px; max-width: 48px; }
  .caona-search-dialog { padding: 24px 20px; }
  .caona-search-heading h2 { font-size: 21px; }
}
@media (max-width: 991px) {
  .caona-commercial-inner { min-height: 370px; padding-block: 48px 36px; width: 90%; }
  .caona-commercial-copy { width: min(640px, 85%); }
  .caona-commercial-copy h1 { font-size: 36px; }
  .caona-hero-services { width: 90%; }
  .caona-hero-services a { gap: 10px; padding-inline: 8px; font-size: 12px; }
}
@media (max-width: 639px) {
  .caona-commercial-inner { width: calc(100% - 40px); min-height: 0; padding-block: 42px 34px; }
  .caona-commercial-copy { width: 100%; }
  .caona-commercial-eyebrow { font-size: 10px; letter-spacing: .06em; margin-bottom: 18px; }
  .caona-commercial-copy h1 { font-size: clamp(26px, 6.9vw, 32px); line-height: 1.24; letter-spacing: -.02em; margin-bottom: 18px; }
  .caona-commercial-description { font-size: 15px; line-height: 1.75; }
  .caona-commercial-actions { gap: 10px; margin-top: 24px; }
  .caona-commercial-actions .caona-button { min-height: 46px; padding: 11px 16px; font-size: 13px; }
  .caona-commercial-actions .caona-button--outline { min-width: 0; }
  .caona-hero-wind { opacity: .55; }
  .caona-hero-services { width: calc(100% - 40px); grid-template-columns: repeat(2, 1fr); padding-block: 14px 22px; }
  .caona-hero-services a { justify-content: flex-start; padding: 14px 8px; gap: 12px; font-size: 12px; }
  .caona-hero-services a + a { border-left: 0; }
  .caona-hero-services a:nth-child(even) { border-left: 1px solid #ffffff14; }
  .caona-hero-services svg { width: 23px; height: 23px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .caona-button, .caona-menu-toggle span { transition: none; }
  .caona-wind-current { animation: none; }
}
@media print { .caona-site-header, .caona-search-dialog, .caona-hero-services { display: none; } }
