.elementor-6161 .elementor-element.elementor-element-95639a8{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-6161 .elementor-element.elementor-element-dd84ac7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;}.elementor-6161 .elementor-element.elementor-element-dd84ac7 img{width:200px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-6161 .elementor-element.elementor-element-15163ce{text-align:center;}.elementor-6161 .elementor-element.elementor-element-15163ce .elementor-heading-title{font-family:"Perpetua Titling MT", Sans-serif;font-size:47px;font-weight:400;}.elementor-6161 .elementor-element.elementor-element-fb6d2d6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-6161 .elementor-element.elementor-element-fb6d2d6 .elementor-heading-title{font-family:"Cera Pro", Sans-serif;font-size:28px;font-weight:500;color:var( --e-global-color-5f5e363 );}.elementor-6161 .elementor-element.elementor-element-20aadbb{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-6161 .elementor-element.elementor-element-20aadbb .elementor-heading-title{font-family:"Cera Pro", Sans-serif;font-size:24px;font-weight:400;color:var( --e-global-color-5f5e363 );}.elementor-6161 .elementor-element.elementor-element-52b54ee{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-6161 .elementor-element.elementor-element-9199669{width:initial;max-width:initial;}@media(max-width:1024px){.elementor-6161 .elementor-element.elementor-element-95639a8{--grid-auto-flow:row;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-6161 .elementor-element.elementor-element-52b54ee{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-6161 .elementor-element.elementor-element-95639a8{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-6161 .elementor-element.elementor-element-52b54ee{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS *//* =========================================
   HIDE HEADER & FOOTER
========================================= */
header.elementor-location-header,
footer.elementor-location-footer {
  display: none !important;
}
html { margin-top: 0 !important; }
body {
  background: #f5f3ef !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* =========================================
   FORM WRAPPER
========================================= */
#gform_wrapper_7 {
  max-width: 560px !important;
  width: 100% !important;
  margin: 0 auto 60px auto !important;
  background: #ffffff !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 32px rgba(0,0,0,0.10) !important;
  padding: 40px 44px !important;
  box-sizing: border-box !important;
}
@media (max-width: 640px) {
  #gform_wrapper_7 {
    padding: 28px 20px !important;
    border-radius: 12px !important;
    margin: 0 16px 40px 16px !important;
    width: calc(100% - 40px) !important;
  }
}
.elementor-widget-gravityforms {
  max-width: 560px !important;
  margin: 0 auto !important;
  width: 100% !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
}
@media (max-width: 640px) {
  .elementor-widget-gravityforms { padding: 0 !important; }
}

/* =========================================
   NAME FIELDS
========================================= */
.gform_wrapper .gfield--type-name .ginput_complex {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
}
@media (max-width: 480px) {
  .gform_wrapper .gfield--type-name .ginput_complex {
    grid-template-columns: 1fr !important;
  }
}
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"] {
  width: 100% !important;
  border: 1.5px solid #e0d9ce !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-size: 15px !important;
  color: #3a3028 !important;
  background: #fafaf8 !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  box-sizing: border-box !important;
  outline: none !important;
}
.gform_wrapper input[type="text"]:focus,
.gform_wrapper input[type="email"]:focus {
  border-color: #a07850 !important;
  box-shadow: 0 0 0 3px rgba(160,120,80,0.12) !important;
  background: #fff !important;
}
.gform_wrapper .gfield_label,
.gform_wrapper .gform-field-label:not(.gform-field-label--type-inline) {
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #6b5844 !important;
  margin-bottom: 8px !important;
  display: block !important;
}
.gform_wrapper .gfield_required,
.gform_wrapper .gfield_required_text {
  color: #a07850 !important;
  font-size: 11px !important;
}
.gform_wrapper .ginput_complex label,
.gform_wrapper .name_first label,
.gform_wrapper .name_last label {
  font-size: 11px !important;
  color: #9c8878 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-top: 5px !important;
}
.gform_wrapper .gfield {
  margin-bottom: 24px !important;
}
.gform_wrapper legend {
  border: none !important;
}
.gform_wrapper label.gform-field-label.gform-field-label--type-sub {
    font-size: 10px !important;
    font-weight: unset !important;
}

/* =========================================
   TIME SLOT CARDS
========================================= */

/* Keep the outer container as block */
.gfield--type-radio .ginput_container_radio {
  display: block !important;
  width: 100% !important;
}

/* Apply grid only to the inner gfield_radio */
.gfield--type-radio .gfield_radio {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 10px !important;
  margin-top: 10px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.gfield--type-radio .gchoice {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* Hide native radio */
.gfield--type-radio .gchoice input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
}

/* Card label */
.gfield--type-radio .gchoice label.gform-field-label--type-inline {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 12px 6px !important;
  border: 1.5px solid #e0d9ce !important;
  border-radius: 10px !important;
  background: #fafaf8 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #4a3c2e !important;
  cursor: pointer !important;
  transition: all 0.18s ease !important;
  text-align: center !important;
  user-select: none !important;
  min-height: 48px !important;
  box-sizing: border-box !important;
  white-space: nowrap !important;
}
.gfield--type-radio .gchoice label.gform-field-label--type-inline:hover {
  border-color: #a07850 !important;
  background: #fdf6ee !important;
  color: #7a5430 !important;
  box-shadow: 0 2px 10px rgba(160,120,80,0.12) !important;
}
.gfield--type-radio .gchoice input[type="radio"]:checked + label.gform-field-label--type-inline {
  border-color: #a07850 !important;
  background: #a07850 !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  box-shadow: 0 3px 12px rgba(160,120,80,0.30) !important;
}
@media (max-width: 480px) {
  .gfield--type-radio .gfield_radio {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

/* =========================================
   SUBMIT BUTTON
========================================= */
.gform_wrapper .gform_button,
.gform_wrapper input[type="submit"],
.gform_wrapper button[type="submit"] {
  width: 100% !important;
  padding: 14px 28px !important;
  background: #a07850 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s, transform 0.1s, box-shadow 0.2s !important;
  margin-top: 8px !important;
  box-shadow: 0 3px 12px rgba(160,120,80,0.25) !important;
}
.gform_wrapper .gform_button:hover,
.gform_wrapper input[type="submit"]:hover {
  background: #8a6640 !important;
  box-shadow: 0 5px 18px rgba(160,120,80,0.35) !important;
  transform: translateY(-1px) !important;
}
.gform_wrapper .validation_message,
.gform_wrapper .gfield_validation_message {
  color: #c0392b !important;
  font-size: 12px !important;
  margin-top: 4px !important;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Perpetua Titling MT';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/perpetua-titling-mt-light.woff') format('woff');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Cera Pro';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Regular.woff2') format('woff2'),
		url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Regular.woff') format('woff'),
		url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Cera Pro';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Medium.woff2') format('woff2'),
		url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Medium.woff') format('woff'),
		url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'Cera Pro';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Bold.woff2') format('woff2'),
		url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Bold.woff') format('woff'),
		url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'Cera Pro';
	font-style: normal;
	font-weight: 900;
	font-display: auto;
	src: url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Black.woff2') format('woff2'),
		url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Black.woff') format('woff'),
		url('https://theartoftouchmassage.com/wp-content/uploads/2025/08/CeraPro-Black.ttf') format('truetype');
}
/* End Custom Fonts CSS */