.contact-page{background:#f7f9fc;color:#0a2342}.contact-page main{overflow:hidden}.contact-hero .ump-hero__visual img{object-position:center 54%}.contact-direct,.contact-office,.contact-services{padding:clamp(72px,8vw,120px) 0}.contact-direct{background:linear-gradient(180deg,#fff 0%,#f6f9fd 100%)}.contact-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:42px}.contact-card{position:relative;display:flex;min-height:230px;flex-direction:column;gap:10px;padding:28px;border:1px solid rgba(0,47,103,.12);border-radius:24px;background:#fff;color:#0a2342;text-decoration:none;box-shadow:0 18px 50px rgba(0,47,103,.07);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.contact-card:hover{transform:translateY(-5px);border-color:rgba(192,145,40,.48);box-shadow:0 24px 64px rgba(0,47,103,.12)}.contact-card__icon{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:#002f67;color:#fff;font-size:22px}.contact-card small{margin-top:8px;color:#b78925;font-size:.72rem;font-weight:800;letter-spacing:.14em}.contact-card strong{font-size:clamp(1rem,1.3vw,1.24rem);line-height:1.35;overflow-wrap:anywhere}.contact-card p{margin:auto 0 0;color:#617085;line-height:1.65;font-size:.94rem}.contact-enquiry__quick{display:grid;gap:10px;margin-top:28px}.contact-enquiry__quick a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid rgba(255,255,255,.18);border-radius:14px;color:inherit;text-decoration:none}.contact-enquiry__quick a span{opacity:.72}.contact-enquiry__quick a strong{font-size:.94rem}.contact-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-consent{display:flex;align-items:flex-start;gap:11px;margin:20px 0 4px;color:#516178;font-size:.88rem;line-height:1.55}.contact-consent input{width:18px;height:18px;margin-top:2px;accent-color:#002f67}.contact-office{background:#001f46;color:#fff}.contact-office__grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:42px;align-items:stretch}.contact-office__copy{padding:clamp(8px,2vw,20px) 0}.contact-office__copy h2{max-width:650px;margin:12px 0 18px;color:#fff;font-size:clamp(2rem,4vw,4.2rem);line-height:1.03;letter-spacing:-.045em}.contact-office__copy>p{max-width:650px;color:rgba(255,255,255,.74);font-size:1.02rem;line-height:1.75}.contact-office .ump-kicker{color:#e1b956}.contact-office__details{display:grid;gap:0;margin:34px 0 28px;border-top:1px solid rgba(255,255,255,.13)}.contact-office__details div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.13)}.contact-office__details dt{color:#e1b956;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.contact-office__details dd{margin:0;color:#fff;line-height:1.5}.contact-office__details a{color:#fff;text-decoration:none}.contact-map{min-height:560px;border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 25px 70px rgba(0,0,0,.22)}.contact-map iframe{display:block;width:100%;height:100%;min-height:560px;border:0}.contact-services{background:#fff}.contact-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:42px}.contact-service-grid a{display:grid;grid-template-columns:auto 1fr;column-gap:16px;row-gap:5px;align-items:start;padding:24px;border:1px solid rgba(0,47,103,.12);border-radius:20px;background:#fbfcfe;color:#0a2342;text-decoration:none;transition:transform .2s ease,border-color .2s ease}.contact-service-grid a:hover{transform:translateY(-4px);border-color:rgba(192,145,40,.5)}.contact-service-grid span{grid-row:1/3;color:#b78925;font-size:.72rem;font-weight:800;letter-spacing:.12em}.contact-service-grid strong{font-size:1.08rem}.contact-service-grid p{margin:0;color:#68778b;font-size:.92rem;line-height:1.55}@media(max-width:1080px){.contact-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-office__grid{grid-template-columns:1fr}.contact-map,.contact-map iframe{min-height:460px}}@media(max-width:760px){.contact-direct,.contact-office,.contact-services{padding:64px 0}.contact-card-grid,.contact-service-grid{grid-template-columns:1fr}.contact-card{min-height:190px}.contact-office__details div{grid-template-columns:1fr;gap:6px}.contact-map,.contact-map iframe{min-height:380px}.contact-enquiry__quick a{align-items:flex-start;flex-direction:column;gap:4px}}
