@font-face{font-family:Inter;src:url('../fonts/inter-latin.woff2') format('woff2');font-style:normal;font-weight:300 600;font-display:swap}
@font-face{font-family:'Playfair Display';src:url('../fonts/playfair-normal.woff2') format('woff2');font-style:normal;font-weight:600 700;font-display:swap}
@font-face{font-family:'Playfair Display';src:url('../fonts/playfair-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}

/* Elementor wrappers have no counterpart in the original layout. */
body.sp-pelvico-page{margin:0;background:#fff}
.elementor-element.elementor-widget-sp-pelvico-section,
.elementor-widget-sp-pelvico-section>.elementor-widget-container{
  width:100%;max-width:none;margin:0;padding:0;align-self:stretch;
}
.e-con:has(>.elementor-widget-sp-pelvico-section),
.e-con:has(>.e-con-inner>.elementor-widget-sp-pelvico-section),
.e-con-inner:has(>.elementor-widget-sp-pelvico-section),
.e-con:has(>.sp-contact-section){
  --container-max-width:100%;--widgets-spacing:0px;--widgets-spacing-row:0px;
  width:100%;max-width:none;margin:0;padding:0;gap:0;
}
.elementor .sp-section{
  --primary-color:#0a3d3d;--accent-color:#e67e8e;
  display:flow-root;width:100%;margin:0;padding:0;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:16px;font-weight:400;
  font-style:normal;line-height:1.5;letter-spacing:normal;color:var(--color-stone-900);
  text-align:left;-webkit-font-smoothing:antialiased;
}
.elementor .sp-section :where(h1,h2,h3,h4,h5,h6){line-height:inherit}
.elementor .sp-section :where(button){cursor:pointer}
.elementor .sp-section :where(a,button):focus-visible{outline:2px solid #e67e8e;outline-offset:4px}
.elementor .sp-section .sp-page-chunk{display:flow-root}
.elementor .sp-section .sp-page-start{padding-top:64px}
.elementor .sp-section .sp-page-end{padding-bottom:64px}
.elementor .sp-section .sp-problem-gap{padding-bottom:80px}
.elementor .sp-section .sp-aurela-photo{aspect-ratio:3/4;height:auto;object-fit:contain;object-position:bottom;background:#fdf2f2}
@media(min-width:48rem){
  .elementor .sp-section .sp-page-start{padding-top:96px}
  .elementor .sp-section .sp-page-end{padding-bottom:96px}
  .elementor .sp-section .sp-problem-gap{padding-bottom:128px}
}
/* The entire Elementor header container sticks, not its short inner widget. */
.sp-pelvico-page .elementor>.e-con:has(.sp-section-header){position:sticky;top:0;z-index:100}
.admin-bar.sp-pelvico-page .elementor>.e-con:has(.sp-section-header){top:32px}
@media(max-width:782px){.admin-bar.sp-pelvico-page .elementor>.e-con:has(.sp-section-header){top:46px}}
@media(max-width:600px){.admin-bar.sp-pelvico-page .elementor>.e-con:has(.sp-section-header){top:0}}
.elementor-editor-active .elementor>.e-con:has(.sp-section-header){position:relative;top:auto}
.elementor .sp-section .sp-review-card{transition:opacity .3s ease}
.elementor .sp-section .sp-step-number{color:#e67e8e;transition:color .6s ease}
.sp-js .elementor .sp-section .sp-reveal:not(.sp-revealed)>.sp-step-number{color:#fdf2f2}
.elementor .sp-section .sp-reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){
  .sp-js .elementor .sp-section .sp-reveal[data-sp-observed]:not(.sp-revealed){opacity:0;transform:translateY(20px)}
  .sp-js .elementor .sp-section .sp-reveal{transition:opacity .6s ease,transform .6s ease}
}
.elementor-editor-active .elementor .sp-section .sp-reveal{opacity:1!important;transform:none!important}

/* The Theme Builder owns the sticky header after migration. */
.elementor-location-header:has(.sp-section-header){position:sticky;top:0;z-index:100;width:100%}
.admin-bar .elementor-location-header:has(.sp-section-header){top:32px}
.sp-global-layout .elementor-location-header>.e-con:has(.sp-section-header){position:static}
.elementor-editor-active .elementor-location-header:has(.sp-section-header){position:relative;top:auto}
@media(max-width:782px){.admin-bar .elementor-location-header:has(.sp-section-header){top:46px}}
@media(max-width:600px){.admin-bar .elementor-location-header:has(.sp-section-header){top:0}}

/* Native Elementor contact form in the existing petroleum card. */
body .elementor .e-con.sp-contact-section{display:flex;max-width:1152px;width:100%;margin:0 auto;padding:96px 24px;gap:0;scroll-margin-top:120px}
body .elementor .e-con.sp-contact-card{position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:none;padding:80px;border-radius:48px;background:#0a3d3d;color:#fff;box-shadow:0 25px 50px -12px #0004;gap:0;font:400 16px/1.5 Inter,sans-serif;text-align:left}
.elementor .e-con.sp-contact-card::before{left:auto;bottom:auto;content:"";position:absolute;z-index:-1;width:384px;height:384px;top:-192px;right:-192px;background:#e67e8e33;border-radius:50%;filter:blur(90px);pointer-events:none}
body .elementor .e-con.sp-contact-card>.elementor-element{width:100%;max-width:none;margin:0}
body .elementor .e-con.sp-contact-card .sp-contact-heading .elementor-heading-title{font:600 36px/1.25 'Playfair Display',serif;color:#fff;letter-spacing:normal;margin:0 0 24px}
body .elementor .e-con.sp-contact-card .sp-contact-intro{max-width:768px;color:#d6d3d1;font:400 18px/1.65 Inter,sans-serif;margin:0 0 32px}
body .elementor .e-con.sp-contact-card .sp-contact-intro p{margin:0}
body .elementor .e-con.sp-contact-card .sp-contact-form{font:400 16px/1.5 Inter,sans-serif}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-form-fields-wrapper{margin:0;gap:22px 24px}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-group{padding:0;margin:0}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-col-50{width:calc(50% - 12px)}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-col-100{width:100%}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-label{color:#fff;font:500 14px/1.5 Inter,sans-serif;padding:0;margin:0 0 8px}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-textual{width:100%;min-height:52px;border:1px solid #ffffff4d;border-radius:12px;background:#fff;color:#0a3d3d;padding:14px 16px;font:400 16px/1.5 Inter,sans-serif;box-shadow:none}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-textual::placeholder{color:#78716c;opacity:1}
body .elementor .e-con.sp-contact-card .sp-contact-form textarea.elementor-field-textual{min-height:140px;resize:vertical}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-textual:focus{outline:2px solid #e67e8e;outline-offset:3px;border-color:#e67e8e}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-option{display:flex;align-items:flex-start;gap:10px}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-option label{font:400 14px/1.6 Inter,sans-serif;color:#d6d3d1;cursor:pointer}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-option input{flex:0 0 18px;width:18px;height:18px;margin:3px 0 0;accent-color:#e67e8e}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-field-option a{color:#fff;text-decoration:underline;text-underline-offset:3px}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-form-fields-wrapper>div:has(>input[name="form_fields[website]"]){display:none}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-button{display:inline-flex;flex-basis:auto;width:auto;border:1px solid #e67e8e;border-radius:999px;background:#e67e8e;color:#fff;padding:18px 36px;font:500 16px/1.5 Inter,sans-serif;box-shadow:0 10px 20px #e67e8e26;transition:background .2s}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-button:hover{background:#d66a7b;border-color:#d66a7b}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-button:focus-visible,body .elementor .e-con.sp-contact-card .sp-wa-button a:focus-visible{outline:2px solid #fff;outline-offset:4px}
body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-message{color:#fff;font:400 15px/1.6 Inter,sans-serif;padding:14px 16px;background:#ffffff14;border-radius:12px}
body .elementor .sp-contact-card>.e-con.sp-wa-alternative{max-width:none;width:100%;margin:32px 0 0;padding:28px 0 0;border-top:1px solid #ffffff26;gap:16px;align-items:flex-start}
body .elementor .e-con.sp-contact-card .sp-wa-heading .elementor-heading-title{font:600 24px/1.35 'Playfair Display',serif;color:#fff;letter-spacing:normal;margin:0}
body .elementor .e-con.sp-contact-card .sp-wa-button .elementor-button{width:auto;background:transparent;border:1px solid #ffffff80;color:#fff;border-radius:999px;padding:15px 28px;font:500 15px/1.5 Inter,sans-serif;transition:background .2s,border-color .2s}
body .elementor .e-con.sp-contact-card .sp-wa-button .elementor-button:hover{background:#ffffff14;border-color:#fff}
body .elementor .e-con.sp-contact-card .sp-personal-reply,body .elementor .e-con.sp-contact-card .sp-personal-reply p{color:#a8a29e;font:italic 400 14px/1.6 Inter,sans-serif;margin:0}
@media(max-width:767px){
 body .elementor .e-con.sp-contact-section{padding:64px 24px;scroll-margin-top:80px}
 body .elementor .e-con.sp-contact-card{padding:36px 28px;border-radius:40px}
 body .elementor .e-con.sp-contact-card .sp-contact-heading .elementor-heading-title{font-size:26px;margin-bottom:20px}
 body .elementor .e-con.sp-contact-card .sp-contact-intro{font-size:16px;margin-bottom:28px}
 body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-col-50{width:100%}
 body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-form-fields-wrapper{row-gap:20px}
 body .elementor .e-con.sp-contact-card .sp-contact-form .elementor-button{width:100%;padding:16px 22px}
 body .elementor .e-con.sp-contact-card .sp-wa-heading .elementor-heading-title{font-size:22px}
 body .elementor .e-con.sp-contact-card .sp-wa-button .elementor-button{padding:14px 20px;font-size:14px}
}
