[data-global-cta]{
  position:relative;
  z-index:1;
  padding:clamp(2.2rem,5vw,4.5rem) 0;
  background:var(--bone,#f4f7fd);
}

[data-global-cta] .wrap,
[data-global-footer] .wrap{width:100%}

[data-global-cta] .cta-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(1.5rem,4vw,4rem);
  min-height:clamp(220px,23vw,310px);
  padding:clamp(2rem,4.6vw,4.5rem);
  overflow:hidden;
  border-radius:clamp(26px,3.6vw,52px);
  background:var(--sun,#ffcb57);
  color:var(--ink,#0e1f45);
}

[data-global-cta] .cta-txt{min-width:0}

[data-global-cta] h2{
  max-width:15ch;
  margin:0;
  color:inherit;
  font-family:var(--display,"Gabarito",system-ui,sans-serif);
  font-size:clamp(2.15rem,4.4vw,4.35rem);
  font-weight:800;
  letter-spacing:-.045em;
  line-height:.95;
}

[data-global-cta] p{
  max-width:57ch;
  margin:clamp(.8rem,1.4vw,1.2rem) 0 0;
  color:rgba(14,31,69,.76);
  font:500 clamp(1rem,1.35vw,1.2rem)/1.55 var(--body,"Karla",system-ui,sans-serif);
}

[data-global-cta] .cta-act{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:1.15rem;
  min-width:max-content;
}

[data-global-cta] .duo{
  display:flex;
  align-items:center;
  flex:none;
}

[data-global-cta] .duo span{
  display:block;
  width:clamp(46px,4vw,58px) !important;
  height:clamp(46px,4vw,58px) !important;
  flex:none;
  overflow:hidden;
  border:3px solid var(--sun,#ffcb57);
  border-radius:50%;
  background:#fff;
  box-shadow:0 8px 22px rgba(14,31,69,.15);
}

[data-global-cta] .duo span+span{margin-left:-14px}

[data-global-cta] .duo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  object-fit:cover !important;
}

[data-global-cta] .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  min-height:52px;
  padding:1rem 1.4rem;
  border:0;
  border-radius:999px;
  background:var(--ink,#0e1f45);
  color:#fff;
  font-family:var(--display,"Gabarito",system-ui,sans-serif);
  font-size:1rem;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease;
}

[data-global-cta] .btn:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 24px rgba(14,31,69,.18);
}

[data-global-cta] .btn .bec,
[data-global-footer] .foot-btn .bec{
  display:inline-block;
  width:.62em;
  height:.62em;
  flex:none;
  border-radius:0 100% 0 0;
  background:var(--sun,#ffcb57);
}

[data-global-cta] .btn .arr{transition:transform .3s ease}
[data-global-cta] .btn:hover .arr{transform:translateX(4px)}

[data-global-footer]{
  position:relative;
  z-index:1;
  padding:clamp(3rem,6vw,5.5rem) 0 1.5rem;
  background:var(--ink,#0e1f45);
  color:#fff;
  font-size:1rem;
}

[data-global-footer] a{
  color:inherit;
  text-decoration:none;
}

[data-global-footer] .foot-main{
  display:grid;
  grid-template-columns:minmax(230px,1.35fr) minmax(135px,.65fr) minmax(170px,.8fr) minmax(230px,1fr);
  gap:clamp(2rem,4vw,4.5rem);
  align-items:start;
}

[data-global-footer] .foot-brand{max-width:21rem}

[data-global-footer] .foot-brand>a{
  display:inline-flex;
  align-items:center;
  padding:.8rem 1rem;
  border-radius:18px;
  background:#fff;
}

[data-global-footer] .logo{
  display:block;
  width:132px !important;
  height:auto !important;
  max-width:100% !important;
  margin:0 !important;
  border:0 !important;
}

[data-global-footer] .foot-brand p{
  max-width:28ch;
  margin:1.15rem 0 0;
  color:rgba(255,255,255,.68);
  font:500 .98rem/1.55 var(--body,"Karla",system-ui,sans-serif);
}

[data-global-footer] .foot-label{
  margin:0 0 1rem;
  color:var(--sun,#ffcb57);
  font-family:var(--display,"Gabarito",system-ui,sans-serif);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.1em;
  line-height:1.2;
  text-transform:uppercase;
}

[data-global-footer] .foot-column nav{display:grid;gap:.65rem}

[data-global-footer] .foot-column a,
[data-global-footer] .mail,
[data-global-footer] .phone{
  width:fit-content;
  color:rgba(255,255,255,.82);
  font-family:var(--display,"Gabarito",system-ui,sans-serif);
  font-size:.98rem;
  font-weight:600;
  line-height:1.35;
  transition:color .2s ease;
}

[data-global-footer] .foot-column a:hover,
[data-global-footer] .mail:hover,
[data-global-footer] .phone:hover,
[data-global-footer] .bot a:hover{
  color:#fff;
  text-decoration:underline;
  text-decoration-color:var(--sun,#ffcb57);
  text-decoration-thickness:2px;
  text-underline-offset:4px;
}

[data-global-footer] .mail{
  display:block;
  margin-bottom:.45rem;
  font-size:1.05rem;
}

[data-global-footer] .phone{
  display:block;
  width:fit-content;
  margin-bottom:.55rem;
  font-size:1.05rem;
}

[data-global-footer] .hours{
  margin:0 0 1.2rem;
  color:rgba(255,255,255,.68);
  font:500 .92rem/1.45 var(--body,"Karla",system-ui,sans-serif);
}

[data-global-footer] .foot-btn{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  min-height:48px;
  padding:.9rem 1.15rem;
  border-radius:999px;
  background:var(--sun,#ffcb57);
  color:var(--ink,#0e1f45);
  font-family:var(--display,"Gabarito",system-ui,sans-serif);
  font-size:.95rem;
  font-weight:800;
  line-height:1;
  transition:transform .25s ease;
}

[data-global-footer] .foot-btn:hover{transform:translateY(-2px)}
[data-global-footer] .foot-btn .bec{background:var(--ink,#0e1f45)}

[data-global-footer] .bot{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:.7rem 1.5rem;
  margin-top:clamp(2.8rem,5vw,4.5rem);
  padding-top:1.25rem;
  border-top:1px solid rgba(255,255,255,.16);
  color:rgba(255,255,255,.5);
  font:500 .82rem/1.5 var(--body,"Karla",system-ui,sans-serif);
}

[data-global-footer] .bot nav{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 1.2rem;
}

@media (max-width:980px){
  [data-global-cta] .cta-card{grid-template-columns:1fr}
  [data-global-cta] .cta-act{justify-content:flex-start}
  [data-global-footer] .foot-main{grid-template-columns:1.2fr 1fr 1fr}
  [data-global-footer] .foot-contact{grid-column:2 / -1}
}

@media (max-width:680px){
  [data-global-cta] .cta-card{
    min-height:0;
    padding:2rem 1.35rem;
    border-radius:26px;
  }

  [data-global-cta] h2{font-size:clamp(2rem,12vw,3.2rem)}

  [data-global-cta] .cta-act{
    align-items:flex-start;
    flex-direction:column;
    min-width:0;
  }

  [data-global-cta] .btn{width:100%}

  [data-global-footer] .foot-main{
    grid-template-columns:1fr 1fr;
    gap:2.3rem 1.4rem;
  }

  [data-global-footer] .foot-brand,
  [data-global-footer] .foot-contact{grid-column:1 / -1}
  [data-global-footer] .bot{flex-direction:column}
}

@media (max-width:400px){
  [data-global-footer] .foot-main{grid-template-columns:1fr}
  [data-global-footer] .foot-brand,
  [data-global-footer] .foot-contact{grid-column:auto}
}

@media (prefers-reduced-motion:reduce){
  [data-global-cta] .btn,
  [data-global-footer] .foot-btn{transition:none}
}
