.elementor-43 .elementor-element.elementor-element-a5c7f8c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-43 .elementor-element.elementor-element-3bbde9a{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-43 .elementor-element.elementor-element-31b4d92{--display:flex;--min-height:600px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--overlay-opacity:0.47;--overlay-mix-blend-mode:multiply;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-43 .elementor-element.elementor-element-31b4d92:not(.elementor-motion-effects-element-type-background), .elementor-43 .elementor-element.elementor-element-31b4d92 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://sugartia-staging.digiglowmedia.gr/wp-content/uploads/2026/05/Sugartia_Drone_001_AS-scaled.jpg");background-size:cover;}.elementor-43 .elementor-element.elementor-element-31b4d92::before, .elementor-43 .elementor-element.elementor-element-31b4d92 > .elementor-background-video-container::before, .elementor-43 .elementor-element.elementor-element-31b4d92 > .e-con-inner > .elementor-background-video-container::before, .elementor-43 .elementor-element.elementor-element-31b4d92 > .elementor-background-slideshow::before, .elementor-43 .elementor-element.elementor-element-31b4d92 > .e-con-inner > .elementor-background-slideshow::before, .elementor-43 .elementor-element.elementor-element-31b4d92 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#0C1B42;--background-overlay:'';}.elementor-43 .elementor-element.elementor-element-575ec70{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-43 .elementor-element.elementor-element-2c6bb79{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-43 .elementor-element.elementor-element-1fea255{--display:flex;}.elementor-43 .elementor-element.elementor-element-ba9d9f0{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-field-type-html{padding-bottom:0px;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-button[type="submit"]{color:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-43 .elementor-element.elementor-element-39cfd74{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-43 .elementor-element.elementor-element-b3c8f9a{--grid-template-columns:repeat(0, auto);text-align:center;--grid-column-gap:19px;--grid-row-gap:0px;}.elementor-43 .elementor-element.elementor-element-b3c8f9a .elementor-social-icon{background-color:var( --e-global-color-primary );border-style:none;}.elementor-43 .elementor-element.elementor-element-b3c8f9a .elementor-social-icon i{color:var( --e-global-color-2a057cf );}.elementor-43 .elementor-element.elementor-element-b3c8f9a .elementor-social-icon svg{fill:var( --e-global-color-2a057cf );}.elementor-43 .elementor-element.elementor-element-b3c8f9a .elementor-social-icon:hover{background-color:var( --e-global-color-accent );}.elementor-43 .elementor-element.elementor-element-b3c8f9a .elementor-social-icon:hover i{color:var( --e-global-color-2a057cf );}.elementor-43 .elementor-element.elementor-element-b3c8f9a .elementor-social-icon:hover svg{fill:var( --e-global-color-2a057cf );}body:not(.rtl) .elementor-43 .elementor-element.elementor-element-8d846ff{left:1075px;}body.rtl .elementor-43 .elementor-element.elementor-element-8d846ff{right:1075px;}.elementor-43 .elementor-element.elementor-element-8d846ff{top:570px;}:root{--page-title-display:none;}@media(min-width:1025px){.elementor-43 .elementor-element.elementor-element-31b4d92:not(.elementor-motion-effects-element-type-background), .elementor-43 .elementor-element.elementor-element-31b4d92 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:767px){.elementor-43 .elementor-element.elementor-element-31b4d92{--min-height:250px;}}/* Start custom CSS *//* =========================================
   SUGARTIA — CONTACT PAGE
   Hero + Contact layout + Elementor form styling
   ========================================= */

.sg-contact-hero,
.sg-contact-main,
.sg-contact-hero *,
.sg-contact-main * {
  box-sizing: border-box;
}

/* ================================
   CONTACT HERO
   ================================ */

.sg-contact-hero {
  --sg-blue: #081f5f;
  --sg-deep: #07153d;
  --sg-pink: #9E236D;
  --sg-muted: #5d6884;

  position: relative;
  overflow: hidden;
  isolation: isolate;

  background:
    radial-gradient(circle at 18% 20%, rgba(158,35,109,0.26), transparent 30%),
    radial-gradient(circle at 84% 70%, rgba(255,255,255,0.10), transparent 34%),
    linear-gradient(180deg, #07153d 0%, #0C1B42 100%);
}

.sg-contact-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  background-image:
    linear-gradient(rgba(255,255,255,0.09) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.09) 1px, transparent 1px),
    radial-gradient(circle, rgba(243,165,207,0.14) 1px, transparent 2px);

  background-size:
    82px 82px,
    82px 82px,
    34px 34px;

  background-position:
    0 0,
    0 0,
    14px 18px;

  opacity: 0.18;
  mix-blend-mode: soft-light;
}

.sg-contact-hero::after {
  content: "";
  position: absolute;
  right: -120px;
  bottom: -140px;
  z-index: 0;

  width: 520px;
  height: 520px;
  border-radius: 999px;

  background:
    radial-gradient(circle, rgba(243,165,207,0.16), transparent 68%);

  pointer-events: none;
}

.sg-contact-hero-inner {
  position: relative;
  z-index: 2;

  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  min-height: 72vh;

  display: flex;
  align-items: center;
}

.sg-contact-kicker .elementor-heading-title {
  margin: 0 0 18px;

  color: #f3a5cf;
  font-size: 13px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.sg-contact-title .elementor-heading-title {
  margin: 0;

  max-width: 860px;

  color: #ffffff;
  font-size: clamp(52px, 7vw, 106px);
  line-height: 0.9;
  font-weight: 850;
  letter-spacing: -0.065em;

  text-shadow:
    0 18px 46px rgba(0,0,0,0.22);
}

.sg-contact-lead {
  max-width: 720px;
}

.sg-contact-lead,
.sg-contact-lead p {
  margin: 26px 0 0;

  color: rgba(255,255,255,0.78);
  font-size: 19px;
  line-height: 1.72;
}

.sg-contact-hero-button .elementor-button {
  margin-top: 34px;

  min-height: 54px;
  padding: 17px 24px;

  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.32);

  background: rgba(255,255,255,0.14);
  color: #ffffff;

  font-size: 15px;
  line-height: 1;
  font-weight: 850;

  box-shadow:
    0 18px 38px rgba(0,0,0,0.16),
    inset 0 1px 0 rgba(255,255,255,0.18);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);

  transition:
    transform 0.32s cubic-bezier(.22, 1, .36, 1),
    background 0.32s ease,
    border-color 0.32s ease,
    box-shadow 0.32s ease;
}

