.elementor-8551 .elementor-element.elementor-element-dfd9f15{width:100%;max-width:100%;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-dfd9f15 *//* =========================================================
DUARTE ANALÍTICA · CONTACTO Y SOLICITUD DE PROPUESTA
AGREGAR AL FINAL DEL CSS GLOBAL EXISTENTE
========================================================= */

#da-contact-page {
  --da-contact-blue: #023859;
  --da-contact-blue-2: #07577f;
  --da-contact-blue-dark: #011d30;
  --da-contact-blue-deep: #00131f;
  --da-contact-red: #8c0404;
  --da-contact-red-2: #b20b0b;
  --da-contact-gold: #f7dc2b;
  --da-contact-orange: #e8981d;
  --da-contact-black: #0d0d0d;
  --da-contact-white: #ffffff;
  --da-contact-soft: #f3f6f8;
  --da-contact-muted: #667985;
  --da-contact-line: rgba(2,56,89,.13);
  --da-contact-shadow: 0 24px 70px rgba(1,29,48,.13);
  --da-contact-shadow-dark: 0 30px 80px rgba(0,0,0,.34);
  --da-contact-radius-sm: 14px;
  --da-contact-radius-md: 24px;
  --da-contact-radius-lg: 36px;
  --da-contact-container: 1240px;
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  color: var(--da-contact-black);
  background: #fff;
  font-family: "Montserrat", "Segoe UI", Arial, sans-serif;
  overflow: clip;
}

