/* Contato: fotografia ambiente e quatro caminhos de ação com o mesmo destino existente. */
#contato { min-height: 0; padding-bottom: clamp(26px, 4vw, 46px); background: #080808; }
#contato::before { height: min(850px, 110svh); background-image: linear-gradient(180deg, #05050591 0%, #050505a8 30%, #080808 100%), url('./assets/concept-ambiente.jpg'); background-position: center top, center 31%; }
#contato > .wide-wrap { max-width: 1180px; }
#contato .site-section-heading { max-width: 1180px; margin: 0 auto clamp(24px, 3vw, 36px); text-align: left; }
#contato .site-section-heading .overline { margin-bottom: 8px; color: #f2d27b; font: 500 clamp(10px, 1.3vw, 14px)/1.3 'Inter', sans-serif; letter-spacing: .28em; text-shadow: 0 2px 8px #000; }
#contato .site-section-heading :is(h1,h2) { width: max-content; max-width: 100%; margin: 0 0 7px; color: #f4c95c; background: linear-gradient(180deg, #fff0b2 4%, #f6d275 39%, #b97b21 75%, #f7d675 96%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; font: 800 clamp(66px, 10vw, 124px)/.88 'Barlow Condensed', Impact, sans-serif; letter-spacing: -.025em; text-transform: uppercase; filter: drop-shadow(0 5px 12px #0008); }
#contato .site-section-heading > p:last-child { max-width: 640px; margin: 11px 0 0; color: #f5f5f5; font: 400 clamp(14px, 1.5vw, 19px)/1.45 'Inter', sans-serif; text-shadow: 0 2px 9px #000; }

#contato .contact-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(12px, 1.8vw, 20px); max-width: none; margin: 0; }
#contato .contact-card { position: relative; display: grid; grid-template-columns: clamp(66px, 7vw, 86px) minmax(0, 1fr) 50px; align-items: center; gap: clamp(12px, 1.8vw, 20px); min-width: 0; min-height: 176px; overflow: hidden; padding: clamp(16px, 2vw, 23px); border: 1px solid #d4af37; border-radius: 18px; background-color: #090909; background-position: center; background-size: cover; box-shadow: 0 15px 30px #0008, inset 0 1px #ffebad26; color: #f5f5f5; text-decoration: none; isolation: isolate; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
#contato .contact-card-whatsapp { background-image: linear-gradient(90deg, #050505ed 0%, #050505de 52%, #05050578 100%), url('./assets/contact/contato-whatsapp.webp'); }
#contato .contact-card-location { background-image: linear-gradient(90deg, #050505ed 0%, #050505de 52%, #05050578 100%), url('./assets/contact/contato-localizacao.webp'); }
#contato .contact-card-instagram { background-image: linear-gradient(90deg, #050505ed 0%, #050505de 52%, #05050578 100%), url('./assets/contact/contato-instagram.webp'); }
#contato .contact-card-hours { background-image: linear-gradient(90deg, #050505ed 0%, #050505de 52%, #05050578 100%), url('./assets/contact/contato-horarios.webp'); }
#contato .contact-card-icon { display: grid; width: clamp(66px, 7vw, 86px); height: clamp(66px, 7vw, 86px); place-items: center; border: 1px solid #ad863b; border-radius: 18px; background: linear-gradient(145deg, #3a2a14d9, #070707f0 62%); box-shadow: inset 0 0 16px #f4c45a16, 0 6px 20px #0009; color: #f7cb68; }
#contato .contact-card-icon svg { width: 48%; height: 48%; fill: none; stroke: currentColor; stroke-width: 2.7; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 8px #dca13955); }
#contato .contact-card-copy { display: block; min-width: 0; }
#contato .contact-card-copy strong { display: block; margin: 0 0 4px; color: #fff; font: 800 clamp(19px, 2vw, 30px)/1.04 'Inter', sans-serif; letter-spacing: -.025em; }
#contato .contact-card-kicker { display: block; margin-bottom: 11px; color: #ffd76a; font: 700 clamp(9px, 1vw, 12px)/1.3 'Inter', sans-serif; letter-spacing: .17em; }
#contato .contact-card-info { display: block; color: #f5f5f5; font: 400 clamp(13px, 1.15vw, 17px)/1.35 'Inter', sans-serif; overflow-wrap: anywhere; }
#contato .contact-card-info small { display: block; margin-top: 3px; color: #e4ddd0; font: 400 clamp(11px, .9vw, 13px)/1.3 'Inter', sans-serif; }
#contato .contact-card-arrow { display: grid; width: 50px; height: 50px; place-items: center; border: 1.5px solid #f2c052; border-radius: 50%; background: #0b0b0bc9; box-shadow: 0 0 17px #e3a82e5a; color: #ffdc81; font: 32px/1 'Inter', sans-serif; transition: transform .3s ease, background .3s ease; }
#contato .contact-card:hover, #contato .contact-card:focus-visible { transform: translateY(-3px); border-color: #ffe29b; box-shadow: 0 18px 36px #0009, 0 0 22px #c9952b5c, inset 0 1px #ffebad3d; }
#contato .contact-card:hover .contact-card-arrow, #contato .contact-card:focus-visible .contact-card-arrow { transform: translateX(3px); background: #3d2b11df; }
#contato .contact-card:hover .contact-card-icon { box-shadow: inset 0 0 22px #f4c45a31, 0 0 18px #dca13955; }
#contato .contact-card:active { transform: scale(.988); border-color: #ffe29b; }
#contato .contact-card:focus-visible, #contato .school-contact:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

