.totm-contact-hero { position: relative; overflow: hidden; color: #fff; background: linear-gradient(125deg, #06384b 0%, #075b62 64%, #008f79 130%); }
.totm-contact-hero::before, .totm-contact-hero::after { position: absolute; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; content: ''; }
.totm-contact-hero::before { width: 360px; height: 360px; top: -245px; right: 8%; }
.totm-contact-hero::after { width: 180px; height: 180px; right: 26%; bottom: -145px; }
.totm-contact-hero .container { position: relative; z-index: 1; min-height: 250px; padding-top: 48px; padding-bottom: 48px; display: flex; flex-direction: column; justify-content: center; }
.totm-contact-hero span { color: #72ead4; font-size: 13px; font-weight: 850; letter-spacing: .12em; }
.totm-contact-hero h1 { margin: 7px 0 10px; color: #fff; font-size: clamp(40px,5vw,58px); line-height: 1.08; letter-spacing: -.035em; }
.totm-contact-hero p { max-width: 650px; margin: 0; color: #d6e7e8; font-size: 17px; line-height: 1.65; }
.totm-contact-v2 { padding-top: 38px; padding-bottom: 70px; }
.totm-contact-cards { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.totm-contact-cards article { min-height: 300px; padding: 26px; border: 1px solid #dce7e9; border-radius: 13px; display: flex; flex-direction: column; align-items: flex-start; background: #fff; box-shadow: 0 9px 27px rgba(8,53,65,.055); }
.totm-contact-icon { width: 48px; height: 48px; margin-bottom: 19px; border-radius: 10px; display: grid; place-items: center; color: #fff; background: #063e51; font-size: 21px; }
.totm-contact-cards small, .totm-contact-map aside > small { color: #08756f; font-size: 12px; font-weight: 850; letter-spacing: .11em; }
.totm-contact-cards h2 { margin: 6px 0 10px; color: #173e4d; font-size: 20px; line-height: 1.42; }
.totm-contact-cards h2 a { color: inherit; text-decoration: none; }
.totm-contact-cards p { margin: 0; color: #637982; font-size: 15px; line-height: 1.68; }
.totm-contact-cards article > a, .totm-contact-map aside > a { margin-top: auto; padding-top: 21px; display: inline-flex; align-items: center; gap: 7px; color: #08756f; font-size: 13px; font-weight: 800; text-decoration: none; }
.totm-contact-cards article > a:hover, .totm-contact-map aside > a:hover { color: #00a987; }
.totm-contact-channels { margin-top: 18px; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; }
.totm-contact-channels article { min-height: 118px; padding: 17px; border: 1px solid #dce7e9; border-radius: 10px; display: flex; align-items: flex-start; gap: 12px; background: #f8fbfb; }
.totm-contact-channels article > i { width: 35px; height: 35px; border-radius: 8px; display: grid; place-items: center; flex: 0 0 auto; color: #08756f; background: #e4f5f1; font-size: 16px; }
.totm-contact-channels article > div { min-width: 0; display: flex; flex-direction: column; }
.totm-contact-channels small { margin: 2px 0 7px; color: #789097; font-size: 10px; font-weight: 800; line-height: 1.35; letter-spacing: .06em; }
.totm-contact-channels strong { color: #284f5d; font-size: 12px; line-height: 1.55; overflow-wrap: anywhere; }
.totm-contact-channels a { color: inherit; text-decoration: none; }
.totm-contact-channels a:hover { color: #008f79; }
.totm-contact-map { margin-top: 20px; border: 1px solid #dce7e9; border-radius: 13px; overflow: hidden; display: grid; grid-template-columns: 1.25fr .75fr; background: #fff; box-shadow: 0 9px 27px rgba(8,53,65,.045); }
.totm-contact-map__frame { min-height: 410px; background: #e8edef; }
.totm-contact-map__frame iframe { width: 100%; height: 100%; min-height: 410px; border: 0; display: block; }
.totm-contact-map aside { padding: 32px; display: flex; flex-direction: column; }
.totm-contact-map h2 { margin: 5px 0 11px; color: #173e4d; font-size: 27px; line-height: 1.3; }
.totm-contact-map aside > div { margin-top: 12px; padding: 14px; border: 1px solid #e0e8ea; border-radius: 8px; display: flex; align-items: flex-start; gap: 10px; }
.totm-contact-map aside > div > i { width: 20px; color: #08756f; flex: 0 0 auto; font-size: 17px; text-align: center; }
.totm-contact-map aside > div span { display: flex; flex-direction: column; color: #637982; font-size: 13px; line-height: 1.58; }
.totm-contact-map aside > div strong { margin-bottom: 2px; color: #31525f; font-size: 14px; }
@media (max-width:1100px) { .totm-contact-channels { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width:991px) { .totm-contact-cards { grid-template-columns: 1fr; } .totm-contact-cards article { min-height: 230px; } .totm-contact-map { grid-template-columns: 1fr; } .totm-contact-map__frame, .totm-contact-map__frame iframe { min-height: 350px; } }
@media (max-width:767px) { .totm-contact-active .ttm-fbar-btn { display: none !important; } .totm-contact-hero .container { min-height: 220px; padding-top: 35px; padding-bottom: 35px; } .totm-contact-hero h1 { font-size: 38px; } .totm-contact-hero p { font-size: 15px; } .totm-contact-v2 { padding-top: 25px; padding-bottom: 48px; } .totm-contact-channels { grid-template-columns: 1fr 1fr; } .totm-contact-map aside { padding: 23px; } }
@media (max-width:480px) { .totm-contact-cards article { min-height: 215px; padding: 22px; } .totm-contact-channels { grid-template-columns: 1fr; } .totm-contact-channels article { min-height: 92px; } .totm-contact-map__frame, .totm-contact-map__frame iframe { min-height: 285px; } }
