/* Seção de contato da FTM Nobreak. */

#contato { scroll-margin-top: 105px; }
.contact-section { position:relative; isolation:isolate; overflow:hidden; padding:100px 0 105px; color:#fff; background:radial-gradient(circle at 90% 15%,rgba(41,200,242,.115),transparent 34%),#07131c; border-top:1px solid rgba(41,200,242,.18); }
.contact-section::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.28; background-image:linear-gradient(rgba(41,200,242,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(41,200,242,.07) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(to bottom,black,transparent 85%); }
.contact-heading { display:grid; grid-template-columns:1.05fr .75fr; gap:70px; align-items:end; margin-bottom:36px; }
.contact-heading h2 { font-size:clamp(36px,4.3vw,58px); line-height:1.08; letter-spacing:-.045em; }
.contact-heading h2 em { color:var(--lime); font-style:normal; }
.contact-heading p { margin:0 0 4px; max-width:470px; color:rgba(255,255,255,.62); font-size:16px; line-height:1.7; }
.contact-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.contact-card { display:flex; flex-direction:column; min-height:316px; padding:29px; border:1px solid rgba(255,255,255,.12); border-radius:17px; background:linear-gradient(145deg,rgba(20,39,51,.96),rgba(5,14,21,.98)); box-shadow:inset 0 1px rgba(255,255,255,.05),0 18px 45px rgba(0,0,0,.18); }
.contact-card:first-child { border-color:rgba(41,200,242,.34); background:radial-gradient(circle at 15% 5%,rgba(41,200,242,.17),transparent 45%),linear-gradient(145deg,#0e2531,#071018); }
.contact-icon { display:grid; place-items:center; width:49px; height:49px; margin-bottom:26px; border:1px solid rgba(41,200,242,.25); border-radius:12px; color:var(--lime); background:rgba(41,200,242,.08); }
.contact-icon svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.contact-card small { color:var(--lime); font-size:11px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.contact-card h3 { margin:9px 0 10px; font-size:clamp(20px,2vw,24px); letter-spacing:-.035em; overflow-wrap:anywhere; }
.contact-card p { margin:0 0 27px; color:rgba(255,255,255,.55); font-size:14px; line-height:1.65; }
.contact-card a { display:inline-flex; gap:8px; align-items:center; width:fit-content; margin-top:auto; color:var(--lime); font-size:14px; font-weight:700; text-decoration:none; }
.contact-card a:hover { text-decoration:underline; }
.contact-card a span { font-size:18px; }
.contact-bottom { display:flex; justify-content:space-between; align-items:center; gap:25px; margin-top:22px; padding:22px 26px; border:1px solid rgba(41,200,242,.17); border-radius:13px; background:rgba(41,200,242,.055); }
.contact-bottom p { margin:0; color:rgba(255,255,255,.75); font-size:14px; line-height:1.55; }
.contact-bottom strong { display:block; color:#fff; font-size:15px; }
.contact-bottom .button { flex:none; min-height:48px; }
@media(max-width:980px) { .contact-heading { gap:35px; } .contact-grid { grid-template-columns:repeat(2,1fr); } .contact-card:last-child { grid-column:1/-1; min-height:260px; } }
@media(max-width:720px) { .contact-section { padding:76px 0 88px; } .contact-heading { grid-template-columns:1fr; gap:16px; } .contact-heading h2 { font-size:40px; } .contact-grid { grid-template-columns:1fr; } .contact-card, .contact-card:last-child { min-height:265px; grid-column:auto; } .contact-bottom { flex-direction:column; align-items:stretch; } .contact-bottom .button { width:100%; } }

.contact-page-link{margin:16px 0 0;text-align:right}.contact-page-link a{color:#087fa1;font-weight:700;text-decoration:underline;text-underline-offset:3px}

.home-map{margin-top:26px;overflow:hidden;border:1px solid rgba(41,200,242,.28);border-radius:18px;background:#0c202d;scroll-margin-top:110px}
.home-map-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px}
.home-map-heading h3{margin:0;color:#fff;font-size:22px;line-height:1.3}
.home-map-heading p{margin:8px 0 0;color:#b7cbd5;font-size:13px;line-height:1.6}
.home-map-heading a{flex:none;color:#64dcfa;font-weight:700;font-size:13px;text-underline-offset:4px}
.home-map iframe{display:block;width:100%;height:380px;border:0;background:#e8eef2}
@media(max-width:720px){.home-map-heading{align-items:flex-start;flex-direction:column;gap:16px;padding:22px}.home-map-heading h3{font-size:21px}.home-map iframe{height:300px}}