@supports .elementor-8551 .elementor-element.elementor-element-dfd9f15(.e-con:has(#da-contact-page)) {
  body .elementor .e-con:has(#da-contact-page),
  body .elementor .e-con-inner:has(#da-contact-page),
  body .elementor .elementor-widget-html:has(#da-contact-page),
  body .elementor .elementor-widget-html:has(#da-contact-page) > .elementor-widget-container {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }
  body .elementor .e-con:has(#da-contact-page) {
    --container-max-width: 100%;
    --content-width: 100%;
  }
}

#da-contact-page *, #da-contact-page *::before, #da-contact-page *::after { box-sizing: border-box; }
#da-contact-page img { display: block; max-width: 100%; }
#da-contact-page a { color: inherit; text-decoration: none; }
#da-contact-page button { font: inherit; cursor: pointer; }
#da-contact-page [id] { scroll-margin-top: 92px; }
#da-contact-page .da-contact-svg-library { position: absolute; width: 0; height: 0; overflow: hidden; }
#da-contact-page .da-contact-container { width: min(calc(100% - 42px), var(--da-contact-container)); margin-inline: auto; }
#da-contact-page .da-contact-section { position: relative; padding: 108px 0; }
#da-contact-page .da-contact-section--soft { background: var(--da-contact-soft); }

#da-contact-page .da-contact-kicker {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 16px;
  color: var(--da-contact-red); font-size: 12px; font-weight: 900; letter-spacing: .15em; text-transform: uppercase;
}
#da-contact-page .da-contact-kicker::before { content: ""; width: 34px; height: 3px; border-radius: 99px; background: linear-gradient(90deg,var(--da-contact-red),var(--da-contact-orange)); }
#da-contact-page .da-contact-kicker--light { color: var(--da-contact-gold) !important; }
#da-contact-page .da-contact-kicker--light::before { background: linear-gradient(90deg,var(--da-contact-gold),var(--da-contact-orange)); }

#da-contact-page .da-contact-heading { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: 54px; }
#da-contact-page .da-contact-heading > div { max-width: 780px; }
#da-contact-page .da-contact-heading h2,
#da-contact-page .da-contact-proposal__copy h2,
#da-contact-page .da-contact-faq__intro h2,
#da-contact-page .da-contact-final h2 {
  margin: 0; color: var(--da-contact-blue-dark); font-size: clamp(35px,5vw,64px); line-height: 1.02; letter-spacing: -.05em; font-weight: 900; text-wrap: balance;
}
#da-contact-page .da-contact-heading > p { max-width: 470px; margin: 0; color: var(--da-contact-muted); font-size: 17px; line-height: 1.75; }
#da-contact-page .da-contact-heading--light h2 { color: #fff !important; }
#da-contact-page .da-contact-heading--light > p { color: rgba(255,255,255,.74); }

#da-contact-page .da-contact-btn {
  min-height: 54px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 14px 23px;
  border-radius: 999px; border: 1px solid transparent; font-size: 14px; font-weight: 900; transition: transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
}
#da-contact-page .da-contact-btn svg { width: 19px; height: 19px; flex: 0 0 19px; }
#da-contact-page .da-contact-btn:hover { transform: translateY(-3px); }
#da-contact-page .da-contact-btn--primary { color: #fff; background: linear-gradient(135deg,var(--da-contact-red-2),var(--da-contact-red)); box-shadow: 0 16px 34px rgba(140,4,4,.32); }
#da-contact-page .da-contact-btn--glass { color: #fff; border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.09); backdrop-filter: blur(12px); }
#da-contact-page .da-contact-btn--gold { color: var(--da-contact-blue-deep); background: linear-gradient(135deg,var(--da-contact-gold),var(--da-contact-orange)); box-shadow: 0 16px 34px rgba(232,152,29,.25); }
#da-contact-page .da-contact-btn--dark { color: #fff; background: linear-gradient(135deg,var(--da-contact-blue),var(--da-contact-blue-dark)); box-shadow: 0 15px 32px rgba(1,29,48,.2); }
#da-contact-page .da-contact-btn--white { color: var(--da-contact-red); background: #fff; }
#da-contact-page .da-contact-btn--outline-white { color: #fff; border-color: rgba(255,255,255,.46); background: rgba(255,255,255,.07); }

/* HERO */
#da-contact-page .da-contact-hero {
  min-height: 680px; position: relative; display: flex; align-items: center; color: #fff; overflow: hidden;
  background: radial-gradient(circle at 87% 20%,rgba(247,220,43,.12),transparent 28%), radial-gradient(circle at 8% 85%,rgba(178,11,11,.34),transparent 32%), linear-gradient(122deg,var(--da-contact-blue-deep),var(--da-contact-blue));
}
#da-contact-page .da-contact-hero__grid { position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(to right,#000,transparent 82%); }
#da-contact-page .da-contact-hero__glow { position: absolute; border-radius: 50%; filter: blur(2px); pointer-events: none; }
#da-contact-page .da-contact-hero__glow--one { width: 340px; height: 340px; right: -90px; top: -120px; border: 1px solid rgba(247,220,43,.3); box-shadow: inset 0 0 80px rgba(247,220,43,.07); }
#da-contact-page .da-contact-hero__glow--two { width: 560px; height: 560px; left: -300px; bottom: -350px; border: 1px solid rgba(255,255,255,.12); }
#da-contact-page .da-contact-hero__layout { position: relative; z-index: 2; display: grid; grid-template-columns: 1.02fr .98fr; gap: 70px; align-items: center; padding: 76px 0; }
#da-contact-page .da-contact-hero__copy h1 { max-width: 760px; margin: 0; color: #fff !important; font-size: clamp(45px,6vw,80px); line-height: .98; letter-spacing: -.06em; font-weight: 900; text-wrap: balance; }
#da-contact-page .da-contact-hero__copy h1 em { display: block; color: var(--da-contact-gold); font-style: normal; }
#da-contact-page .da-contact-hero__lead { max-width: 700px; margin: 25px 0 0; color: rgba(255,255,255,.79) !important; font-size: clamp(16px,1.7vw,20px); line-height: 1.72; }
#da-contact-page .da-contact-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 31px; }
#da-contact-page .da-contact-hero__trust { display: flex; flex-wrap: wrap; gap: 13px 22px; margin-top: 26px; }
#da-contact-page .da-contact-hero__trust span { display: inline-flex; align-items: center; gap: 7px; color: rgba(255,255,255,.7); font-size: 12px; font-weight: 700; }
#da-contact-page .da-contact-hero__trust svg { width: 16px; height: 16px; color: var(--da-contact-gold); }

#da-contact-page .da-contact-hero__visual { position: relative; min-height: 530px; }
#da-contact-page .da-contact-hero__photo { position: absolute; overflow: hidden; border: 1px solid rgba(255,255,255,.2); box-shadow: var(--da-contact-shadow-dark); }
#da-contact-page .da-contact-hero__photo img { width: 100%; height: 100%; object-fit: cover; }
#da-contact-page .da-contact-hero__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top,rgba(0,19,31,.55),transparent 55%); pointer-events: none; }
#da-contact-page .da-contact-hero__photo--main { width: 73%; height: 77%; right: 0; top: 4%; border-radius: 34px; transform: rotate(1.6deg); }
#da-contact-page .da-contact-hero__photo--secondary { width: 43%; height: 48%; left: 0; bottom: 2%; border-radius: 28px; transform: rotate(-3deg); z-index: 3; }
#da-contact-page .da-contact-hero__availability,
#da-contact-page .da-contact-hero__city,
#da-contact-page .da-contact-hero__badge { position: absolute; z-index: 5; border: 1px solid rgba(255,255,255,.18); background: rgba(1,29,48,.88); backdrop-filter: blur(14px); box-shadow: 0 18px 45px rgba(0,0,0,.26); }
#da-contact-page .da-contact-hero__availability { right: -10px; bottom: 5%; display: flex; align-items: center; gap: 12px; padding: 15px 18px; border-radius: 18px; }
#da-contact-page .da-contact-hero__availability strong { display: block; color: #fff !important; font-size: 13px; }
#da-contact-page .da-contact-hero__availability small { display: block; margin-top: 3px; color: rgba(255,255,255,.64); font-size: 10px; }
#da-contact-page .da-contact-pulse { width: 11px; height: 11px; flex: 0 0 11px; border-radius: 50%; background: #56e08b; box-shadow: 0 0 0 7px rgba(86,224,139,.13); animation: da-contact-pulse 1.9s infinite; }
@keyframes da-contact-pulse { 50% { box-shadow: 0 0 0 13px rgba(86,224,139,0); } }
#da-contact-page .da-contact-hero__city { left: 7%; top: 0; display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-radius: 17px; }
#da-contact-page .da-contact-hero__city svg { width: 23px; height: 23px; color: var(--da-contact-gold); }
#da-contact-page .da-contact-hero__city span { color: #fff; font-size: 12px; line-height: 1.2; font-weight: 800; }
#da-contact-page .da-contact-hero__city small { color: rgba(255,255,255,.6); font-size: 9px; font-weight: 600; }
#da-contact-page .da-contact-hero__badge { right: 2%; top: 18%; max-width: 215px; padding: 14px 18px; border-radius: 17px; color: rgba(255,255,255,.72); font-size: 11px; line-height: 1.45; }
#da-contact-page .da-contact-hero__badge strong { color: var(--da-contact-gold); }

/* SUBNAV */
#da-contact-page .da-contact-subnav { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid rgba(2,56,89,.1); background: rgba(255,255,255,.93); backdrop-filter: blur(16px); }
#da-contact-page .da-contact-subnav__inner { min-height: 68px; display: flex; align-items: center; justify-content: center; gap: 8px 30px; overflow-x: auto; scrollbar-width: none; }
#da-contact-page .da-contact-subnav__inner::-webkit-scrollbar { display: none; }
#da-contact-page .da-contact-subnav a { flex: 0 0 auto; color: var(--da-contact-blue-dark); font-size: 12px; font-weight: 800; }
#da-contact-page .da-contact-subnav a:hover { color: var(--da-contact-red); }

/* PATHS */
#da-contact-page .da-contact-paths { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
#da-contact-page .da-contact-path { min-height: 490px; position: relative; display: flex; flex-direction: column; padding: 34px; border-radius: 30px; overflow: hidden; box-shadow: var(--da-contact-shadow); transition: transform .3s ease, box-shadow .3s ease; }
#da-contact-page .da-contact-path:hover { transform: translateY(-8px); box-shadow: 0 30px 76px rgba(1,29,48,.18); }
#da-contact-page .da-contact-path::after { content: ""; position: absolute; width: 210px; height: 210px; right: -88px; bottom: -90px; border-radius: 50%; border: 1px solid currentColor; opacity: .15; }
#da-contact-page .da-contact-path--red { color: #fff; background: linear-gradient(145deg,#a90c0c,#680202); }
#da-contact-page .da-contact-path--blue { color: #fff; background: linear-gradient(145deg,#07577f,#011d30); }
#da-contact-page .da-contact-path--gold { color: #1a2730; background: linear-gradient(145deg,#f8e450,#e8981d); }
#da-contact-page .da-contact-path__icon { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 17px; background: rgba(255,255,255,.13); }
#da-contact-page .da-contact-path__icon svg { width: 29px; height: 29px; }
#da-contact-page .da-contact-path__number { position: absolute; right: 28px; top: 24px; font-size: 46px; font-weight: 900; opacity: .14; }
#da-contact-page .da-contact-path h3 { margin: 28px 0 12px; color: inherit !important; font-size: 28px; line-height: 1.08; letter-spacing: -.04em; font-weight: 900; }
#da-contact-page .da-contact-path p { margin: 0; color: inherit !important; opacity: .77; font-size: 14px; line-height: 1.72; }
#da-contact-page .da-contact-path ul { display: grid; gap: 9px; margin: 24px 0 30px; padding: 0; list-style: none; }
#da-contact-page .da-contact-path li { position: relative; padding-left: 18px; font-size: 12px; font-weight: 700; opacity: .85; }
#da-contact-page .da-contact-path li::before { content: ""; position: absolute; left: 0; top: .45em; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
#da-contact-page .da-contact-path > a { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 900; }
#da-contact-page .da-contact-path > a svg { width: 18px; height: 18px; }

/* NEEDS TABS */
#da-contact-page .da-contact-needs { background: #fff; }
#da-contact-page .da-contact-needs__layout { display: grid; grid-template-columns: 390px 1fr; gap: 28px; align-items: stretch; }
#da-contact-page .da-contact-needs__tabs { display: grid; gap: 10px; }
#da-contact-page .da-contact-needs__tabs button { min-height: 74px; display: flex; align-items: center; gap: 15px; padding: 16px 20px; border: 1px solid var(--da-contact-line); border-radius: 18px; color: var(--da-contact-blue-dark); background: #fff; text-align: left; font-size: 13px; font-weight: 850; transition: .25s ease; }
#da-contact-page .da-contact-needs__tabs button svg { width: 25px; height: 25px; color: var(--da-contact-red); }
#da-contact-page .da-contact-needs__tabs button:hover,
#da-contact-page .da-contact-needs__tabs button.is-active { color: #fff; border-color: var(--da-contact-blue); background: linear-gradient(135deg,var(--da-contact-blue),var(--da-contact-blue-dark)); transform: translateX(7px); box-shadow: 0 14px 34px rgba(1,29,48,.15); }
#da-contact-page .da-contact-needs__tabs button.is-active svg { color: var(--da-contact-gold); }
#da-contact-page .da-contact-needs__panel { position: relative; min-height: 450px; display: flex; flex-direction: column; justify-content: center; padding: 54px; border-radius: 32px; overflow: hidden; color: #fff; background: radial-gradient(circle at 90% 20%,rgba(247,220,43,.16),transparent 25%),linear-gradient(135deg,var(--da-contact-blue-deep),var(--da-contact-blue)); box-shadow: var(--da-contact-shadow); }
#da-contact-page .da-contact-needs__panel::after { content: ""; position: absolute; width: 390px; height: 390px; right: -160px; bottom: -200px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; box-shadow: 0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.02); }
#da-contact-page .da-contact-needs__content { position: relative; z-index: 2; animation: da-contact-panel-in .35s ease both; }
@keyframes da-contact-panel-in { from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: none; } }
#da-contact-page .da-contact-needs__label { color: var(--da-contact-gold); font-size: 11px; letter-spacing: .13em; font-weight: 900; }
#da-contact-page .da-contact-needs__content h3 { max-width: 720px; margin: 13px 0 16px; color: #fff !important; font-size: clamp(31px,4vw,52px); line-height: 1.02; letter-spacing: -.05em; font-weight: 900; }
#da-contact-page .da-contact-needs__content > p { max-width: 740px; margin: 0; color: rgba(255,255,255,.72) !important; font-size: 16px; line-height: 1.72; }
#da-contact-page .da-contact-needs__prepare { display: flex; flex-wrap: wrap; gap: 10px; margin: 27px 0 31px; }
#da-contact-page .da-contact-needs__prepare strong { flex-basis: 100%; color: #fff; font-size: 12px; }
#da-contact-page .da-contact-needs__prepare span { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.15); border-radius: 999px; color: rgba(255,255,255,.8); background: rgba(255,255,255,.07); font-size: 11px; }
#da-contact-page .da-contact-needs__prepare svg { width: 15px; height: 15px; color: var(--da-contact-gold); }
#da-contact-page .da-contact-needs__panel .da-contact-btn { align-self: flex-start; position: relative; z-index: 2; color: var(--da-contact-blue-deep); background: #fff; }