.sg-contact-hero-button .elementor-button:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,0.22);
  border-color: rgba(255,255,255,0.46);
  box-shadow:
    0 22px 46px rgba(0,0,0,0.20),
    inset 0 1px 0 rgba(255,255,255,0.22);
}

/* ================================
   MAIN CONTACT SECTION
   ================================ */

.sg-contact-main {
  --sg-blue: #081f5f;
  --sg-pink: #9E236D;
  --sg-muted: #5d6884;

  position: relative;
  overflow: hidden;

  padding: clamp(86px, 8vw, 124px) 20px;

  background:
    radial-gradient(circle at 16% 20%, rgba(158,35,109,0.08), transparent 30%),
    radial-gradient(circle at 86% 76%, rgba(8,31,95,0.09), transparent 34%),
    linear-gradient(180deg, #f7f9ff 0%, #ffffff 100%);
}

.sg-contact-main::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;

  background-image:
    linear-gradient(rgba(8,31,95,0.065) 1px, transparent 1px),
    linear-gradient(90deg, rgba(8,31,95,0.065) 1px, transparent 1px),
    radial-gradient(circle, rgba(158,35,109,0.13) 1.05px, transparent 2px),
    radial-gradient(circle, rgba(8,31,95,0.10) 1.05px, transparent 2px);

  background-size:
    74px 74px,
    74px 74px,
    30px 30px,
    44px 44px;

  background-position:
    0 0,
    0 0,
    12px 16px,
    26px 22px;

  opacity: 0.62;
  pointer-events: none;
}

