.contact-main{padding:25px 0 75px;background:#fff}
.contact-heading{display:grid;grid-template-columns:1.35fr .65fr;align-items:end;gap:60px;margin-bottom:55px}
.contact-heading h2{max-width:850px;margin:0;font:400 clamp(42px,4.4vw,66px)/1.03 var(--heading);letter-spacing:-1.7px}
.contact-heading h2 span{color:var(--brand-accent)}
.contact-heading p{max-width:440px;margin:0;color:#68676b;font-size:16px;line-height:1.75}
.contact-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:28px}
.contact-visual{position:relative;min-height:660px;overflow:hidden;border-radius:25px;isolation:isolate;color:#fff}
.contact-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.22,1,.36,1),filter .6s ease}
.contact-visual-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,20,20,.05),rgba(20,20,20,.18) 45%,rgba(20,20,20,.85))}
.contact-visual-copy{position:absolute;z-index:1;left:38px;right:38px;bottom:38px}
.contact-visual-copy h3{max-width:490px;margin:0 0 15px;font:400 clamp(30px,3vw,48px)/1.06 var(--heading);letter-spacing:-1px}
.contact-visual-copy p{max-width:420px;margin:0 0 26px;color:#ffffffc9;font-size:15px;line-height:1.6}
.contact-visual-copy a,.contact-form-action button{display:inline-flex;align-items:center;gap:14px;min-height:50px;padding:0 22px;border:0;border-radius:999px;background:#fff;color:#202024;font-weight:700;text-decoration:none;cursor:pointer;transition:background .3s,color .3s,transform .3s}
.contact-visual-copy a:hover,.contact-form-action button:hover{transform:translateY(-2px);background:var(--brand-accent);color:#fff}
.contact-visual:hover>img{transform:scale(1.04);filter:saturate(1.08)}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:42px;border-radius:25px;background:#f6f6f7}
.contact-field{display:flex;flex-direction:column;gap:9px}
.contact-field--full{grid-column:1/-1}
.contact-field label{font-size:13px;font-weight:700}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:1px solid transparent;border-radius:12px;outline:0;background:#fff;color:#29282b;font:400 15px/1.4 var(--body);transition:border-color .3s,box-shadow .3s}
.contact-field input,.contact-field select{height:55px;padding:0 17px}
.contact-field textarea{min-height:165px;padding:16px 17px;resize:vertical}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--brand-accent);box-shadow:0 0 0 3px rgba(237,30,36,.13)}
.contact-form-action{grid-column:1/-1;display:flex;align-items:center;gap:20px;margin-top:2px}
.contact-form-action button{background:#202024;color:#fff}
.contact-form-status{margin:0;color:#5c5b60;font-size:14px}
.contact-details{padding:55px 0 25px;background:#fff}
.contact-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.contact-detail-card{display:flex;align-items:center;gap:20px;min-width:0;min-height:145px;padding:28px;border:1px solid #e2e2e4;border-radius:20px;color:#242327;text-decoration:none;transition:transform .35s,box-shadow .35s,border-color .35s}
.contact-detail-card>span:last-child{min-width:0}
.contact-detail-card:hover{transform:translateY(-5px);border-color:#c81920;box-shadow:0 18px 40px rgba(25,24,22,.09)}
.contact-detail-icon{display:grid;flex:0 0 56px;width:56px;height:56px;place-items:center;border-radius:50%;background:#f0f0f1;color:var(--brand-accent)}
.contact-detail-icon i{font-size:22px}
.contact-detail-card small,.contact-detail-card strong{display:block}
.contact-detail-card small{margin-bottom:8px;color:#7a797d;font-size:12px;text-transform:uppercase;letter-spacing:.8px}
.contact-detail-card strong{font:500 clamp(18px,1.45vw,23px)/1.25 var(--heading);overflow-wrap:anywhere}
.contact-socials{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:center;gap:28px;margin-top:24px;padding:28px 32px;border:1px solid #e5e4e6;border-radius:20px;background:#f2f2f3;color:#252428}
.contact-socials-heading{display:grid;gap:3px}
.contact-socials-heading span{color:#77767b;font-size:11px;letter-spacing:.16em}
.contact-socials-heading strong{font:400 25px/1.1 var(--heading)}
.contact-socials-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.contact-socials-links a{display:flex;align-items:center;gap:10px;min-height:62px;padding:8px 12px;border:1px solid #e0dfe2;border-radius:12px;background:#fff;color:#29282b;font-size:13px;white-space:nowrap;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.contact-socials-links a:hover{background:#fff;border-color:var(--brand-red);box-shadow:0 8px 20px #2524280d;transform:translateY(-2px)}
.contact-socials-icon{display:grid;flex:none;place-items:center;width:34px;height:34px;border-radius:50%;background:#f0f0f1;color:var(--brand-red);font-size:15px;transition:background .2s,color .2s}
.contact-socials-links a:hover .contact-socials-icon{background:var(--brand-red);color:#fff}
.contact-socials-arrow{margin-left:auto;color:#77767b;font-size:11px}
.contact-map{overflow:hidden;background:#d7d7d7}
.contact-map iframe{display:block;width:100%;height:560px;border:0;filter:none;opacity:1}
@media(max-width:1100px){.contact-socials{grid-template-columns:1fr;gap:18px}.contact-socials-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991px){.contact-heading{grid-template-columns:1fr;gap:24px}.contact-layout{grid-template-columns:1fr}.contact-visual{min-height:540px}.contact-details-grid{grid-template-columns:1fr}.contact-map iframe{height:480px}}
@media(max-width:600px){.contact-main{padding:20px 0 55px}.contact-heading{margin-bottom:38px}.contact-heading h2{font-size:39px}.contact-form{grid-template-columns:1fr;padding:25px}.contact-field{grid-column:1}.contact-visual{min-height:490px}.contact-visual-copy{left:24px;right:24px;bottom:24px}.contact-details{padding:40px 0 20px}.contact-detail-card{min-height:125px;padding:22px}.contact-socials{margin-top:18px;padding:25px 20px}.contact-socials-heading strong{font-size:23px}.contact-socials-links a{min-height:54px;padding:7px;font-size:11px}.contact-socials-icon{width:27px;height:27px;font-size:13px}.contact-socials-arrow{font-size:9px}.contact-map iframe{height:400px}}
@media(max-width:360px){.contact-detail-card{gap:14px;padding:16px}.contact-detail-icon{flex-basis:48px;width:48px;height:48px}.contact-detail-card strong{font-size:16px}}