/* PROPOSAL */
#da-contact-page .da-contact-proposal { color: #fff; background: radial-gradient(circle at 8% 90%,rgba(247,220,43,.1),transparent 27%),linear-gradient(120deg,var(--da-contact-red),#4f0101); }
#da-contact-page .da-contact-proposal__layout { display: grid; grid-template-columns: .92fr 1.08fr; gap: 70px; align-items: center; }
#da-contact-page .da-contact-proposal__copy h2 { color: #fff !important; }
#da-contact-page .da-contact-proposal__copy > p { max-width: 650px; margin: 22px 0 0; color: rgba(255,255,255,.76) !important; font-size: 17px; line-height: 1.75; }
#da-contact-page .da-contact-proposal__points { display: grid; gap: 12px; margin: 30px 0; }
#da-contact-page .da-contact-proposal__points span { display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,.87); font-size: 13px; font-weight: 700; }
#da-contact-page .da-contact-proposal__points svg { width: 19px; height: 19px; color: var(--da-contact-gold); }
#da-contact-page .da-contact-proposal__copy small { display: block; margin-top: 12px; color: rgba(255,255,255,.58); }
#da-contact-page .da-contact-proposal__process { padding: 36px; border: 1px solid rgba(255,255,255,.15); border-radius: 30px; background: rgba(0,19,31,.34); backdrop-filter: blur(14px); box-shadow: var(--da-contact-shadow-dark); }
#da-contact-page .da-contact-proposal__process-title span { display: block; color: var(--da-contact-gold); font-size: 11px; letter-spacing: .12em; font-weight: 900; text-transform: uppercase; }
#da-contact-page .da-contact-proposal__process-title strong { display: block; margin-top: 8px; color: #fff; font-size: 24px; }
#da-contact-page .da-contact-proposal__process ol { display: grid; gap: 2px; margin: 28px 0 0; padding: 0; list-style: none; }
#da-contact-page .da-contact-proposal__process li { display: grid; grid-template-columns: 56px 1fr; gap: 16px; padding: 19px 0; border-top: 1px solid rgba(255,255,255,.1); }
#da-contact-page .da-contact-proposal__process li > span { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; color: var(--da-contact-blue-deep); background: var(--da-contact-gold); font-size: 12px; font-weight: 900; }
#da-contact-page .da-contact-proposal__process strong { color: #fff; font-size: 14px; }
#da-contact-page .da-contact-proposal__process p { margin: 5px 0 0; color: rgba(255,255,255,.62) !important; font-size: 12px; line-height: 1.55; }

/* BOOKING */
#da-contact-page .da-contact-booking { color: #fff; background: radial-gradient(circle at 91% 13%,rgba(247,220,43,.13),transparent 26%),linear-gradient(135deg,var(--da-contact-blue-deep),var(--da-contact-blue)); }
#da-contact-page .da-contact-booking__frame { overflow: hidden; border: 1px solid rgba(255,255,255,.18); border-radius: 30px; background: #fff; box-shadow: var(--da-contact-shadow-dark); }
#da-contact-page .da-contact-booking__bar { min-height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 0 24px; color: #fff; background: linear-gradient(90deg,#00131f,#023859); }
#da-contact-page .da-contact-booking__bar > div { display: flex; align-items: center; gap: 12px; }
#da-contact-page .da-contact-booking__bar strong { font-size: 13px; }
#da-contact-page .da-contact-booking__bar > span { color: rgba(255,255,255,.58); font-size: 11px; }
#da-contact-page .da-contact-booking iframe { display: block; width: 100%; min-height: 780px; border: 0; background: #fff; }
#da-contact-page .da-contact-booking__fallback { margin: 16px 0 0; color: rgba(255,255,255,.62) !important; font-size: 12px; text-align: center; }
#da-contact-page .da-contact-booking__fallback a { color: var(--da-contact-gold); font-weight: 800; text-decoration: underline; }

/* DIRECT CONTACT */
#da-contact-page .da-contact-direct { background: #fff; }
#da-contact-page .da-contact-direct__grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
#da-contact-page .da-contact-info-card { min-height: 230px; display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--da-contact-line); border-radius: 24px; background: linear-gradient(145deg,#fff,#f7fafb); box-shadow: 0 15px 42px rgba(1,29,48,.07); transition: transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
#da-contact-page a.da-contact-info-card:hover { transform: translateY(-6px); border-color: rgba(140,4,4,.28); box-shadow: 0 23px 52px rgba(1,29,48,.12); }
#da-contact-page .da-contact-info-card__icon { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 16px; color: #fff; background: linear-gradient(135deg,var(--da-contact-blue),var(--da-contact-blue-dark)); }
#da-contact-page .da-contact-info-card__icon svg { width: 26px; height: 26px; }
#da-contact-page .da-contact-info-card > span { margin-top: 25px; color: var(--da-contact-red); font-size: 10px; letter-spacing: .12em; font-weight: 900; text-transform: uppercase; }
#da-contact-page .da-contact-info-card > strong { margin-top: 8px; color: var(--da-contact-blue-dark); font-size: clamp(18px,2vw,23px); line-height: 1.15; letter-spacing: -.03em; word-break: break-word; }
#da-contact-page .da-contact-info-card > small { margin-top: auto; padding-top: 19px; color: var(--da-contact-muted); font-size: 11px; }
#da-contact-page .da-contact-social { margin-top: 26px; display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 26px 30px; border-radius: 24px; color: #fff; background: linear-gradient(135deg,var(--da-contact-blue-dark),var(--da-contact-blue)); }
#da-contact-page .da-contact-social span { display: block; color: var(--da-contact-gold); font-size: 10px; letter-spacing: .12em; font-weight: 900; text-transform: uppercase; }
#da-contact-page .da-contact-social strong { display: block; margin-top: 6px; color: #fff; font-size: 16px; }
#da-contact-page .da-contact-social__links { display: flex; flex-wrap: wrap; gap: 10px; }
#da-contact-page .da-contact-social__links a { display: inline-flex; align-items: center; gap: 7px; padding: 10px 13px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; color: #fff; background: rgba(255,255,255,.08); font-size: 11px; font-weight: 800; }
#da-contact-page .da-contact-social__links svg { width: 18px; height: 18px; }

