@charset "utf-8";
/* CSS Document */
/*===========================================
  FONTS IMPORTS AND FONT PROPERTIES
===========================================*/
@import url("https://fonts.googleapis.com/css?family=Rouge+Script|Lato:400,300,100,700,900");

.rouge_script {
    font-family: 'Rouge Script', cursive;
}

.lato {
    font-family: 'Lato', sans-serif;
}

.fw100{ font-weight:100;}
.fw200{ font-weight:200;}
.fw300{ font-weight:300;}
.fw400{ font-weight:400;}
.fw500{ font-weight:500;}
.fw600{ font-weight:600;}
.fw700{ font-weight:700;}
.fw800{ font-weight:800;}
.fw900{ font-weight:900;}

/*===========================================
  DISPLAY AND POSITION PROPERTIES
===========================================*/
.auto{margin:auto;}
.db{display:block}
.dib{display:inline-block}
.inline{display:inline}
.dn{display:none}
.abs{position:absolute}
.rel{position:relative}
.hand{cursor:pointer}
.z99{z-index:99}
.o-hid{overflow:hidden}
.o-auto{overflow:auto}
.o-y{overflow-y:auto;overflow-x:hidden}
.fix{position:fixed;}

/*===========================================
  ALIGNMENT STYLES
===========================================*/
.al{text-align:left}
.ar{text-align:right}
.ac{text-align:center}
.aj{text-align:justify}
.vat{vertical-align:top}
.vam{vertical-align:middle}
.vab{vertical-align:bottom}
.fl{display:inline;float:left}
.fr{display:inline;float:right}
p.cb{content:'.';display:block;font-size:0;height:0;line-height:0;margin:0;padding:0}
.cb{clear:both; line-height:0; height:0;}
.cl{clear:left}
.cr{clear:right}

/*===========================================
  FONT SIZE PROPERTIES
===========================================*/
.fs10{font-size:10px}
.fs11{font-size:11px}
.fs12{font-size:12px}
.fs13{font-size:13px}
.fs14{font-size:14px}
.fs15{font-size:15px}
.fs16{font-size:16px}
.fs17{font-size:17px}
.fs18{font-size:18px}
.fs19{font-size:19px}
.fs20{font-size:20px}
.fs21{font-size:21px}
.fs22{font-size:22px}
.fs23{font-size:23px}
.fs24{font-size:24px}
.fs25{font-size:25px}
.fs26{font-size:26px}
.fs27{font-size:27px}
.fs28{font-size:28px}
.fs29{font-size:29px}
.fs30{font-size:30px}
.fs31{font-size:31px}
.fs32{font-size:32px}
.fs33{font-size:33px}
.fs34{font-size:34px}
.fs35{font-size:35px}
.fs36{font-size:36px}
.fs37{font-size:37px}
.fs38{font-size:38px}
.fs39{font-size:39px}
.fs40{font-size:40px}
.fs41{font-size:41px}
.fs42{font-size:42px}
.fs43{font-size:43px}
.fs44{font-size:44px}
.fs45{font-size:45px}
.fs46{font-size:46px}
.fs47{font-size:47px}
.fs48{font-size:48px}
.fs49{font-size:49px}
.fs50{font-size:50px}
.fs51{font-size:51px;}

/*===========================================
  TEXT STYLE PROPERTIES
===========================================*/
.b{font-weight:700}
.i{font-style:italic}
.u{text-decoration:underline}
.n{font-style:normal;font-weight:400;text-decoration:none;text-transform:none}
.bcs{border-collapse:separate}
.nw{white-space:nowrap}
.ttc{text-transform:capitalize}
.ttl{text-transform:lowercase}
.ttu{text-transform:uppercase}
.fvsc{font-variant:small-caps}
.lt{text-decoration:line-through;}
.tal{ text-align:left;}
.tar{ text-align:right;}

