/* Start custom CSS for html, class: .elementor-element-5799a1a */.contact-hero{

height:95vh;
background:url("YOUR-HERO-IMAGE") center/cover;
position:relative;
display:flex;
align-items:center;
justify-content:center;
text-align:center;

}

.contact-hero .overlay{

position:absolute;
inset:0;
background:rgba(0,0,0,.58);

}

.hero-content{

position:relative;
z-index:2;
max-width:850px;
color:#fff;

}

.subtitle{

color:#c79a5c;
letter-spacing:4px;
font-size:13px;
text-transform:uppercase;

}

.hero-content h1{

font-size:70px;
margin:20px 0;
font-weight:700;

}

.hero-content span{

color:#7B0F2B;

}

.hero-content p{

font-size:20px;
line-height:1.8;
opacity:.9;

}

.hero-buttons{

margin-top:45px;
display:flex;
gap:20px;
justify-content:center;
flex-wrap:wrap;

}

.btn-primary{

background:#7B0F2B;
padding:18px 42px;
color:#fff;
text-decoration:none;
border-radius:40px;
transition:.4s;

}

.btn-primary:hover{

background:#fff;
color:#7B0F2B;

}

.btn-outline{

border:1px solid #fff;
padding:18px 42px;
border-radius:40px;
color:#fff;
text-decoration:none;

}

.btn-outline:hover{

background:#fff;
color:#111;

}

@media(max-width:768px){

.hero-content h1{

font-size:45px;

}

.hero-content p{

font-size:17px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0bbdaee *//*============================
CONTACT INFO
=============================*/

.cl-contact-info{

padding:110px 8%;
background:#0b0b0b;

}

.section-heading{

text-align:center;
max-width:750px;
margin:auto auto 70px;

}

.section-heading span{

color:#8c1534;
letter-spacing:3px;
font-size:13px;
font-weight:600;

}

.section-heading h2{

color:#fff;
font-size:48px;
margin:18px 0;

}

.section-heading p{

color:#c8c8c8;
line-height:1.9;
font-size:17px;

}

.contact-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:30px;

}

.contact-card{

background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.08);
backdrop-filter:blur(12px);
padding:45px 35px;
border-radius:20px;
text-align:center;
transition:.4s;
position:relative;
overflow:hidden;

}

.contact-card::before{

content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:4px;
background:#8c1534;
transform:scaleX(0);
transition:.4s;

}

.contact-card:hover::before{

transform:scaleX(1);

}

.contact-card:hover{

transform:translateY(-10px);
border-color:#8c1534;
box-shadow:0 20px 45px rgba(140,21,52,.25);

}

.contact-card .icon{

width:85px;
height:85px;
margin:auto;
border-radius:50%;
background:#8c1534;
display:flex;
align-items:center;
justify-content:center;
font-size:30px;
color:#fff;
margin-bottom:25px;

}

.contact-card h3{

color:#fff;
font-size:25px;
margin-bottom:15px;

}

.contact-card p{

color:#bdbdbd;
line-height:1.8;
margin-bottom:20px;

}

.contact-card a{

display:block;
text-decoration:none;
color:#ffffff;
font-weight:600;
font-size:17px;
transition:.3s;

}

.contact-card span{

display:block;
color:#ffffff;
font-weight:600;
font-size:17px;

}

.contact-card a:hover{

color:#c79a5c;

}