/* FAQ */
#da-contact-page .da-contact-faq { background: var(--da-contact-soft); }
#da-contact-page .da-contact-faq__layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 80px; align-items: start; }
#da-contact-page .da-contact-faq__intro { position: sticky; top: 100px; }
#da-contact-page .da-contact-faq__intro h2 { font-size: clamp(36px,4.5vw,58px); }
#da-contact-page .da-contact-faq__intro > p { margin: 21px 0; color: var(--da-contact-muted); font-size: 16px; line-height: 1.72; }
#da-contact-page .da-contact-faq__intro > a { display: inline-flex; align-items: center; gap: 8px; color: var(--da-contact-red); font-size: 12px; font-weight: 900; }
#da-contact-page .da-contact-faq__intro > a svg { width: 18px; height: 18px; }
#da-contact-page .da-contact-faq__list { display: grid; gap: 12px; }
#da-contact-page .da-contact-faq__item { overflow: hidden; border: 1px solid var(--da-contact-line); border-radius: 20px; background: #fff; }
#da-contact-page .da-contact-faq__item button { width: 100%; min-height: 80px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; border: 0; color: var(--da-contact-blue-dark); background: transparent; text-align: left; font-size: 14px; font-weight: 850; }
#da-contact-page .da-contact-faq__item button svg { width: 20px; height: 20px; flex: 0 0 20px; transition: transform .25s ease; }
#da-contact-page .da-contact-faq__item.is-open button svg { transform: rotate(180deg); }
#da-contact-page .da-contact-faq__answer { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
#da-contact-page .da-contact-faq__answer p { margin: 0; padding: 0 24px 24px; color: var(--da-contact-muted) !important; font-size: 13px; line-height: 1.7; }

/* FINAL */
#da-contact-page .da-contact-final { position: relative; overflow: hidden; padding: 86px 0; color: #fff; background: linear-gradient(125deg,#b20b0b,#680202); }
#da-contact-page .da-contact-final__pattern { position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(135deg,transparent 45%,rgba(255,255,255,.2) 45%,rgba(255,255,255,.2) 47%,transparent 47%); background-size: 52px 52px; }
#da-contact-page .da-contact-final__inner { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 60px; }
#da-contact-page .da-contact-final__inner > div:first-child { max-width: 760px; }
#da-contact-page .da-contact-final h2 { color: #fff !important; }
#da-contact-page .da-contact-final p:not(.da-contact-kicker) { margin: 17px 0 0; color: rgba(255,255,255,.75) !important; font-size: 16px; line-height: 1.7; }
#da-contact-page .da-contact-final__actions { flex: 0 0 auto; display: flex; flex-direction: column; gap: 10px; min-width: 245px; }

/* REVEAL SEGURO */
#da-contact-page .da-contact-reveal { opacity: 1; transform: none; }
#da-contact-page.da-contact-animate .da-contact-reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1); }
#da-contact-page.da-contact-animate .da-contact-reveal.is-visible { opacity: 1; transform: none; }

/* RESPONSIVE */
@media (max-width: 1080px) {
  #da-contact-page .da-contact-hero__layout { gap: 36px; }
  #da-contact-page .da-contact-hero__copy h1 { font-size: clamp(45px,6.5vw,70px); }
  #da-contact-page .da-contact-paths { grid-template-columns: 1fr; }
  #da-contact-page .da-contact-path { min-height: 380px; }
  #da-contact-page .da-contact-needs__layout { grid-template-columns: 320px 1fr; }
  #da-contact-page .da-contact-proposal__layout { gap: 42px; }
  #da-contact-page .da-contact-direct__grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 820px) {
  #da-contact-page .da-contact-section { padding: 82px 0; }
  #da-contact-page .da-contact-heading { align-items: start; flex-direction: column; gap: 18px; }
  #da-contact-page .da-contact-heading > p { max-width: 720px; }
  #da-contact-page .da-contact-hero { min-height: auto; }
  #da-contact-page .da-contact-hero__layout { grid-template-columns: 1fr; padding: 70px 0 55px; }
  #da-contact-page .da-contact-hero__visual { min-height: 480px; max-width: 650px; width: 100%; margin-inline: auto; }
  #da-contact-page .da-contact-needs__layout,
  #da-contact-page .da-contact-proposal__layout,
  #da-contact-page .da-contact-faq__layout { grid-template-columns: 1fr; }
  #da-contact-page .da-contact-needs__tabs { grid-template-columns: repeat(2,1fr); }
  #da-contact-page .da-contact-needs__tabs button:hover,
  #da-contact-page .da-contact-needs__tabs button.is-active { transform: none; }
  #da-contact-page .da-contact-faq__intro { position: static; }
  #da-contact-page .da-contact-social,
  #da-contact-page .da-contact-final__inner { align-items: flex-start; flex-direction: column; }
  #da-contact-page .da-contact-final__actions { width: 100%; flex-direction: row; }
}

@media (max-width: 560px) {
  #da-contact-page .da-contact-container { width: min(calc(100% - 28px),var(--da-contact-container)); }
  #da-contact-page .da-contact-section { padding: 68px 0; }
  #da-contact-page .da-contact-hero__copy h1 { font-size: clamp(39px,12vw,55px); }
  #da-contact-page .da-contact-hero__lead { font-size: 15px; }
  #da-contact-page .da-contact-actions { flex-direction: column; }
  #da-contact-page .da-contact-btn { width: 100%; }
  #da-contact-page .da-contact-hero__visual { min-height: 420px; }
  #da-contact-page .da-contact-hero__photo--main { width: 82%; height: 72%; }
  #da-contact-page .da-contact-hero__photo--secondary { width: 49%; height: 43%; }
  #da-contact-page .da-contact-hero__city { left: 0; }
  #da-contact-page .da-contact-hero__badge { display: none; }
  #da-contact-page .da-contact-hero__availability { right: 0; bottom: 0; }
  #da-contact-page .da-contact-subnav__inner { justify-content: flex-start; min-height: 59px; }
  #da-contact-page .da-contact-path { min-height: 430px; padding: 28px; }
  #da-contact-page .da-contact-needs__tabs { grid-template-columns: 1fr; }
  #da-contact-page .da-contact-needs__panel { min-height: 520px; padding: 35px 25px; }
  #da-contact-page .da-contact-proposal__process { padding: 25px; }
  #da-contact-page .da-contact-booking__bar { align-items: flex-start; flex-direction: column; justify-content: center; padding: 16px 18px; }
  #da-contact-page .da-contact-booking iframe { min-height: 700px; height: 700px; }
  #da-contact-page .da-contact-direct__grid { grid-template-columns: 1fr; }
  #da-contact-page .da-contact-social__links { width: 100%; }
  #da-contact-page .da-contact-social__links a { flex: 1 1 auto; justify-content: center; }
  #da-contact-page .da-contact-final__actions { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  #da-contact-page *,#da-contact-page *::before,#da-contact-page *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  #da-contact-page .da-contact-reveal { opacity: 1 !important; transform: none !important; }
}/* End custom CSS */
/* Start custom CSS *//* =========================================================
DUARTE ANALÍTICA · CONTACTO Y SOLICITUD DE PROPUESTA
AGREGAR AL FINAL DEL CSS GLOBAL EXISTENTE
========================================================= */