.sg-contact-main-inner {
  position: relative;
  z-index: 2;

  width: min(1180px, 100%);
  margin: 0 auto;

  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(34px, 6vw, 78px);
  align-items: stretch;
}

/* Info panel */

.sg-contact-info-panel,
.sg-contact-form-panel {
  border-radius: 38px;
}

.sg-contact-info-panel {
  padding: clamp(30px, 4vw, 46px);

  background:
    radial-gradient(circle at 14% 10%, rgba(255,255,255,0.94), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,0.88), rgba(255,250,253,0.74));

  border: 1px solid rgba(219,195,210,0.62);

  box-shadow:
    0 26px 68px rgba(8,31,95,0.10),
    0 10px 24px rgba(158,35,109,0.05),
    inset 0 1px 0 rgba(255,255,255,0.94);

  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.sg-contact-info-kicker {
  margin-bottom: 16px;

  color: var(--sg-pink);
  font-size: 13px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.sg-contact-info-content h2 {
  margin: 0;

  color: var(--sg-blue);
  font-size: clamp(38px, 4.6vw, 68px);
  line-height: 0.98;
  font-weight: 850;
  letter-spacing: -0.055em;
}

.sg-contact-info-content > p {
  margin: 20px 0 0;

  color: var(--sg-muted);
  font-size: 17.5px;
  line-height: 1.68;
}

.sg-contact-card-list {
  display: grid;
  gap: 14px;

  margin-top: 30px;
}

.sg-contact-card {
  position: relative;
  overflow: hidden;

  padding: 20px 20px 20px 24px;

  border-radius: 24px;

  background:
    linear-gradient(135deg, rgba(255,255,255,0.86), rgba(255,250,253,0.66));

  border: 1px solid rgba(219,195,210,0.58);

  box-shadow:
    0 16px 34px rgba(8,31,95,0.07),
    inset 0 1px 0 rgba(255,255,255,0.92);
}

.sg-contact-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 18px;
  bottom: 18px;

  width: 4px;
  border-radius: 999px;

  background: var(--sg-pink);
}

