/*
Theme Name: TheGem Elementor Child
Description: Multi-Purpose Wordpress Theme
Author: Codex Themes.
Theme URI: http://codex-themes.com/thegem/
Author URI: http://codex-themes.com/thegem/
Template: thegem-elementor
Version: 1.0
Tags: one-column, two-columns, left-sidebar, right-sidebar, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, featured-images, flexible-header, full-width-template, theme-options, translation-ready, dark, light
License: GNU General Public License
License URI: license.txt
*/
html {
	scroll-behavior: smooth !important;
}
h1,h2,h3,h4,h5,h6 {letter-spacing:0 !important;}
.thegem-te-menu .menu-toggle .menu-line-1 { left:6px; }
.menu-toggle dl-trigger { background: #eb282c; width: 30px; height: 30px; text-align: center; border-radius: 50px;}
.hidedesktop { display:none; }
.ourvismis h3{ margin:0px; }
.ourvismis .left .elementor-icon { border: 4px solid #eef2fc;  box-shadow: 0 0 0px 1px #1c44b5;}
.ourvismis .right .elementor-icon { border: 4px solid #eef2fc; box-shadow: 0 0 0px 1px #fb2f2a;}

.contactpage .wpcf7-form  .wpcf7-form-control-wrap { display: inline-block; background: #fff2f0;  border-radius: 10px;    padding: 12px; box-shadow: 0 1px 3px 2px #ffded7; }
.contactpage .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-radio), .combobox-wrapper {    border-color: #ffd4ce !important; }
.contactpage. .wpcf7-textarea{ height:100px; }
.contactpage .wpcf7-submit {     width: 200px !important; margin: 0 0 20px !important; }

.beautymegamenu .icon, .baw-icon-circle { text-align:center; line-height:50px;  background: #EC272D; border-radius: 50px;  width: 40px; height: 40px; }
.beautymegamenu .icon svg, .baw-icon-circle svg { width:24px; height:24px; fill:#fff; }
.instagram-card{ margin:auto; background:#fff;    border-radius:20px;  overflow:hidden;  box-shadow:0 20px 50px rgba(0,0,0,.08); border:1px solid #f2f2f2; }
.instagram-card-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:25px 30px;
    background:linear-gradient(135deg,#394FB5,#FC3530);
    color:#fff;
}
.instagram-icon{
    width:60px;
    height:60px;
    border-radius:50%;
    background:rgba(255,255,255,.15);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:28px;
}
.instagram-title{
    flex:1;
    margin-left:18px;
}
.instagram-title h3{
    margin:0;
    font-size:24px;
}
.instagram-title p{
    margin:5px 0 0;
    opacity:.9;
}
.instagram-btn{
    background:#fff;
    color:#FC3530;
    padding:12px 28px;
    border-radius:40px;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}
.instagram-btn:hover{
    background:#FC3530;
    color:#fff;
}
.instagram-card-body{
    padding:30px;
    background:#fafafa;
}
/* Instagram Embed */
.instagram-media{
    margin:0 auto !important;
    width:100% !important;
    max-width:100% !important;
    border-radius:15px !important;
    box-shadow:none !important;
    border:1px solid #eee !important;
}
.instagram-media iframe{
    width:100% !important;
    max-width:100% !important;
}
li.megamenu-template-enable { padding-bottom:0px !important; }
.servicetitle .attachment-full {
    background: #FD3631;
    border-radius: 50%;
    width: 70px;
    height: 70px;}
.servicetitle .attachment-full:hover{ background:#000; }
.servicetitle figure { margin:0px !important; }
html {
  scroll-behavior: smooth;
}
.wpcf7-response-output { margin:0px !important; }
input[type="text"], input[type="password"], input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="number"], input[type="range"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="month"], input[type="week"], textarea, select, .chosen-container-single .chosen-single, .select2-container .select2-choice, .widget_product_search form:before { font-weight:500 !important; }
a.design:hover { color:#FC1F24 !important; }


.bridal-appt-form {
  max-width: 780px;
  margin: 0 auto;
  padding: 20px;
  background: #FDFAF6;
  border: 1px solid #E8DCD3;
  color: #2B2320;
}

.bridal-appt-form__header {
  text-align: center;
  margin-bottom: 36px;
}

.bridal-appt-form__mark {
  display: block;
  color: #C9A227;
  font-size: 14px;
  margin-bottom: 12px;
}

.bridal-appt-form__header h2 {
  font-weight: 600;
  font-size: 34px;
  letter-spacing: 0.02em;
  color: #6B1E3C;
  margin: 0 0 8px;
}

.bridal-appt-form__header p {
  font-size: 14px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #8A7A6D;
  margin: 0;
}

.bridal-appt-form__row {
  display: flex;
  gap: 24px;
  margin-bottom: 20px;
}

.bridal-appt-form__field {
  flex: 1;
  margin-bottom: 20px;
}

.bridal-appt-form__field--full {
  width: 100%;
}

.bridal-appt-form label {
  display: block;

  font-size: 16px;
  font-weight: 600;
  color: #6B1E3C;
  margin-bottom: 6px;
  letter-spacing: 0.01em;
}

.bridal-appt-form input[type="text"],
.bridal-appt-form input[type="tel"],
.bridal-appt-form input[type="email"],
.bridal-appt-form input[type="date"],
.bridal-appt-form select,
.bridal-appt-form textarea {
  width: 100%;
  padding: 10px 4px;
  font-size: 15px;
  color: #2B2320;
  background: transparent;
  border: none;
  border-bottom: 1.5px solid #D9C9BE;
  border-radius: 0;
  transition: border-color 0.25s ease;
}

.bridal-appt-form select {
  padding: 10px 4px;
  background: #FDFAF6;
  cursor: pointer;
}

.bridal-appt-form textarea {
  height: 90px;
  resize: vertical;
}

.bridal-appt-form input:focus,
.bridal-appt-form select:focus,
.bridal-appt-form textarea:focus {
  outline: none;
  border-bottom-color: #C9A227;
}

.bridal-appt-form input::placeholder,
.bridal-appt-form textarea::placeholder {
  color: #B6A79B;
}

.bridal-appt-form__submit {
  text-align: center;
  margin-top: 36px;
}

.bridal-appt-form__divider {
  display: block;
  color: #C9A227;
  font-size: 12px;
  margin-bottom: 18px;
}

.bridal-appt-form input[type="submit"] {
  background: #6B1E3C;
  color: #FDFAF6;
  border: none;
  padding: 14px 44px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.25s ease;
}

.bridal-appt-form input[type="submit"]:hover {
  background: #8A2A54;
}

.bridal-appt-form input[type="submit"]:focus-visible,
.bridal-appt-form input:focus-visible,
.bridal-appt-form select:focus-visible,
.bridal-appt-form textarea:focus-visible {
  outline: 2px solid #C9A227;
  outline-offset: 2px;
}
body.page-id-5068 .block-content:last-of-type {
    padding-bottom: 40px !important;
}
body.page-id-5068 .block-content {
    padding-top: 40px !important;
}
.wpcf7  input[type='submit']:not(.gem-button-wpcf-custom) {
    width: auto;
}
@media (max-width: 600px) {
  .bridal-appt-form {
    padding: 32px 20px;
  }
  .bridal-appt-form__row {
    flex-direction: column;
    gap: 0;
  }
  .bridal-appt-form__header h2 {
    font-size: 28px;
  }
}
@media(min-width:1200px) and (max-width:1360px){
	#menu-main-menu li a { padding:0px 10px !important; }
}
@media(max-width:768px){
.instagram-card-header{ flex-direction:column; text-align:center; gap:15px;}
.instagram-title{ margin-left:0;}
.instagram-card-body{ padding:15px;}
}
@media(max-width:767px){
	h1, .title-h1, body .gem-style-text.title-h1 { font-size: 48px !important; line-height: 58px !important; }
	#page-title { padding-top: 70px !important; padding-bottom: 70px !important; }
}