#da-contact-page {
  --da-contact-blue: #023859;
  --da-contact-blue-2: #07577f;
  --da-contact-blue-dark: #011d30;
  --da-contact-blue-deep: #00131f;
  --da-contact-red: #8c0404;
  --da-contact-red-2: #b20b0b;
  --da-contact-gold: #f7dc2b;
  --da-contact-orange: #e8981d;
  --da-contact-black: #0d0d0d;
  --da-contact-white: #ffffff;
  --da-contact-soft: #f3f6f8;
  --da-contact-muted: #667985;
  --da-contact-line: rgba(2,56,89,.13);
  --da-contact-shadow: 0 24px 70px rgba(1,29,48,.13);
  --da-contact-shadow-dark: 0 30px 80px rgba(0,0,0,.34);
  --da-contact-radius-sm: 14px;
  --da-contact-radius-md: 24px;
  --da-contact-radius-lg: 36px;
  --da-contact-container: 1240px;
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  color: var(--da-contact-black);
  background: #fff;
  font-family: "Montserrat", "Segoe UI", Arial, sans-serif;
  overflow: clip;
}

@supports body.elementor-page-8551(.e-con:has(#da-contact-page)) {
  body .elementor .e-con:has(#da-contact-page),
  body .elementor .e-con-inner:has(#da-contact-page),
  body .elementor .elementor-widget-html:has(#da-contact-page),
  body .elementor .elementor-widget-html:has(#da-contact-page) > .elementor-widget-container {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }
  body .elementor .e-con:has(#da-contact-page) {
    --container-max-width: 100%;
    --content-width: 100%;
  }
}

#da-contact-page *, #da-contact-page *::before, #da-contact-page *::after { box-sizing: border-box; }
#da-contact-page img { display: block; max-width: 100%; }
#da-contact-page a { color: inherit; text-decoration: none; }
#da-contact-page button { font: inherit; cursor: pointer; }
#da-contact-page [id] { scroll-margin-top: 92px; }
#da-contact-page .da-contact-svg-library { position: absolute; width: 0; height: 0; overflow: hidden; }
#da-contact-page .da-contact-container { width: min(calc(100% - 42px), var(--da-contact-container)); margin-inline: auto; }
#da-contact-page .da-contact-section { position: relative; padding: 108px 0; }
#da-contact-page .da-contact-section--soft { background: var(--da-contact-soft); }

#da-contact-page .da-contact-kicker {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 16px;
  color: var(--da-contact-red); font-size: 12px; font-weight: 900; letter-spacing: .15em; text-transform: uppercase;
}
#da-contact-page .da-contact-kicker::before { content: ""; width: 34px; height: 3px; border-radius: 99px; background: linear-gradient(90deg,var(--da-contact-red),var(--da-contact-orange)); }
#da-contact-page .da-contact-kicker--light { color: var(--da-contact-gold) !important; }
#da-contact-page .da-contact-kicker--light::before { background: linear-gradient(90deg,var(--da-contact-gold),var(--da-contact-orange)); }

#da-contact-page .da-contact-heading { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: 54px; }
#da-contact-page .da-contact-heading > div { max-width: 780px; }
#da-contact-page .da-contact-heading h2,
#da-contact-page .da-contact-proposal__copy h2,
#da-contact-page .da-contact-faq__intro h2,
#da-contact-page .da-contact-final h2 {
  margin: 0; color: var(--da-contact-blue-dark); font-size: clamp(35px,5vw,64px); line-height: 1.02; letter-spacing: -.05em; font-weight: 900; text-wrap: balance;
}
#da-contact-page .da-contact-heading > p { max-width: 470px; margin: 0; color: var(--da-contact-muted); font-size: 17px; line-height: 1.75; }
#da-contact-page .da-contact-heading--light h2 { color: #fff !important; }
#da-contact-page .da-contact-heading--light > p { color: rgba(255,255,255,.74); }

#da-contact-page .da-contact-btn {
  min-height: 54px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 14px 23px;
  border-radius: 999px; border: 1px solid transparent; font-size: 14px; font-weight: 900; transition: transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
}
#da-contact-page .da-contact-btn svg { width: 19px; height: 19px; flex: 0 0 19px; }
#da-contact-page .da-contact-btn:hover { transform: translateY(-3px); }
#da-contact-page .da-contact-btn--primary { color: #fff; background: linear-gradient(135deg,var(--da-contact-red-2),var(--da-contact-red)); box-shadow: 0 16px 34px rgba(140,4,4,.32); }
#da-contact-page .da-contact-btn--glass { color: #fff; border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.09); backdrop-filter: blur(12px); }
#da-contact-page .da-contact-btn--gold { color: var(--da-contact-blue-deep); background: linear-gradient(135deg,var(--da-contact-gold),var(--da-contact-orange)); box-shadow: 0 16px 34px rgba(232,152,29,.25); }
#da-contact-page .da-contact-btn--dark { color: #fff; background: linear-gradient(135deg,var(--da-contact-blue),var(--da-contact-blue-dark)); box-shadow: 0 15px 32px rgba(1,29,48,.2); }
#da-contact-page .da-contact-btn--white { color: var(--da-contact-red); background: #fff; }
#da-contact-page .da-contact-btn--outline-white { color: #fff; border-color: rgba(255,255,255,.46); background: rgba(255,255,255,.07); }

/* HERO */
#da-contact-page .da-contact-hero {
  min-height: 680px; position: relative; display: flex; align-items: center; color: #fff; overflow: hidden;
  background: radial-gradient(circle at 87% 20%,rgba(247,220,43,.12),transparent 28%), radial-gradient(circle at 8% 85%,rgba(178,11,11,.34),transparent 32%), linear-gradient(122deg,var(--da-contact-blue-deep),var(--da-contact-blue));
}
#da-contact-page .da-contact-hero__grid { position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(to right,#000,transparent 82%); }
#da-contact-page .da-contact-hero__glow { position: absolute; border-radius: 50%; filter: blur(2px); pointer-events: none; }
#da-contact-page .da-contact-hero__glow--one { width: 340px; height: 340px; right: -90px; top: -120px; border: 1px solid rgba(247,220,43,.3); box-shadow: inset 0 0 80px rgba(247,220,43,.07); }
#da-contact-page .da-contact-hero__glow--two { width: 560px; height: 560px; left: -300px; bottom: -350px; border: 1px solid rgba(255,255,255,.12); }
#da-contact-page .da-contact-hero__layout { position: relative; z-index: 2; display: grid; grid-template-columns: 1.02fr .98fr; gap: 70px; align-items: center; padding: 76px 0; }
#da-contact-page .da-contact-hero__copy h1 { max-width: 760px; margin: 0; color: #fff !important; font-size: clamp(45px,6vw,80px); line-height: .98; letter-spacing: -.06em; font-weight: 900; text-wrap: balance; }
#da-contact-page .da-contact-hero__copy h1 em { display: block; color: var(--da-contact-gold); font-style: normal; }
#da-contact-page .da-contact-hero__lead { max-width: 700px; margin: 25px 0 0; color: rgba(255,255,255,.79) !important; font-size: clamp(16px,1.7vw,20px); line-height: 1.72; }
#da-contact-page .da-contact-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 31px; }
#da-contact-page .da-contact-hero__trust { display: flex; flex-wrap: wrap; gap: 13px 22px; margin-top: 26px; }
#da-contact-page .da-contact-hero__trust span { display: inline-flex; align-items: center; gap: 7px; color: rgba(255,255,255,.7); font-size: 12px; font-weight: 700; }
#da-contact-page .da-contact-hero__trust svg { width: 16px; height: 16px; color: var(--da-contact-gold); }

#da-contact-page .da-contact-hero__visual { position: relative; min-height: 530px; }
#da-contact-page .da-contact-hero__photo { position: absolute; overflow: hidden; border: 1px solid rgba(255,255,255,.2); box-shadow: var(--da-contact-shadow-dark); }
#da-contact-page .da-contact-hero__photo img { width: 100%; height: 100%; object-fit: cover; }
#da-contact-page .da-contact-hero__photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top,rgba(0,19,31,.55),transparent 55%); pointer-events: none; }
#da-contact-page .da-contact-hero__photo--main { width: 73%; height: 77%; right: 0; top: 4%; border-radius: 34px; transform: rotate(1.6deg); }
#da-contact-page .da-contact-hero__photo--secondary { width: 43%; height: 48%; left: 0; bottom: 2%; border-radius: 28px; transform: rotate(-3deg); z-index: 3; }
#da-contact-page .da-contact-hero__availability,
#da-contact-page .da-contact-hero__city,
#da-contact-page .da-contact-hero__badge { position: absolute; z-index: 5; border: 1px solid rgba(255,255,255,.18); background: rgba(1,29,48,.88); backdrop-filter: blur(14px); box-shadow: 0 18px 45px rgba(0,0,0,.26); }
#da-contact-page .da-contact-hero__availability { right: -10px; bottom: 5%; display: flex; align-items: center; gap: 12px; padding: 15px 18px; border-radius: 18px; }
#da-contact-page .da-contact-hero__availability strong { display: block; color: #fff !important; font-size: 13px; }
#da-contact-page .da-contact-hero__availability small { display: block; margin-top: 3px; color: rgba(255,255,255,.64); font-size: 10px; }
#da-contact-page .da-contact-pulse { width: 11px; height: 11px; flex: 0 0 11px; border-radius: 50%; background: #56e08b; box-shadow: 0 0 0 7px rgba(86,224,139,.13); animation: da-contact-pulse 1.9s infinite; }
@keyframes da-contact-pulse { 50% { box-shadow: 0 0 0 13px rgba(86,224,139,0); } }
#da-contact-page .da-contact-hero__city { left: 7%; top: 0; display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-radius: 17px; }
#da-contact-page .da-contact-hero__city svg { width: 23px; height: 23px; color: var(--da-contact-gold); }
#da-contact-page .da-contact-hero__city span { color: #fff; font-size: 12px; line-height: 1.2; font-weight: 800; }
#da-contact-page .da-contact-hero__city small { color: rgba(255,255,255,.6); font-size: 9px; font-weight: 600; }
#da-contact-page .da-contact-hero__badge { right: 2%; top: 18%; max-width: 215px; padding: 14px 18px; border-radius: 17px; color: rgba(255,255,255,.72); font-size: 11px; line-height: 1.45; }
#da-contact-page .da-contact-hero__badge strong { color: var(--da-contact-gold); }

/* SUBNAV */
#da-contact-page .da-contact-subnav { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid rgba(2,56,89,.1); background: rgba(255,255,255,.93); backdrop-filter: blur(16px); }
#da-contact-page .da-contact-subnav__inner { min-height: 68px; display: flex; align-items: center; justify-content: center; gap: 8px 30px; overflow-x: auto; scrollbar-width: none; }
#da-contact-page .da-contact-subnav__inner::-webkit-scrollbar { display: none; }
#da-contact-page .da-contact-subnav a { flex: 0 0 auto; color: var(--da-contact-blue-dark); font-size: 12px; font-weight: 800; }
#da-contact-page .da-contact-subnav a:hover { color: var(--da-contact-red); }

/* PATHS */
#da-contact-page .da-contact-paths { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
#da-contact-page .da-contact-path { min-height: 490px; position: relative; display: flex; flex-direction: column; padding: 34px; border-radius: 30px; overflow: hidden; box-shadow: var(--da-contact-shadow); transition: transform .3s ease, box-shadow .3s ease; }
#da-contact-page .da-contact-path:hover { transform: translateY(-8px); box-shadow: 0 30px 76px rgba(1,29,48,.18); }
#da-contact-page .da-contact-path::after { content: ""; position: absolute; width: 210px; height: 210px; right: -88px; bottom: -90px; border-radius: 50%; border: 1px solid currentColor; opacity: .15; }
#da-contact-page .da-contact-path--red { color: #fff; background: linear-gradient(145deg,#a90c0c,#680202); }
#da-contact-page .da-contact-path--blue { color: #fff; background: linear-gradient(145deg,#07577f,#011d30); }
#da-contact-page .da-contact-path--gold { color: #1a2730; background: linear-gradient(145deg,#f8e450,#e8981d); }
#da-contact-page .da-contact-path__icon { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 17px; background: rgba(255,255,255,.13); }
#da-contact-page .da-contact-path__icon svg { width: 29px; height: 29px; }
#da-contact-page .da-contact-path__number { position: absolute; right: 28px; top: 24px; font-size: 46px; font-weight: 900; opacity: .14; }
#da-contact-page .da-contact-path h3 { margin: 28px 0 12px; color: inherit !important; font-size: 28px; line-height: 1.08; letter-spacing: -.04em; font-weight: 900; }
#da-contact-page .da-contact-path p { margin: 0; color: inherit !important; opacity: .77; font-size: 14px; line-height: 1.72; }
#da-contact-page .da-contact-path ul { display: grid; gap: 9px; margin: 24px 0 30px; padding: 0; list-style: none; }
#da-contact-page .da-contact-path li { position: relative; padding-left: 18px; font-size: 12px; font-weight: 700; opacity: .85; }
#da-contact-page .da-contact-path li::before { content: ""; position: absolute; left: 0; top: .45em; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
#da-contact-page .da-contact-path > a { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 900; }
#da-contact-page .da-contact-path > a svg { width: 18px; height: 18px; }

/* NEEDS TABS */
#da-contact-page .da-contact-needs { background: #fff; }
#da-contact-page .da-contact-needs__layout { display: grid; grid-template-columns: 390px 1fr; gap: 28px; align-items: stretch; }
#da-contact-page .da-contact-needs__tabs { display: grid; gap: 10px; }
#da-contact-page .da-contact-needs__tabs button { min-height: 74px; display: flex; align-items: center; gap: 15px; padding: 16px 20px; border: 1px solid var(--da-contact-line); border-radius: 18px; color: var(--da-contact-blue-dark); background: #fff; text-align: left; font-size: 13px; font-weight: 850; transition: .25s ease; }
#da-contact-page .da-contact-needs__tabs button svg { width: 25px; height: 25px; color: var(--da-contact-red); }
#da-contact-page .da-contact-needs__tabs button:hover,
#da-contact-page .da-contact-needs__tabs button.is-active { color: #fff; border-color: var(--da-contact-blue); background: linear-gradient(135deg,var(--da-contact-blue),var(--da-contact-blue-dark)); transform: translateX(7px); box-shadow: 0 14px 34px rgba(1,29,48,.15); }
#da-contact-page .da-contact-needs__tabs button.is-active svg { color: var(--da-contact-gold); }
#da-contact-page .da-contact-needs__panel { position: relative; min-height: 450px; display: flex; flex-direction: column; justify-content: center; padding: 54px; border-radius: 32px; overflow: hidden; color: #fff; background: radial-gradient(circle at 90% 20%,rgba(247,220,43,.16),transparent 25%),linear-gradient(135deg,var(--da-contact-blue-deep),var(--da-contact-blue)); box-shadow: var(--da-contact-shadow); }
#da-contact-page .da-contact-needs__panel::after { content: ""; position: absolute; width: 390px; height: 390px; right: -160px; bottom: -200px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; box-shadow: 0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.02); }
#da-contact-page .da-contact-needs__content { position: relative; z-index: 2; animation: da-contact-panel-in .35s ease both; }
@keyframes da-contact-panel-in { from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: none; } }
#da-contact-page .da-contact-needs__label { color: var(--da-contact-gold); font-size: 11px; letter-spacing: .13em; font-weight: 900; }
#da-contact-page .da-contact-needs__content h3 { max-width: 720px; margin: 13px 0 16px; color: #fff !important; font-size: clamp(31px,4vw,52px); line-height: 1.02; letter-spacing: -.05em; font-weight: 900; }
#da-contact-page .da-contact-needs__content > p { max-width: 740px; margin: 0; color: rgba(255,255,255,.72) !important; font-size: 16px; line-height: 1.72; }
#da-contact-page .da-contact-needs__prepare { display: flex; flex-wrap: wrap; gap: 10px; margin: 27px 0 31px; }
#da-contact-page .da-contact-needs__prepare strong { flex-basis: 100%; color: #fff; font-size: 12px; }
#da-contact-page .da-contact-needs__prepare span { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.15); border-radius: 999px; color: rgba(255,255,255,.8); background: rgba(255,255,255,.07); font-size: 11px; }
#da-contact-page .da-contact-needs__prepare svg { width: 15px; height: 15px; color: var(--da-contact-gold); }
#da-contact-page .da-contact-needs__panel .da-contact-btn { align-self: flex-start; position: relative; z-index: 2; color: var(--da-contact-blue-deep); background: #fff; }

