.elementor-2531 .elementor-element.elementor-element-a0a74b4{margin-top:-10px;margin-bottom:0px;}.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-2531 .elementor-element.elementor-element-417109c .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-field-group.recaptcha_v3-bottomleft, .elementor-2531 .elementor-element.elementor-element-417109c .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-2531 .elementor-element.elementor-element-417109c .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-2531 .elementor-element.elementor-element-417109c .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-2531 .elementor-element.elementor-element-417109c .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-field-type-html{padding-bottom:0px;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-button[type="submit"]{color:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-2531 .elementor-element.elementor-element-417109c{--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;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-d2e2cb1 */html {
scroll-behavior:smooth;
}

body {
overflow-x:hidden;
background:#f7f3ef;
}

.ptg-landing *{
box-sizing:border-box;
}

.ptg-container{
width:min(1180px,92%);
margin:auto;
position:relative;
z-index:2;
}

.ptg-hero{
position:relative;
padding:120px 0 90px;
overflow:hidden;
background:
linear-gradient(135deg,#fff8f2 0%,#fff 50%,#fff4ef 100%);
}

.ptg-bg-blur{
position:absolute;
border-radius:50%;
filter:blur(80px);
opacity:.45;
}

.ptg-blur-1{
width:420px;
height:420px;
background:#f39200;
top:-120px;
left:-140px;
}

.ptg-blur-2{
width:520px;
height:520px;
background:#c12631;
right:-180px;
top:40px;
}

.ptg-hero-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:70px;
align-items:center;
}

.ptg-badge{
display:inline-flex;
padding:10px 18px;
border-radius:999px;
background:rgba(193,38,49,.08);
color:#c12631;
font-weight:800;
font-size:13px;
letter-spacing:.12em;
margin-bottom:24px;
}

.ptg-left h1{
font-size:clamp(64px,9vw,120px);
line-height:.9;
font-weight:900;
margin:0;
color:#23252d;
letter-spacing:-.06em;
}

.ptg-subtitle{
font-size:22px;
line-height:1.7;
color:#5d5d5d;
margin:34px 0;
max-width:620px;
}

.ptg-info-row{
display:flex;
gap:16px;
flex-wrap:wrap;
margin-bottom:34px;
}

.ptg-chip{
display:flex;
align-items:center;
gap:10px;
padding:16px 22px;
background:#fff;
border-radius:18px;
font-weight:700;
box-shadow:0 12px 30px rgba(0,0,0,.08);
}

.ptg-buttons{
display:flex;
gap:18px;
flex-wrap:wrap;
margin-bottom:34px;
}

.ptg-btn-primary,
.ptg-btn-secondary{
padding:18px 34px;
border-radius:18px;
font-weight:800;
text-decoration:none;
transition:.25s;
}

.ptg-btn-primary{
background:linear-gradient(135deg,#f39200,#c12631);
color:#fff;
box-shadow:0 18px 38px rgba(193,38,49,.28);
}

.ptg-btn-primary:hover{
transform:translateY(-4px);
}

.ptg-btn-secondary{
background:#fff;
color:#23252d;
border:1px solid #eee;
}

.ptg-mini-boxes{
display:grid;
gap:14px;
max-width:560px;
}

.ptg-mini-card{
background:rgba(255,255,255,.78);
backdrop-filter:blur(10px);
padding:18px 22px;
border-radius:20px;
font-weight:700;
box-shadow:0 10px 24px rgba(0,0,0,.06);
}

.ptg-image-wrap{
position:relative;
display:flex;
justify-content:center;
align-items:center;
}

.ptg-circle{
position:absolute;
width:500px;
height:500px;
border-radius:50%;
background:linear-gradient(135deg,#f39200,#c12631);
opacity:.12;
}

.ptg-image-wrap img{
position:relative;
z-index:2;
width:100%;
max-width:560px;
filter:drop-shadow(0 30px 60px rgba(0,0,0,.18));
}

.ptg-floating-card{
position:absolute;
bottom:40px;
left:0;
background:#fff;
padding:20px 24px;
border-radius:24px;
box-shadow:0 24px 50px rgba(0,0,0,.12);
z-index:4;
}

.ptg-floating-card span{
display:block;
font-size:14px;
color:#777;
}

.ptg-floating-card strong{
font-size:24px;
color:#c12631;
}

.ptg-program,
.ptg-speaker,
.ptg-reserva,
.ptg-location,
.ptg-social{
padding:110px 0;
}

.ptg-section-title{
text-align:center;
max-width:860px;
margin:auto auto 70px;
}

.ptg-section-title span{
font-size:14px;
font-weight:800;
letter-spacing:.15em;
color:#c12631;
}

.ptg-section-title h2{
font-size:58px;
line-height:1.1;
margin:16px 0;
color:#23252d;
}

.ptg-grid-cards{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:26px;
}

.ptg-card{
background:#fff;
padding:38px;
border-radius:32px;
box-shadow:0 14px 34px rgba(0,0,0,.06);
transition:.25s;
}

.ptg-card:hover{
transform:translateY(-8px);
}

.ptg-card h3{
font-size:28px;
margin-bottom:16px;
color:#23252d;
}

.ptg-speaker{
background:#fff;
}

.ptg-speaker-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:70px;
align-items:center;
}

.ptg-speaker-left h2{
font-size:72px;
line-height:.95;
margin:18px 0;
color:#23252d;
}

.ptg-speaker-left h2 span{
color:#c12631;
}

.ptg-speaker-left p{
font-size:22px;
line-height:1.8;
color:#5d5d5d;
}

.ptg-speaker-points{
display:grid;
gap:16px;
margin-top:40px;
}

.ptg-point{
background:#f9f3ee;
padding:20px 24px;
border-radius:20px;
font-weight:700;
}

.ptg-speaker-photo{
position:relative;
}

.ptg-speaker-photo img{
width:100%;
max-width:500px;
display:block;
margin:auto;
filter:drop-shadow(0 24px 60px rgba(0,0,0,.18));
}

.ptg-reserva-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
align-items:stretch;
}

.ptg-reserva-info,
.ptg-form-card{
background:#fff;
padding:60px;
border-radius:34px;
box-shadow:0 14px 34px rgba(0,0,0,.05);
}

.ptg-reserva-info h2{
font-size:68px;
line-height:.95;
margin:20px 0;
color:#23252d;
}

.ptg-reserva-info p{
font-size:22px;
line-height:1.7;
color:#666;
}

.ptg-reserva-items{
display:grid;
gap:16px;
margin-top:40px;
}

.ptg-reserva-item{
background:#f8f3ef;
padding:20px 24px;
border-radius:18px;
font-weight:700;
}

.ptg-location-card{
background:linear-gradient(135deg,#23252d,#101114);
padding:70px;
border-radius:38px;
display:grid;
grid-template-columns:1fr auto;
gap:50px;
align-items:center;
color:#fff;
}

.ptg-location-left h2{
font-size:58px;
margin-bottom:20px;
}

.ptg-location-left p{
font-size:22px;
line-height:1.8;
}

.ptg-location-buttons a{
display:inline-flex;
margin-top:24px;
padding:18px 30px;
border-radius:18px;
background:#f39200;
color:#fff;
font-weight:800;
text-decoration:none;
}

.ptg-time-box{
display:flex;
align-items:center;
gap:14px;
padding:26px 30px;
background:rgba(255,255,255,.08);
border-radius:24px;
font-size:22px;
}

.ptg-social{
text-align:center;
background:
linear-gradient(135deg,#fff7f2 0%,#fff 100%);
position:relative;
overflow:hidden;
}

.ptg-social-buttons{
display:flex;
justify-content:center;
gap:18px;
flex-wrap:wrap;
margin-top:40px;
}

.ptg-social-buttons a{
display:inline-flex;
align-items:center;
gap:10px;
padding:18px 28px;
border-radius:20px;
font-weight:800;
text-decoration:none;
color:#fff;
}

.instagram{
background:linear-gradient(135deg,#f39200,#c12631);
}

.facebook{
background:#2f557f;
}

.whatsapp{
background:#25D366;
}

@media(max-width:980px){

.ptg-hero-grid,
.ptg-speaker-grid,
.ptg-reserva-grid,
.ptg-location-card{
grid-template-columns:1fr;
}

.ptg-grid-cards{
grid-template-columns:1fr;
}

.ptg-left h1{
font-size:72px;
}

.ptg-section-title h2,
.ptg-speaker-left h2,
.ptg-reserva-info h2,
.ptg-location-left h2{
font-size:42px;
}

.ptg-reserva-info,
.ptg-form-card{
padding:34px;
}

.ptg-program,
.ptg-speaker,
.ptg-reserva,
.ptg-location,
.ptg-social{
padding:80px 0;
}

}
/* =========================
   PORTUGALETE — CAPA PREMIUM VISUAL
========================= */

/* Fondo general con más profundidad */
.ptg-landing {
  background:
    radial-gradient(circle at 10% 8%, rgba(243,146,0,.10), transparent 28%),
    radial-gradient(circle at 92% 22%, rgba(193,38,49,.13), transparent 30%),
    linear-gradient(180deg, #fffaf5 0%, #f7f3ef 100%);
}

/* HERO más premium */
.ptg-hero {
  min-height: 86vh;
  display: flex;
  align-items: center;
  background:
    radial-gradient(circle at 15% 20%, rgba(243,146,0,.22), transparent 30%),
    radial-gradient(circle at 85% 18%, rgba(193,38,49,.26), transparent 34%),
    radial-gradient(circle at 80% 85%, rgba(0,54,84,.13), transparent 32%),
    linear-gradient(135deg, #fff8f2 0%, #ffffff 48%, #fff0e8 100%) !important;
}

.ptg-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.45) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.45) 1px, transparent 1px);
  background-size: 54px 54px;
  opacity: .28;
  pointer-events: none;
}

.ptg-hero::after {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  right: -180px;
  bottom: -160px;
  border-radius: 50%;
  background: rgba(243,146,0,.10);
  filter: blur(4px);
}

/* Imagen hero más potente */
.ptg-image-wrap {
  min-height: 540px;
}

.ptg-image-wrap::before {
  content: "";
  position: absolute;
  width: 470px;
  height: 470px;
  border-radius: 42% 58% 52% 48%;
  background: linear-gradient(135deg, rgba(243,146,0,.24), rgba(193,38,49,.18));
  filter: blur(2px);
  transform: rotate(-8deg);
}

.ptg-image-wrap::after {
  content: "";
  position: absolute;
  width: 250px;
  height: 250px;
  left: -40px;
  bottom: 10px;
  border-radius: 50%;
  background: rgba(0,54,84,.10);
  z-index: 0;
}

.ptg-image-wrap img {
  animation: ptgFloat 6s ease-in-out infinite;
}

@keyframes ptgFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-12px); }
}

/* Tarjetas con más vida */
.ptg-card,
.ptg-mini-card,
.ptg-reserva-info,
.ptg-form-card {
  position: relative;
  overflow: hidden;
}

.ptg-card::before,
.ptg-mini-card::before,
.ptg-reserva-info::before,
.ptg-form-card::before {
  content: "";
  position: absolute;
  width: 120px;
  height: 120px;
  right: -45px;
  top: -45px;
  border-radius: 50%;
  background: rgba(243,146,0,.10);
}

.ptg-card:hover {
  transform: translateY(-10px) scale(1.015);
  box-shadow: 0 28px 70px rgba(0,0,0,.12);
}

/* Programa más visual */
.ptg-program {
  background:
    radial-gradient(circle at 14% 22%, rgba(243,146,0,.12), transparent 30%),
    radial-gradient(circle at 86% 72%, rgba(193,38,49,.10), transparent 30%),
    #f7f3ef !important;
}

.ptg-card {
  border: 1px solid rgba(193,38,49,.07);
}

/* Ponente con fondo menos plano */
.ptg-speaker {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 80% 35%, rgba(193,38,49,.12), transparent 30%),
    radial-gradient(circle at 12% 82%, rgba(243,146,0,.10), transparent 32%),
    #ffffff !important;
}