@media(max-width:768px){

.section-heading h2{

font-size:34px;

}

.cl-contact-info{

padding:80px 6%;

}

.contact-card{

padding:35px 25px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-997816b *//*==========================
CONTACT FORM
==========================*/

.cl-contact-form{

padding:120px 8%;
background:#ffffff;

}

.contact-wrapper{

display:grid;
grid-template-columns:1.2fr 1fr;
border-radius:28px;
overflow:hidden;
box-shadow:0 30px 80px rgba(0,0,0,.08);

}

.form-box{

padding:70px;
background:#fff;

}

.section-tag{

color:#7B0F2B;
font-weight:700;
letter-spacing:3px;
font-size:13px;

}

.form-box h2{

font-size:46px;
margin:18px 0;
color:#111;

}

.form-description{

color:#666;
line-height:1.9;
margin-bottom:40px;

}

.input-grid{

display:grid;
grid-template-columns:repeat(2,1fr);
gap:25px;
margin-bottom:25px;

}

.input-group{

position:relative;

}

.input-group input,
.input-group textarea,
.input-group select{

width:100%;
padding:18px 18px;
border:1px solid #ddd;
border-radius:12px;
font-size:15px;
outline:none;
background:#fff;
transition:.35s;

}

.input-group textarea{

resize:none;

}

.input-group input:focus,
.input-group textarea:focus,
.input-group select:focus{

border-color:#7B0F2B;

}

.input-group label{

position:absolute;
left:18px;
top:18px;
background:#fff;
padding:0 6px;
color:#888;
transition:.3s;
pointer-events:none;

}

.input-group input:focus+label,
.input-group input:valid+label,
.input-group textarea:focus+label,
.input-group textarea:valid+label{

top:-10px;
font-size:12px;
color:#7B0F2B;

}

.submit-btn{

margin-top:20px;
background:#7B0F2B;
color:#fff;
padding:18px 45px;
border:none;
border-radius:50px;
font-size:16px;
cursor:pointer;
transition:.35s;

}

.submit-btn:hover{

background:#111;
transform:translateY(-3px);

}

.submit-btn i{

margin-left:10px;

}

/* Right Side */

.contact-side{

position:relative;
background:url("YOUR-IMAGE.jpg") center/cover;
min-height:760px;
display:flex;
align-items:center;

}

.side-overlay{

position:absolute;
inset:0;
background:rgba(10,10,10,.70);

}

.side-content{

position:relative;
z-index:2;
padding:60px;
color:#fff;

}

.side-content span{

letter-spacing:3px;
font-size:13px;
color:#D9B06F;

}

.side-content h2{

font-size:42px;
margin:20px 0;

}

.side-content p{

line-height:1.9;
opacity:.9;
margin-bottom:40px;

}

.feature-item{

display:flex;
align-items:flex-start;
gap:18px;
margin-bottom:30px;

}

.feature-item i{

width:45px;
height:45px;
background:#7B0F2B;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:18px;

}

.feature-item h4{

margin-bottom:6px;
font-size:20px;

}

.feature-item p{

margin:0;
opacity:.85;

}

@media(max-width:991px){

.contact-wrapper{

grid-template-columns:1fr;

}

.contact-side{

min-height:550px;

}

}

@media(max-width:768px){

.form-box{

padding:40px 25px;

}

.input-grid{

grid-template-columns:1fr;

}

.form-box h2{

font-size:34px;

}

.side-content{

padding:40px 25px;

}

.side-content h2{

font-size:30px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-95cdb93 *//*===================================
CONTACT PROCESS
===================================*/

.contact-process{

padding:120px 8%;
background:#111;

}

.contact-process .section-header{

text-align:center;
max-width:760px;
margin:0 auto 80px;

}

.contact-process .section-subtitle{

color:#C8A96A;
font-size:13px;
letter-spacing:3px;
font-weight:600;

}

.contact-process h2{

color:#fff;
font-size:48px;
margin:18px 0;

}

.contact-process p{

color:#cfcfcf;
line-height:1.9;

}

.process-timeline{

position:relative;
max-width:1000px;
margin:auto;

}

.process-timeline::before{

content:"";
position:absolute;
left:45px;
top:0;
width:3px;
height:100%;
background:#7B0F2B;

}

.process-step{

display:flex;
align-items:flex-start;
gap:35px;
margin-bottom:60px;
position:relative;

}

.step-number{

width:90px;
height:90px;
background:#7B0F2B;
color:#fff;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:28px;
font-weight:700;
flex-shrink:0;
border:6px solid #1a1a1a;
box-shadow:0 0 35px rgba(123,15,43,.35);

}

.step-content{

background:#1c1c1c;
padding:35px;
border-radius:20px;
flex:1;
transition:.35s;
border:1px solid rgba(255,255,255,.08);

}

.step-content:hover{

transform:translateY(-6px);
border-color:#7B0F2B;
box-shadow:0 18px 40px rgba(123,15,43,.25);

}

.step-content h3{

color:#fff;
font-size:28px;
margin-bottom:15px;

}

.step-content p{

color:#c9c9c9;
line-height:1.9;

}

@media(max-width:768px){

.contact-process{

padding:80px 6%;

}

.contact-process h2{

font-size:34px;

}

.process-timeline::before{

left:32px;

}

.step-number{

width:65px;
height:65px;
font-size:20px;

}

.step-content{

padding:25px;

}

.step-content h3{

font-size:22px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8115afd *//*=================================
FAQ SECTION
=================================*/

.cl-faq{

padding:120px 8%;
background:#ffffff;

}

.faq-heading{

text-align:center;
max-width:760px;
margin:auto auto 70px;

}

.faq-heading span{

color:#7B0F2B;
letter-spacing:3px;
font-size:13px;
font-weight:700;

}

.faq-heading h2{

font-size:48px;
margin:18px 0;
color:#111;

}

.faq-heading p{

color:#666;
line-height:1.9;

}

.faq-wrapper{

max-width:900px;
margin:auto;

}

.faq-item{

background:#fff;
border:1px solid #e9e9e9;
border-radius:18px;
margin-bottom:20px;
overflow:hidden;
transition:.35s;

}

.faq-item:hover{

border-color:#7B0F2B;
box-shadow:0 15px 40px rgba(123,15,43,.08);

}

.faq-question{

width:100%;
display:flex;
justify-content:space-between;
align-items:center;
padding:28px 30px;
background:none;
border:none;
cursor:pointer;
font-size:20px;
font-weight:600;
color:#111;

}

.faq-question i{

width:42px;
height:42px;
background:#7B0F2B;
color:#fff;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
transition:.35s;

}

.faq-answer{

max-height:0;
overflow:hidden;
transition:max-height .4s ease;

}

.faq-answer p{

padding:0 30px 30px;
color:#666;
line-height:1.9;

}

.faq-item.active .faq-answer{

max-height:250px;

}

.faq-item.active .faq-question i{

transform:rotate(45deg);

}

@media(max-width:768px){

.cl-faq{

padding:80px 6%;

}

.faq-heading h2{

font-size:34px;

}

.faq-question{

font-size:17px;
padding:22px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0945f56 *//*====================================
NEWSLETTER
=====================================*/

.cl-newsletter{

padding:120px 8%;
background:linear-gradient(135deg,#6D0F2B,#111);
position:relative;
overflow:hidden;

}

.newsletter-pattern{

position:absolute;
width:700px;
height:700px;
border-radius:50%;
background:rgba(255,255,255,.04);
top:-280px;
right:-220px;

}

.newsletter-content{

position:relative;
z-index:2;
max-width:820px;
margin:auto;
text-align:center;
color:#fff;

}

.newsletter-content span{

color:#D8B36A;
letter-spacing:3px;
font-size:13px;
font-weight:700;

}

.newsletter-content h2{

font-size:52px;
margin:20px 0;

}

.newsletter-content p{

font-size:18px;
line-height:1.9;
opacity:.9;
margin-bottom:45px;

}

.newsletter-form{

display:flex;
max-width:720px;
margin:auto;
background:#fff;
border-radius:60px;
overflow:hidden;

}

.newsletter-form input{

flex:1;
border:none;
padding:22px 28px;
font-size:16px;
outline:none;

}

.newsletter-form button{

background:#111;
color:#fff;
border:none;
padding:0 38px;
cursor:pointer;
font-size:16px;
font-weight:600;
transition:.35s;
display:flex;
align-items:center;
gap:12px;

}

.newsletter-form button:hover{

background:#6D0F2B;

}

.newsletter-features{

margin-top:40px;
display:flex;
justify-content:center;
gap:35px;
flex-wrap:wrap;

}

.feature{

display:flex;
align-items:center;
gap:10px;
font-weight:500;

}

.feature i{

width:36px;
height:36px;
border-radius:50%;
background:#fff;
color:#6D0F2B;
display:flex;
align-items:center;
justify-content:center;

}

@media(max-width:768px){

.cl-newsletter{

padding:80px 6%;

}

.newsletter-content h2{

font-size:36px;

}

.newsletter-form{

flex-direction:column;
border-radius:20px;

}

.newsletter-form input{

padding:18px;

}

.newsletter-form button{

padding:18px;
justify-content:center;

}

.newsletter-features{

flex-direction:column;
gap:20px;
align-items:center;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8c5d42a *//*==================================
LOCATION
==================================*/

.cl-location{

padding:120px 8%;
background:#ffffff;

}

.location-wrapper{

display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;

}

.location-content .section-tag{

color:#7B0F2B;
letter-spacing:3px;
font-size:13px;
font-weight:700;

}

.location-content h2{

font-size:48px;
margin:20px 0;
color:#111;

}

.location-content p{

color:#666;
line-height:1.9;
margin-bottom:35px;

}

.location-info{

display:flex;
flex-direction:column;
gap:25px;
margin-bottom:40px;

}

.info-box{

display:flex;
gap:20px;
align-items:flex-start;
padding:22px;
background:#fafafa;
border-radius:18px;
transition:.35s;
border:1px solid #eee;

}

.info-box:hover{

border-color:#7B0F2B;
transform:translateX(8px);

}

.info-box .icon{

width:60px;
height:60px;
border-radius:50%;
background:#7B0F2B;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-size:22px;
flex-shrink:0;

}

.info-box h4{

margin-bottom:8px;
font-size:20px;
color:#111;

}

.location-btn{

display:inline-flex;
align-items:center;
gap:12px;
padding:18px 36px;
background:#7B0F2B;
color:#fff;
text-decoration:none;
border-radius:50px;
font-weight:600;
transition:.35s;

}

.location-btn:hover{

background:#111;

}

.map-box{

height:650px;
overflow:hidden;
border-radius:24px;
box-shadow:0 25px 60px rgba(0,0,0,.12);

}

.map-box iframe{

width:100%;
height:100%;
border:none;

}

@media(max-width:991px){

.location-wrapper{

grid-template-columns:1fr;

}

.map-box{

height:500px;

}

}

@media(max-width:768px){

.cl-location{

padding:80px 6%;

}

.location-content h2{

font-size:34px;

}

.map-box{

height:400px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-088bd72 *//*======================================
FINAL CTA
======================================*/

.cl-final-cta{

position:relative;
padding:140px 8%;
background:url("images/final-cta-bg.jpg") center center/cover no-repeat;
overflow:hidden;

}

.cta-overlay{

position:absolute;
inset:0;
background:linear-gradient(
135deg,
rgba(10,10,10,.88),
rgba(109,15,43,.82)
);

}

.cta-content{

position:relative;
z-index:2;
max-width:900px;
margin:auto;
text-align:center;
color:#fff;

}

.cta-subtitle{

display:inline-block;
margin-bottom:20px;
letter-spacing:4px;
font-size:13px;
font-weight:700;
color:#D8B36A;

}

.cta-content h2{

font-size:62px;
line-height:1.2;
margin-bottom:25px;
font-weight:700;

}

.cta-content h2 span{

color:#D8B36A;

}

.cta-content p{

max-width:760px;
margin:0 auto 45px;
font-size:18px;
line-height:1.9;
color:rgba(255,255,255,.88);

}

.cta-buttons{

display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
margin-bottom:70px;

}

.btn-primary,
.btn-secondary{

display:inline-flex;
align-items:center;
gap:12px;
padding:18px 40px;
border-radius:50px;
text-decoration:none;
font-weight:600;
transition:.35s ease;

}

.btn-primary{

background:#7B0F2B;
color:#fff;

}

.btn-primary:hover{

background:#fff;
color:#111;
transform:translateY(-4px);

}

.btn-secondary{

border:2px solid rgba(255,255,255,.5);
color:#fff;
background:transparent;

}

.btn-secondary:hover{

background:#fff;
color:#111;
border-color:#fff;

}

.cta-stats{

display:flex;
justify-content:center;
gap:70px;
flex-wrap:wrap;

}

.stat-item{

text-align:center;

}

.stat-item h3{

font-size:42px;
margin-bottom:8px;
color:#D8B36A;

}

.stat-item p{

margin:0;
font-size:15px;
color:rgba(255,255,255,.8);

}

@media(max-width:768px){

.cl-final-cta{

padding:90px 6%;

}

.cta-content h2{

font-size:38px;

}

.cta-content p{

font-size:16px;

}

.cta-buttons{

flex-direction:column;
align-items:center;

}

.btn-primary,
.btn-secondary{

width:100%;
max-width:320px;
justify-content:center;

}

.cta-stats{

gap:35px;

}

.stat-item h3{

font-size:32px;

}

}/* End custom CSS */