/* PROPOSAL */
#da-contact-page .da-contact-proposal { color: #fff; background: radial-gradient(circle at 8% 90%,rgba(247,220,43,.1),transparent 27%),linear-gradient(120deg,var(--da-contact-red),#4f0101); }
#da-contact-page .da-contact-proposal__layout { display: grid; grid-template-columns: .92fr 1.08fr; gap: 70px; align-items: center; }
#da-contact-page .da-contact-proposal__copy h2 { color: #fff !important; }
#da-contact-page .da-contact-proposal__copy > p { max-width: 650px; margin: 22px 0 0; color: rgba(255,255,255,.76) !important; font-size: 17px; line-height: 1.75; }
#da-contact-page .da-contact-proposal__points { display: grid; gap: 12px; margin: 30px 0; }
#da-contact-page .da-contact-proposal__points span { display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,.87); font-size: 13px; font-weight: 700; }
#da-contact-page .da-contact-proposal__points svg { width: 19px; height: 19px; color: var(--da-contact-gold); }
#da-contact-page .da-contact-proposal__copy small { display: block; margin-top: 12px; color: rgba(255,255,255,.58); }
#da-contact-page .da-contact-proposal__process { padding: 36px; border: 1px solid rgba(255,255,255,.15); border-radius: 30px; background: rgba(0,19,31,.34); backdrop-filter: blur(14px); box-shadow: var(--da-contact-shadow-dark); }
#da-contact-page .da-contact-proposal__process-title span { display: block; color: var(--da-contact-gold); font-size: 11px; letter-spacing: .12em; font-weight: 900; text-transform: uppercase; }
#da-contact-page .da-contact-proposal__process-title strong { display: block; margin-top: 8px; color: #fff; font-size: 24px; }
#da-contact-page .da-contact-proposal__process ol { display: grid; gap: 2px; margin: 28px 0 0; padding: 0; list-style: none; }
#da-contact-page .da-contact-proposal__process li { display: grid; grid-template-columns: 56px 1fr; gap: 16px; padding: 19px 0; border-top: 1px solid rgba(255,255,255,.1); }
#da-contact-page .da-contact-proposal__process li > span { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; color: var(--da-contact-blue-deep); background: var(--da-contact-gold); font-size: 12px; font-weight: 900; }
#da-contact-page .da-contact-proposal__process strong { color: #fff; font-size: 14px; }
#da-contact-page .da-contact-proposal__process p { margin: 5px 0 0; color: rgba(255,255,255,.62) !important; font-size: 12px; line-height: 1.55; }

