/**
 * WP135b · Contact page variant 2 — loaded after ma-contact.css (v1 components: form, chips, FAQ, cards).
 * Visual language of the Scholarships page (WP136, ma-scholarships-page.css): navy / teal / sky / sun tokens, rounded brand
 * gradient hero with dot texture, pill kicker, soft surfaces. Scoped to #ma-contact.mac--v2.
 */
#ma-contact.mac--v2 {
  --mac-navy: #073e5a;
  --mac-navy-deep: #062f45;
  --mac-teal: #0e8099;
  --mac-teal-soft: #e6f5f8;
  --mac-sun: #f2a33a;
  --mac-sun-soft: #fff4e2;
  --mac-sky-ink: #0b6578;
  --mac-sky-soft: #e6f5f8;
  --mac-ink: #13262f;
  --mac-muted: #4a6573;
  --mac-line: #dbe6eb;
  --mac-bg: #fff;
  --mac-shadow: 0 1px 2px rgba(7, 62, 90, .05), 0 12px 32px -16px rgba(7, 62, 90, .28);
  --mac-shadow-hover: 0 2px 6px rgba(7, 62, 90, .08), 0 20px 40px -18px rgba(7, 62, 90, .4);
  background: #fff;
  padding-top: 8px;
}
#ma-contact.mac--v2 li { margin: 0; }
#ma-contact.mac--v2 ul li { font-size: inherit !important; } /* mediaresp.css: ul li { font-size: 17px !important } */