/*===========================================
  LINE HEIGHT PROPERTIES
===========================================*/
.lht-10{line-height:10px;}
.lht-12{line-height:12px;}
.lht-13{line-height:13px;}
.lht-14{line-height:14px;}
.lht-15{line-height:15px;}
.lht-16{line-height:16px;}
.lht-17{line-height:17px;}
.lht-18{line-height:18px;}
.lht-19{line-height:19px;}
.lht-20{line-height:20px;}
.lht-22{line-height:22px;}
.lht-24{line-height:24px;}
.lht-26{line-height:26px;}
.lht-28{line-height:28px;}
.lht-30{line-height:30px;}
.lht-32{line-height:32px;}
.lht-36{line-height:36px;}
.lht-37{line-height:37px;}

/*===========================================
  COLOR PROPERTIES
===========================================*/
.black a:hover,.black a:active{color:#C00}
.gray,.gray a:link,.gray a:visited{color:#666}
.gray a:hover,.gray a:active{color:#000}
.gray1,.gray1 a:link,.gray1 a:visited{color:#9b9b9b}
.gray2,.gray2 a:link,.gray2 a:visited{color:#333}
.gray3,.gray3 a:link,.gray3 a:visited{color:#383838}
.red,.red a,.red a:visited{color:#881212}
.red a:hover,.red a:active{color:#881212}
.white,.white a:link,.white a:visited{color:#fff}
.white a:hover,.white a:active{color:#fff !important}
.pale,.pale a:link,.pale a:visited,.pale a:hover,.pale a:active{color:#fcb414}
.green,.green a:link,.green a:visited,.green a:hover,.green a:active{color:#6a8b00}
.wine,.wine a:link,.wine a:visited,.wine a:hover,.wine a:active{color:#754b0f}
.black,.black a:link,.black a:visited, black a:hover{color:#414141}
.blue,.blue a:link,.blue a:visited, blue a:hover{color:#35a7cb}
.blue1,.blue1 a:link,.blue1 a:visited, blue1 a:hover{color:#306dd1 !important}
.pink,.pink a:link,.pink a:visited, pink a:hover{color:#ce2e85 !important}

/*===========================================
  BORDER RADIUS PROPERTIES
===========================================*/
.radius-3{border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;}
.radius-5{border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;}
.radius-8{border-radius:8px;-moz-border-radius:8px;-webkit-border-radius:8px;}
.radius-10{border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px;}
.radius-15{border-radius:15px;-moz-border-radius:15px;-webkit-border-radius:15px;}
.radius-20{border-radius:20px;-moz-border-radius:20px;-webkit-border-radius:20px;}
.radius-25{border-radius:25px;-moz-border-radius:25px;-webkit-border-radius:25px;}
.radius-5t{border-radius:5px 5px 0 0; -moz-border-radius:5px 5px 0 0; -webkit-border-radius:5px 5px 0 0;}
.radius-5b{border-radius:0 0 5px 5px; -moz-border-radius:0 0 5px 5px; -webkit-border-radius:0 0 5px 5px;}
.radius-20b{border-radius:0 0 20px 20px; -moz-border-radius:0 0 20px 20px; -webkit-border-radius:0 0 20px 20px;}
.radius-20p{border-radius:20%; -moz-border-radius:20%; -webkit-border-radius:20%;}
.radius-20t{border-radius:20px 20px 0 0; -moz-border-radius:20px 20px 0 0; -webkit-border-radius:20px 20px 0 0;}
.radius-10t{border-radius:10px 10px 0 0; -moz-border-radius:10px 10px 0 0; -webkit-border-radius:10px 10px 0 0;}

/*===========================================
  SHADOWS AND DECORATION
===========================================*/
.shadow1{box-shadow:0px 3px 0px rgba(0,0,0,0.2);}
.shadow2{box-shadow:0px 0px 5px rgba(0,0,0,.2) inset;}
.shadow3{box-shadow:0px 0px 5px rgba(0,0,0,.3) inset;}
.shadow-soft{box-shadow:0 5px 20px rgba(0,0,0,0.08);}
.radius2{border-radius:2px; -moz-border-radius:2px;}
.normal{font-weight:normal !important;}

/*===========================================
  WIDTH PROPERTIES
===========================================*/
.w5{width:5%}
.w7{width:7%}
.w8{width:8%}
.w10{width:10%}
.w13{width:13%}
.w14{width:14%}
.w15{width:15%}
.w16{width:16%}
.w17{width:17%}
.w18{width:18%}
.w19{width:19%}
.w20{width:20%}
.w21{width:21%}
.w22{width:22%}
.w23{width:23%}
.w24{width:24%}
.w25{width:25%}
.w27{width:27%}
.w28{width:28%}
.w30{width:30%}
.w31{width:31%}
.w32{width:32%}
.w33{width:33.2%}
.w34{width:34%}
.w36{width:36%}
.w38{width:38%}
.w385{width:38.5%}
.w39{width:39%}
.w40{width:40%}
.w42{width:42%}
.w43{width:43%}
.w45{width:45%}
.w47{width:47%}
.w48{width:48%}
.w49{width:49%}
.w50{width:50%}
.w52{width:52%}
.w54{width:54%}
.w56{width:56%}
.w58{width:58%}
.w60{width:60%}
.w62{width:62%}
.w63{width:63%}
.w65{width:65%}
.w67{width:67%}
.w70{width:70%}
.w72{width:72%}
.w73{width:73%}
.w74{width:74%}
.w75{width:75%}
.w77{width:77%}
.w78{width:78%}
.w79{width:79%}
.w80{width:80%}
.w82{width:82.5%}
.w84{width:84%}
.w85{width:85%}
.w87{width:87%}
.w88{width:88%}
.w90{width:90%}
.w92{width:92%}
.w95{width:95%}
.w97{width:97%}
.w98{width:98%}
.w100{width:100%}
.minmax{min-width:1000px; max-width:100%;}

/*===========================================
  BORDER PROPERTIES
===========================================*/
.bdrW{border-color:#fff}
.bdrBk{border-color:#000}
.bdrG{border-color:#063}
.bdrR{border-color:#c00}
.bdrB{border-color:#03c}
.bdrY{border-color:#ff0}
.bdrC{border-color:#0ff}
.bdrM{border-color:#F0F}
.bdrCC{border-color:#ccc}
.bdr_1{border-width:1px}
.bdr_2{border-width:2px}
.bdr_3{border-width:3px}
.bdrb{border-bottom-width:1px;}
.bdrt{border-top-width:1px}
.bdrr{border-right-width:1px}
.bdrl{border-left-width:1px}
.bdrn,.bdrn td,.bdrn th{border:0}
.bdrS{border-style:solid}
.bdrD{border-style:dotted}
.bdrlr{border-width:0 1px}
.bdrtb{border-width:1px 0}
.bb{border-bottom:1px solid #eee;}
.bb1{border-bottom:3px solid #333;}
.bb2{border-bottom:1px solid #ccc;}
.bb3{border-bottom:1px solid #ccc;}
.bb4{border-bottom:5px double #eee;}
.bbx{border-bottom:3px solid #abd4e7;}
.bt{border-top:1px solid #eee;}
.bt1{border-top:1px solid #999;}
.bt2{border-top:1px solid #ddd;}
.bl{border-left:1px solid #eee;}
.bl1{border-left:1px solid #eee;}
.bl2{border-left:1px solid #ccc;}
.br{border-right:1px solid #eee;}
.br1{border-right:1px solid #999;}
.border1{border:1px solid #eee;}
.border2{border:1px solid #ddd;}
.border3{border:10px solid #eee; box-shadow:0 0 5px rgba(0,0,0,.3) inset}
.border4{border:1px solid #ccc;}
.border5{border:1px solid #ddd; background:#fff;}
.border-bottom-pink{border-bottom:3px solid #ce2e85;}

/*===========================================
  BACKGROUND PROPERTIES
===========================================*/
.bg-white{background:#fff;}
.bg-white1{background:#f1f1f1;}
.bg-black{background:#000;}
.bg-black2{background:#444;}
.bg-gray{background:#f8f8f8;}
.bg-gray1{background:#333;}
.bg-gray2{background:#f8f8f8;}
.bg-gray3{background:#666;}
.bg-gray4{background:#f1f1f1;}
.bg-gray5{background:#222;}
.bg-blue{background:#164897;}
.bg-red{background:#da2d1c;}
.bg-red2{background:#db5f5f;}
.bg-orange{background:#f3a344;}
.bg-green{background:#419c5e;}
.bg-green1{background:#fafecf; border:1px solid #cbd474;}
.bg-light-gray{background:#f8f8f8;}
.bg-pink-light{background:#fff5f5;}
.bg-gradient-pink{background: linear-gradient(135deg, #d81b60, #ff4081);}
.bg-dark{background:#333;}

/*===========================================
  MARGIN PROPERTIES
===========================================*/
.m0-2{margin:0px 2px;}
.m0-5{margin:0px 5px;}
.m0-10{margin:0px 10px;}
.m2-0{margin:2px 0px;}
.m5-0{margin:5px 0px;}
.m10-0{margin:10px 0px;}
.m5-10{margin:5px 10px;}
.m5-20{margin:5px 20px;}
.m1{margin:1px;}
.m2{margin:2px;}
.m3{margin:3px;}
.m4{margin:4px;}
.m5{margin:5px;}
.m6{margin:6px;}
.m7{margin:7px;}
.m8{margin:8px;}
.m9{margin:9px;}
.m10{margin:10px;}
.m11{margin:11px;}
.m12{margin:12px;}
.m13{margin:13px;}
.m14{margin:14px;}
.m15{margin:15px;}
.m16{margin:16px;}
.m17{margin:17px;}
.m18{margin:18px;}
.m19{margin:19px;}
.m21{margin:21px;}
.m22{margin:22px;}
.m23{margin:23px;}
.m24{margin:24px;}
.m25{margin:25px;}
.m30{margin:30px;}
.mt1{margin-top:1px}
.mt2{margin-top:2px}
.mt3{margin-top:3px}
.mt4{margin-top:4px}
.mt5{margin-top:5px}
.mt6{margin-top:6px}
.mt7{margin-top:7px}
.mt8{margin-top:8px}
.mt9{margin-top:9px}
.mt10{margin-top:10px}
.mt11{margin-top:11px}
.mt12{margin-top:12px}
.mt13{margin-top:13px}
.mt14{margin-top:14px}
.mt15{margin-top:15px}
.mt16{margin-top:16px}
.mt17{margin-top:17px}
.mt18{margin-top:18px}
.mt19{margin-top:19px}
.mt20{margin-top:20px}
.mt21{margin-top:21px}
.mt22{margin-top:22px}
.mt23{margin-top:23px}
.mt24{margin-top:24px}
.mt25{margin-top:25px}
.mt26{margin-top:26px}
.mt27{margin-top:27px}
.mt28{margin-top:28px}
.mt29{margin-top:29px}
.mt30{margin-top:30px}
.mt31{margin-top:31px}
.mt32{margin-top:32px}
.mt33{margin-top:33px}
.mt34{margin-top:34px}
.mt35{margin-top:35px}
.mt36{margin-top:36px}
.mt37{margin-top:37px}
.mt38{margin-top:38px}
.mt39{margin-top:39px}
.mt40{margin-top:40px}
.mt41{margin-top:41px}
.mt42{margin-top:42px}
.mt43{margin-top:43px}
.mt44{margin-top:44px}
.mt45{margin-top:45px}
.mt46{margin-top:46px}
.mt47{margin-top:47px}
.mt48{margin-top:48px}
.mt49{margin-top:49px}
.mt50{margin-top:50px}
.mt51{margin-top:51px}
.mt52{margin-top:52px}
.mt53{margin-top:53px}
.mt54{margin-top:54px}
.mt55{margin-top:55px}
.mt56{margin-top:56px}
.mt57{margin-top:57px}
.mt58{margin-top:58px}
.mt59{margin-top:59px}
.mt60{margin-top:60px}
.mt61{margin-top:61px}
.mt62{margin-top:62px}
.mt63{margin-top:63px}
.mt64{margin-top:64px}
.mt65{margin-top:65px}
.mt66{margin-top:66px}
.mt67{margin-top:67px}
.mt68{margin-top:68px}
.mt69{margin-top:69px}
.mt70{margin-top:70px}
.mt71{margin-top:71px}
.mt72{margin-top:72px}
.mt73{margin-top:73px}
.mt74{margin-top:74px}
.mt75{margin-top:75px}
.mt76{margin-top:76px}
.mt77{margin-top:77px}
.mt78{margin-top:78px}
.mt79{margin-top:79px}
.mt80{margin-top:80px}
.mt81{margin-top:81px}
.mt82{margin-top:82px}
.mt83{margin-top:83px}
.mt84{margin-top:84px}
.mt85{margin-top:85px}
.mt86{margin-top:86px}
.mt87{margin-top:87px}
.mt88{margin-top:88px}
.mt89{margin-top:89px}
.mt90{margin-top:90px}
.mt91{margin-top:91px}
.mt92{margin-top:92px}
.mt93{margin-top:93px}
.mt94{margin-top:94px}
.mt95{margin-top:95px}
.mt96{margin-top:96px}
.mt97{margin-top:97px}
.mt98{margin-top:98px}
.mt99{margin-top:99px}
.mt100{margin-top:100px}
.mt120{margin-top:120px}
.mt150{margin-top:150px}
.mymt40{ margin-top:40px;}
/* Complete margin properties... */

/*===========================================
  PADDING PROPERTIES
===========================================*/
.p0-2{padding:0px 2px;}
.p0-5{padding:0px 5px;}
.p0-10{padding:0px 10px;}
.p1-5{padding:1px 5px;}
.p1-10{padding:1px 10px;}
.p1-15{padding:1px 15px;}
.p2-5{padding:2px 5px;}
.p2-10{padding:2px 10px;}
.p2-15{padding:2px 15px;}
.p3-5{padding:3px 5px;}
.p3-10{padding:3px 10px;}
.p3-15{padding:3px 15px;}
.p2-0{padding:2px 0px;}
.p5-0{padding:5px 0px;}
.p10-0{padding:10px 0px;}
.p5-10{padding:5px 10px;}
.p5-15{padding:5px 15px;}
.p5-20{padding:5px 20px;}
.p10-15{padding:10px 15px;}
.p10-20{padding:10px 20px;}
.p1{padding:1px;}
.p2{padding:2px;}
.p3{padding:3px;}
.p4{padding:4px;}
.p5{padding:5px;}
.p6{padding:6px;}
.p7{padding:7px;}
.p8{padding:8px;}
.p9{padding:9px;}
.p10{padding:10px;}
.p11{padding:11px;}
.p12{padding:12px;}
.p13{padding:13px;}
.p14{padding:14px;}
.p15{padding:15px;}
.p16{padding:16px;}
.p17{padding:17px;}
.p18{padding:18px;}
.p19{padding:19px;}
.p20{padding:20px;}
.p21{padding:21px;}
.p22{padding:22px;}
.p23{padding:23px;}
.p24{padding:24px;}
.p25{padding:25px;}
.p30{padding:30px;}
/* Complete padding properties... */

/*===========================================
  FORM STYLES
===========================================*/
input[type=text]{
    color:#666; 
    height:40px; 
    padding:5px 10px; 
    width:100%; 
    font:300 15px/18px 'Lato', Arial, Helvetica, sans-serif; 
    background:#fff; 
    border-radius:3px; 
    border:0;
}

input[type=password]{
    color:#777; 
    margin:0px; 
    font:300 15px/18px 'Lato', Arial, Helvetica, sans-serif; 
    background:#fff; 
    border:1px solid #ccc;
}

input[type=file]{
    color:#777; 
    margin:0px; 
    padding:0px; 
    border:1px solid #ddd; 
    height:17px !important;
}

textarea{
    color:#777; 
    margin:0px;  
    height:120px; 
    padding:5px 10px; 
    width:100%; 
    font:300 15px/18px 'Lato', Arial, Helvetica, sans-serif; 
    background:#fff; 
    border-radius:3px; 
    border:0; 
    resize:none;
}

select{
    color:#777; 
    margin:0px;  
    height:40px; 
    padding:5px 10px; 
    width:100%; 
    font:normal 14px/18px 'Lato', Arial, Helvetica, sans-serif; 
    background:#fff; 
    border-radius:3px;
}

input.check{
    border:1px solid #666; 
    font-size:13px;  
    width:15px; 
    height:15px; 
    margin:2px 2px 2px 0px; 
    outline:none; 
    background:#fff;
}

input[type=text]:focus, 
input[type=password]:focus, 
textarea:focus{
    color:#ce2e85; 
    background:#fff;
}

/*===========================================
  BUTTON STYLES
===========================================*/
.button1 {
    background: #ce2e85;
    font: normal 25px/45px 'Rouge Script', cursive;
    color: #fff;
    text-align: center; 
    display: inline-block;
    text-decoration: none; 
    padding:0 30px; 
    border-radius:3px; 
    border:0; 
    cursor:pointer;
}

.button1:hover {
    background: #414141;
    color: #fff;
}

.button_large {
    display: inline-block;
    padding: 15px 30px;
    border-radius: 50px;
    font-weight: bold;
    font-size: 18px;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
}

.button_large:hover {
    transform: scale(1.05);
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

.submit_btn {
    padding: 15px;
    border: none;
    border-radius: 5px;
    font-size: 18px;
    font-weight: 600;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.submit_btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(216, 27, 96, 0.3);
}

.contact_btn {
    padding: 12px 25px;
    border-radius: 50px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    transition: transform 0.3s ease;
}

.contact_btn:hover {
    transform: scale(1.05);
}

/*===========================================
  BACK TO TOP BUTTON
===========================================*/
#back-top {
    position: fixed; 
    bottom:33px; 
    right:10px; 
    z-index:999999999; 
    width:29px; 
    display:block;
}

#back-top a {
    width:29px; 
    display:block; 
    height:38px; 
    overflow:hidden;
}

#back-top span {
    width:29px; 
    height:38px; 
    display: block; 
    background:url(../images/top.png) no-repeat; 
    opacity:1;
    -webkit-transition: 1s; 
    -moz-transition: 1s; 
    transition: 1s;
}

#back-top a:hover span {
    opacity:0.5;
}

/*===========================================
  MAIN WEBSITE LAYOUT STYLES
===========================================*/
body {
    font-family: 'Lato', sans-serif;
    margin: 0;
    padding: 0;
    color: #414141;
    line-height: 1.6;
}

.wrapper {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 15px;
    box-sizing: border-box;
}

/*===========================================
  HEADER STYLES
===========================================*/
.top {
    background: #f8f8f8;
    padding: 10px 0;
}

.call_us {
    font-size: 13px;
    float: left;
}

.social_con {
    float: right;
}

.transition_eff {
    transition: all 0.3s ease;
}

/*===========================================
  WHY CHOOSE US SECTION
===========================================*/
.why_choose_us {
    padding: 40px 0;
}

.location_section {
    margin-bottom: 30px;
    padding: 25px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.service_list {
    list-style: none;
    padding-left: 0;
}

.service_list li {
    padding: 8px 0;
    padding-left: 25px;
    position: relative;
    color: #555;
    line-height: 1.6;
}

.service_list li:before {
    content: "•";
    color: #ce2e85;
    font-size: 20px;
    position: absolute;
    left: 0;
    top: 5px;
}

.benefits_grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    margin-top: 20px;
}

.benefit_item {
    text-align: center;
    padding: 25px 20px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
    transition: transform 0.3s ease;
}

.benefit_item:hover {
    transform: translateY(-5px);
}

.benefit_icon {
    font-size: 40px;
    margin-bottom: 15px;
}

.areas_summary {
    padding: 30px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.areas_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 20px;
}

.area_group {
    flex: 1;
    min-width: 300px;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 8px;
    border-left: 4px solid #ce2e85;
}

.area_group h3 {
    margin-bottom: 10px;
}

.area_group p {
    color: #666;
    font-size: 15px;
    line-height: 1.6;
}

.cta_box {
    padding: 30px;
    border: 2px solid #fff;
    border-radius: 10px;
    text-align: center;
}

/*===========================================
  FAQ SECTION STYLES
===========================================*/
.faq_section {
    padding: 40px 0;
    background: white;
}

.faq_container {
    max-width: 1000px;
    margin: 0 auto;
}

.faq_category {
    margin-bottom: 30px;
    padding: 25px;
    background: #f9f9f9;
    border-radius: 10px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.faq_item {
    margin-bottom: 15px;
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden;
    background: white;
}

.faq_question {
    width: 100%;
    padding: 20px;
    text-align: left;
    background: white;
    border: none;
    font-size: 18px;
    font-weight: 600;
    color: #333;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background 0.3s ease;
    outline: none;
}

.faq_question:hover {
    background: #fff5f5;
}

.faq_question:after {
    content: '+';
    font-size: 24px;
    color: #ce2e85;
    font-weight: bold;
    transition: transform 0.3s ease;
}

.faq_question.active:after {
    content: '-';
    transform: rotate(180deg);
}

.faq_answer {
    padding: 0 20px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
}

.faq_answer.active {
    padding: 20px;
    max-height: 1000px;
}

.faq_answer p {
    color: #555;
    line-height: 1.8;
    font-size: 16px;
    margin-bottom: 15px;
}

.faq_answer p:last-child {
    margin-bottom: 0;
}

.contact_support {
    padding: 30px;
    background: #fff5f5;
    border-radius: 10px;
    border: 2px solid #ffebee;
}

.location_contacts {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 20px;
}

.location_contact {
    flex: 1;
    min-width: 300px;
    padding: 20px;
    background: white;
    border-radius: 8px;
}

.quick_contact {
    text-align: center;
}

/*===========================================
  CONTACT & QUOTE SECTION
===========================================*/
.contact_quote_section {
    padding: 40px 0;
    background: #f8f8f8;
}

.contact_quote_container {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
}

.company_details {
    flex: 1;
    min-width: 300px;
}

.quote_form_section {
    flex: 1;
    min-width: 300px;
}

.company_card {
    padding: 30px;
    background: white;
    border-radius: 10px;
    border-top: 5px solid #ce2e85;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.info_item {
    display: flex;
    gap: 15px;
    align-items: flex-start;
    margin-bottom: 20px;
}

.info_icon {
    font-size: 24px;
    color: #ce2e85;
    min-width: 30px;
}

.info_content h3 {
    color: #333;
    font-weight: 600;
}

.info_content p {
    color: #555;
    line-height: 1.6;
}

.service_areas_card {
    padding: 30px;
    background: #fff5f5;
    border-radius: 10px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.areas_grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 15px;
    margin-top: 15px;
}

.area_box {
    padding: 15px;
    background: white;
    border-radius: 8px;
    text-align: center;
}

.area_box h3 {
    font-weight: 600;
}

.area_box p {
    font-size: 14px;
    color: #666;
    line-height: 1.5;
}

.quote_form_card {
    padding: 30px;
    background: white;
    border-radius: 10px;
    border-top: 5px solid #ff4081;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.form_row {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
}

.form_group {
    margin-bottom: 20px;
    width: 100%;
}

.form_group label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #333;
}

.form_group input,
.form_group select,
.form_group textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 16px;
    transition: border 0.3s ease;
}

.form_group input:focus,
.form_group select:focus,
.form_group textarea:focus {
    border-color: #ce2e85;
    outline: none;
    box-shadow: 0 0 0 3px rgba(206, 46, 133, 0.1);
}

.checkbox_group {
    display: flex;
    align-items: center;
    gap: 10px;
}

.checkbox_group input {
    width: auto;
}

.quick_contact_card {
    padding: 25px;
    background: linear-gradient(135deg, #d81b60, #ff4081);
    border-radius: 10px;
    text-align: center;
    color: white;
}

.trust_indicators {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 20px;
    padding: 30px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.08);
    margin-top: 40px;
}

.trust_item {
    text-align: center;
    min-width: 200px;
}

.trust_icon {
    font-size: 40px;
    margin-bottom: 10px;
}

.trust_item h3 {
    font-size: 18px;
    color: #333;
    margin-bottom: 5px;
}

.trust_item p {
    color: #666;
    font-size: 14px;
}

/*===========================================
  SINGLE BANNER CSS
===========================================*/
.single-banner {
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), url('images/banner-bg.jpg');
    background-size: cover;
    background-position: center;
    height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-bottom: 30px;
}

.banner-overlay {
    width: 100%;
    padding: 20px;
}

.banner-title {
    font-size: 60px;
    color: white;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
    margin: 0;
    line-height: 1.2;
}

/*===========================================
  BRIDAL MEHANDI ARTIST SECTION
===========================================*/
.bridal-artist-section {
    background: #f9f9f9;
    padding: 40px 0;
}

.bridal-content {
    max-width: 1000px;
    margin: 0 auto;
}

.expertise-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 25px;
    margin-top: 20px;
}

.expertise-item {
    background: #fff;
    padding: 20px;
    border-radius: 8px;
    border: 2px solid #ff6b9d;
    text-align: center;
    transition: transform 0.3s ease;
}

.expertise-item:hover {
    transform: translateY(-5px);
}

.expertise-icon {
    font-size: 40px;
    margin-bottom: 15px;
}

.process-steps {
    margin-top: 20px;
}

.process-step {
    display: flex;
    align-items: flex-start;
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px dashed #ddd;
}

.process-step:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.step-number {
    background: #ff6b9d;
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: bold;
    margin-right: 20px;
    flex-shrink: 0;
}

.step-content {
    flex: 1;
}

.location-areas {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 15px;
}

.area-item {
    background: #ff6b9d;
    color: white;
    padding: 8px 20px;
    border-radius: 20px;
    font-size: 16px;
}

.cta-buttons {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

/*===========================================
  RESPONSIVE STYLES
===========================================*/
@media (max-width: 768px) {
    .form_row {
        flex-direction: column;
        gap: 0;
    }
    
    .trust_indicators {
        flex-direction: column;
        align-items: center;
    }
    
    .contact_buttons {
        flex-direction: column;
    }
    
    .contact_btn {
        justify-content: center;
    }
    
    .areas_grid {
        grid-template-columns: 1fr;
    }
    
    .benefits_grid {
        grid-template-columns: 1fr;
    }
    
    .expertise-grid {
        grid-template-columns: 1fr;
    }
    
    .process-step {
        flex-direction: column;
    }
    
    .step-number {
        margin-right: 0;
        margin-bottom: 15px;
    }
    
    .cta-buttons {
        flex-direction: column;
    }
    
    .cta-buttons a {
        width: 100%;
        text-align: center;
        margin: 5px 0;
    }
    
    .location-areas {
        justify-content: center;
    }
    
    .single-banner {
        height: 200px;
    }
    
    .banner-title {
        font-size: 45px;
    }
}

@media (max-width: 480px) {
    .single-banner {
        height: 180px;
    }
    
    .banner-title {
        font-size: 36px;
    }
}
/* END OF CSS */


/* FAQ Pure CSS Accordion Styles */
.faq_toggle {
  display: none;
}

.faq_item {
  margin-bottom: 15px;
  border: 1px solid #eee;
  border-radius: 5px;
  overflow: hidden;
}

.faq_question {
  display: block;
  padding: 15px 20px;
  background: #fff;
  color: #333;
  font-size: 18px;
  font-weight: 600;
  cursor: pointer;
  position: relative;
  transition: all 0.3s ease;
  border-bottom: 1px solid #eee;
}

.faq_question:hover {
  background: #fff5f5;
}

.faq_question:after {
  content: '+';
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 24px;
  color: #e91e63;
  font-weight: normal;
  transition: all 0.3s ease;
}

.faq_toggle:checked + .faq_question {
  background: #fff5f5;
  border-bottom: none;
}

.faq_toggle:checked + .faq_question:after {
  content: '-';
}

.faq_answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  background: #fff;
}

.faq_toggle:checked ~ .faq_answer {
  max-height: 1000px;
  padding: 20px;
  border-top: 1px solid #eee;
}

.faq_answer p {
  margin: 0;
  line-height: 1.6;
  color: #555;
}

/* For one at a time behavior */
.faq_toggle:checked ~ .faq_answer {
  animation: fadeIn 0.5s ease;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}