/* BOOKING */
#da-contact-page .da-contact-booking { color: #fff; background: radial-gradient(circle at 91% 13%,rgba(247,220,43,.13),transparent 26%),linear-gradient(135deg,var(--da-contact-blue-deep),var(--da-contact-blue)); }
#da-contact-page .da-contact-booking__frame { overflow: hidden; border: 1px solid rgba(255,255,255,.18); border-radius: 30px; background: #fff; box-shadow: var(--da-contact-shadow-dark); }
#da-contact-page .da-contact-booking__bar { min-height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 0 24px; color: #fff; background: linear-gradient(90deg,#00131f,#023859); }
#da-contact-page .da-contact-booking__bar > div { display: flex; align-items: center; gap: 12px; }
#da-contact-page .da-contact-booking__bar strong { font-size: 13px; }
#da-contact-page .da-contact-booking__bar > span { color: rgba(255,255,255,.58); font-size: 11px; }
#da-contact-page .da-contact-booking iframe { display: block; width: 100%; min-height: 780px; border: 0; background: #fff; }
#da-contact-page .da-contact-booking__fallback { margin: 16px 0 0; color: rgba(255,255,255,.62) !important; font-size: 12px; text-align: center; }
#da-contact-page .da-contact-booking__fallback a { color: var(--da-contact-gold); font-weight: 800; text-decoration: underline; }

/* DIRECT CONTACT */
#da-contact-page .da-contact-direct { background: #fff; }
#da-contact-page .da-contact-direct__grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
#da-contact-page .da-contact-info-card { min-height: 230px; display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--da-contact-line); border-radius: 24px; background: linear-gradient(145deg,#fff,#f7fafb); box-shadow: 0 15px 42px rgba(1,29,48,.07); transition: transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
#da-contact-page a.da-contact-info-card:hover { transform: translateY(-6px); border-color: rgba(140,4,4,.28); box-shadow: 0 23px 52px rgba(1,29,48,.12); }
#da-contact-page .da-contact-info-card__icon { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 16px; color: #fff; background: linear-gradient(135deg,var(--da-contact-blue),var(--da-contact-blue-dark)); }
#da-contact-page .da-contact-info-card__icon svg { width: 26px; height: 26px; }
#da-contact-page .da-contact-info-card > span { margin-top: 25px; color: var(--da-contact-red); font-size: 10px; letter-spacing: .12em; font-weight: 900; text-transform: uppercase; }
#da-contact-page .da-contact-info-card > strong { margin-top: 8px; color: var(--da-contact-blue-dark); font-size: clamp(18px,2vw,23px); line-height: 1.15; letter-spacing: -.03em; word-break: break-word; }
#da-contact-page .da-contact-info-card > small { margin-top: auto; padding-top: 19px; color: var(--da-contact-muted); font-size: 11px; }
#da-contact-page .da-contact-social { margin-top: 26px; display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 26px 30px; border-radius: 24px; color: #fff; background: linear-gradient(135deg,var(--da-contact-blue-dark),var(--da-contact-blue)); }
#da-contact-page .da-contact-social span { display: block; color: var(--da-contact-gold); font-size: 10px; letter-spacing: .12em; font-weight: 900; text-transform: uppercase; }
#da-contact-page .da-contact-social strong { display: block; margin-top: 6px; color: #fff; font-size: 16px; }
#da-contact-page .da-contact-social__links { display: flex; flex-wrap: wrap; gap: 10px; }
#da-contact-page .da-contact-social__links a { display: inline-flex; align-items: center; gap: 7px; padding: 10px 13px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; color: #fff; background: rgba(255,255,255,.08); font-size: 11px; font-weight: 800; }
#da-contact-page .da-contact-social__links svg { width: 18px; height: 18px; }

