
.rv-contact-studio{background:#000;color:#fff;overflow:hidden;padding:28px 24px 80px;scroll-margin-top:92px;}
.rv-contact-inner{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start;}
.rv-contact-eyebrow{font:12px/1.5 var(--rv-font);letter-spacing:1px;color:#a7aab6;margin:0 0 22px;}
.rv-contact-details h2{font:400 clamp(32px,4vw,54px)/1.18 var(--rv-font);margin:0 0 62px;color:#fff;letter-spacing:-1px;}
.rv-contact-details h2 span{color:#fff;}
.rv-contact-cards{display:grid;gap:16px;max-width:450px;}
.rv-contact-card{display:flex;align-items:center;gap:16px;background:rgba(18,18,27,.90);padding:24px;border-radius:7px;transition:transform .25s ease,background .25s ease;}
.rv-contact-card:hover{transform:translateY(-3px);background:#191923;}
.rv-contact-card img{width:48px;height:48px;object-fit:contain;flex:none;background:#393f49;border-radius:50%;padding:12px;box-sizing:border-box;}
.rv-contact-card h3{font:400 16px/1.4 var(--rv-font);color:#f2f3f5;margin:0 0 5px;}
.rv-contact-card p,.rv-contact-card a{font:14px/1.65 var(--rv-font);color:#aeb0bc;margin:0;overflow-wrap:anywhere;}
.rv-contact-card a{display:block;text-decoration:none;}.rv-contact-card a:hover,.rv-contact-card a:focus-visible{color:#fff;text-decoration:underline;}
.rv-contact-card .rv-contact-whatsapp{margin-top:3px;color:#c8d7ea;font-size:12px;}
.rv-contact-form-panel{padding:32px;background:rgba(18,18,27,.92);border-radius:12px;}
.rv-form-title{font:400 18px/1.4 var(--rv-font);color:#fff;margin:0 0 24px;}
.rv-contact-form-panel .form-group{margin:0 0 22px;}
.rv-contact-form-panel .control-label{display:block;float:none;width:100%;padding:0;margin:0 0 9px;text-align:left;font:14px/1.5 var(--rv-font);color:#d6d7de;}
.rv-contact-form-panel .col-sm-6,.rv-contact-form-panel .col-sm-10{float:none;width:100%;padding:0;margin:0;}
.rv-contact-form-panel .form-control{width:100%;background:#12121b;color:#fff;border:1px solid #30303d;border-radius:4px;box-shadow:none;min-height:48px;font:15px/1.5 var(--rv-font);}
.rv-contact-form-panel textarea.form-control{height:158px;resize:vertical;padding:12px;}
.rv-contact-form-panel .form-control:focus{border-color:#87b5e4;outline:2px solid #87b5e4;outline-offset:2px;}
.rv-contact-form-panel .col-sm-2{padding:0;float:left;width:calc(100% - 100px);}
.rv-contact-form-panel .col-sm-1{padding:7px 0 0 14px;float:left;width:100px;}
.rv-contact-form-panel .col-sm-offset-3{margin-left:0;}
.rv-contact-form-panel .form-group::after{content:'';display:block;clear:both;}
.rv-contact-form-panel .page-btn{border:0;border-radius:8px;background:#f6f7f9;color:#12121b;padding:13px 24px;font:600 14px/1.4 var(--rv-font);min-height:46px;transition:transform .2s,background .2s;}
.rv-contact-form-panel .page-btn:hover{background:#cfdff0;transform:translateY(-2px);}
.rv-contact-form-panel :focus-visible{outline:2px solid #87b5e4;outline-offset:3px;}
.rv-contact-page~.footer{margin-top:0!important;}
.rv-reveal-ready [data-rv-reveal]{opacity:0;transform:translateY(36px);transition:opacity .65s ease,transform .65s ease;}
.rv-reveal-ready [data-rv-reveal].is-visible{opacity:1;transform:none;}
.rv-reveal-ready .rv-contact-form-panel{transition-delay:.12s;}
@media(max-width:991px){.rv-contact-studio{padding:52px 24px 65px}.rv-contact-inner{gap:36px}.rv-contact-details h2{font-size:34px;margin-bottom:36px}.rv-contact-form-panel{padding:24px}.rv-contact-card{padding:18px;gap:12px}.rv-contact-card img{width:40px;height:40px}.rv-contact-card a{font-size:13px}}
@media(max-width:767px){.rv-contact-inner{grid-template-columns:1fr;gap:34px}.rv-contact-details h2{font-size:36px;line-height:1.22}.rv-contact-cards{max-width:none}.rv-contact-studio{padding:44px 20px 56px}.rv-contact-form-panel{padding:22px}.rv-contact-details h2 span{font-size:30px;}.rv-contact-eyebrow{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.rv-reveal-ready [data-rv-reveal]{opacity:1;transform:none;transition:none}.rv-contact-card,.rv-contact-form-panel .page-btn{transition:none;transform:none!important}}

/* One shared backdrop links the contact section with its footer. */
body.rv-contact-scene,body:has(.rv-contact-page){background:#000;isolation:isolate;}
.rv-contact-backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;}
.rv-contact-backdrop img{width:100%;height:100%;object-fit:cover;object-position:center bottom;opacity:.78;animation:rv-contact-scene-drift 12s ease-in-out infinite alternate;}
body.rv-contact-scene .rv-contact-studio,body:has(.rv-contact-page) .rv-contact-studio{background:transparent;}
body.rv-contact-scene .footer.rv-footer-glow,body:has(.rv-contact-page) .footer.rv-footer-glow{background:transparent;}
body.rv-contact-scene .rv-footer-glow-image,body:has(.rv-contact-page) .rv-footer-glow-image{display:none;}
.rv-contact-heading-line{display:block;overflow:hidden;line-height:1.2;}
.rv-contact-heading-line>span{display:block;}
.rv-contact-form-panel{border:1px solid rgba(255,255,255,.065);box-shadow:0 10px 34px rgba(0,0,0,.12);}
.rv-contact-card{border:1px solid rgba(255,255,255,.045);}
.rv-reveal-ready [data-rv-reveal]{opacity:1;transform:none;}
@keyframes rv-contact-scene-drift{from{transform:scale(1.1) translateX(-3%)}to{transform:scale(1.18) translateX(3%)}}
@media(max-width:767px){.rv-contact-heading-line:first-child,.rv-contact-heading-line:first-child>span{font-size:inherit;}.rv-contact-backdrop img{object-position:65% bottom;opacity:.68;}}
@media(prefers-reduced-motion:reduce){.rv-contact-backdrop img{animation:none;}}

/* Match card/form columns and shared footer edges. */
.rv-contact-studio{padding:64px 24px 54px;}
.rv-contact-inner{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:80px;align-items:stretch;}
.rv-contact-details{display:flex;flex-direction:column;min-width:0;}
.rv-contact-details h2{margin-bottom:38px;}
.rv-contact-cards{max-width:none;flex:1;grid-template-rows:repeat(3,minmax(0,1fr));}
.rv-contact-card-slot{display:flex;}
.rv-contact-card{width:100%;min-height:106px;box-sizing:border-box;}
.rv-contact-form-slot{display:flex;min-width:0;}
.rv-contact-form-panel{width:100%;box-sizing:border-box;}
.rv-home-contact{position:relative;margin-top:100px;}
.rv-home-contact .rv-contact-studio{padding-top:70px;}
@media(max-width:991px){.rv-contact-inner{gap:40px;}.rv-contact-card{padding:20px;}.rv-contact-details h2{font-size:32px;}}
@media(max-width:767px){.rv-contact-inner{grid-template-columns:1fr;gap:32px;}.rv-contact-studio{padding:44px 20px 36px;}.rv-contact-cards{grid-template-rows:none;}.rv-contact-details h2{margin-bottom:30px;font-size:34px;}.rv-home-contact{margin-top:60px;}.rv-home-contact .rv-contact-studio{padding-top:44px;}}
