/* =========================================================
   MAGICBRICK — CONTACT PAGE
   Pixel-matched to the approved design. Uses theme tokens
   (--navy / --gold / --serif / --sans) so colours & fonts
   follow the global "Colours & Fonts" admin panel.
   ========================================================= */

.mb-c-page{background:#fff;}

/* ---------------------------------------------------------
   1) HERO  (navy → photo)  with contact methods inside
   --------------------------------------------------------- */
.mb-c-hero{
  position:relative;background-color:var(--navy);
  background-size:cover;background-position:center right;background-repeat:no-repeat;
  padding:70px 0 56px;overflow:hidden;
}
.mb-c-hero::before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,
    var(--navy) 0%,var(--navy) 30%,
    rgba(11,27,61,.95) 42%,rgba(11,27,61,.6) 56%,
    rgba(11,27,61,.2) 74%,rgba(11,27,61,.05) 100%);
}
.mb-c-hero-inner{position:relative;z-index:2;}
.mb-c-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;}
.mb-c-hero h1{font-family:var(--serif);color:#fff;font-weight:800;line-height:1.08;font-size:clamp(2rem,4.4vw,3rem);margin:0 0 18px;letter-spacing:-.5px;}
.mb-c-hero-sub{color:rgba(255,255,255,.86);font-size:1.02rem;line-height:1.7;margin:0 0 34px;max-width:460px;}
.mb-c-methods{display:flex;flex-wrap:wrap;gap:34px;}
.mb-c-method{display:flex;align-items:center;gap:14px;}
.mb-c-method-ic{
  width:48px;height:48px;border-radius:50%;border:1.6px solid var(--gold);color:var(--gold);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.mb-c-method-ic img{width:24px;height:24px;object-fit:contain;}
.mb-c-method-txt b{display:block;font-size:.78rem;color:rgba(255,255,255,.7);font-weight:600;margin-bottom:2px;}
.mb-c-method-txt a,.mb-c-method-txt span{display:block;font-size:.96rem;color:#fff;font-weight:600;}
.mb-c-method-txt a:hover{color:var(--gold);}

/* ---------------------------------------------------------
   breadcrumb
   --------------------------------------------------------- */
.mb-c-crumbs{padding:24px 0 0;font-size:.84rem;color:var(--gray);}
.mb-c-crumbs a{color:var(--gray);}
.mb-c-crumbs a:hover{color:var(--gold);}
.mb-c-crumbs span{margin:0 8px;color:#c2c6cd;}

/* ---------------------------------------------------------
   2) GET IN TOUCH + OUR OFFICE
   --------------------------------------------------------- */
.mb-c-main{padding:30px 0 60px;}
.mb-c-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:60px;align-items:start;}
.mb-c-col h2{font-family:var(--serif);font-size:1.7rem;color:var(--navy);font-weight:800;margin:0 0 10px;}
.mb-c-intro{color:var(--gray);font-size:.92rem;line-height:1.6;margin:0 0 24px;}

/* form */
.mb-c-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.mb-c-form .mb-c-full{grid-column:1 / -1;}
.mb-c-input{position:relative;}
.mb-c-input input,.mb-c-input select,.mb-c-input textarea{
  width:100%;font-family:inherit;font-size:.94rem;color:var(--ink);
  padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:#fff;outline:none;transition:border-color .2s;
}
.mb-c-input textarea{min-height:130px;resize:vertical;}
.mb-c-input select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235f6470' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;}
.mb-c-input input::placeholder,.mb-c-input textarea::placeholder{color:#9aa0ab;}
.mb-c-input input:focus,.mb-c-input select:focus,.mb-c-input textarea:focus{border-color:var(--gold);}
.mb-c-input.has-error input,.mb-c-input.has-error select,.mb-c-input.has-error textarea{border-color:#d6453c;background:#fdf5f4;}
.mb-c-err{display:none;color:#d6453c;font-size:.76rem;margin-top:5px;}
.mb-c-input.has-error .mb-c-err{display:block;}

.mb-c-consent{grid-column:1 / -1;display:flex;align-items:flex-start;gap:10px;font-size:.82rem;color:var(--gray);line-height:1.5;}
.mb-c-consent input{margin-top:2px;width:16px;height:16px;flex-shrink:0;accent-color:var(--gold);}
.mb-c-consent.has-error{color:#d6453c;}
.mb-c-submit{grid-column:1 / -1;justify-self:start;justify-content:center;padding:14px 30px;}
.mb-c-form-msg{grid-column:1 / -1;font-size:.92rem;}

/* office / map */
.mb-c-map{position:relative;border-radius:12px 12px 0 0;overflow:hidden;height:330px;border:1px solid var(--line);border-bottom:none;background:#e8edf2;}
.mb-c-map iframe{width:100%;height:100%;border:0;display:block;}
.mb-c-map-card{
  position:absolute;top:42%;left:50%;transform:translate(-6%,-50%);
  background:#fff;border-radius:10px;box-shadow:0 10px 30px rgba(11,27,61,.18);
  padding:14px 18px;max-width:210px;pointer-events:none;
}
.mb-c-map-card b{display:block;font-size:.92rem;color:var(--navy);font-weight:700;margin-bottom:3px;}
.mb-c-map-card span{display:block;font-size:.8rem;color:var(--gray);line-height:1.4;}
.mb-c-map-pin{position:absolute;top:42%;left:calc(50% - 30px);transform:translate(-50%,-100%);color:var(--navy);pointer-events:none;filter:drop-shadow(0 4px 6px rgba(0,0,0,.25));}

.mb-c-office{
  background:var(--soft);border:1px solid var(--line);border-radius:0 0 12px 12px;padding:26px 26px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:22px;
}
.mb-c-office-item-h{display:flex;align-items:center;gap:9px;margin-bottom:10px;}
.mb-c-office-item-h svg{color:var(--gold);flex-shrink:0;}
.mb-c-office-item-h b{font-size:.86rem;color:var(--navy);font-weight:700;}
.mb-c-office-item p{font-size:.8rem;color:var(--gray);line-height:1.7;margin:0;}
.mb-c-office-item a{color:var(--gray);}
.mb-c-office-item a:hover{color:var(--gold);}

/* ---------------------------------------------------------
   3) OTHER WAYS
   --------------------------------------------------------- */
.mb-c-other{padding:8px 0 60px;}
.mb-c-other-h{text-align:center;font-family:var(--serif);font-size:1.4rem;color:var(--navy);font-weight:800;margin:0 0 28px;}
.mb-c-other-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.mb-c-other-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px 24px;transition:box-shadow .25s,transform .25s;     display: flex;
    gap: 30px; }
.mb-c-other-card:hover{box-shadow:0 14px 34px rgba(11,27,61,.09);transform:translateY(-3px);}
.mb-c-other-ic{margin-bottom:14px;height:46px;display:flex;align-items:center;}
.mb-c-other-ic img{width:44px;height:44px;object-fit:contain;}
.mb-c-other-card h3{font-size:1.02rem;color:var(--navy);font-weight:700;margin:0 0 7px;}
.mb-c-other-card p{font-size:.84rem;color:var(--gray);line-height:1.55;margin:0 0 14px;}
.mb-c-other-link{display:inline-flex;align-items:center;gap:7px;font-size:.76rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--gold);}
.mb-c-other-link:hover{color:var(--gold-dark);gap:10px;}

/* icon accent colours */
.mb-c-ic-green{color:#25D366;}
.mb-c-ic-gold{color:var(--gold);}

/* ---------------------------------------------------------
   4) LETTING CTA  (navy bar, photo on left)
   --------------------------------------------------------- */
.mb-c-letcta{padding:6px 0 64px;}
.mb-c-letcta-bar{
  position:relative;border-radius:14px;overflow:hidden;background:var(--navy);
  background-size:cover;background-position:left center;background-repeat:no-repeat;
}
.mb-c-letcta-bar::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(11,27,61,.55) 0%,rgba(11,27,61,.82) 22%,var(--navy) 40%,var(--navy) 100%);
}
.mb-c-letcta-inner{position:relative;z-index:2;padding:34px 40px;}
.mb-c-letcta-top{display:flex;align-items:center;gap:30px;}
.mb-c-letcta-txt{flex:1;padding-left:38%;}
.mb-c-letcta-txt h2{font-family:var(--serif);font-size:clamp(1.4rem,2.4vw,1.75rem);color:#fff;font-weight:800;margin:0 0 6px;}
.mb-c-letcta-txt p{color:rgba(255,255,255,.78);font-size:.92rem;margin:0;}
.mb-c-letcta-div{width:1px;align-self:stretch;background:rgba(255,255,255,.18);}
.mb-c-letcta .mb-btn{background:var(--gold);color:#fff;border-color:var(--gold);white-space:nowrap;}
.mb-c-letcta .mb-btn:hover{background:var(--gold-dark);border-color:var(--gold-dark);}
.mb-c-letcta-points{display:flex;flex-wrap:wrap;gap:14px 40px;margin-top:22px;padding-left:38%;}
.mb-c-letcta-points span{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;color:rgba(255,255,255,.85);}
.mb-c-letcta-points svg{color:var(--gold);flex-shrink:0;}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media(max-width:1100px){
  .mb-c-grid{gap:40px;}
  .mb-c-letcta-txt,.mb-c-letcta-points{padding-left:30%;}
}
@media(max-width:980px){
  .mb-c-hero{background-position:center;}
  .mb-c-hero::before{background:linear-gradient(rgba(11,27,61,.8),rgba(11,27,61,.88));}
  .mb-c-hero-inner{max-width:none;}
  .mb-c-grid{grid-template-columns:1fr;gap:46px;}
  .mb-c-office{grid-template-columns:repeat(2,1fr);}
  .mb-c-other-grid{grid-template-columns:repeat(2,1fr);}
  .mb-c-letcta-bar::before{background:linear-gradient(rgba(11,27,61,.72),rgba(11,27,61,.9));}
  .mb-c-letcta-txt,.mb-c-letcta-points{padding-left:0;}
}
@media(max-width:820px){
  .mb-c-letcta-top{flex-direction:column;align-items:flex-start;gap:18px;}
  .mb-c-letcta-div{display:none;}
  .mb-c-letcta .mb-btn{width:100%;justify-content:center;}
}
@media(max-width:600px){
  .mb-c-hero{padding:54px 0 44px;}
  .mb-c-methods{flex-direction:column;gap:18px;}
  .mb-c-form{grid-template-columns:1fr;}
  .mb-c-office{grid-template-columns:1fr;}
  .mb-c-other-grid{grid-template-columns:1fr;}
  .mb-c-map-card{transform:translate(-50%,-50%);left:50%;max-width:75%;}
  .mb-c-map-pin{left:50%;}
  .mb-c-submit{width:100%;justify-self:stretch;}
}