.ptg-speaker::after {
  content: "";
  position: absolute;
  width: 360px;
  height: 360px;
  right: -120px;
  top: 90px;
  border-radius: 50%;
  background: rgba(0,54,84,.06);
}

/* Ubicación más impactante */
.ptg-location-card {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 85% 18%, rgba(243,146,0,.22), transparent 32%),
    linear-gradient(135deg, #06283d 0%, #0a1f2e 55%, #101114 100%) !important;
}

.ptg-location-card::before {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  right: -120px;
  bottom: -140px;
  border-radius: 50%;
  background: rgba(255,255,255,.06);
}

/* Social más premium */
.ptg-social {
  background:
    radial-gradient(circle at 15% 18%, rgba(243,146,0,.15), transparent 30%),
    radial-gradient(circle at 88% 82%, rgba(193,38,49,.13), transparent 30%),
    linear-gradient(135deg, #fff8f2 0%, #ffffff 100%) !important;
}

.ptg-social::before {
  content: "";
  position: absolute;
  width: 300px;
  height: 300px;
  right: -110px;
  top: -120px;
  border-radius: 50%;
  background: rgba(193,38,49,.09);
}

.ptg-social::after {
  content: "";
  position: absolute;
  width: 240px;
  height: 240px;
  left: -90px;
  bottom: -100px;
  border-radius: 50%;
  background: rgba(243,146,0,.10);
}

/* Botones con más interacción */
.ptg-btn-primary,
.ptg-btn-secondary,
.ptg-social-buttons a,
.ptg-location-buttons a {
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.ptg-btn-primary:hover,
.ptg-social-buttons a:hover,
.ptg-location-buttons a:hover {
  transform: translateY(-4px);
  filter: brightness(1.05);
  box-shadow: 0 24px 54px rgba(193,38,49,.26);
}

/* Móvil */
@media(max-width: 767px) {
  .ptg-hero {
    min-height: auto;
    padding-top: 80px;
  }

  .ptg-image-wrap {
    min-height: 380px;
  }

  .ptg-image-wrap::before {
    width: 330px;
    height: 330px;
  }

  .ptg-image-wrap::after,
  .ptg-floating-card {
    display: none;
  }
}
/* =========================
   TITULOS PORTUGALETE LIMPIOS
========================= */

.ptg-section-heading {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 58px;
}

.ptg-section-heading span {
  display: inline-flex;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(193, 38, 49, 0.08);
  color: #c12631;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 22px;
}

.ptg-section-heading h2 {
  color: #23252d;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.04em;
  margin: 0 0 20px;
}

.ptg-section-heading p {
  color: #666;
  font-size: 18px;
  line-height: 1.65;
  max-width: 680px;
  margin: 0 auto;
}

/* Títulos de tarjetas */
.ptg-card h3 {
  font-size: 26px;
  line-height: 1.15;
  font-weight: 900;
  color: #23252d;
  margin: 0 0 14px;
}

.ptg-card:hover h3 {
  color: #c12631;
}

/* Título hero */
.ptg-left h1 {
  font-size: clamp(70px, 9vw, 128px);
  line-height: 0.88;
  letter-spacing: -0.06em;
  font-weight: 900;
}

.ptg-left h1 span {
  color: #c12631;
}

/* Título ponente */
.ptg-speaker-left h2 {
  font-size: clamp(54px, 6vw, 88px);
  line-height: 0.95;
  letter-spacing: -0.05em;
  font-weight: 900;
}

.ptg-speaker-left h2 span {
  color: #c12631;
}

@media (max-width: 767px) {
  .ptg-section-heading h2 {
    font-size: 38px;
  }

  .ptg-card h3 {
    font-size: 23px;
  }

  .ptg-left h1 {
    font-size: 62px;
  }
}
/* =========================
   FIX TÍTULOS PORTUGALETE
========================= */

/* HERO: recuperar presencia sin romper layout */
.ptg-left h1 {
  font-size: clamp(72px, 8vw, 118px) !important;
  line-height: .88 !important;
  letter-spacing: -0.055em !important;
  font-weight: 950 !important;
  color: #23252d !important;
  margin: 0 0 26px !important;
}

/* Evita que el bloque del ponente se corte arriba */
.ptg-speaker {
  padding-top: 130px !important;
  overflow: visible !important;
}

.ptg-speaker-grid {
  align-items: center !important;
}

.ptg-speaker-left h2 {
  font-size: clamp(58px, 6vw, 88px) !important;
  line-height: .92 !important;
  letter-spacing: -0.05em !important;
  font-weight: 950 !important;
  margin: 18px 0 24px !important;
  color: #23252d !important;
}

.ptg-speaker-left h2 span {
  color: #c12631 !important;
}

/* RESERVA: título más fuerte */
.ptg-reserva-info h2 {
  font-size: clamp(52px, 5vw, 72px) !important;
  line-height: .95 !important;
  letter-spacing: -0.05em !important;
  font-weight: 950 !important;
  color: #23252d !important;
  margin: 18px 0 22px !important;
}

/* UBICACIÓN: título más premium */
.ptg-location-card h2 {
  font-size: clamp(46px, 5vw, 72px) !important;
  line-height: .96 !important;
  letter-spacing: -0.045em !important;
  font-weight: 950 !important;
  color: #ffffff !important;
  margin: 0 0 22px !important;
}

/* SOCIAL: mejora final */
.ptg-social h2 {
  font-size: clamp(42px, 4vw, 62px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.04em !important;
  font-weight: 950 !important;
  color: #23252d !important;
}

/* Responsive */
@media (max-width: 767px) {
  .ptg-left h1 {
    font-size: 62px !important;
  }

  .ptg-speaker {
    padding-top: 80px !important;
  }

  .ptg-speaker-left h2,
  .ptg-reserva-info h2,
  .ptg-location-card h2,
  .ptg-social h2 {
    font-size: 42px !important;
    line-height: 1 !important;
  }
}
/* HERO TITLE SEGURO */

.ptg-hero-title {
  font-size: clamp(72px, 8vw, 118px) !important;
  line-height: .88 !important;
  letter-spacing: -0.055em !important;
  font-weight: 950 !important;
  margin: 0 0 26px !important;
}

.ptg-hero-title .ptg-title-dark {
  color: #23252d !important;
}

.ptg-hero-title .ptg-title-red {
  color: #c12631 !important;
}

@media (max-width: 767px) {
  .ptg-hero-title {
    font-size: 62px !important;
  }
}
/* ICONOS REDES */

.ptg-social-buttons a i{
font-size:20px;
margin-right:4px;
}

/* ITEMS RESERVA */

.ptg-reserva-item{
display:flex;
align-items:center;
gap:12px;
}

.ptg-reserva-item span{
font-size:18px;
}

/* SOCIAL MÁS PRO */

.ptg-social-buttons a{
min-width:210px;
justify-content:center;
font-size:18px;
font-weight:800;
box-shadow:0 16px 38px rgba(0,0,0,.12);
}

.ptg-social-buttons a:hover{
transform:translateY(-4px) scale(1.03);
}
.ptg-social-icon {
  font-size: 20px;
  font-weight: 900;
  margin-right: 6px;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-e102739 *//* RESERVA DOS COLUMNAS */

.ptg-reserva-section {
  background: #f7f3ef;
  padding: 110px 20px !important;
}

.ptg-reserva-section .e-con-inner,
.ptg-reserva-section .elementor-container {
  max-width: 980px !important;
  margin: 0 auto !important;
  gap: 34px !important;
  align-items: stretch !important;
}

.ptg-reserva-left,
.ptg-reserva-right {
  background: #fff;
  border-radius: 34px;
  padding: 46px !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.08);
  position: relative;
  overflow: hidden;
}

.ptg-reserva-left::after,
.ptg-reserva-right::after {
  content: "";
  position: absolute;
  top: -48px;
  right: -48px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: rgba(243,146,0,.10);
}

.ptg-reserva-info-card {
  position: relative;
  z-index: 2;
}

.ptg-reserva-badge {
  display: inline-flex;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(193,38,49,.08);
  color: #c12631;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .14em;
  margin-bottom: 32px;
}

.ptg-reserva-info-card h2 {
  font-size: clamp(44px, 5vw, 64px);
  line-height: .95;
  letter-spacing: -0.05em;
  font-weight: 950;
  color: #23252d;
  margin: 0 0 24px;
}

.ptg-reserva-info-card p {
  color: #666;
  font-size: 18px;
  line-height: 1.65;
  margin: 0 0 34px;
}

.ptg-reserva-list {
  display: grid;
  gap: 14px;
}

.ptg-reserva-list div {
  background: #f8f3ef;
  border-radius: 16px;
  padding: 15px 17px;
  color: #23252d;
  font-weight: 800;
  display: flex;
  gap: 10px;
  align-items: center;
}

/* FORMULARIO ELEMENTOR */

.ptg-reserva-right .elementor-form {
  position: relative;
  z-index: 2;
}

.ptg-reserva-right .elementor-field-label {
  color: #23252d !important;
  font-weight: 800 !important;
}

.ptg-reserva-right input,
.ptg-reserva-right textarea,
.ptg-reserva-right select {
  background: #f8f3ef !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 14px !important;
  min-height: 50px;
  padding: 14px 16px !important;
}

.ptg-reserva-right textarea {
  min-height: 115px;
}

.ptg-reserva-right .elementor-button {
  background: linear-gradient(135deg,#f39200,#c12631) !important;
  border-radius: 14px !important;
  min-height: 54px;
  font-weight: 900 !important;
  box-shadow: 0 18px 38px rgba(193,38,49,.22);
}

/* MOBILE */

@media(max-width: 767px) {
  .ptg-reserva-section {
    padding: 70px 16px !important;
  }

  .ptg-reserva-left,
  .ptg-reserva-right {
    padding: 30px 22px !important;
  }

  .ptg-reserva-info-card h2 {
    font-size: 42px;
  }
}/* End custom CSS */