a:8:{s:7:"general";a:3:{s:17:"enable-responsive";s:4:"true";s:17:"show-mobileslider";s:4:"true";s:15:"bpanel-logo-url";s:0:"";}s:6:"layout";a:98:{s:4:"logo";s:4:"true";s:8:"logo-url";s:84:"http://dummy.wedesignthemes.com/veda/spa/wp-content/uploads/sites/3/2016/05/logo.png";s:15:"retina-logo-url";s:87:"http://dummy.wedesignthemes.com/veda/spa/wp-content/uploads/sites/3/2016/05/logo@2x.png";s:17:"retina-logo-width";s:3:"209";s:18:"retina-logo-height";s:2:"76";s:11:"favicon-url";s:0:"";s:13:"apple-favicon";s:0:"";s:20:"apple-retina-favicon";s:0:"";s:18:"apple-ipad-favicon";s:0:"";s:25:"apple-ipad-retina-favicon";s:0:"";s:15:"show-breadcrumb";s:4:"true";s:20:"breadcrumb-delimiter";s:10:"fa default";s:16:"breadcrumb-style";s:11:"aligncenter";s:12:"sub-title-bg";s:94:"http://dummy.wedesignthemes.com/veda/spa/wp-content/uploads/sites/3/2015/06/breadcrumb-bg1.jpg";s:17:"sub-title-opacity";s:0:"";s:19:"sub-title-bg-repeat";s:9:"no-repeat";s:21:"sub-title-bg-position";s:13:"bottom center";s:18:"sub-title-bg-color";s:0:"";s:11:"site-layout";s:4:"wide";s:7:"bg-type";s:11:"bg-patterns";s:20:"boxed-layout-pattern";s:0:"";s:27:"boxed-layout-pattern-repeat";s:0:"";s:26:"boxed-layout-pattern-color";s:1:"#";s:28:"boxed-layout-pattern-opacity";s:0:"";s:15:"boxed-layout-bg";s:0:"";s:22:"boxed-layout-bg-repeat";s:0:"";s:24:"boxed-layout-bg-position";s:0:"";s:21:"boxed-layout-bg-color";s:1:"#";s:23:"boxed-layout-bg-opacity";s:0:"";s:11:"header-type";s:25:"split-header boxed-header";s:16:"layout-stickynav";s:4:"true";s:15:"header-position";s:9:"on slider";s:18:"header-transparant";s:0:"";s:9:"header-bg";s:0:"";s:16:"header-bg-repeat";s:0:"";s:18:"header-bg-position";s:0:"";s:11:"top-content";s:0:"";s:16:"menu-active-type";s:0:"";s:21:"menu-top-left-content";s:0:"";s:22:"menu-top-right-content";s:0:"";s:24:"menu-left-header-content";s:0:"";s:16:"menu-hover-style";s:0:"";s:11:"menu-border";s:4:"true";s:21:"menu-border-width-top";s:0:"";s:23:"menu-border-width-right";s:0:"";s:24:"menu-border-width-bottom";s:0:"";s:22:"menu-border-width-left";s:0:"";s:17:"menu-border-style";s:6:"dotted";s:17:"menu-border-color";s:0:"";s:22:"menu-border-radius-top";s:2:"20";s:24:"menu-border-radius-right";s:0:"";s:25:"menu-border-radius-bottom";s:2:"20";s:23:"menu-border-radius-left";s:0:"";s:14:"menu-boxshadow";s:4:"true";s:13:"menu-bg-color";s:0:"";s:20:"menu-gradient-color1";s:7:"#ffffff";s:20:"menu-gradient-color2";s:7:"#ffe1e8";s:22:"menu-gradient-percent1";s:0:"";s:22:"menu-gradient-percent2";s:0:"";s:12:"menu-bgimage";s:4:"true";s:22:"menu-title-text-dcolor";s:0:"";s:23:"menu-title-text-dhcolor";s:0:"";s:19:"menu-title-bg-color";s:0:"";s:21:"menu-title-text-color";s:0:"";s:24:"menu-title-hoverbg-color";s:0:"";s:26:"menu-title-hovertext-color";s:0:"";s:24:"menu-title-border-radius";s:0:"";s:27:"menu-title-border-width-top";s:0:"";s:29:"menu-title-border-width-right";s:0:"";s:30:"menu-title-border-width-bottom";s:0:"";s:28:"menu-title-border-width-left";s:0:"";s:23:"menu-title-border-style";s:6:"dotted";s:23:"menu-title-border-color";s:0:"";s:21:"menu-link-text-dcolor";s:0:"";s:22:"menu-link-text-dhcolor";s:0:"";s:13:"menu-links-bg";s:4:"true";s:18:"menu-link-bg-color";s:0:"";s:20:"menu-link-text-color";s:0:"";s:23:"menu-link-hoverbg-color";s:7:"#ffffff";s:25:"menu-link-hovertext-color";s:7:"#da0000";s:23:"menu-link-border-radius";s:2:"20";s:23:"menu-link-hborder-color";s:0:"";s:22:"menu-link-border-width";s:0:"";s:22:"menu-link-border-color";s:0:"";s:22:"menu-link-border-style";s:6:"dotted";s:21:"menu-link-arrow-style";s:6:"single";s:14:"show-sociables";s:2:"on";s:13:"footer-darkbg";s:4:"true";s:14:"footer-columns";s:1:"1";s:9:"footer-bg";s:0:"";s:16:"footer-bg-repeat";s:0:"";s:18:"footer-bg-position";s:0:"";s:16:"enable-copyright";s:4:"true";s:17:"copyright-content";s:348:"[dt_sc_hr_top value=\"30\"][/dt_sc_hr_top]
[dt_sc_align align=\"center\"]
[dt_sc_sociable class=\"rounded-square filled\"/]
[dt_sc_hr_invisible size=\"xsmall\"/]
[dt_sc_hr_top value=\"10\"/]
[dt_sc_custom_menu/]
[dt_sc_hr_invisible size=\"xsmall\"/]
© <a title=\"\" href=\"#\"> Designthemes </a> 2016  -  All Rights Reserved
[/dt_sc_align]";s:16:"copyright-darkbg";s:4:"true";s:16:"enable-customcss";s:4:"true";s:17:"customcss-content";s:14143:".split-header #logo { top:-35px; }
.split-header .is-sticky #logo { top:-15px; }
.split-header #logo a { height:76px; line-height:76px; }
.split-header .is-sticky #logo a { height:60px; line-height:60px; }
#main-menu ul.menu > li > a { line-height:70px; }
.main-header { border-radius:20px 0px 20px 0px; }

#main-menu ul li.menu-item-simple-parent ul { top:60px; }
#main-menu .megamenu-child-container { top:70px; }

.dt-sc-small-separator { width: 40px; }
.dt-sc-button { font-weight: 600 !important; }

.portfolio.type8 .image-overlay h2 { font-family:\"Courgette\",cursive; }

.footer-copyright p { font-size:14px; letter-spacing:0.2px; }

.vc_min_height_right.wpb_column.vc_col-sm-6 { margin-left: 30px; width: calc(50% - 30px); }

.dt-sc-sociable li { margin:0px 7px; }
.dt-sc-sociable.rounded-square li a { border-radius:10px 0px; }
.dt-sc-sociable.rounded-square li a:hover { border-radius:0px 10px; }
.dt-sc-sociable li a:hover { background:#ffffff !important; color:#ef577a !important; }

/* Secondary Color */
.dt-sc-icon-box.type3 .icon-content h4, .dt-sc-popular-procedures .details h3, .dt-sc-pr-tb-col .dt-sc-tb-title h5, .dt-sc-testimonial.type4 .dt-sc-testimonial-author cite small { color:#553737; }
.dt-sc-hexagons li .dt-sc-hexagon-overlay { background:#553737; }
.dt-sc-hexagons li:hover, .dt-sc-hexagons li:hover:before, .dt-sc-hexagons li:hover:after { border-color:#553737; }

/*----*****---- << Custom CSS >> ----*****----*/
body { font-size:18px; line-height:30px; color:#553737; }
p { line-height:30px; font-weight:300; }

body, h1, h2, h3, h4, h5, h6, .dt-sc-button, .dt-sc-pr-tb-col .dt-sc-price h6, .dt-sc-pr-tb-col .dt-sc-tb-content li { font-weight:normal; }	

/*** Pricing table **/
.dt-sc-pr-tb-col { background:#f7f7f7; border:none; border-radius:40px 0px; padding:0px; }
.dt-sc-pr-tb-col:hover { border-radius:0px 40px; }
.dt-sc-pr-tb-col:hover .dt-sc-tb-header { border-radius:0px 40px 0px 0px; }
.dt-sc-pr-tb-col:hover .dt-sc-buy-now a.dt-sc-button { border-radius:0px 0px 0px 40px; }

.dt-sc-pr-tb-col .dt-sc-tb-header { border-radius:40px 0px 0px 0px; }
.dt-sc-pr-tb-col .dt-sc-tb-header { background:none; }
.dt-sc-pr-tb-col .dt-sc-tb-title h5 { font-size:22px; text-transform:none; }
.dt-sc-pr-tb-col .dt-sc-price { margin:20px 0px 0px; padding:0px; border:none; }
.dt-sc-pr-tb-col .dt-sc-price h6 { font-size:30px; color:#ef577a; }
.dt-sc-pr-tb-col .dt-sc-price h6 sup { font-size:14px; top:-11px; }
.dt-sc-pr-tb-col .dt-sc-price h6 span { margin-left:0px; }
.dt-sc-pr-tb-col .dt-sc-tb-content { padding:10px 20px 0px; } 
.dt-sc-pr-tb-col .dt-sc-tb-content li { font-size:18px; }
.dt-sc-pr-tb-col .dt-sc-tb-content li:last-child { border:none; }
.dt-sc-pr-tb-col .dt-sc-buy-now { padding:0px; }
.dt-sc-pr-tb-col .dt-sc-buy-now a.dt-sc-button { padding:30px 0px 26px; width:100%; box-sizing:border-box; color:#ffffff; font-size:18px; border-radius:0px 0px 40px 0px; background:#ef577a; }
.dt-sc-pr-tb-col .dt-sc-buy-now a.dt-sc-button:hover { background:#553737; }

.dt-sc-counter.type2 .dt-sc-couter-icon-holder { border-radius:40px 0px; }
.dt-sc-counter.type2:hover .dt-sc-couter-icon-holder { border-radius:0px 40px; }

.dt-sc-testimonial.type4 .dt-sc-testimonial-author img { border-radius:40px 0px; }
.dt-sc-testimonial.type4:hover .dt-sc-testimonial-author img { border-radius:0px 40px; }

/*----*****---- << Fonts >> ----*****----*/
.dt-sc-icon-box.type3 .icon-content h4 { font-weight:300; }
.dt-sc-icon-box.type3 .icon-wrapper span { border: none; width:130px; height:130px; line-height:130px; }

/* Portfolio */
.portfolio .image-overlay h2 { font-size:18px; padding-bottom:30px; }

/*blog */
.blog-entry .entry-thumb img { border-radius:30px 0px; }
.blog-entry .entry-thumb { margin-bottom:5px; }
.blog-entry .entry-details { padding:30px; border-radius:0px 30px; background:rgba(0, 0, 0, 0.03); }

.blog-entry .entry-format a:before { line-height:80px; }
.blog-entry .entry-format a { width:80px; height:80px; line-height:80px; border-radius:30px 0px; }

.with-both-sidebar .dt-sc-one-half .blog-entry .entry-thumb img, .with-both-sidebar .dt-sc-one-half .blog-entry .entry-format a, .dt-sc-one-third .blog-entry .entry-thumb img, .dt-sc-one-third .blog-entry .entry-format a { border-radius:20px 0px; }
.with-both-sidebar .dt-sc-one-half .blog-entry .entry-details, .dt-sc-one-third .blog-entry .entry-details { border-radius:0px 20px; }

.format-video.blog-entry .entry-format a, .format-audio.blog-entry .entry-format a { display:none; }

.with-both-sidebar .dt-sc-one-third .blog-entry .entry-body { font-size:16px; line-height:24px; }
.with-both-sidebar .dt-sc-one-third .blog-entry .entry-details { padding:20px; }

.with-both-sidebar .portfolio.type8 .image-overlay-details .categories, .page-with-sidebar .portfolio.type8.dt-sc-one-third .image-overlay-details .categories, .page-template-tpl-portfolio .portfolio.type8.dt-sc-one-fourth .image-overlay-details .categories { font-size:13px; }

/* Footer */
#footer a:hover, #footer .footer-copyright .menu-links li a:hover, #footer .dt-sc-dark-bg a:hover { color:#553737; }

/* Team */
.dt-sc-team .dt-sc-team-thumb img { border-radius:40px 0px 0px 0px; -webkit-transition:all 0.3s linear; -moz-transition:all 0.3s linear; -o-transition:all 0.3s linear; -ms-transition:all 0.3s linear; transition:all 0.3s linear; }
.dt-sc-team .dt-sc-team-details { border-radius:0px 0px 40px 0px; }
.dt-sc-team:hover .dt-sc-team-thumb img { border-radius:0px 40px 0px 0px; }
.dt-sc-team:hover .dt-sc-team-details { border-radius:0px 0px 0px 40px; }
.dt-sc-team .dt-sc-team-details h4 { color:#553737; font-size:20px; }
.dt-sc-team .dt-sc-team-details h5 { color:#553737; font-size:16px; margin-bottom:10px; }
.dt-sc-team .dt-sc-team-social { margin:15px 0px 10px; }
.dt-sc-team .dt-sc-team-social.rounded-square li a { border-radius:10px 0px; }
.dt-sc-team .dt-sc-team-social.rounded-square li a:hover { border-radius:0px 10px; }

/* Inner page */
/* Breadcrumb */
.boxed-header.header-on-slider .main-title-section-wrapper { padding-top:175px; padding-bottom:50px; }

.main-title-section h1 { font-weight:normal; text-transform:none; color:#553737; }
.breadcrumb { font-size:14px; }
.breadcrumb a:hover { color:#ffffff; }

/* Team */
.dt-sc-team .dt-sc-team-thumb img { border-radius:40px 0px 0px 0px; -webkit-transition:all 0.3s linear; -moz-transition:all 0.3s linear; -o-transition:all 0.3s linear; -ms-transition:all 0.3s linear; transition:all 0.3s linear; }
.dt-sc-team .dt-sc-team-details { border-radius:0px 0px 40px 0px; }
.dt-sc-team:hover .dt-sc-team-thumb img { border-radius:0px 40px 0px 0px; }
.dt-sc-team:hover .dt-sc-team-details { border-radius:0px 0px 0px 40px; }
.dt-sc-team .dt-sc-team-details h4 { color:#553737; font-size:20px; }
.dt-sc-team .dt-sc-team-details h5 { color:#553737; font-size:16px; margin-bottom:10px; }
.dt-sc-team .dt-sc-team-social { margin:15px 0px 10px; }
.dt-sc-team .dt-sc-team-social.rounded-square li a { border-radius:10px 0px; }
.dt-sc-team .dt-sc-team-social.rounded-square li a:hover { border-radius:0px 10px; }

.dt-sc-fancy-list.flower-list.arrow li { background:url(http://dummy.wedesignthemes.com/veda/spa/wp-content/uploads/sites/3/2015/09/flower-bullet.png) left 16px no-repeat; padding:10px 0px 10px 30px; }
.dt-sc-fancy-list.flower-list.arrow li:before { content:\"\"; }

.type2 .dt-sc-toggle-frame h5.dt-sc-toggle-accordion, .type2 .dt-sc-toggle-frame h5.dt-sc-toggle { border-radius:20px 0px; }

.spa-reservation-form { background:rgba(0, 0, 0, 0.05); float:left; clear:both; width:100%; padding:30px; box-sizing:border-box; border-radius:30px 0px 30px 0px; }
.spa-reservation-form label { font-weight:600; color:#000000; margin:0px 0px 5px; display:inline-block; }
input[type=\"submit\"] { font-family: \'Josefin Sans\', sans-serif; border-radius:20px 0px 20px 0px; font-size:16px; padding:15px 25px; float:right; }
.spa-reservation-form input[type=\"submit\"] { margin:32px 0px 0px; }

.spa-contact-info h2 { margin-bottom:13px; }
.spa-contact-info a { color:#553737; }
.spa-contact-info p { font-family: \'Courgette\', cursive; font-size:18px; }
.spa-contact-info p span, .spa-contact-info a:hover { color:#ef577a; }

.spa-map:before {
	content:\"\"; position:absolute; top:0; left:0; width:100%; height:100%; z-index:99; display:inline;
	
background: rgba(255,255,255,1);
background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 50%);
background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(255,255,255,1)), color-stop(50%, rgba(255,255,255,0)));
background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 50%);
background: -o-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 50%);
background: -ms-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 50%);
background: linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 50%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\'#ffffff\', endColorstr=\'#ffffff\', GradientType=0 );

}

/* map */
.spa-contact-pop { position:relative; z-index:9999; }
.spa-contact-detail { background:#ef577a; border-radius:0px 0px 0px 10px; text-align:center; float:left; color:#fff; padding:10px 0px; font-weight:bold; font-style:italic; width:100%; margin-top:-3px; }
.spa-contact-detail > p { font-size: 12px; line-height: 22px; margin-bottom: 0; }

/* Buddypress */
#buddypress .activity .activity-content .activity-header > p > a:first-child, .group_members.dir-list #member-list > li > h5 { font-weight: 600; }
.profile-fields td { font-size:15px; }
#buddypress .activity-list li.load-more, #buddypress .activity-list li.load-newest { font-size:20px; }
#buddypress div#subnav.item-list-tabs ul li.feed a { line-height:29px; padding-top:4px; }
#signup_form #signup_submit, #whats-new-submit #aw-whats-new-submit, #profile-group-edit-submit, #buddypress div.message-search #messages_search_submit, #settings-form .submit #submit, #submit, #save, #group-settings-form input[type=\"submit\"], #notification-bulk-manage, #messages-bulk-manage { padding: 18px 30px 14px; }
#buddypress div.message-search #messages_search { margin-right:10px; }
#buddypress div.message-search #messages_search_submit { padding:19px 30px 17px; }
#signup_form #signup_submit, #whats-new-submit #aw-whats-new-submit, #profile-group-edit-submit, #buddypress div.message-search #messages_search_submit, #settings-form .submit #submit, #submit, #save, #group-settings-form input[type=\"submit\"], #notification-bulk-manage, #messages-bulk-manage, #buddypress .activity-list li.load-more a, #buddypress .activity-list li.load-newest a { border-radius: 15px 0; }
#signup_form #signup_submit:hover, #whats-new-submit #aw-whats-new-submit:hover, #profile-group-edit-submit:hover, #buddypress div.message-search #messages_search_submit:hover, #settings-form .submit #submit:hover, #submit:hover, #save:hover, #group-settings-form input[type=\"submit\"]:hover, #notification-bulk-manage:hover, #messages-bulk-manage:hover, #buddypress .activity-list li.load-more a:hover, #buddypress .activity-list li.load-newest a:hover { border-radius: 0 15px; }
#buddypress a.bp-primary-action span, #buddypress #reply-title small a span { padding-top:3px; }
#buddypress div.item-list-tabs ul li a span { padding-top:4px; }

#previous-next input[type=\"submit\"] { padding:13px 20px; }
input[type=\"button\"] { font-family: \'Josefin Sans\', sans-serif; font-size: 16px; }
input[type=\"button\"] { -webkit-transition:all 0.3s linear; -moz-transition:all 0.3s linear; -o-transition:all 0.3s linear; -ms-transition:all 0.3s linear; transition:all 0.3s linear; }

#buddypress div.item-list-tabs ul li a, .my-groups .bp_members.type-bp_members #buddypress #item-body div#subnav.item-list-tabs > ul { padding-top: 5px; }

/* bbpress */
#bbpress-forums #subscription-toggle a.subscription-toggle { padding-bottom:6px; }
#bbpress-forums #subscription-toggle a.subscription-toggle, .bbp-submit-wrapper #bbp_topic_submit { border-radius:15px 0; }
#bbpress-forums #subscription-toggle a.subscription-toggle:hover, .bbp-submit-wrapper #bbp_topic_submit:hover { border-radius:0 15px; }

/* Events */
input[type=\"submit\"], input[type=\"button\"], button, #tribe-bar-form .tribe-bar-submit input[type=\"submit\"] { border-radius:15px 0; }
input[type=\"submit\"]:hover, input[type=\"button\"]:hover, button:hover, #tribe-bar-form .tribe-bar-submit input[type=\"submit\"]:hover { border-radius:0 15px; }
.tribe-events-list-event-detail .tribe-events-read-more, .tribe-events-day-time-slot .tribe-events-read-more, .tribe-events-back > a { padding-bottom:2px; }
.tribe-events-list .tribe-events-event-cost span { line-height:29px; padding-bottom:2px; }

.type2.tribe_events .date-wrapper p i { top: 12px; }

/* Blog */
.dt-sc-one-third.with-sidebar a.dt-sc-button { font-size:13px; }

.dt-sc-portfolio-sorting.type8 a { padding: 10px 20px 6px; }

.vc_min_height_right > .vc_column-inner, .vc_min_height_left > .vc_column-inner { min-height:443px; }

/*** Mega Menu ***/

/* Responsive */
@media only screen and (min-width:1200px) and (max-width:1280px) {	
	.split-header #main-menu ul.menu > li > a { font-size:15px; }	
}

@media only screen and (min-width:992px) and (max-width:1199px) {	
	.split-header #main-menu ul.menu > li > a { font-size:15px; }	
}
@media only screen and (min-width:768px) and (max-width:991px) {
	.split-header #logo a { height:85px; line-height:85px; }
}
@media only screen and (max-width: 767px) {
.boxed-header.header-on-slider .main-title-section-wrapper { padding-top: 50px; }
.vc_min_height_right.wpb_column.vc_col-sm-6 { width: 100%; }
.type2 .dt-sc-toggle-frame h5.dt-sc-toggle-accordion a, .type2 .dt-sc-toggle-frame h5.dt-sc-toggle a { padding-right:20px; }
.dt-sc-testimonial.type4 .dt-sc-testimonial-author img { border-radius: 15px 0; }
.dt-sc-testimonial.type4:hover .dt-sc-testimonial-author img { border-radius: 0 15px; } 
}";s:16:"customjs-content";s:0:"";}s:6:"social";a:5:{s:8:"social-1";a:2:{s:4:"icon";s:11:"fa-facebook";s:4:"link";s:1:"#";}s:8:"social-2";a:2:{s:4:"icon";s:10:"fa-twitter";s:4:"link";s:1:"#";}s:8:"social-4";a:2:{s:4:"icon";s:11:"fa-dribbble";s:4:"link";s:1:"#";}s:8:"social-5";a:2:{s:4:"icon";s:9:"fa-tumblr";s:4:"link";s:1:"#";}s:8:"social-3";a:2:{s:4:"icon";s:14:"fa-google-plus";s:4:"link";s:1:"#";}}s:10:"widgetarea";a:2:{s:6:"custom";a:2:{i:0;s:22:"Shop Page Left Sidebar";i:1;s:23:"Shop Page Right Sidebar";}s:12:"wtitle-style";s:5:"type5";}s:11:"pageoptions";a:44:{s:25:"post-archives-page-layout";s:18:"content-full-width";s:25:"post-archives-post-layout";s:15:"one-half-column";s:21:"post-archives-excerpt";s:0:"";s:22:"post-archives-readmore";s:0:"";s:10:"post-style";s:0:"";s:16:"post-format-meta";s:4:"true";s:16:"post-author-meta";s:4:"true";s:14:"post-date-meta";s:4:"true";s:17:"post-comment-meta";s:4:"true";s:18:"post-category-meta";s:4:"true";s:13:"post-tag-meta";s:4:"true";s:24:"single-portfolio-related";s:4:"true";s:30:"single-portfolio-related-style";s:5:"type8";s:30:"portfolio-archives-page-layout";s:18:"content-full-width";s:30:"portfolio-archives-post-layout";s:15:"one-half-column";s:29:"portfolio-archives-post-style";s:5:"type8";s:23:"portfolio-custom-fields";a:1:{i:0;s:0:"";}s:21:"single-portfolio-slug";s:0:"";s:23:"portfolio-category-slug";s:0:"";s:17:"enable-404message";s:4:"true";s:14:"notfound-style";s:5:"type4";s:15:"notfound-pageid";s:4:"5059";s:11:"notfound-bg";s:86:"http://dummy.wedesignthemes.com/veda/spa/wp-content/uploads/sites/3/2015/10/spa-bg.jpg";s:18:"notfound-bg-repeat";s:9:"no-repeat";s:20:"notfound-bg-position";s:12:"center right";s:17:"notfound-bg-color";s:1:"#";s:19:"notfound-bg-opacity";s:0:"";s:17:"notfound-bg-style";s:0:"";s:8:"top-hook";s:0:"";s:19:"content-before-hook";s:0:"";s:25:"enable-content-after-hook";s:4:"true";s:18:"content-after-hook";s:14:"[dt_sc_hr_svg]";s:11:"bottom-hook";s:0:"";s:16:"comingsoon-style";s:5:"type7";s:17:"comingsoon-pageid";s:4:"5060";s:15:"show-launchdate";s:4:"true";s:21:"comingsoon-launchdate";s:0:"";s:19:"comingsoon-timezone";s:1:"0";s:13:"comingsoon-bg";s:86:"http://dummy.wedesignthemes.com/veda/spa/wp-content/uploads/sites/3/2015/11/spa-bg.jpg";s:20:"comingsoon-bg-repeat";s:9:"no-repeat";s:22:"comingsoon-bg-position";s:12:"center right";s:19:"comingsoon-bg-color";s:1:"#";s:21:"comingsoon-bg-opacity";s:0:"";s:19:"comingsoon-bg-style";s:0:"";}s:3:"woo";a:6:{s:21:"shop-product-per-page";s:2:"12";s:13:"product-style";s:5:"type5";s:24:"shop-page-product-layout";s:17:"one-fourth-column";s:14:"product-layout";s:18:"content-full-width";s:23:"product-category-layout";s:18:"content-full-width";s:18:"product-tag-layout";s:18:"content-full-width";}s:6:"colors";a:34:{s:10:"theme-skin";s:6:"custom";s:12:"body-bgcolor";s:0:"";s:14:"custom-default";s:7:"#ef577a";s:12:"custom-light";s:7:"#ff7c9a";s:11:"custom-dark";s:7:"#d84668";s:14:"header-bgcolor";s:0:"";s:22:"header-bgcolor-opacity";s:0:"";s:14:"topbar-bgcolor";s:0:"";s:16:"topbar-textcolor";s:0:"";s:16:"topbar-linkcolor";s:0:"";s:21:"topbar-linkhovercolor";s:0:"";s:12:"menu-bgcolor";s:0:"";s:20:"menu-bgcolor-opacity";s:0:"";s:14:"menu-linkcolor";s:7:"#553737";s:15:"menu-hovercolor";s:0:"";s:16:"menu-activecolor";s:0:"";s:18:"menu-activebgcolor";s:0:"";s:18:"content-text-color";s:0:"";s:18:"content-link-color";s:0:"";s:19:"content-link-hcolor";s:0:"";s:14:"footer-bgcolor";s:7:"#ef577a";s:22:"footer-bgcolor-opacity";s:0:"";s:17:"copyright-bgcolor";s:7:"#ef577a";s:25:"copyright-bgcolor-opacity";s:0:"";s:17:"footer-text-color";s:7:"#ffffff";s:17:"footer-link-color";s:7:"#ffffff";s:18:"footer-link-hcolor";s:7:"#553737";s:20:"footer-heading-color";s:0:"";s:16:"heading-h1-color";s:0:"";s:16:"heading-h2-color";s:0:"";s:16:"heading-h3-color";s:0:"";s:16:"heading-h4-color";s:0:"";s:16:"heading-h5-color";s:0:"";s:16:"heading-h6-color";s:0:"";}s:5:"fonts";a:45:{s:12:"content-font";s:12:"Josefin Sans";s:9:"menu-font";s:9:"Courgette";s:14:"pagetitle-font";s:12:"Josefin Sans";s:7:"h1-font";s:12:"Josefin Sans";s:7:"h2-font";s:12:"Josefin Sans";s:7:"h3-font";s:12:"Josefin Sans";s:7:"h4-font";s:12:"Josefin Sans";s:7:"h5-font";s:12:"Josefin Sans";s:7:"h6-font";s:12:"Josefin Sans";s:10:"font-style";a:4:{i:0;s:3:"300";i:1;s:3:"400";i:2;s:9:"400italic";i:3;s:3:"600";}s:11:"font-subset";s:0:"";s:15:"customfont-name";s:0:"";s:15:"customfont-woff";s:0:"";s:14:"customfont-ttf";s:0:"";s:14:"customfont-svg";s:0:"";s:14:"customfont-eot";s:0:"";s:16:"customfont2-name";s:0:"";s:16:"customfont2-woff";s:0:"";s:15:"customfont2-ttf";s:0:"";s:15:"customfont2-svg";s:0:"";s:15:"customfont2-eot";s:0:"";s:17:"content-font-size";s:2:"18";s:14:"menu-font-size";s:2:"18";s:12:"h1-font-size";s:2:"30";s:12:"h2-font-size";s:2:"24";s:12:"h3-font-size";s:2:"18";s:12:"h4-font-size";s:2:"16";s:12:"h5-font-size";s:2:"14";s:12:"h6-font-size";s:2:"13";s:16:"footer-font-size";s:2:"16";s:11:"menu-weight";s:6:"normal";s:9:"h1-weight";s:6:"normal";s:9:"h2-weight";s:6:"normal";s:9:"h3-weight";s:6:"normal";s:9:"h4-weight";s:6:"normal";s:9:"h5-weight";s:6:"normal";s:9:"h6-weight";s:6:"normal";s:19:"menu-letter-spacing";s:3:"0px";s:17:"h1-letter-spacing";s:5:"0.5px";s:17:"h2-letter-spacing";s:5:"0.5px";s:17:"h3-letter-spacing";s:5:"0.5px";s:17:"h4-letter-spacing";s:5:"0.5px";s:17:"h5-letter-spacing";s:5:"0.5px";s:17:"h6-letter-spacing";s:5:"0.5px";s:16:"body-line-height";s:2:"30";}}