#contato .school-contact { display: grid; grid-template-columns: 60px minmax(0, 1fr) 36px; align-items: center; gap: 17px; min-height: 112px; max-width: none; margin: clamp(13px, 1.8vw, 20px) auto 0; padding: 18px 24px; border: 1px solid #d4af37; border-radius: 18px; background: linear-gradient(90deg, #080706ed 0%, #080706de 56%, #08070683 100%), url('./assets/cortes-ferramentas-fundo.webp') center 42% / cover no-repeat; box-shadow: 0 15px 30px #0008, inset 0 1px #ffebad26; color: #f5f5f5; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
#contato .school-contact-icon { display: grid; width: 58px; height: 58px; place-items: center; border: 2px solid #f0be4f; border-radius: 50%; color: #ffd76a; font: 700 38px/.9 Georgia, serif; box-shadow: 0 0 16px #dca1394d; }
#contato .school-contact-copy strong { display: block; color: #fff; font: 700 clamp(16px, 1.7vw, 23px)/1.2 'Inter', sans-serif; }
#contato .school-contact-copy small { display: block; margin-top: 5px; color: #ffd76a; font: 600 clamp(9px, .9vw, 12px)/1.3 'Inter', sans-serif; letter-spacing: .17em; }
#contato .school-contact-arrow { color: #ffd76a; font: 35px/1 'Inter', sans-serif; transition: transform .3s ease; }
#contato .school-contact:hover, #contato .school-contact:focus-visible { transform: translateY(-3px); border-color: #ffe29b; box-shadow: 0 18px 35px #0009, 0 0 20px #c9952b55; }
#contato .school-contact:hover .school-contact-arrow { transform: translateX(3px); }
#contato .school-contact:active { transform: scale(.988); }

@media (max-width: 1000px) {
  #contato .contact-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #contato .contact-card { grid-template-columns: 60px minmax(0, 1fr) 40px; gap: 11px; min-height: 156px; padding: 15px; }
  #contato .contact-card-icon { width: 60px; height: 60px; border-radius: 15px; }
  #contato .contact-card-arrow { width: 40px; height: 40px; font-size: 27px; }
}
@media (max-width: 700px) {
  #contato { padding-top: max(84px, calc(env(safe-area-inset-top) + 78px)); padding-bottom: 28px; }
  #contato::before { height: min(850px, 110svh); }
  #contato > .wide-wrap { width: calc(100% - 24px); }
  #contato .site-section-heading { margin-bottom: 22px; }
  #contato .site-section-heading .overline { font-size: 10px; letter-spacing: .22em; }
  #contato .site-section-heading :is(h1,h2) { font-size: clamp(63px, 18vw, 82px); }
  #contato .site-section-heading > p:last-child { font-size: 14px; }
  #contato .contact-cards { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  #contato .contact-card { grid-template-columns: 60px minmax(0, 1fr) 40px; min-height: 142px; padding: 12px; border-radius: 15px; }
  #contato .contact-card-copy strong { font-size: clamp(18px, 5vw, 22px); }
  #contato .contact-card-kicker { margin-bottom: 8px; font-size: 9px; letter-spacing: .13em; }
  #contato .contact-card-info { font-size: 12px; }
  #contato .contact-card-info small { font-size: 11px; }
  #contato .school-contact { grid-template-columns: 48px minmax(0, 1fr) 25px; gap: 12px; min-height: 92px; padding: 13px 15px; border-radius: 15px; }
  #contato .school-contact-icon { width: 46px; height: 46px; font-size: 31px; }
  #contato .school-contact-copy strong { font-size: 15px; }
  #contato .school-contact-copy small { font-size: 9px; letter-spacing: .12em; }
  #contato .school-contact-arrow { font-size: 28px; }
}
@media (max-width: 360px) {
  #contato .contact-card { grid-template-columns: 49px minmax(0, 1fr) 35px; gap: 9px; padding: 10px; }
  #contato .contact-card-icon { width: 49px; height: 49px; border-radius: 12px; }
  #contato .contact-card-arrow { width: 35px; height: 35px; font-size: 23px; }
  #contato .contact-card-kicker { letter-spacing: .09em; }
}
@media (prefers-reduced-motion: no-preference) {
  body[data-route="contato"] #contato .site-section-heading { animation: contact-enter .55s both; }
  body[data-route="contato"] #contato .contact-card, body[data-route="contato"] #contato .school-contact { animation: contact-enter .55s both; }
  body[data-route="contato"] #contato .contact-card:nth-child(1) { animation-delay: .08s; }
  body[data-route="contato"] #contato .contact-card:nth-child(2) { animation-delay: .14s; }
  body[data-route="contato"] #contato .contact-card:nth-child(3) { animation-delay: .20s; }
  body[data-route="contato"] #contato .contact-card:nth-child(4) { animation-delay: .26s; }
  body[data-route="contato"] #contato .school-contact { animation-delay: .32s; }
}
@keyframes contact-enter { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { #contato .contact-card, #contato .contact-card-arrow, #contato .school-contact, #contato .school-contact-arrow { transition: none; } }
@media (prefers-reduced-data: reduce) { #contato .contact-card, #contato .school-contact { background-image: linear-gradient(120deg, #15120c, #080808); } }