.sg-contact-card span {
  display: block;
  margin-bottom: 8px;

  color: var(--sg-pink);
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.sg-contact-card strong {
  display: block;

  color: var(--sg-blue);
  font-size: 20px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.sg-contact-card p {
  margin: 10px 0 0;

  color: var(--sg-muted);
  font-size: 15.5px;
  line-height: 1.58;
}

.sg-contact-card a {
  color: inherit;
  text-decoration: none;
}

.sg-contact-card a:hover {
  color: var(--sg-pink);
}

.sg-contact-card-soft {
  background:
    radial-gradient(circle at 16% 12%, rgba(158,35,109,0.10), transparent 40%),
    linear-gradient(135deg, rgba(255,255,255,0.92), rgba(247,249,255,0.76));
}

/* Form panel */

.sg-contact-form-panel {
  padding: clamp(30px, 4vw, 46px);

  background:
    radial-gradient(circle at 14% 10%, rgba(255,255,255,0.94), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,0.90), rgba(247,249,255,0.78));

  border: 1px solid rgba(219,195,210,0.62);

  box-shadow:
    0 26px 68px rgba(8,31,95,0.10),
    0 10px 24px rgba(158,35,109,0.05),
    inset 0 1px 0 rgba(255,255,255,0.94);

  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

/* Elementor Form styling */

.sg-contact-form-widget .elementor-field-group {
  margin-bottom: 16px;
}

.sg-contact-form-widget label {
  margin-bottom: 8px;

  color: var(--sg-blue);
  font-size: 13px;
  line-height: 1;
  font-weight: 850;
  letter-spacing: -0.01em;
}

.sg-contact-form-widget input,
.sg-contact-form-widget textarea,
.sg-contact-form-widget select {
  min-height: 54px;

  border-radius: 18px !important;
  border: 1px solid rgba(8,31,95,0.14) !important;

  background: rgba(255,255,255,0.74) !important;
  color: var(--sg-blue) !important;

  box-shadow:
    0 12px 26px rgba(8,31,95,0.05),
    inset 0 1px 0 rgba(255,255,255,0.90);

  transition:
    border-color 0.28s ease,
    box-shadow 0.28s ease,
    background 0.28s ease;
}

.sg-contact-form-widget textarea {
  min-height: 150px;
  resize: vertical;
}

.sg-contact-form-widget input:focus,
.sg-contact-form-widget textarea:focus,
.sg-contact-form-widget select:focus {
  border-color: rgba(158,35,109,0.36) !important;
  background: #ffffff !important;

  box-shadow:
    0 16px 34px rgba(8,31,95,0.08),
    0 6px 18px rgba(158,35,109,0.08),
    inset 0 1px 0 rgba(255,255,255,0.96);
}

.sg-contact-form-widget .elementor-field-type-acceptance label {
  color: var(--sg-muted);
  font-size: 13.5px;
  line-height: 1.45;
  font-weight: 600;
}

.sg-contact-form-widget .elementor-button {
  min-height: 54px;
  padding: 17px 28px;

  border-radius: 999px !important;

  background: var(--sg-pink) !important;
  color: #ffffff !important;

  font-size: 15px;
  line-height: 1;
  font-weight: 850;

  box-shadow:
    0 18px 38px rgba(158,35,109,0.22),
    inset 0 1px 0 rgba(255,255,255,0.20);

  transition:
    transform 0.32s cubic-bezier(.22, 1, .36, 1),
    background 0.32s ease,
    box-shadow 0.32s ease;
}

.sg-contact-form-widget .elementor-button:hover {
  transform: translateY(-3px);

  background: var(--sg-blue) !important;

  box-shadow:
    0 22px 46px rgba(8,31,95,0.22),
    0 10px 26px rgba(158,35,109,0.10),
    inset 0 1px 0 rgba(255,255,255,0.20);
}

/* Tablet */

@media (max-width: 1024px) {
  .sg-contact-hero-inner {
    min-height: 680px;
    justify-content: center;
    text-align: center;
  }

  .sg-contact-title .elementor-heading-title,
  .sg-contact-lead {
    margin-left: auto;
    margin-right: auto;
  }

  .sg-contact-main-inner {
    grid-template-columns: 1fr;
    width: min(760px, 100%);
  }
}

/* Mobile */

@media (max-width: 767px) {
  .sg-contact-hero-inner {
    width: calc(100% - 36px);
    min-height: 620px;
  }

  .sg-contact-title .elementor-heading-title {
    font-size: clamp(42px, 13vw, 58px);
    line-height: 0.94;
  }

  .sg-contact-lead,
  .sg-contact-lead p {
    font-size: 16.5px;
    line-height: 1.62;
  }

  .sg-contact-main {
    padding: 72px 16px;
  }

  .sg-contact-info-panel,
  .sg-contact-form-panel {
    padding: 28px 20px;
    border-radius: 30px;
  }

  .sg-contact-info-content h2 {
    font-size: clamp(32px, 10vw, 46px);
    line-height: 1;
  }

  .sg-contact-card strong {
    font-size: 18px;
  }
}

/* =========================================
   CONTACT PAGE — FIRST FIX PATCH
   Hero readability + Greek uppercase + spacing
   ========================================= */

.sg-contact-kicker .elementor-heading-title,
.sg-contact-info-kicker,
.sg-contact-card span {
  text-transform: none !important;
}

/* HERO — stronger color overrides because Elementor may be overriding heading styles */
.sg-contact-title .elementor-heading-title,
.sg-contact-title h1,
.sg-contact-title h2,
.sg-contact-title {
  color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.sg-contact-kicker .elementor-heading-title,
.sg-contact-kicker {
  color: #f3a5cf !important;
  opacity: 1 !important;
}

.sg-contact-lead,
.sg-contact-lead p {
  color: rgba(255,255,255,0.80) !important;
}

/* HERO — better height and vertical balance */
.sg-contact-hero-inner {
  min-height: clamp(620px, 72vh, 760px) !important;
  padding-top: 96px !important;
  padding-bottom: 82px !important;
  align-items: center !important;
}

/* HERO title: slightly smaller so it does not feel hidden/oversized */
.sg-contact-title .elementor-heading-title {
  max-width: 980px !important;
  font-size: clamp(54px, 6.4vw, 96px) !important;
  line-height: 0.92 !important;
  letter-spacing: -0.06em !important;
}

/* HERO lead/button alignment */
.sg-contact-lead {
  max-width: 820px !important;
}

.sg-contact-hero-button .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* CONTACT SECTION — avoid form sticking too high visually */
.sg-contact-main {
  padding-top: clamp(92px, 8vw, 128px) !important;
  padding-bottom: clamp(92px, 8vw, 128px) !important;
}

.sg-contact-main-inner {
  align-items: start !important;
}

/* Panels: make them more consistent */
.sg-contact-info-panel,
.sg-contact-form-panel {
  height: auto !important;
  align-self: start !important;
}

/* Left panel title balance */
.sg-contact-info-content h2 {
  font-size: clamp(42px, 4.4vw, 64px) !important;
  line-height: 0.98 !important;
}

/* Contact card labels: manually uppercase, no tonos */
.sg-contact-card span {
  font-size: 12px !important;
  letter-spacing: 0.16em !important;
}

/* Form labels: keep normal case, not uppercase */
.sg-contact-form-widget label {
  text-transform: none !important;
}

/* Form input placeholders: softer and readable */
.sg-contact-form-widget input::placeholder,
.sg-contact-form-widget textarea::placeholder {
  color: rgba(8,31,95,0.48) !important;
  opacity: 1 !important;
}

/* Make acceptance checkbox cleaner */
.sg-contact-form-widget .elementor-field-type-acceptance {
  margin-top: 4px !important;
}

.sg-contact-form-widget .elementor-field-type-acceptance input {
  min-height: auto !important;
  box-shadow: none !important;
}

/* Mobile/tablet hero balance */
@media (max-width: 1024px) {
  .sg-contact-hero-inner {
    min-height: 660px !important;
    padding-top: 104px !important;
    padding-bottom: 72px !important;
  }

  .sg-contact-title .elementor-heading-title {
    font-size: clamp(48px, 9vw, 76px) !important;
  }
}

@media (max-width: 767px) {
  .sg-contact-hero-inner {
    width: calc(100% - 36px) !important;
    min-height: 620px !important;
    padding-top: 96px !important;
    padding-bottom: 64px !important;
  }

  .sg-contact-title .elementor-heading-title {
    font-size: clamp(42px, 12vw, 58px) !important;
    line-height: 0.96 !important;
  }

  .sg-contact-lead,
  .sg-contact-lead p {
    font-size: 16.5px !important;
    line-height: 1.62 !important;
  }

  .sg-contact-main {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }
}

/* =========================================
   CONTACT PAGE — INTERACTION POLISH
   Cards + form focus + button animations
   ========================================= */

/* ================================
   CONTACT CARDS — HOVER INTERACTION
   ================================ */

.sg-contact-card {
  position: relative;
  isolation: isolate;

  transition:
    transform 0.34s cubic-bezier(.22, 1, .36, 1),
    border-color 0.34s ease,
    box-shadow 0.34s ease,
    background 0.34s ease;
}

/* animated left line */
.sg-contact-card::before {
  transition:
    top 0.34s cubic-bezier(.22, 1, .36, 1),
    bottom 0.34s cubic-bezier(.22, 1, .36, 1),
    width 0.34s cubic-bezier(.22, 1, .36, 1),
    box-shadow 0.34s ease;
}

/* soft shine sweep */
.sg-contact-card::after {
  content: "";
  position: absolute;
  inset: -70%;
  z-index: 0;
  pointer-events: none;

  background:
    linear-gradient(
      115deg,
      transparent 0%,
      transparent 32%,
      rgba(255,255,255,0.16) 39%,
      rgba(255,255,255,0.68) 48%,
      rgba(158,35,109,0.12) 55%,
      rgba(255,255,255,0.28) 62%,
      transparent 74%,
      transparent 100%
    );

  opacity: 0;
  transform: translateX(-38%) rotate(10deg);

  transition:
    opacity 0.34s ease,
    transform 0.76s cubic-bezier(.22, 1, .36, 1);
}

.sg-contact-card > * {
  position: relative;
  z-index: 2;
}

.sg-contact-card:hover {
  transform: translateY(-5px);

  border-color: rgba(158,35,109,0.24);

  background:
    radial-gradient(circle at 16% 12%, rgba(158,35,109,0.09), transparent 42%),
    linear-gradient(135deg, rgba(255,255,255,0.94), rgba(255,250,253,0.74));

  box-shadow:
    0 24px 54px rgba(8,31,95,0.11),
    0 10px 26px rgba(158,35,109,0.08),
    inset 0 1px 0 rgba(255,255,255,0.96);
}

.sg-contact-card:hover::before {
  top: 14px;
  bottom: 14px;
  width: 5px;

  box-shadow:
    0 0 18px rgba(158,35,109,0.24);
}

.sg-contact-card:hover::after {
  opacity: 1;
  transform: translateX(38%) rotate(10deg);
}

.sg-contact-card:hover strong {
  color: var(--sg-pink);
}

/* ================================
   FORM PANEL — FOCUS GLOW
   ================================ */

.sg-contact-form-panel {
  transition:
    border-color 0.34s ease,
    box-shadow 0.34s ease,
    transform 0.34s cubic-bezier(.22, 1, .36, 1);
}

.sg-contact-form-panel:focus-within {
  border-color: rgba(158,35,109,0.26);

  box-shadow:
    0 30px 74px rgba(8,31,95,0.13),
    0 12px 30px rgba(158,35,109,0.08),
    inset 0 1px 0 rgba(255,255,255,0.96);
}

/* ================================
   INPUTS — CLEAN FOCUS MOTION
   ================================ */

.sg-contact-form-widget input,
.sg-contact-form-widget textarea,
.sg-contact-form-widget select {
  transition:
    transform 0.24s cubic-bezier(.22, 1, .36, 1),
    border-color 0.28s ease,
    box-shadow 0.28s ease,
    background 0.28s ease;
}

.sg-contact-form-widget input:focus,
.sg-contact-form-widget textarea:focus,
.sg-contact-form-widget select:focus {
  transform: translateY(-2px);
}

/* ================================
   HERO BUTTON + SUBMIT BUTTON
   Shine sweep + arrow reveal
   ================================ */

.sg-contact-hero-button .elementor-button,
.sg-contact-form-widget .elementor-button {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.sg-contact-hero-button .elementor-button::before,
.sg-contact-form-widget .elementor-button::before {
  content: "";
  position: absolute;
  inset: -80%;
  z-index: 0;
  pointer-events: none;

  background:
    linear-gradient(
      115deg,
      transparent 0%,
      transparent 34%,
      rgba(255,255,255,0.18) 40%,
      rgba(255,255,255,0.74) 48%,
      rgba(255,255,255,0.26) 58%,
      transparent 72%,
      transparent 100%
    );

  opacity: 0;
  transform: translateX(-42%) rotate(10deg);

  transition:
    opacity 0.28s ease,
    transform 0.72s cubic-bezier(.22, 1, .36, 1);
}

.sg-contact-hero-button .elementor-button:hover::before,
.sg-contact-form-widget .elementor-button:hover::before {
  opacity: 1;
  transform: translateX(42%) rotate(10deg);
}

.sg-contact-hero-button .elementor-button-content-wrapper,
.sg-contact-form-widget .elementor-button-content-wrapper {
  position: relative;
  z-index: 2;
}

/* Arrow reveal for Elementor buttons */
.sg-contact-hero-button .elementor-button-text,
.sg-contact-form-widget .elementor-button-text {
  display: inline-flex;
  align-items: center;
}

.sg-contact-hero-button .elementor-button-text::after,
.sg-contact-form-widget .elementor-button-text::after {
  content: "→";
  display: inline-block;

  max-width: 0;
  opacity: 0;
  overflow: hidden;
  margin-left: 0;

  transform: translateX(-6px);

  transition:
    max-width 0.32s cubic-bezier(.22, 1, .36, 1),
    opacity 0.22s ease,
    margin-left 0.32s cubic-bezier(.22, 1, .36, 1),
    transform 0.32s cubic-bezier(.22, 1, .36, 1);
}

.sg-contact-hero-button .elementor-button:hover .elementor-button-text::after,
.sg-contact-form-widget .elementor-button:hover .elementor-button-text::after {
  max-width: 18px;
  opacity: 1;
  margin-left: 10px;
  transform: translateX(0);
}

/* ================================
   FORM SUBMIT — slightly richer hover
   ================================ */

.sg-contact-form-widget .elementor-button:hover {
  letter-spacing: 0.01em;
}

/* ================================
   REDUCED MOTION SAFETY
   ================================ */

@media (prefers-reduced-motion: reduce) {
  .sg-contact-card,
  .sg-contact-card::before,
  .sg-contact-card::after,
  .sg-contact-form-panel,
  .sg-contact-form-widget input,
  .sg-contact-form-widget textarea,
  .sg-contact-form-widget select,
  .sg-contact-hero-button .elementor-button,
  .sg-contact-form-widget .elementor-button,
  .sg-contact-hero-button .elementor-button::before,
  .sg-contact-form-widget .elementor-button::before,
  .sg-contact-hero-button .elementor-button-text::after,
  .sg-contact-form-widget .elementor-button-text::after {
    transition: none !important;
  }
}

/* =========================================
   CONTACT PAGE — HARD MOBILE/TABLET OVERFLOW FIX
   Paste at the VERY bottom of the Contact page CSS
   ========================================= */

@media (max-width: 1024px) {
  html,
  body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body,
  #page,
  .site,
  .elementor,
  .elementor-section,
  .elementor-container,
  .elementor-widget-wrap,
  .elementor-widget,
  .elementor-widget-container {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .sg-contact-hero,
  .sg-contact-main {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  .sg-contact-hero *,
  .sg-contact-main * {
    box-sizing: border-box !important;
  }

  .sg-contact-hero-inner,
  .sg-contact-main-inner,
  .sg-contact-info-panel,
  .sg-contact-form-panel,
  .sg-contact-info-content,
  .sg-contact-card-list,
  .sg-contact-card,
  .sg-contact-form-widget {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
  }

  .sg-contact-title,
  .sg-contact-title .elementor-heading-title,
  .sg-contact-lead,
  .sg-contact-lead p {
    max-width: 100% !important;
  }

  .sg-contact-form-widget form,
  .sg-contact-form-widget .elementor-form-fields-wrapper,
  .sg-contact-form-widget .elementor-field-group {
    width: 100% !important;
    max-width: 100% !important;
  }

  .sg-contact-form-widget input,
  .sg-contact-form-widget textarea,
  .sg-contact-form-widget select,
  .sg-contact-form-widget .elementor-button {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 767px) {
  .sg-contact-hero,
  .sg-contact-main {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .sg-contact-hero-inner {
    width: 100% !important;
    max-width: 100% !important;
  }

  .sg-contact-main-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .sg-contact-info-panel,
  .sg-contact-form-panel {
    width: 100% !important;
    max-width: 100% !important;
  }

  .sg-contact-card strong,
  .sg-contact-card p,
  .sg-contact-card a {
    overflow-wrap: anywhere;
    word-break: normal;
  }
}/* End custom CSS */