/* Energy Bartar Contact Page — site-native premium layout, v0.9.21 */
.eb-contact-native-section{margin:0!important;padding:0!important}
.eb-contact-native-section>.elementor-container{max-width:none!important}
.eb-contact-native-section>.elementor-container>.elementor-column>.elementor-widget-wrap{padding:0!important}
.ebc-block,.ebc-hero,.ebc-cta{direction:rtl;font-family:inherit;color:#183126;box-sizing:border-box}
.ebc-block *,.ebc-hero *,.ebc-cta *{box-sizing:border-box}
.ebc-block{width:100%;padding:52px 18px}
.ebc-heading{max-width:760px;margin:0 auto 24px;text-align:center}
.ebc-heading h2{margin:8px 0 6px;color:#183126;font-size:clamp(30px,2.8vw,40px);line-height:1.45;letter-spacing:-.35px}
.ebc-heading p{margin:0;color:#728077;font-size:16px;line-height:2}
.ebc-eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--ebc-accent,#148447);font-weight:850;font-size:13px}
.ebc-eyebrow:before{content:"";width:27px;height:2px;border-radius:9px;background:var(--ebc-gold,#C99A3D)}
.ebc-icon{width:42px;height:42px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;background:#edf7f1;color:var(--ebc-accent,#148447);font-size:18px;flex:0 0 auto}
.ebc-icon svg{width:19px;height:19px;fill:currentColor}
.ebc-btn{min-height:41px;padding:9px 16px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;font-weight:850;font-size:14px;transition:.18s ease;border:1px solid transparent;line-height:1.4}
.ebc-btn--primary{background:var(--ebc-accent,#148447);color:#fff!important;box-shadow:0 7px 18px rgba(20,132,71,.11)}
.ebc-btn--primary:hover{transform:translateY(-1px);filter:brightness(.96)}
.ebc-btn--ghost{background:#fff;color:var(--ebc-accent,#148447)!important;border-color:#d0e1d6}
.ebc-btn--ghost:hover{border-color:var(--ebc-accent,#148447);background:#f9fbfa}
.ebc-btn--gold{background:var(--ebc-gold,#F6B91A);color:#183126!important;min-width:138px;box-shadow:0 8px 20px rgba(246,185,26,.14)}
.ebc-btn.is-disabled{cursor:default;opacity:.86}

/* Hero — calm, premium and integrated with the existing site identity. */
.ebc-hero{position:relative;overflow:hidden;width:100%;background:linear-gradient(135deg,#fbfdfb 0%,#f4f9f6 64%,#fffaf0 100%);border-bottom:1px solid #e7eee9}
.ebc-hero:before,.ebc-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.ebc-hero:before{width:260px;height:260px;left:-128px;top:-138px;background:rgba(201,154,61,.10)}
.ebc-hero:after{width:210px;height:210px;right:-112px;bottom:-145px;background:rgba(20,132,71,.065)}
.ebc-hero__inner{width:min(1180px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:46px;align-items:center;position:relative;z-index:1}
.ebc-hero__copy{position:relative;z-index:2}
.ebc-hero h1{font-size:clamp(38px,3.8vw,52px);line-height:1.34;margin:9px 0 11px;color:var(--ebc-hero-text,#183126);letter-spacing:-.85px}
.ebc-hero__desc{max-width:680px;margin:0;font-size:17px;line-height:2.1;color:#617168}
.ebc-hero__email{display:inline-flex;margin-top:14px;padding:9px 14px;border-radius:999px;background:#fff;color:var(--ebc-accent,#148447)!important;border:1px solid #dae8df;font-weight:800;text-decoration:none!important;direction:ltr}
.ebc-hero__visual{height:300px;overflow:hidden;border-radius:24px;position:relative;box-shadow:0 16px 42px rgba(23,66,43,.09);border:1px solid rgba(255,255,255,.8)}
.ebc-hero__visual img{width:100%;height:100%;object-fit:cover;display:block}
.ebc-hero__contact-card{padding:22px 24px;border-radius:22px;background:rgba(255,255,255,.78);backdrop-filter:blur(8px);color:#183126;box-shadow:0 15px 42px rgba(22,62,41,.07);position:relative;overflow:hidden;border:1px solid #dfeae3}
.ebc-hero__contact-card:before{content:"";position:absolute;width:115px;height:115px;border-radius:50%;left:-52px;top:-60px;background:rgba(246,185,26,.11)}
.ebc-hero__contact-head{display:flex;align-items:center;gap:11px;padding:3px 3px 13px;margin-bottom:4px;border-bottom:1px solid #e7eee9;position:relative}
.ebc-hero__contact-mark{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:#fff7df;color:#c59016;font-size:18px;border:1px solid #f1e0ac}
.ebc-hero__contact-head small,.ebc-hero__contact-row small{display:block;color:#89958f;font-size:10px;margin-bottom:2px}
.ebc-hero__contact-head strong{font-size:15px;color:#183126}
.ebc-hero__contact-row{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:10px;padding:10px 5px;border-bottom:1px solid #edf2ef;color:#183126!important;text-decoration:none!important;position:relative}
.ebc-hero__contact-row:last-child{border-bottom:0}
.ebc-hero__contact-row>span{width:34px;height:34px;border-radius:11px;background:#edf7f1;display:flex;align-items:center;justify-content:center;color:var(--ebc-accent);font-size:15px}
.ebc-hero__contact-row b{font-size:12.5px;font-weight:800;color:#254136}

/* Campus cards — no low-quality pseudo photography. Real images remain optional in Elementor. */
.ebc-campuses{padding-top:40px;padding-bottom:30px;background:#fff}
.ebc-campus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;max-width:1240px;margin:0 auto}
.ebc-campus-card{border:1px solid #dfe9e3;background:#fff;border-radius:22px;box-shadow:0 12px 34px rgba(20,55,35,.055);position:relative;overflow:hidden;display:grid;grid-template-columns:1fr;min-height:0;transition:transform .2s ease,box-shadow .2s ease}
.ebc-campus-card:hover{transform:translateY(-2px);box-shadow:0 17px 42px rgba(20,55,35,.085)}
.ebc-campus-card:before{content:"";position:absolute;right:0;top:0;width:3px;height:100%;background:linear-gradient(180deg,var(--ebc-accent),var(--ebc-gold))}
.ebc-campus-body{padding:20px 22px 21px;display:flex;flex-direction:column;min-width:0}
.ebc-campus-top{display:flex;align-items:flex-start;gap:11px;margin-bottom:10px}
.ebc-campus-top h3{font-size:18px;line-height:1.45;margin:1px 0 0;color:#183126}
.ebc-campus-subtitle{margin:3px 0 0!important;color:#87938d!important;font-size:10.8px!important;line-height:1.7!important}
.ebc-campus-address{margin:0 0 11px;line-height:1.9;color:#64736b;font-size:12.7px;min-height:72px}
.ebc-phone-list{display:grid;gap:4px;margin-top:auto;padding-top:10px;border-top:1px dashed #dce6e0}
.ebc-phone{display:flex;align-items:center;justify-content:flex-start;gap:7px;color:#293d34!important;text-decoration:none!important;font-size:12.3px}
.ebc-phone span{color:var(--ebc-accent);font-size:12px}
.ebc-phone b{font-weight:760}
.ebc-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}
.ebc-campus-media{order:-1;margin:0;height:146px;overflow:hidden;background:#eef4f0;border-bottom:1px solid #e6ede9}
.ebc-campus-media img{width:100%;height:100%;object-fit:cover;display:block}
.ebc-campus-symbol{order:-1;margin:0;min-height:82px;padding:15px 20px;background:linear-gradient(120deg,#f4f9f6,#fbfcfb 70%,#fff8e8);display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;position:relative;overflow:hidden;color:#1a6d45;border-bottom:1px solid #e5ede8}
.ebc-campus-symbol:before{content:"";position:absolute;width:105px;height:105px;border-radius:50%;left:-48px;top:-58px;background:rgba(201,154,61,.10)}
.ebc-campus-symbol:after{content:"";position:absolute;width:72px;height:72px;border-radius:50%;right:-38px;bottom:-42px;background:rgba(20,132,71,.075)}
.ebc-campus-symbol__icon{width:50px;height:50px;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--ebc-accent);font-size:22px;box-shadow:0 8px 20px rgba(23,92,56,.075);position:relative;z-index:1;border:1px solid #e0ebe4}
.ebc-campus-symbol__icon svg{width:23px;height:23px;fill:currentColor}
.ebc-campus-symbol small{display:block;font-size:9px;letter-spacing:.9px;color:#91a098;position:relative;z-index:1;direction:ltr;text-align:right}
.ebc-campus-symbol strong{display:block;font-size:12.5px;line-height:1.7;margin-top:2px;color:#27543e;position:relative;z-index:1}

/* Map — tabbed, compact and with a dedicated branch information panel. */
.ebc-maps{padding-top:34px;padding-bottom:34px;background:linear-gradient(180deg,#fff,#f8fbf9)}
.ebc-maps .ebc-heading{margin-bottom:22px}
.ebc-map-shell{width:min(1240px,100%);margin:0 auto;overflow:hidden;border:1px solid #dce8e0;background:#fff;border-radius:24px;box-shadow:0 13px 38px rgba(21,61,39,.06)}
.ebc-map-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:7px;background:#f3f7f4;border-bottom:1px solid #e0e9e3}
.ebc-map-tab{border:0;background:transparent;color:#506259;border-radius:11px;padding:11px 10px;font-family:inherit;font-size:12.5px;font-weight:850;cursor:pointer;transition:.16s ease}
.ebc-map-tab:hover{background:#eaf3ed;color:#25633f}
.ebc-map-tab.is-active{background:var(--ebc-accent,#148447);color:#fff;box-shadow:0 6px 18px rgba(20,132,71,.15)}
.ebc-map-body{display:grid;grid-template-columns:300px minmax(0,1fr);direction:rtl;min-height:305px}
.ebc-map-frame{grid-column:2;display:block;width:100%;height:305px;border:0;background:#eef2ef}
.ebc-map-meta{grid-column:1;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:9px;padding:25px 23px;background:linear-gradient(160deg,#fff,#fbfdfb);border-left:1px solid #e3ebe6;text-align:right}
.ebc-map-label{font-size:10px;color:var(--ebc-accent);font-weight:850}
.ebc-map-meta strong{font-size:21px;color:#183126;line-height:1.45}
.ebc-map-meta p{margin:0;color:#718078;font-size:14px;line-height:1.9}
.ebc-map-phone{display:flex;align-items:center;gap:8px;margin-top:3px;color:#2e463a!important;text-decoration:none!important;font-size:12.3px}
.ebc-map-phone span{width:29px;height:29px;border-radius:9px;background:#edf7f1;color:var(--ebc-accent);display:inline-flex;align-items:center;justify-content:center}
.ebc-map-phone b{font-weight:800}
.ebc-map-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px}
.ebc-map-route,.ebc-map-call{min-width:0;width:100%}

/* CTA — light, compact and elegant; deliberately avoids the former large green block. */
.ebc-cta{padding:8px 18px 30px!important;background:#f8fbf9!important}
.ebc-cta__inner{width:min(1240px,100%);margin:0 auto;padding:23px 28px!important;text-align:right;border:1px solid #eadfbf;background-color:#fff9ea;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(70,58,29,.045);border-radius:22px}
.ebc-cta__inner:before{content:"";position:absolute;width:115px;height:115px;border-radius:50%;left:-55px;bottom:-70px;background:rgba(20,132,71,.075);pointer-events:none}
.ebc-cta__inner:after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;right:-50px;top:-58px;background:rgba(246,185,26,.10);pointer-events:none}
.ebc-cta .ebc-eyebrow{color:#8a6a16}
.ebc-cta .ebc-eyebrow:before{background:#d4a629}
.ebc-cta h2{font-size:clamp(20px,2vw,27px);margin:5px 0 4px;color:#183126}
.ebc-cta p{margin:0;color:#68776f;line-height:1.9;font-size:12.5px;max-width:720px}
.ebc-cta-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin:0;position:relative;z-index:1}
.ebc-btn--light{background:#fff;color:var(--ebc-accent,#148447)!important;border:1px solid #d3e2d8}

/* Backward compatibility: old widgets remain editable but are not inserted by v0.9.09. */
.ebc-form,.eb-contact-split-section{display:block}
.ebc-form-panel{border:0!important;box-shadow:none!important;padding:0!important;background:transparent!important}
.ebc-form-placeholder{min-height:200px;border:1px dashed #bfd6c7;border-radius:16px;background:#f8fbf9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:#52635b}
.ebc-quick{padding:24px 18px}.ebc-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1160px;margin:0 auto}.ebc-quick-item{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:11px;align-items:center;padding:16px;text-decoration:none!important;border:1px solid #e1ebe5;border-radius:16px;background:#f7faf8;color:#22342c}.ebc-quick-item .ebc-icon{grid-row:1/3}.ebc-quick-item strong{font-size:14px}.ebc-quick-item small{font-size:11px;color:#708078}.ebc-quick-item i{grid-column:3;grid-row:1/3;font-style:normal;color:var(--ebc-accent)}

@media(max-width:1024px){
  .ebc-hero__inner{grid-template-columns:1fr .75fr;gap:26px}
  .ebc-campus-grid{grid-template-columns:1fr}
  .ebc-campus-address{min-height:0}
  .ebc-map-body{grid-template-columns:260px minmax(0,1fr)}
  .ebc-map-frame{height:285px}
  .ebc-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  .ebc-block{padding:28px 12px}.ebc-heading{margin-bottom:18px}.ebc-heading h2{font-size:24px}.ebc-heading p{font-size:12.7px}
  .ebc-hero{padding-left:0!important;padding-right:0!important}.ebc-hero__inner{width:100%;grid-template-columns:1fr;gap:18px}.ebc-hero__copy{padding-inline:18px;text-align:center}.ebc-hero__desc{font-size:13.5px;margin-inline:auto}.ebc-hero__contact-card{margin:0 12px;padding:14px}.ebc-hero__visual{height:185px;border-radius:0;margin-top:4px}
  .ebc-campus-grid{grid-template-columns:1fr}.ebc-campus-symbol{min-height:74px;padding:12px 16px}.ebc-campus-symbol__icon{width:46px;height:46px}.ebc-campus-body{padding:17px}.ebc-campus-address{min-height:0}.ebc-card-actions{grid-template-columns:1fr 1fr}
  .ebc-map-tabs{grid-template-columns:1fr 1fr 1fr;padding:6px}.ebc-map-tab{padding:10px 5px;font-size:13px}.ebc-map-body{grid-template-columns:1fr}.ebc-map-meta{grid-column:1;grid-row:2;border-left:0;border-top:1px solid #e3ebe6;padding:19px 17px}.ebc-map-frame{grid-column:1;grid-row:1;height:245px}.ebc-map-actions{grid-template-columns:1fr 1fr}
  .ebc-cta{padding:3px 12px 24px!important}.ebc-cta__inner{grid-template-columns:1fr;padding:21px 18px!important;text-align:center}.ebc-cta p{margin-inline:auto}.ebc-cta-actions{justify-content:center;display:grid;grid-template-columns:1fr;width:100%;margin-top:4px}.ebc-cta-actions .ebc-btn{width:100%}
  .ebc-quick-grid{grid-template-columns:1fr}
}


/* v0.9.21 — readability + final contact-page UI polish
   Uses the real widget class names so the typography applies on the live page. */
@media (min-width:768px){
  .ebc-block{padding-top:46px;padding-bottom:46px}
  .ebc-heading{max-width:900px;margin-bottom:28px}
  .ebc-heading h2{font-size:clamp(36px,3vw,46px)!important;line-height:1.38!important;margin-top:9px!important;margin-bottom:8px!important;font-weight:850!important}
  .ebc-heading p{font-size:18px!important;line-height:2!important;color:#5d6e65!important;max-width:840px;margin-inline:auto!important}
  .ebc-eyebrow{font-size:14px!important}

  .ebc-hero h1{font-size:clamp(48px,4vw,60px)!important;line-height:1.28!important;font-weight:900!important}
  .ebc-hero__desc{font-size:19px!important;line-height:2.05!important;color:#52665b!important;max-width:760px!important}
  .ebc-hero__contact-card{padding:25px 26px!important}
  .ebc-hero__contact-head small,.ebc-hero__contact-row small{font-size:12px!important;color:#75847c!important}
  .ebc-hero__contact-head strong{font-size:19px!important;line-height:1.6!important}
  .ebc-hero__contact-row{grid-template-columns:42px 1fr!important;gap:12px!important;padding:13px 6px!important}
  .ebc-hero__contact-row>span{width:39px!important;height:39px!important;font-size:17px!important}
  .ebc-hero__contact-row b{font-size:15.5px!important;line-height:1.65!important;font-weight:850!important}

  .ebc-campus-grid{gap:20px!important}
  .ebc-campus-body{padding:22px 24px 23px!important}
  .ebc-campus-top{margin-bottom:12px!important}
  .ebc-campus-top h3{font-size:23px!important;line-height:1.45!important;font-weight:900!important}
  .ebc-campus-subtitle{font-size:14px!important;line-height:1.8!important;color:#6d7d74!important;margin-top:4px!important}
  .ebc-campus-address{font-size:16px!important;line-height:1.95!important;color:#51645a!important;min-height:66px!important;margin-bottom:13px!important}
  .ebc-phone-list{gap:7px!important;padding-top:13px!important}
  .ebc-phone{font-size:16px!important;line-height:1.65!important;gap:8px!important}
  .ebc-phone span{font-size:15px!important}
  .ebc-phone b{font-weight:850!important}
  .ebc-campus-symbol{min-height:92px!important;padding:17px 21px!important}
  .ebc-campus-symbol__icon{width:53px!important;height:53px!important}
  .ebc-campus-symbol small{font-size:10.5px!important;letter-spacing:1px!important}
  .ebc-campus-symbol strong{font-size:15px!important;line-height:1.6!important}
  .ebc-card-actions{gap:10px!important;margin-top:16px!important}
  .ebc-campus-card .ebc-btn{min-height:48px!important;font-size:15px!important}

  .ebc-map-tab{font-size:15.5px!important;padding:13px 10px!important}
  .ebc-map-body{grid-template-columns:330px minmax(0,1fr)!important;min-height:290px!important}
  .ebc-map-frame{height:290px!important}
  .ebc-map-meta{padding:27px 26px!important;gap:11px!important}
  .ebc-map-label{font-size:12px!important}
  .ebc-map-meta strong{font-size:27px!important;line-height:1.4!important;font-weight:900!important}
  .ebc-map-meta p{font-size:16px!important;line-height:1.95!important;color:#5d6e65!important}
  .ebc-map-phone{font-size:16px!important;gap:9px!important}
  .ebc-map-phone span{width:34px!important;height:34px!important}
  .ebc-map-actions .ebc-btn{min-height:47px!important;font-size:14.5px!important}

  .ebc-btn{font-size:15px!important;min-height:45px}

  /* Final CTA: copy stays on the right, action stays opposite on the left. */
  .ebc-cta{background:#f8fbf9!important;border:0!important;padding:8px 18px 32px!important}
  .ebc-cta__inner{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:32px!important;text-align:right!important;padding:25px 30px!important;background:#fffaf0!important;border-color:#eadfbe!important}
  .ebc-cta-copy{min-width:0;max-width:850px;position:relative;z-index:1}
  .ebc-cta h2{font-size:30px!important;line-height:1.45!important;margin:6px 0 5px!important;font-weight:900!important}
  .ebc-cta p{font-size:16.5px!important;line-height:1.9!important;color:#5e6f66!important;max-width:760px!important}
  .ebc-cta-actions{flex:0 0 auto!important;justify-content:flex-start!important;margin:0!important}
  .ebc-cta-actions .ebc-btn{min-width:170px!important;min-height:48px!important;font-size:15px!important}
}

@media (max-width:767px){
  .ebc-block{padding:32px 14px!important}
  .ebc-heading h2{font-size:28px!important;line-height:1.45!important}
  .ebc-heading p{font-size:15px!important;line-height:1.9!important;color:#596a61!important}
  .ebc-eyebrow{font-size:12px!important}
  .ebc-hero h1{font-size:38px!important;line-height:1.35!important}
  .ebc-hero__desc{font-size:16px!important;line-height:1.95!important;color:#52655b!important}
  .ebc-hero__contact-head small,.ebc-hero__contact-row small{font-size:11px!important}
  .ebc-hero__contact-head strong{font-size:17px!important}
  .ebc-hero__contact-row b{font-size:14px!important}

  .ebc-campus-top h3{font-size:21px!important}
  .ebc-campus-subtitle{font-size:13.5px!important;line-height:1.8!important}
  .ebc-campus-address{font-size:15px!important;line-height:1.9!important}
  .ebc-phone{font-size:15px!important}
  .ebc-campus-symbol strong{font-size:14px!important}
  .ebc-campus-card .ebc-btn{font-size:14px!important;min-height:46px!important}

  .ebc-map-tab{font-size:13.5px!important}
  .ebc-map-meta strong{font-size:23px!important}
  .ebc-map-meta p{font-size:15px!important}
  .ebc-map-phone{font-size:15px!important}

  .ebc-cta__inner{display:flex!important;flex-direction:column!important;align-items:stretch!important;text-align:center!important;gap:16px!important;padding:22px 18px!important}
  .ebc-cta-copy{max-width:none!important}
  .ebc-cta h2{font-size:24px!important;line-height:1.5!important}
  .ebc-cta p{font-size:15px!important;line-height:1.9!important;margin-inline:auto!important}
  .ebc-cta-actions{width:100%!important;display:grid!important;grid-template-columns:1fr!important}
  .ebc-cta-actions .ebc-btn{width:100%!important;min-height:48px!important;font-size:14.5px!important}
}


/* v0.9.21 — visual cleanup, stronger typography, cleaner cards, safer sticky-header anchors */
#eb-contact-maps{scroll-margin-top:125px}
.ebc-campuses,.ebc-maps{scroll-margin-top:125px}

@media (min-width:768px){
  .ebc-block{padding-top:42px!important;padding-bottom:42px!important}
  .ebc-heading{max-width:940px!important;margin-bottom:26px!important}
  .ebc-heading h2{font-size:clamp(38px,3.15vw,48px)!important;line-height:1.34!important;letter-spacing:-.55px!important}
  .ebc-heading p{font-size:19px!important;line-height:1.95!important;color:#506258!important;font-weight:500!important}
  .ebc-eyebrow{font-size:14.5px!important;font-weight:900!important}

  .ebc-hero__inner{grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr)!important;gap:52px!important}
  .ebc-hero h1{font-size:clamp(50px,4.15vw,62px)!important;line-height:1.25!important}
  .ebc-hero__desc{font-size:20px!important;line-height:2!important;color:#465b50!important;font-weight:500!important;max-width:790px!important}
  .ebc-hero__contact-card{padding:26px 28px!important;border-radius:24px!important;box-shadow:0 18px 46px rgba(22,62,41,.075)!important}
  .ebc-hero__contact-head{padding-bottom:15px!important;margin-bottom:2px!important}
  .ebc-hero__contact-head small,.ebc-hero__contact-row small{font-size:13px!important;line-height:1.5!important;color:#718078!important}
  .ebc-hero__contact-head strong{font-size:21px!important;line-height:1.55!important}
  .ebc-hero__contact-row{grid-template-columns:44px 1fr!important;gap:13px!important;padding:14px 6px!important}
  .ebc-hero__contact-row>span{width:41px!important;height:41px!important;font-size:17px!important}
  .ebc-hero__contact-row b{font-size:16.5px!important;line-height:1.6!important;font-weight:850!important}

  /* Remove the redundant top banner from cards; the icon/title inside the body is enough. */
  .ebc-campus-symbol{display:none!important}
  .ebc-campus-card{border-radius:22px!important;box-shadow:0 14px 38px rgba(20,55,35,.065)!important}
  .ebc-campus-card:after{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,var(--ebc-gold),var(--ebc-accent));opacity:.9}
  .ebc-campus-body{padding:27px 26px 25px!important}
  .ebc-campus-top{align-items:center!important;margin-bottom:13px!important}
  .ebc-campus-top .ebc-icon{width:48px!important;height:48px!important;border-radius:15px!important;font-size:20px!important}
  .ebc-campus-top h3{font-size:25px!important;line-height:1.4!important;font-weight:900!important;margin:0!important}
  .ebc-campus-subtitle{font-size:15.5px!important;line-height:1.8!important;color:#607269!important;margin-top:4px!important}
  .ebc-campus-address{font-size:17px!important;line-height:1.95!important;color:#40564b!important;min-height:0!important;margin:3px 0 14px!important;font-weight:500!important}
  .ebc-phone-list{gap:7px!important;padding-top:14px!important;margin-top:0!important}
  .ebc-phone{font-size:17px!important;line-height:1.65!important;color:#223a2f!important}
  .ebc-phone span{font-size:15px!important}
  .ebc-phone b{font-weight:850!important}
  .ebc-card-actions{margin-top:17px!important;gap:10px!important}
  .ebc-campus-card .ebc-btn{min-height:50px!important;font-size:16px!important;border-radius:12px!important}

  .ebc-maps{padding-top:38px!important;padding-bottom:38px!important}
  .ebc-map-shell{border-radius:22px!important;box-shadow:0 15px 42px rgba(21,61,39,.065)!important}
  .ebc-map-tabs{gap:8px!important;padding:8px!important}
  .ebc-map-tab{font-size:16px!important;padding:14px 12px!important;border-radius:12px!important}
  .ebc-map-body{grid-template-columns:350px minmax(0,1fr)!important;min-height:330px!important}
  .ebc-map-frame{height:330px!important;background:linear-gradient(135deg,#eef3ef,#e6ece8)!important}
  .ebc-map-meta{padding:30px 28px!important;gap:12px!important}
  .ebc-map-label{font-size:13px!important}
  .ebc-map-meta strong{font-size:29px!important;line-height:1.35!important}
  .ebc-map-meta p{font-size:17px!important;line-height:1.95!important;color:#506258!important;font-weight:500!important}
  .ebc-map-phone{font-size:17px!important;line-height:1.6!important}
  .ebc-map-actions{gap:10px!important;margin-top:10px!important}
  .ebc-map-actions .ebc-btn{min-height:49px!important;font-size:15.5px!important}

  /* CTA: copy on the right, button directly opposite on the left. */
  .ebc-cta{padding:10px 18px 34px!important}
  .ebc-cta__inner{direction:rtl!important;display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:36px!important;padding:27px 32px!important;text-align:right!important}
  .ebc-cta-copy{order:1!important;flex:1 1 auto!important;max-width:900px!important}
  .ebc-cta-actions{order:2!important;flex:0 0 auto!important;margin:0!important;justify-content:flex-start!important}
  .ebc-cta h2{font-size:31px!important;line-height:1.42!important;margin:5px 0 5px!important}
  .ebc-cta p{font-size:17px!important;line-height:1.9!important;color:#53655b!important}
  .ebc-cta-actions .ebc-btn{min-width:185px!important;min-height:50px!important;font-size:15.5px!important}
}

@media (max-width:767px){
  #eb-contact-maps{scroll-margin-top:92px}
  .ebc-heading h2{font-size:30px!important;line-height:1.4!important}
  .ebc-heading p{font-size:16px!important;line-height:1.9!important;color:#506258!important}
  .ebc-hero h1{font-size:40px!important}
  .ebc-hero__desc{font-size:17px!important;line-height:1.95!important}
  .ebc-hero__contact-head small,.ebc-hero__contact-row small{font-size:12px!important}
  .ebc-hero__contact-head strong{font-size:18px!important}
  .ebc-hero__contact-row b{font-size:15px!important}
  .ebc-campus-symbol{display:none!important}
  .ebc-campus-body{padding:21px 19px 20px!important}
  .ebc-campus-top h3{font-size:23px!important}
  .ebc-campus-subtitle{font-size:14.5px!important}
  .ebc-campus-address{font-size:16px!important;line-height:1.9!important}
  .ebc-phone{font-size:16px!important}
  .ebc-campus-card .ebc-btn{font-size:15px!important;min-height:48px!important}
  .ebc-map-tab{font-size:14.5px!important;padding:11px 4px!important}
  .ebc-map-frame{height:260px!important}
  .ebc-map-meta strong{font-size:25px!important}
  .ebc-map-meta p{font-size:16px!important}
  .ebc-map-phone{font-size:16px!important}
  .ebc-cta__inner{display:flex!important;flex-direction:column!important;gap:15px!important;text-align:center!important}
  .ebc-cta-copy,.ebc-cta-actions{order:initial!important;width:100%!important}
  .ebc-cta h2{font-size:25px!important}
  .ebc-cta p{font-size:16px!important}
}


/* v0.9.21 — map section zoom-out + final layout refinement */
@media (min-width:768px){
  /* First map screenshot felt too zoomed-in and oversized; make that section more compact and balanced. */
  .ebc-maps{padding-top:28px!important;padding-bottom:30px!important}
  .ebc-maps .ebc-heading{max-width:1020px!important;margin-bottom:18px!important}
  .ebc-maps .ebc-heading h2{font-size:clamp(34px,2.75vw,43px)!important;line-height:1.36!important}
  .ebc-maps .ebc-heading p{font-size:17.5px!important;line-height:1.9!important;max-width:930px!important;margin-inline:auto!important}
  .ebc-map-shell{max-width:1180px!important}
  .ebc-map-tabs{padding:7px!important;gap:7px!important}
  .ebc-map-tab{font-size:15px!important;padding:12px 10px!important;border-radius:11px!important}
  .ebc-map-body{grid-template-columns:315px minmax(0,1fr)!important;min-height:295px!important}
  .ebc-map-frame{height:295px!important}
  .ebc-map-meta{padding:24px 22px!important;gap:10px!important}
  .ebc-map-label{font-size:12px!important}
  .ebc-map-meta strong{font-size:24px!important;line-height:1.45!important}
  .ebc-map-meta p{font-size:16px!important;line-height:1.9!important;color:#4f6357!important}
  .ebc-map-phone{font-size:15.5px!important;line-height:1.55!important}
  .ebc-map-phone span{width:33px!important;height:33px!important}
  .ebc-map-actions{margin-top:8px!important;gap:8px!important}
  .ebc-map-actions .ebc-btn{min-height:45px!important;font-size:14.5px!important;padding:9px 14px!important}

  /* Keep hero premium but slightly calmer so the full page breathes better. */
  .ebc-hero__inner{width:min(1140px,calc(100% - 54px))!important;gap:44px!important}
  .ebc-hero h1{font-size:clamp(46px,3.8vw,56px)!important;line-height:1.28!important}
  .ebc-hero__desc{font-size:18.5px!important;line-height:1.95!important;max-width:740px!important}
  .ebc-hero__contact-card{padding:24px 26px!important}

  /* Refine campus block rhythm so it stays professional and less crowded. */
  .ebc-campuses .ebc-heading{max-width:980px!important}
  .ebc-campuses .ebc-heading h2{font-size:clamp(35px,2.9vw,44px)!important;line-height:1.36!important}
  .ebc-campuses .ebc-heading p{font-size:18px!important;line-height:1.9!important}
  .ebc-campus-grid{gap:19px!important}
  .ebc-campus-body{padding:25px 24px 24px!important}
  .ebc-campus-top h3{font-size:23px!important;line-height:1.42!important}
  .ebc-campus-subtitle{font-size:14.5px!important;line-height:1.85!important}
  .ebc-campus-address{font-size:16px!important;line-height:1.9!important}
  .ebc-phone{font-size:15.5px!important;line-height:1.55!important}

  /* Last CTA: tighter, better vertical centering, text clearly opposite the button. */
  .ebc-cta{padding:8px 18px 28px!important}
  .ebc-cta__inner{padding:24px 30px!important;gap:26px!important;align-items:center!important}
  .ebc-cta-copy{display:flex!important;flex-direction:column!important;justify-content:center!important}
  .ebc-cta h2{font-size:28px!important;line-height:1.44!important;margin:4px 0 6px!important}
  .ebc-cta p{font-size:16.5px!important;line-height:1.85!important;margin:0!important}
  .ebc-cta-actions .ebc-btn{min-width:194px!important}
}

@media (max-width:767px){
  .ebc-maps{padding-top:24px!important;padding-bottom:26px!important}
  .ebc-maps .ebc-heading{margin-bottom:16px!important}
  .ebc-maps .ebc-heading h2{font-size:29px!important;line-height:1.42!important}
  .ebc-maps .ebc-heading p{font-size:15.5px!important;line-height:1.85!important}
  .ebc-map-body{grid-template-columns:1fr!important}
  .ebc-map-frame{height:240px!important}
  .ebc-map-meta{padding:18px 16px!important}
  .ebc-map-meta strong{font-size:22px!important}
  .ebc-map-meta p{font-size:15px!important;line-height:1.85!important}
  .ebc-map-actions .ebc-btn{min-height:46px!important}
  .ebc-cta__inner{padding:20px 16px!important}
}


/* v0.9.21 — final compact polish: actual Hero zoom-out, phone direction, compact cards/CTA, contact-only footer map cleanup */
.ebc-phone b,.ebc-map-phone b,.ebc-hero__contact-row b{
  direction:ltr!important;
  unicode-bidi:isolate!important;
  display:inline-block!important;
  text-align:left!important;
  font-variant-numeric:tabular-nums;
  letter-spacing:.12px;
}

@media (min-width:768px){
  /* The requested zoom-out is the first/Hero section, not the map. */
  .ebc-hero{padding:46px 18px 44px!important}
  .ebc-hero__inner{
    width:min(1080px,calc(100% - 54px))!important;
    grid-template-columns:minmax(0,1.34fr) minmax(300px,.66fr)!important;
    gap:36px!important;
  }
  .ebc-hero h1{font-size:clamp(43px,3.45vw,52px)!important;line-height:1.27!important;margin:7px 0 9px!important}
  .ebc-hero__desc{font-size:18px!important;line-height:1.92!important;max-width:700px!important}
  .ebc-hero__contact-card{padding:20px 22px!important;border-radius:20px!important;box-shadow:0 12px 32px rgba(22,62,41,.065)!important}
  .ebc-hero__contact-head{padding-bottom:12px!important}
  .ebc-hero__contact-head small,.ebc-hero__contact-row small{font-size:12px!important}
  .ebc-hero__contact-head strong{font-size:18px!important}
  .ebc-hero__contact-row{grid-template-columns:38px 1fr!important;gap:10px!important;padding:11px 4px!important}
  .ebc-hero__contact-row>span{width:36px!important;height:36px!important;font-size:15px!important}
  .ebc-hero__contact-row b{font-size:15px!important}

  /* Compact campus cards without shrinking readability. */
  .ebc-campuses{padding-top:34px!important;padding-bottom:28px!important}
  .ebc-campuses .ebc-heading{margin-bottom:20px!important}
  .ebc-campuses .ebc-heading h2{font-size:clamp(34px,2.7vw,42px)!important}
  .ebc-campuses .ebc-heading p{font-size:17px!important;line-height:1.85!important}
  .ebc-campus-grid{gap:18px!important}
  .ebc-campus-body{padding:22px 22px 21px!important}
  .ebc-campus-top{margin-bottom:10px!important}
  .ebc-campus-top h3{font-size:22px!important}
  .ebc-campus-subtitle{font-size:14px!important;line-height:1.75!important}
  .ebc-campus-address{font-size:15.5px!important;line-height:1.85!important;font-weight:450!important;margin:2px 0 11px!important}
  .ebc-phone-list{padding-top:11px!important;gap:5px!important}
  .ebc-phone{font-size:15.5px!important}
  .ebc-card-actions{margin-top:13px!important;gap:9px!important}
  .ebc-campus-card .ebc-btn{min-height:46px!important;font-size:15px!important}

  /* Map already has the right size; just tighten vertical rhythm. */
  .ebc-maps{padding-top:26px!important;padding-bottom:28px!important}
  .ebc-maps .ebc-heading{margin-bottom:16px!important}
  .ebc-maps .ebc-heading h2{font-size:clamp(33px,2.6vw,41px)!important}
  .ebc-maps .ebc-heading p{font-size:17px!important;line-height:1.85!important}
  .ebc-map-shell{max-width:1160px!important}
  .ebc-map-body{grid-template-columns:305px minmax(0,1fr)!important;min-height:285px!important}
  .ebc-map-frame{height:285px!important}
  .ebc-map-meta{padding:22px 20px!important;gap:9px!important}
  .ebc-map-meta strong{font-size:23px!important}
  .ebc-map-meta p{font-size:15.5px!important;line-height:1.85!important}
  .ebc-map-phone{font-size:15px!important}

  /* CTA: text on the right, button opposite it, but with less height. */
  .ebc-cta{padding:7px 18px 24px!important}
  .ebc-cta__inner{padding:20px 28px!important;gap:24px!important;min-height:0!important}
  .ebc-cta h2{font-size:27px!important;line-height:1.42!important;margin:3px 0 5px!important}
  .ebc-cta p{font-size:16px!important;line-height:1.78!important;margin:0!important}
  .ebc-cta-actions .ebc-btn{min-width:188px!important;min-height:47px!important}
}

/* Avoid repeating a second Google map inside the global footer only on Contact page. */
body.eb-contact-page-active footer .elementor-widget-google_maps,
body.eb-contact-page-active .elementor-location-footer .elementor-widget-google_maps,
body.eb-contact-page-active footer .eb07-map-card,
body.eb-contact-page-active .elementor-location-footer .eb07-map-card,
body.eb-contact-page-active footer .elementor-widget:has(iframe[src*="google.com/maps"]),
body.eb-contact-page-active .elementor-location-footer .elementor-widget:has(iframe[src*="google.com/maps"]){
  display:none!important;
}

@media (max-width:767px){
  .ebc-hero{padding:30px 0 28px!important}
  .ebc-hero__inner{gap:14px!important}
  .ebc-hero h1{font-size:37px!important}
  .ebc-hero__desc{font-size:16px!important;line-height:1.88!important}
  .ebc-hero__contact-card{padding:13px 14px!important;margin:0 14px!important}
  .ebc-campus-body{padding:19px 17px 18px!important}
  .ebc-campus-address{font-size:15.5px!important}
  .ebc-phone{font-size:15.5px!important}
  .ebc-map-frame{height:235px!important}
  .ebc-cta{padding-bottom:20px!important}
  .ebc-cta__inner{padding:18px 16px!important}
}


/* v0.9.21 — unified Google font, centered contact panel, tablet-safe layout */
.eb-contact-page-active .ebc-block,
.eb-contact-page-active .ebc-hero,
.eb-contact-page-active .ebc-cta,
.eb-contact-page-active .ebc-block button,
.eb-contact-page-active .ebc-block input,
.eb-contact-page-active .ebc-block textarea,
.eb-contact-page-active .ebc-block select,
.eb-contact-page-active .ebc-hero button,
.eb-contact-page-active .ebc-cta button{
  font-family:'Vazirmatn',Tahoma,Arial,sans-serif;
}
.eb-contact-page-active .ebc-hero__contact-card{font-family:'Vazirmatn',Tahoma,Arial,sans-serif;text-align:center}
.eb-contact-page-active .ebc-hero__contact-head{justify-content:center}
.eb-contact-page-active .ebc-hero__contact-head>div,
.eb-contact-page-active .ebc-hero__contact-row>div{width:100%;text-align:center}
.eb-contact-page-active .ebc-hero__contact-head small,
.eb-contact-page-active .ebc-hero__contact-row small{font-size:13px;line-height:1.6;margin-bottom:4px}
.eb-contact-page-active .ebc-hero__contact-head strong{font-size:19px;line-height:1.55}
.eb-contact-page-active .ebc-hero__contact-row b{font-family:'Vazirmatn',Tahoma,Arial,sans-serif;font-size:16.5px;line-height:1.65;font-weight:800}
.eb-contact-page-active .ebc-hero__contact-row b[dir="ltr"]{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.eb-contact-page-active .ebc-phone b,
.eb-contact-page-active .ebc-map-phone b{font-family:'Vazirmatn',Tahoma,Arial,sans-serif;direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.eb-contact-page-active .ebc-map-shell,
.eb-contact-page-active .ebc-map-tab,
.eb-contact-page-active .ebc-map-meta,
.eb-contact-page-active .ebc-map-actions .ebc-btn{font-family:'Vazirmatn',Tahoma,Arial,sans-serif}

/* Google Maps loading treatment: no harsh blank gray block while the iframe is loading. */
.ebc-map-frame-wrap{grid-column:2;position:relative;min-width:0;background:linear-gradient(135deg,#f5f7f5,#ecefeb);overflow:hidden}
.ebc-map-frame-wrap .ebc-map-frame{grid-column:auto;width:100%;height:100%;position:relative;z-index:2;background:transparent;opacity:0;transition:opacity .25s ease}
.ebc-map-frame-wrap.is-loaded .ebc-map-frame{opacity:1}
.ebc-map-loading{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;color:#6c7a72;font-size:15px;font-weight:600;background:linear-gradient(135deg,#f6f8f6,#ecefeb)}
.ebc-map-frame-wrap.is-loaded .ebc-map-loading{opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}

/* Tablet fix: at widths like the user's first screenshot, never keep the hero in two cramped columns. */
@media (min-width:768px) and (max-width:1024px){
  .ebc-hero__inner{width:min(760px,calc(100% - 34px))!important;grid-template-columns:1fr!important;gap:24px!important}
  .ebc-hero__copy{text-align:center!important;max-width:720px!important;margin-inline:auto!important}
  .ebc-hero__desc{margin-inline:auto!important;max-width:680px!important}
  .ebc-hero__contact-card{width:min(520px,100%)!important;margin-inline:auto!important;padding:22px 24px!important}
  .ebc-campus-grid{grid-template-columns:1fr!important;max-width:760px!important}
  .ebc-map-body{grid-template-columns:1fr!important}
  .ebc-map-meta{grid-column:1!important;grid-row:2!important;border-left:0!important;border-top:1px solid #e3ebe6!important;text-align:center!important;align-items:center!important}
  .ebc-map-frame-wrap{grid-column:1!important;grid-row:1!important;height:270px!important}
  .ebc-map-actions{width:min(460px,100%)!important}
}

@media (min-width:1025px){
  .eb-contact-page-active .ebc-hero__contact-row{grid-template-columns:42px 1fr 42px!important}
  .eb-contact-page-active .ebc-hero__contact-row>span{grid-column:1}
  .eb-contact-page-active .ebc-hero__contact-row>div{grid-column:2}
  .ebc-map-frame-wrap{height:295px}
}

@media (max-width:767px){
  .eb-contact-page-active .ebc-hero__contact-row{grid-template-columns:40px 1fr 40px!important}
  .eb-contact-page-active .ebc-hero__contact-row>span{grid-column:1}
  .eb-contact-page-active .ebc-hero__contact-row>div{grid-column:2}
  .eb-contact-page-active .ebc-hero__contact-row b{font-size:15.5px!important}
  .eb-contact-page-active .ebc-hero__contact-head strong{font-size:18px!important}
  .ebc-map-frame-wrap{grid-column:1!important;grid-row:1!important;height:240px!important}
}


/* v0.9.21 — contact card true vertical stacking and exact centering */
.eb-contact-page-active .ebc-hero__contact-card{
  text-align:center!important;
}
.eb-contact-page-active .ebc-hero__contact-head{
  position:relative!important;
  display:block!important;
  text-align:center!important;
  padding:4px 52px 15px!important;
}
.eb-contact-page-active .ebc-hero__contact-mark{
  position:absolute!important;
  right:4px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}
.eb-contact-page-active .ebc-hero__contact-head>div{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  text-align:center!important;
}
.eb-contact-page-active .ebc-hero__contact-head small,
.eb-contact-page-active .ebc-hero__contact-head strong,
.eb-contact-page-active .ebc-hero__contact-row small,
.eb-contact-page-active .ebc-hero__contact-row b{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.eb-contact-page-active .ebc-hero__contact-head small,
.eb-contact-page-active .ebc-hero__contact-row small{
  font-family:'Vazirmatn',Tahoma,Arial,sans-serif!important;
  font-size:13px!important;
  line-height:1.7!important;
  font-weight:500!important;
  color:#718078!important;
  margin-bottom:4px!important;
}
.eb-contact-page-active .ebc-hero__contact-head strong{
  font-family:'Vazirmatn',Tahoma,Arial,sans-serif!important;
  font-size:20px!important;
  line-height:1.55!important;
  font-weight:800!important;
  color:#183126!important;
}
.eb-contact-page-active .ebc-hero__contact-row{
  position:relative!important;
  display:block!important;
  min-height:76px!important;
  padding:12px 52px!important;
  text-align:center!important;
}
.eb-contact-page-active .ebc-hero__contact-row>span{
  position:absolute!important;
  right:4px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
}
.eb-contact-page-active .ebc-hero__contact-row>div{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  text-align:center!important;
}
.eb-contact-page-active .ebc-hero__contact-row b{
  font-family:'Vazirmatn',Tahoma,Arial,sans-serif!important;
  font-size:16.5px!important;
  line-height:1.7!important;
  font-weight:800!important;
  color:#254136!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.eb-contact-page-active .ebc-hero__contact-row b[dir="ltr"]{
  direction:ltr!important;
  unicode-bidi:isolate!important;
  font-variant-numeric:tabular-nums!important;
}

@media (min-width:768px) and (max-width:1024px){
  .eb-contact-page-active .ebc-hero__contact-row{padding-left:50px!important;padding-right:50px!important}
}
@media (max-width:767px){
  .eb-contact-page-active .ebc-hero__contact-head{padding-left:46px!important;padding-right:46px!important}
  .eb-contact-page-active .ebc-hero__contact-row{min-height:72px!important;padding:11px 46px!important}
  .eb-contact-page-active .ebc-hero__contact-head strong{font-size:18.5px!important}
  .eb-contact-page-active .ebc-hero__contact-row b{font-size:15.5px!important}
}


/* v0.9.21 — mobile anchor/header clearance, consistent phone numerals, footer-map cleanup */
.eb-contact-page-active .ebc-phone b,
.eb-contact-page-active .ebc-map-phone b,
.eb-contact-page-active .ebc-hero__contact-row b[dir="ltr"]{
  direction:ltr!important;
  unicode-bidi:isolate!important;
  font-variant-numeric:tabular-nums!important;
  font-feature-settings:"tnum" 1!important;
  letter-spacing:0!important;
}

/* The contact page already has a full branch map; remove the legacy map card wherever the global footer places it. */
body.eb-contact-page-active .eb07-map-card,
body.eb-contact-page-active .eb07-map-grid,
body.eb-contact-page-active .site-footer iframe[src*="google"],
body.eb-contact-page-active #footer iframe[src*="google"],
body.eb-contact-page-active .footer iframe[src*="google"],
body.eb-contact-page-active .footer-wrapper iframe[src*="google"]{
  display:none!important;
}

/* Make anchor jumps clear the real sticky header/admin bars on both desktop and mobile. */
#eb-contact-maps{scroll-margin-top:180px!important}
@media (max-width:767px){
  #eb-contact-maps{scroll-margin-top:150px!important}
  .ebc-maps .ebc-heading{padding-top:4px!important}
  .ebc-map-tabs{position:relative;z-index:1}
  .ebc-map-meta{text-align:center!important;align-items:center!important}
  .ebc-map-current-address{max-width:290px;margin-inline:auto!important}
  .ebc-map-phone{justify-content:center!important}
}


/* v0.9.21 — mobile title wrapping, CTA polish, static map interaction cleanup */
.eb-contact-page-active .ebc-heading h2,
.eb-contact-page-active .ebc-cta h2,
.eb-contact-page-active .ebc-campus-top h3{
  text-wrap:balance;
}

/* The embedded map is visual context; route/call buttons provide the actual interaction.
   Disabling pointer interaction prevents the intrusive ctrl+scroll overlay on desktop/mobile. */
.eb-contact-page-active .ebc-map-frame{
  pointer-events:none!important;
}
.eb-contact-page-active .ebc-map-frame-wrap{
  cursor:default!important;
}

@media (max-width:767px){
  /* Keep the map heading compact and on one deliberate line. */
  .eb-contact-page-active .ebc-maps .ebc-heading{
    max-width:100%!important;
    padding-inline:8px!important;
    margin-bottom:14px!important;
  }
  .eb-contact-page-active .ebc-maps .ebc-heading h2{
    font-size:clamp(20px,5.7vw,23px)!important;
    line-height:1.48!important;
    letter-spacing:-.25px!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
    margin-inline:auto!important;
  }
  .eb-contact-page-active .ebc-maps .ebc-heading p{
    max-width:315px!important;
    margin-inline:auto!important;
    font-size:14.5px!important;
    line-height:1.85!important;
  }

  /* Tabs and selected-branch panel: cleaner density and no wrapped button labels. */
  .eb-contact-page-active .ebc-map-tabs{
    gap:5px!important;
    padding:6px!important;
  }
  .eb-contact-page-active .ebc-map-tab{
    font-size:13px!important;
    padding:10px 4px!important;
    white-space:nowrap!important;
  }
  .eb-contact-page-active .ebc-map-frame-wrap{
    height:225px!important;
  }
  .eb-contact-page-active .ebc-map-meta{
    padding:17px 15px 18px!important;
    gap:8px!important;
    text-align:center!important;
    align-items:center!important;
  }
  .eb-contact-page-active .ebc-map-label{
    font-size:11px!important;
  }
  .eb-contact-page-active .ebc-map-meta strong{
    font-size:22px!important;
    line-height:1.45!important;
  }
  .eb-contact-page-active .ebc-map-current-address{
    max-width:300px!important;
    font-size:14.5px!important;
    line-height:1.85!important;
    margin-inline:auto!important;
  }
  .eb-contact-page-active .ebc-map-phone{
    justify-content:center!important;
    font-size:15px!important;
  }
  .eb-contact-page-active .ebc-map-actions{
    width:100%!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .eb-contact-page-active .ebc-map-actions .ebc-btn{
    min-width:0!important;
    min-height:46px!important;
    padding:8px 8px!important;
    font-size:14px!important;
    white-space:nowrap!important;
  }

  /* Final CTA: balanced two-line headline at most, calmer copy, strong single action. */
  .eb-contact-page-active .ebc-cta{
    padding:8px 12px 18px!important;
  }
  .eb-contact-page-active .ebc-cta__inner{
    padding:20px 16px 18px!important;
    gap:13px!important;
    border-radius:19px!important;
  }
  .eb-contact-page-active .ebc-cta .ebc-eyebrow{
    font-size:11.5px!important;
  }
  .eb-contact-page-active .ebc-cta h2{
    max-width:310px!important;
    margin:4px auto 5px!important;
    font-size:23px!important;
    line-height:1.55!important;
    letter-spacing:-.2px!important;
  }
  .eb-contact-page-active .ebc-cta p{
    max-width:300px!important;
    margin-inline:auto!important;
    font-size:14.5px!important;
    line-height:1.85!important;
  }
  .eb-contact-page-active .ebc-cta-actions{
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
  }
  .eb-contact-page-active .ebc-cta-actions .ebc-btn{
    width:min(100%,290px)!important;
    min-height:48px!important;
    font-size:15px!important;
    white-space:nowrap!important;
  }

  /* Prevent long section headings from colliding with the sticky mobile header. */
  .eb-contact-page-active .ebc-campuses .ebc-heading h2{
    font-size:27px!important;
    line-height:1.48!important;
    max-width:330px!important;
    margin-inline:auto!important;
  }
  .eb-contact-page-active .ebc-campuses .ebc-heading p{
    max-width:330px!important;
    margin-inline:auto!important;
    font-size:14.5px!important;
    line-height:1.85!important;
  }
}

@media (max-width:374px){
  .eb-contact-page-active .ebc-maps .ebc-heading h2{
    font-size:19px!important;
    letter-spacing:-.4px!important;
  }
  .eb-contact-page-active .ebc-map-tab{font-size:12px!important}
  .eb-contact-page-active .ebc-map-actions .ebc-btn{font-size:13px!important}
  .eb-contact-page-active .ebc-cta h2{font-size:22px!important}
}


/* v0.9.21 — final mobile typography + no-wrap map heading + noninteractive map shield */
.eb-contact-page-active .ebc-hero h1,
.eb-contact-page-active .ebc-heading h2,
.eb-contact-page-active .ebc-campus-top h3,
.eb-contact-page-active .ebc-campus-subtitle,
.eb-contact-page-active .ebc-campus-address,
.eb-contact-page-active .ebc-phone,
.eb-contact-page-active .ebc-map-tab,
.eb-contact-page-active .ebc-map-label,
.eb-contact-page-active .ebc-map-meta strong,
.eb-contact-page-active .ebc-map-meta p,
.eb-contact-page-active .ebc-map-phone,
.eb-contact-page-active .ebc-cta h2,
.eb-contact-page-active .ebc-cta p,
.eb-contact-page-active .ebc-eyebrow,
.eb-contact-page-active .ebc-btn,
.eb-contact-page-active .ebc-hero__desc,
.eb-contact-page-active .ebc-hero__contact-head small,
.eb-contact-page-active .ebc-hero__contact-head strong,
.eb-contact-page-active .ebc-hero__contact-row small,
.eb-contact-page-active .ebc-hero__contact-row b{
  font-family:'Vazirmatn',Tahoma,Arial,sans-serif!important;
}

/* Fully cover the embedded Google map so wheel/touch gestures never trigger Google's ctrl+scroll prompt. */
.eb-contact-page-active .ebc-map-frame-wrap{position:relative!important}
.eb-contact-page-active .ebc-map-frame-shield{
  position:absolute;
  inset:0;
  z-index:4;
  display:block;
  background:transparent;
  cursor:default;
  touch-action:pan-y;
}
.eb-contact-page-active .ebc-map-loading{z-index:5}
.eb-contact-page-active .ebc-map-frame-wrap.is-loaded .ebc-map-loading{pointer-events:none}

@media (max-width:767px){
  /* Keep the map section title truly on one line on 320–430px phones. */
  .eb-contact-page-active .ebc-maps .ebc-heading h2{
    width:100%!important;
    max-width:none!important;
    margin:4px auto 7px!important;
    padding:0!important;
    font-size:18.5px!important;
    line-height:1.55!important;
    font-weight:850!important;
    letter-spacing:-.35px!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
  }
  .eb-contact-page-active .ebc-maps .ebc-heading p{
    max-width:300px!important;
    font-size:14px!important;
    line-height:1.85!important;
    margin:0 auto!important;
  }
  .eb-contact-page-active .ebc-maps .ebc-eyebrow{font-size:11px!important}

  /* One consistent heading scale for the rest of the contact page. */
  .eb-contact-page-active .ebc-campuses .ebc-heading h2{
    font-size:24px!important;
    line-height:1.5!important;
    max-width:310px!important;
  }
  .eb-contact-page-active .ebc-campuses .ebc-heading p{
    font-size:14px!important;
    line-height:1.85!important;
    max-width:310px!important;
  }

  /* Branch cards: slightly calmer rhythm and uniform phone/action sizing. */
  .eb-contact-page-active .ebc-campus-body{padding:18px 16px 17px!important}
  .eb-contact-page-active .ebc-campus-top h3{font-size:20px!important;line-height:1.45!important}
  .eb-contact-page-active .ebc-campus-subtitle{font-size:13px!important;line-height:1.75!important}
  .eb-contact-page-active .ebc-campus-address{font-size:14.5px!important;line-height:1.85!important;margin-bottom:10px!important}
  .eb-contact-page-active .ebc-phone-list{gap:5px!important;padding-top:10px!important}
  .eb-contact-page-active .ebc-phone{font-size:14.5px!important;line-height:1.55!important}
  .eb-contact-page-active .ebc-card-actions{margin-top:12px!important}
  .eb-contact-page-active .ebc-campus-card .ebc-btn{font-size:13.5px!important;min-height:44px!important}

  /* Mobile map: compact, centered and consistent with the cards. */
  .eb-contact-page-active .ebc-map-frame-wrap{height:210px!important}
  .eb-contact-page-active .ebc-map-meta{padding:15px 14px 16px!important;gap:7px!important}
  .eb-contact-page-active .ebc-map-label{font-size:10.5px!important}
  .eb-contact-page-active .ebc-map-meta strong{font-size:20px!important;line-height:1.45!important}
  .eb-contact-page-active .ebc-map-current-address{font-size:13.5px!important;line-height:1.8!important;max-width:285px!important}
  .eb-contact-page-active .ebc-map-phone{font-size:14px!important}
  .eb-contact-page-active .ebc-map-actions .ebc-btn{font-size:13.5px!important;min-height:44px!important}

  /* CTA copy no longer breaks into an awkward oversized two-line title. */
  .eb-contact-page-active .ebc-cta h2{
    font-size:20px!important;
    line-height:1.5!important;
    max-width:300px!important;
    margin:3px auto 5px!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
  }
  .eb-contact-page-active .ebc-cta p{
    font-size:14px!important;
    line-height:1.8!important;
    max-width:295px!important;
  }
  .eb-contact-page-active .ebc-cta__inner{padding:18px 14px 16px!important;gap:11px!important}
  .eb-contact-page-active .ebc-cta-actions .ebc-btn{min-height:46px!important;font-size:14px!important}
}

@media (max-width:350px){
  .eb-contact-page-active .ebc-maps .ebc-heading h2{font-size:17px!important;letter-spacing:-.45px!important}
  .eb-contact-page-active .ebc-cta h2{font-size:18.5px!important}
}


/* v0.9.21 — mobile copy rhythm + footer typography cleanup */
@media (max-width:767px){
  /* Educational-units intro: shorter copy, balanced lines, consistent hierarchy. */
  .eb-contact-page-active .ebc-campuses .ebc-heading{
    max-width:330px!important;
    padding-inline:8px!important;
    margin-bottom:18px!important;
  }
  .eb-contact-page-active .ebc-campuses .ebc-heading h2{
    max-width:325px!important;
    margin:4px auto 7px!important;
    font-size:23px!important;
    line-height:1.5!important;
    letter-spacing:-.2px!important;
    white-space:normal!important;
    text-wrap:balance!important;
  }
  .eb-contact-page-active .ebc-campuses .ebc-heading p{
    max-width:305px!important;
    margin:0 auto!important;
    font-size:14px!important;
    line-height:1.9!important;
    text-wrap:balance!important;
  }

  /* CTA: avoid forced single-line headline and awkward sentence wrapping. */
  .eb-contact-page-active .ebc-cta h2{
    max-width:290px!important;
    margin:3px auto 6px!important;
    font-size:20px!important;
    line-height:1.55!important;
    white-space:normal!important;
    text-wrap:balance!important;
  }
  .eb-contact-page-active .ebc-cta p{
    max-width:285px!important;
    margin:0 auto!important;
    font-size:14px!important;
    line-height:1.9!important;
    text-wrap:balance!important;
  }
  .eb-contact-page-active .ebc-cta-actions .ebc-btn{
    white-space:nowrap!important;
  }

  /* Footer on Contact page: keep brand/title copy readable and prevent awkward clipping/wrapping. */
  body.eb-contact-page-active footer,
  body.eb-contact-page-active .elementor-location-footer,
  body.eb-contact-page-active .site-footer,
  body.eb-contact-page-active #footer{
    font-family:'Vazirmatn',Tahoma,Arial,sans-serif!important;
  }
  body.eb-contact-page-active footer h1,
  body.eb-contact-page-active footer h2,
  body.eb-contact-page-active footer h3,
  body.eb-contact-page-active footer h4,
  body.eb-contact-page-active .elementor-location-footer h1,
  body.eb-contact-page-active .elementor-location-footer h2,
  body.eb-contact-page-active .elementor-location-footer h3,
  body.eb-contact-page-active .elementor-location-footer h4{
    font-family:'Vazirmatn',Tahoma,Arial,sans-serif!important;
    line-height:1.65!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    text-wrap:balance!important;
  }
  body.eb-contact-page-active footer p,
  body.eb-contact-page-active .elementor-location-footer p{
    font-family:'Vazirmatn',Tahoma,Arial,sans-serif!important;
    line-height:1.85!important;
    white-space:normal!important;
  }

  /* Keep the bottom CTA visually separate from the footer without excessive gap. */
  .eb-contact-page-active .ebc-cta{padding-bottom:14px!important}
}

@media (max-width:390px){
  .eb-contact-page-active .ebc-campuses .ebc-heading h2{font-size:22px!important}
  .eb-contact-page-active .ebc-cta h2{font-size:19px!important;max-width:275px!important}
}


/* v0.9.21 — final contact-page footer identity + mobile finish */
body.eb-contact-page-active footer,
body.eb-contact-page-active .elementor-location-footer,
body.eb-contact-page-active .site-footer,
body.eb-contact-page-active #footer{
  overflow:visible!important;
}

@media (max-width:767px){
  /* Keep the final CTA compact and visually complete before the footer starts. */
  .eb-contact-page-active .ebc-cta{
    padding:8px 12px 16px!important;
    margin:0!important;
  }
  .eb-contact-page-active .ebc-cta__inner{
    padding:18px 15px 17px!important;
    border-radius:18px!important;
    gap:10px!important;
  }
  .eb-contact-page-active .ebc-cta .ebc-eyebrow{
    font-size:11.5px!important;
    line-height:1.55!important;
  }
  .eb-contact-page-active .ebc-cta h2{
    font-size:20px!important;
    line-height:1.55!important;
    max-width:295px!important;
    margin:2px auto 5px!important;
  }
  .eb-contact-page-active .ebc-cta p{
    font-size:14px!important;
    line-height:1.85!important;
    max-width:292px!important;
    margin:0 auto!important;
  }
  .eb-contact-page-active .ebc-cta-actions{
    margin-top:3px!important;
  }
  .eb-contact-page-active .ebc-cta-actions .ebc-btn{
    min-height:46px!important;
    font-size:14.5px!important;
    border-radius:10px!important;
  }

  /* Contact page represents the whole complex, so the global footer brand must read cleanly here. */
  body.eb-contact-page-active footer,
  body.eb-contact-page-active .elementor-location-footer,
  body.eb-contact-page-active .site-footer,
  body.eb-contact-page-active #footer{
    padding-top:24px!important;
    padding-bottom:calc(24px + env(safe-area-inset-bottom))!important;
  }
  body.eb-contact-page-active footer .elementor-widget-image,
  body.eb-contact-page-active .elementor-location-footer .elementor-widget-image{
    margin-bottom:8px!important;
  }
  body.eb-contact-page-active footer .elementor-widget-heading,
  body.eb-contact-page-active .elementor-location-footer .elementor-widget-heading{
    overflow:visible!important;
  }
  body.eb-contact-page-active footer .elementor-heading-title,
  body.eb-contact-page-active .elementor-location-footer .elementor-heading-title{
    display:block!important;
    max-width:300px!important;
    margin:0 auto!important;
    text-align:center!important;
    font-family:'Vazirmatn',Tahoma,Arial,sans-serif!important;
    font-size:18px!important;
    line-height:1.7!important;
    font-weight:800!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }
  body.eb-contact-page-active footer p,
  body.eb-contact-page-active .elementor-location-footer p{
    max-width:310px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    font-size:13.5px!important;
    line-height:1.85!important;
  }
}
