/* Contact page — Figma 140:102. */
.ms-contact-hero { position: relative; isolation: isolate; display: grid; min-height: clamp(310px, 24.4792vw, 470px); overflow: hidden; background: #080808; color: #fff; }
.ms-contact-hero__image { position: absolute; inset: 0 0 0 auto; z-index: -3; width: min(48vw, 678px); height: 100%; object-fit: cover; object-position: center; }
.ms-contact-hero__shade { position: absolute; inset: 0; z-index: -2; background: radial-gradient(circle at 70% 45%, rgba(255,255,255,.12), transparent 22%), linear-gradient(90deg, #050505 0%, #050505 54%, rgba(5,5,5,.84) 72%, rgba(5,5,5,.35) 100%); }
.ms-contact-hero__inner { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; min-height: inherit; padding-top: clamp(28px, 1.875vw, 36px); }
.ms-contact-hero h1 { margin: 0 0 12px; color: #fff; font-size: clamp(42px, 3.0208vw, 58px); font-weight: 700; line-height: 1.2931; text-transform: capitalize; }
.ms-contact-hero__crumbs { display: flex; align-items: center; gap: 10px; color: rgb(255 255 255 / 50%); font-size: 14px; font-weight: 400; line-height: 1; text-transform: capitalize; }
.ms-contact-hero__crumbs a { color: inherit; text-decoration: none; transition: color .2s ease; }
.ms-contact-hero__crumbs a:hover, .ms-contact-hero__crumbs a:focus-visible { color: #fff; }
.ms-contact-hero__crumbs span:last-child { color: #fff; }

.ms-contact-form-section { padding: clamp(80px, 5.625vw, 108px) 0 clamp(84px, 7.8125vw, 150px); background: #fff; color: #000; }
.ms-contact-form-section__grid { display: grid; grid-template-columns: minmax(280px, 439px) minmax(520px, 738px); justify-content: space-between; align-items: start; gap: clamp(48px, 6.25vw, 120px); }
.ms-contact-form-section__details h2 { max-width: 439px; margin: 0 0 24px; color: #000; font-size: clamp(44px, 3.8542vw, 74px); font-weight: 700; line-height: 1.1486; text-transform: capitalize; }
.ms-contact-form-section__line { display: inline-block; clear: both; margin: 0 0 24px; color: #000; font-size: 20px; font-weight: 600; line-height: 1.5; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.ms-contact-form-section__line + .ms-contact-form-section__line { display: block; width: max-content; }
.ms-contact-form-section__details address { max-width: 270px; margin: 0; color: #000; font-size: 20px; font-style: normal; font-weight: 600; line-height: 1.2; text-transform: lowercase; }
.ms-contact-form-section__intro { max-width: 418px; margin: 15px 0 clamp(48px, 3.5417vw, 68px); color: #272727; font-size: clamp(18px, 1.25vw, 24px); font-weight: 500; line-height: 1.25; }
.ms-contact-form-section__form .wpcf7-form { display: grid; grid-template-columns: repeat(2, minmax(0, 320px)); column-gap: clamp(44px, 4.7917vw, 92px); row-gap: 35px; align-items: end; }
.ms-contact-form-section__form .wpcf7-form > p { display: contents; margin: 0; }
.ms-contact-form-section__form .wpcf7-form br { display: none; }
.ms-contact-form-section__form .ms-cf7-field { display: block; margin: 0; color: #464646; font-size: 16px; font-weight: 600; line-height: 1.875; }
.ms-contact-form-section__form .ms-cf7-field--message { grid-column: 1 / 2; }
.ms-contact-form-section__form .wpcf7-form-control-wrap { display: block; margin-top: 9px; }
.ms-contact-form-section__form input[type='text'], .ms-contact-form-section__form input[type='email'], .ms-contact-form-section__form input[type='tel'], .ms-contact-form-section__form textarea { display: block; width: 100%; height: 31px; padding: 0; border: 0; border-bottom: 1px solid #5f5f5f; border-radius: 0; outline: none; background: transparent; color: #000; font: 500 16px/1.5 'Montserrat', sans-serif; box-shadow: none; transition: border-color .2s ease; }
.ms-contact-form-section__form textarea { min-height: 31px; max-height: 96px; resize: vertical; }
.ms-contact-form-section__form input:focus, .ms-contact-form-section__form textarea:focus { border-bottom-color: #4632e1; }
.ms-contact-form-section__form .ms-cf7-submit { grid-column: 1 / -1; display: inline-flex; width: max-content; max-width: max-content; align-items: flex-start; justify-content: flex-start; margin: 8px 0 0; gap: 0; }
.ms-contact-form-section__form .ms-cf7-submit p { display: inline-flex; width: max-content; margin: 0; gap: 0; align-items: flex-start; }
.ms-contact-form-section__form .ms-cf7-submit input[type='submit'] { display: inline-flex; align-items: center; justify-content: center; width: auto; min-width: 204px; height: 62px; margin: 0 !important; padding: 0 44px; border: 0; border-radius: 31px; background: #4632e1; color: #fff; cursor: pointer; font: 600 20px/1 'Montserrat', sans-serif; box-shadow: none; transform: none; transition: background-color .25s ease, color .25s ease; }
.ms-contact-form-section__form .ms-cf7-submit::after { display: inline-flex; width: 62px; height: 62px; flex: 0 0 62px; align-items: center; justify-content: center; margin: 0; border-radius: 50%; background: #4632e1 url('../figma-source/contact-submit-arrow.svg') center / 17px 16px no-repeat; content: ''; transition: background-color .25s ease; }
.ms-contact-form-section__form .ms-cf7-submit:hover input[type='submit'], .ms-contact-form-section__form .ms-cf7-submit:focus-within input[type='submit'], .ms-contact-form-section__form .ms-cf7-submit:hover::after, .ms-contact-form-section__form .ms-cf7-submit:focus-within::after { background-color: #0f0f0f; }
.ms-contact-form-section__form .ms-cf7-submit .wpcf7-spinner { margin: 19px 0 0 12px; }
.ms-contact-form-section__form .wpcf7-not-valid-tip { margin-top: 8px; font-size: 13px; font-weight: 500; }
.ms-contact-form-section__form .wpcf7-response-output { grid-column: 1 / -1; margin: 0; padding: 12px 16px; border-radius: 12px; font-size: 14px; }

.ms-contact-map { position: relative; height: clamp(420px, 37.6563vw, 723px); overflow: hidden; background: #e7e7e7; }
.ms-contact-map iframe { display: block; width: 100%; height: 100%; border: 0; filter: grayscale(1) contrast(.92) brightness(1.05); }

@media (max-width: 1100px) {
	.ms-contact-form-section__grid { grid-template-columns: 1fr; gap: 44px; }
	.ms-contact-form-section__details h2 { max-width: 620px; }
	.ms-contact-form-section__form-wrap { max-width: 738px; }
	.ms-contact-form-section__intro { margin-top: 0; }
}
@media (max-width: 760px) {
	.ms-contact-hero__image { width: 100%; opacity: .45; }
	.ms-contact-hero__shade { background: linear-gradient(90deg, rgba(5,5,5,.96), rgba(5,5,5,.72)); }
	.ms-contact-form-section { padding: 64px 0 76px; }
	.ms-contact-form-section__form .wpcf7-form { grid-template-columns: 1fr; row-gap: 26px; }
	.ms-contact-form-section__form .ms-cf7-field--message { grid-column: auto; }
	.ms-contact-form-section__form .ms-cf7-submit { grid-column: auto; }
	.ms-contact-form-section__details h2 { font-size: 42px; }
	.ms-contact-form-section__intro { font-size: 18px; }
	.ms-contact-map { height: 420px; }
}
/* One submit control owns both the label and arrow; CF7's spinner stays outside its layout. */
.ms-contact-form-section__form .ms-cf7-submit { position:relative; }
.ms-contact-form-section__form .ms-cf7-submit::after { content:none; }
.ms-contact-form-section__form .ms-cf7-submit button { display:inline-flex; gap:0; align-items:center; padding:0; margin:0; border:0; background:transparent; color:#fff; cursor:pointer; box-shadow:none; transform:none; font:600 20px/1 'Montserrat',sans-serif; }
.ms-contact-submit__label { display:grid; place-items:center; min-width:204px; height:62px; padding:0 32px; border-radius:999px; background:#4632e1; }
.ms-contact-submit__arrow { display:grid; place-items:center; width:62px; height:62px; border-radius:50%; background:#4632e1; }
.ms-contact-submit__arrow svg { display:block; width:24px; height:23px; }
.ms-contact-submit__label,.ms-contact-submit__arrow { transition:color .25s ease,background-color .25s ease; }
.ms-contact-form-section__form .ms-cf7-submit button:hover,.ms-contact-form-section__form .ms-cf7-submit button:focus-visible { background:transparent; color:#4632e1; box-shadow:none; transform:none; }
.ms-contact-form-section__form .ms-cf7-submit button:hover span,.ms-contact-form-section__form .ms-cf7-submit button:focus-visible span { background:#fff; }
.ms-contact-form-section__form .ms-cf7-submit button:focus-visible { outline:2px solid #4632e1; outline-offset:4px; border-radius:32px; }
.ms-contact-form-section__form .ms-cf7-submit .wpcf7-spinner { position:absolute; top:100%; left:0; margin:8px 0 0; }