/* ---------------- hero ---------------- */
.mac--v2 .mv2-hero {
  position: relative; overflow: hidden; border-radius: 28px; color: #fff; padding: 36px 48px 40px;
  background:
    radial-gradient(900px 420px at 92% -10%, rgba(0, 154, 210, .45), transparent 60%),
    radial-gradient(600px 380px at -5% 110%, rgba(242, 163, 58, .22), transparent 60%),
    linear-gradient(135deg, #062f45 0%, #073e5a 45%, #0b6680 100%);
  box-shadow: 0 24px 60px -30px rgba(7, 62, 90, .6);
}
.mac--v2 .mv2-hero::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .18;
  background-image: radial-gradient(rgba(255, 255, 255, .55) 1px, transparent 1px); background-size: 22px 22px;
  -webkit-mask-image: linear-gradient(90deg, transparent 35%, #000 100%); mask-image: linear-gradient(90deg, transparent 35%, #000 100%);
}
.mac--v2 .mv2-hero > * { position: relative; z-index: 1; }
.mac--v2 .mv2-crumbs { display: flex; gap: 6px; flex-wrap: wrap; font-size: .82rem; color: rgba(255, 255, 255, .72); }
#ma-contact.mac--v2 .mv2-crumbs a { color: rgba(255, 255, 255, .85); text-decoration: none; }
#ma-contact.mac--v2 .mv2-crumbs a:hover { color: #fff; text-decoration: underline; }
#ma-contact.mac--v2 .mv2-kicker {
  margin: 18px 0 14px !important; padding: 6px 13px; border-radius: 999px; font-size: .74rem; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .22);
}
.mac--v2 .mv2-kicker .mac-dot { background: var(--mac-sun); box-shadow: 0 0 0 3px rgba(242, 163, 58, .25); }
.mac--v2 .mv2-kicker.is-open .mac-dot { background: #25d366; box-shadow: 0 0 0 3px rgba(37, 211, 102, .25); }
#ma-contact.mac--v2 .mv2-h1 { font-size: clamp(1.9rem, 4vw, 2.85rem); line-height: 1.1; max-width: 20ch; margin: 0; }
.mac--v2 .mv2-lead { margin: 12px 0 0 !important; font-size: 1.08rem; color: rgba(255, 255, 255, .88); max-width: 66ch; text-wrap: balance; }

.mac--v2 .mv2-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 28px; max-width: 860px; }
#ma-contact.mac--v2 .mv2-action {
  display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 16px; text-decoration: none; color: #fff;
  background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .2);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); transition: background .15s ease, transform .15s ease, border-color .15s ease;
}
#ma-contact.mac--v2 .mv2-action:hover { background: rgba(255, 255, 255, .16); border-color: rgba(255, 255, 255, .4); transform: translateY(-1px); color: #fff; }
#ma-contact.mac--v2 .mv2-action--wa { background: #fff; color: var(--mac-navy); border-color: #fff; }
#ma-contact.mac--v2 .mv2-action--wa:hover { background: var(--mac-sun-soft); color: var(--mac-navy); }
.mac--v2 .mv2-action-icon { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; font-size: 1.2rem; flex: none; background: rgba(255, 255, 255, .12); }
.mac--v2 .mv2-action--wa .mv2-action-icon { background: #e9f9ef; color: #157a3f; }
.mac--v2 .mv2-action-text { display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.mac--v2 .mv2-action-text b { font-weight: 700; font-size: 1rem; }
.mac--v2 .mv2-action-text small { font-size: .82rem; opacity: .8; }

/* ---------------- main ---------------- */
.mac--v2 .mac-main { padding-top: 36px; }
.mac--v2 .mac-card { border-color: var(--mac-line); }
.mac--v2 .mac-seg { background: #eef4f6; }
#ma-contact.mac--v2 .mac-chip input:checked + span { background: var(--mac-navy); border-color: var(--mac-navy); }
#ma-contact.mac--v2 .mv2-visit-link {
  display: flex; align-items: center; gap: 12px; padding: 16px 18px; border-radius: 18px; text-decoration: none; color: var(--mac-ink);
  background: var(--mac-sun-soft); border: 1px solid #f6dcb0; transition: border-color .15s ease;
}
#ma-contact.mac--v2 .mv2-visit-link:hover { border-color: var(--mac-sun); color: var(--mac-ink); }
.mac--v2 .mv2-visit-link > i:first-child { font-size: 1.3rem; color: #b06a00; }
.mac--v2 .mv2-visit-link > i:last-child { margin-left: auto; color: #b06a00; }
.mac--v2 .mv2-visit-link span { display: flex; flex-direction: column; line-height: 1.3; }
.mac--v2 .mv2-visit-link small { color: var(--mac-muted); font-size: .85rem; }

/* ---------------- visit us in Palermo ---------------- */
.mac--v2 .mv2-visit { margin-top: 48px; padding: 56px 0; background: linear-gradient(180deg, #f2f8fa 0%, #fff 100%); scroll-margin-top: 80px; }
.mac--v2 .mv2-visit-head { max-width: 760px; }
.mac--v2 .mv2-eyebrow { display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px; border-radius: 999px; background: var(--mac-sun-soft); color: #8a4b00; font-size: .74rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
#ma-contact.mac--v2 .mv2-h2 { margin-top: 12px; font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 800; color: var(--mac-navy); }
.mac--v2 .mv2-intro { margin-top: 12px !important; color: var(--mac-muted); font-size: 1.05rem; }
.mac--v2 .mv2-visit-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 32px; margin-top: 28px; align-items: stretch; }
.mac--v2 .mv2-photo { margin: 0; position: relative; border-radius: 22px; overflow: hidden; min-height: 320px; box-shadow: var(--mac-shadow); background: #0b6680; }
.mac--v2 .mv2-photo img { display: block; width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.mac--v2 .mv2-photo-ph {
  position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; color: rgba(255, 255, 255, .9);
  background:
    radial-gradient(500px 300px at 85% 10%, rgba(242, 163, 58, .35), transparent 60%),
    radial-gradient(500px 320px at 0% 100%, rgba(0, 154, 210, .4), transparent 60%),
    linear-gradient(135deg, #062f45, #073e5a 50%, #0b6680);
}
.mac--v2 .mv2-photo-ph i { font-size: 3rem; opacity: .9; }
.mac--v2 .mv2-photo-ph span { font-weight: 700; letter-spacing: .04em; }
.mac--v2 .mv2-photo figcaption {
  position: absolute; left: 14px; bottom: 14px; padding: 6px 12px; border-radius: 999px; font-size: .8rem; font-weight: 600;
  background: rgba(255, 255, 255, .92); color: var(--mac-navy);
}
.mac--v2 .mv2-highlights { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mac--v2 .mv2-highlights li { display: flex; gap: 12px; align-items: flex-start; padding: 14px; border-radius: 16px; background: #fff; border: 1px solid var(--mac-line); font-size: .92rem !important; color: var(--mac-muted); }
.mac--v2 .mv2-highlights li > span:last-child { display: flex; flex-direction: column; line-height: 1.45; }
.mac--v2 .mv2-highlights b { color: var(--mac-navy); font-size: .98rem; margin-bottom: 2px; }
.mac--v2 .mv2-ico { width: 36px; height: 36px; border-radius: 11px; display: grid; place-items: center; background: var(--mac-teal-soft); color: var(--mac-teal); flex: none; font-size: 1.05rem; }
.mac--v2 .mv2-address { font-style: normal; margin: 18px 0 16px; color: var(--mac-ink); line-height: 1.6; }
.mac--v2 .mv2-visit-ctas { display: flex; flex-wrap: wrap; gap: 10px; }
.mac--v2 .mv2-map { position: relative; margin-top: 28px; height: 420px; border-radius: 22px; overflow: hidden; border: 1px solid var(--mac-line); box-shadow: var(--mac-shadow); background: #eaf0f3; }
.mac--v2 .mv2-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.mac--v2 .mac-faq { padding-top: 56px; }

/* ---------------- responsive ---------------- */
@media (max-width: 991px) {
  .mac--v2 .mv2-hero { padding: 30px 28px 32px; }
  .mac--v2 .mv2-visit-grid { grid-template-columns: 1fr; gap: 22px; }
  .mac--v2 .mv2-photo { min-height: 240px; }
}
@media (max-width: 720px) {
  .mac--v2 .mv2-actions { grid-template-columns: 1fr; gap: 8px; margin-top: 22px; }
  .mac--v2 .mv2-highlights { grid-template-columns: 1fr; }
}
@media (max-width: 575px) {
  .mac--v2 .mv2-hero { border-radius: 22px; padding: 22px 18px 24px; }
  .mac--v2 .mv2-lead { font-size: 1rem; }
  .mac--v2 .mv2-visit { padding: 40px 0; margin-top: 32px; }
  .mac--v2 .mv2-map { height: 340px; }
  .mac--v2 .mv2-visit-ctas .mac-btn { width: 100%; }
}
#ma-contact.mac--v2 .mv2-highlights li span { font-size: inherit !important; margin: 0 !important; }
#ma-contact.mac--v2 .mv2-highlights li b { font-size: .98rem; }

/* WP135d · the H1 fits on one line from 1024px (wraps naturally below) */
@media (min-width: 1024px) {
  #ma-contact.mac--v2 .mv2-h1 { max-width: none; white-space: nowrap; font-size: clamp(1.9rem, 3.4vw, 2.6rem); }
}