/* FAQ */
#da-contact-page .da-contact-faq { background: var(--da-contact-soft); }
#da-contact-page .da-contact-faq__layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 80px; align-items: start; }
#da-contact-page .da-contact-faq__intro { position: sticky; top: 100px; }
#da-contact-page .da-contact-faq__intro h2 { font-size: clamp(36px,4.5vw,58px); }
#da-contact-page .da-contact-faq__intro > p { margin: 21px 0; color: var(--da-contact-muted); font-size: 16px; line-height: 1.72; }
#da-contact-page .da-contact-faq__intro > a { display: inline-flex; align-items: center; gap: 8px; color: var(--da-contact-red); font-size: 12px; font-weight: 900; }
#da-contact-page .da-contact-faq__intro > a svg { width: 18px; height: 18px; }
#da-contact-page .da-contact-faq__list { display: grid; gap: 12px; }
#da-contact-page .da-contact-faq__item { overflow: hidden; border: 1px solid var(--da-contact-line); border-radius: 20px; background: #fff; }
#da-contact-page .da-contact-faq__item button { width: 100%; min-height: 80px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; border: 0; color: var(--da-contact-blue-dark); background: transparent; text-align: left; font-size: 14px; font-weight: 850; }
#da-contact-page .da-contact-faq__item button svg { width: 20px; height: 20px; flex: 0 0 20px; transition: transform .25s ease; }
#da-contact-page .da-contact-faq__item.is-open button svg { transform: rotate(180deg); }
#da-contact-page .da-contact-faq__answer { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
#da-contact-page .da-contact-faq__answer p { margin: 0; padding: 0 24px 24px; color: var(--da-contact-muted) !important; font-size: 13px; line-height: 1.7; }

/* FINAL */
#da-contact-page .da-contact-final { position: relative; overflow: hidden; padding: 86px 0; color: #fff; background: linear-gradient(125deg,#b20b0b,#680202); }
#da-contact-page .da-contact-final__pattern { position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(135deg,transparent 45%,rgba(255,255,255,.2) 45%,rgba(255,255,255,.2) 47%,transparent 47%); background-size: 52px 52px; }
#da-contact-page .da-contact-final__inner { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 60px; }
#da-contact-page .da-contact-final__inner > div:first-child { max-width: 760px; }
#da-contact-page .da-contact-final h2 { color: #fff !important; }
#da-contact-page .da-contact-final p:not(.da-contact-kicker) { margin: 17px 0 0; color: rgba(255,255,255,.75) !important; font-size: 16px; line-height: 1.7; }
#da-contact-page .da-contact-final__actions { flex: 0 0 auto; display: flex; flex-direction: column; gap: 10px; min-width: 245px; }

/* REVEAL SEGURO */
#da-contact-page .da-contact-reveal { opacity: 1; transform: none; }
#da-contact-page.da-contact-animate .da-contact-reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1); }
#da-contact-page.da-contact-animate .da-contact-reveal.is-visible { opacity: 1; transform: none; }

/* RESPONSIVE */
@media (max-width: 1080px) {
  #da-contact-page .da-contact-hero__layout { gap: 36px; }
  #da-contact-page .da-contact-hero__copy h1 { font-size: clamp(45px,6.5vw,70px); }
  #da-contact-page .da-contact-paths { grid-template-columns: 1fr; }
  #da-contact-page .da-contact-path { min-height: 380px; }
  #da-contact-page .da-contact-needs__layout { grid-template-columns: 320px 1fr; }
  #da-contact-page .da-contact-proposal__layout { gap: 42px; }
  #da-contact-page .da-contact-direct__grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 820px) {
  #da-contact-page .da-contact-section { padding: 82px 0; }
  #da-contact-page .da-contact-heading { align-items: start; flex-direction: column; gap: 18px; }
  #da-contact-page .da-contact-heading > p { max-width: 720px; }
  #da-contact-page .da-contact-hero { min-height: auto; }
  #da-contact-page .da-contact-hero__layout { grid-template-columns: 1fr; padding: 70px 0 55px; }
  #da-contact-page .da-contact-hero__visual { min-height: 480px; max-width: 650px; width: 100%; margin-inline: auto; }
  #da-contact-page .da-contact-needs__layout,
  #da-contact-page .da-contact-proposal__layout,
  #da-contact-page .da-contact-faq__layout { grid-template-columns: 1fr; }
  #da-contact-page .da-contact-needs__tabs { grid-template-columns: repeat(2,1fr); }
  #da-contact-page .da-contact-needs__tabs button:hover,
  #da-contact-page .da-contact-needs__tabs button.is-active { transform: none; }
  #da-contact-page .da-contact-faq__intro { position: static; }
  #da-contact-page .da-contact-social,
  #da-contact-page .da-contact-final__inner { align-items: flex-start; flex-direction: column; }
  #da-contact-page .da-contact-final__actions { width: 100%; flex-direction: row; }
}

@media (max-width: 560px) {
  #da-contact-page .da-contact-container { width: min(calc(100% - 28px),var(--da-contact-container)); }
  #da-contact-page .da-contact-section { padding: 68px 0; }
  #da-contact-page .da-contact-hero__copy h1 { font-size: clamp(39px,12vw,55px); }
  #da-contact-page .da-contact-hero__lead { font-size: 15px; }
  #da-contact-page .da-contact-actions { flex-direction: column; }
  #da-contact-page .da-contact-btn { width: 100%; }
  #da-contact-page .da-contact-hero__visual { min-height: 420px; }
  #da-contact-page .da-contact-hero__photo--main { width: 82%; height: 72%; }
  #da-contact-page .da-contact-hero__photo--secondary { width: 49%; height: 43%; }
  #da-contact-page .da-contact-hero__city { left: 0; }
  #da-contact-page .da-contact-hero__badge { display: none; }
  #da-contact-page .da-contact-hero__availability { right: 0; bottom: 0; }
  #da-contact-page .da-contact-subnav__inner { justify-content: flex-start; min-height: 59px; }
  #da-contact-page .da-contact-path { min-height: 430px; padding: 28px; }
  #da-contact-page .da-contact-needs__tabs { grid-template-columns: 1fr; }
  #da-contact-page .da-contact-needs__panel { min-height: 520px; padding: 35px 25px; }
  #da-contact-page .da-contact-proposal__process { padding: 25px; }
  #da-contact-page .da-contact-booking__bar { align-items: flex-start; flex-direction: column; justify-content: center; padding: 16px 18px; }
  #da-contact-page .da-contact-booking iframe { min-height: 700px; height: 700px; }
  #da-contact-page .da-contact-direct__grid { grid-template-columns: 1fr; }
  #da-contact-page .da-contact-social__links { width: 100%; }
  #da-contact-page .da-contact-social__links a { flex: 1 1 auto; justify-content: center; }
  #da-contact-page .da-contact-final__actions { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  #da-contact-page *,#da-contact-page *::before,#da-contact-page *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  #da-contact-page .da-contact-reveal { opacity: 1 !important; transform: none !important; }
}/* End custom CSS */