.elementor-1668 .elementor-element.elementor-element-289df67{--display:flex;}.elementor-1668 .elementor-element.elementor-element-6e3649c{--display:flex;}.elementor-1668 .elementor-element.elementor-element-7364b20{--display:flex;}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(12px/2);}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(12px/2);}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(12px/2);}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-12px/2);}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-12px/2);}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1668 .elementor-element.elementor-element-7333ecb{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-icon{padding-inline-end:12px;}.elementor-1668 .elementor-element.elementor-element-7333ecb .elementor-icon-list-text{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-790e140{--display:flex;}.elementor-1668 .elementor-element.elementor-element-7793407 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1668 .elementor-element.elementor-element-bf88508 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1668 .elementor-element.elementor-element-343c45e{--display:flex;}.elementor-1668 .elementor-element.elementor-element-3355c4a{--display:flex;}.elementor-1668 .elementor-element.elementor-element-23871c7{--display:flex;}.elementor-1668 .elementor-element.elementor-element-d974cd1{--display:flex;}.elementor-1668 .elementor-element.elementor-element-cb239df{--display:flex;}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(10px/2);}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(10px/2);}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(10px/2);}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-10px/2);}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-10px/2);}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1668 .elementor-element.elementor-element-1dd6fd4{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-icon{padding-inline-end:9px;}.elementor-1668 .elementor-element.elementor-element-1dd6fd4 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-515ba90{--display:flex;}.elementor-1668 .elementor-element.elementor-element-062d052{--display:flex;}.elementor-1668 .elementor-element.elementor-element-769bb7f{--display:flex;}.elementor-1668 .elementor-element.elementor-element-133ebe8 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-3a063ea{--display:flex;}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0px/2);}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0px/2);}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1668 .elementor-element.elementor-element-8ced600{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1668 .elementor-element.elementor-element-8ced600 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0px/2);}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0px/2);}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1668 .elementor-element.elementor-element-75aa32a{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-icon{padding-inline-end:8px;}.elementor-1668 .elementor-element.elementor-element-75aa32a .elementor-icon-list-text{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-6eecb66{--display:flex;}.elementor-1668 .elementor-element.elementor-element-64e8701 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-field-type-html{padding-bottom:0px;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-button{font-family:"Bebas Neue", Sans-serif;font-size:14.5px;font-weight:400;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .e-form__buttons__wrapper__button-next{background-color:#C9A24B;color:#161208;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-button[type="submit"]{background-color:#C9A24B;color:#161208;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-button[type="submit"] svg *{fill:#161208;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .e-form__buttons__wrapper__button-next:hover{color:#161208;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-button[type="submit"]:hover{color:#161208;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .elementor-button[type="submit"]:hover svg *{fill:#161208;}.elementor-1668 .elementor-element.elementor-element-8f0b078 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1668 .elementor-element.elementor-element-8f0b078{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-1668 .elementor-element.elementor-element-572eaed{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-1668 .elementor-element.elementor-element-572eaed .elementor-divider-separator{width:100%;}.elementor-1668 .elementor-element.elementor-element-572eaed .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1668 .elementor-element.elementor-element-87353ac{--display:flex;}.elementor-1668 .elementor-element.elementor-element-46b5709{--display:flex;}.elementor-1668 .elementor-element.elementor-element-5e6c4ee{--display:flex;}.elementor-1668 .elementor-element.elementor-element-842a36a{--display:flex;}.elementor-1668 .elementor-element.elementor-element-80be195{--display:flex;}.elementor-1668 .elementor-element.elementor-element-3ed7f09 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-70e9634 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-9e53d35{--display:flex;}.elementor-1668 .elementor-element.elementor-element-8a22f26 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-9662732 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-0efe4b6{--display:flex;}.elementor-1668 .elementor-element.elementor-element-f7ca6f4 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-ab5f663 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-c6a88ff{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1668 .elementor-element.elementor-element-1df58d3{--display:flex;}.elementor-1668 .elementor-element.elementor-element-96cf047 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1668 .elementor-element.elementor-element-975f4b8{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-1668 .elementor-element.elementor-element-975f4b8 .elementor-divider-separator{width:100%;}.elementor-1668 .elementor-element.elementor-element-975f4b8 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1668 .elementor-element.elementor-element-0d7c68b{--display:flex;}.elementor-1668 .elementor-element.elementor-element-9d372b9{--display:flex;}.elementor-1668 .elementor-element.elementor-element-a2ad01b{--display:flex;}.elementor-1668 .elementor-element.elementor-element-e08e4d0{--display:flex;}.elementor-1668 .elementor-element.elementor-element-1eced43{--display:flex;}.elementor-1668 .elementor-element.elementor-element-fa9ad72{--display:flex;}.elementor-1668 .elementor-element.elementor-element-facce46 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-d12a72d{--display:flex;}.elementor-1668 .elementor-element.elementor-element-a8011b6{--display:flex;}.elementor-1668 .elementor-element.elementor-element-e774e9f{--display:flex;}.elementor-1668 .elementor-element.elementor-element-b308546{--display:flex;}.elementor-1668 .elementor-element.elementor-element-11e6161 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-feba88d{--display:flex;}.elementor-1668 .elementor-element.elementor-element-22f24e5 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-edf81ea{--display:flex;}.elementor-1668 .elementor-element.elementor-element-5fc030c .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0px/2);}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0px/2);}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0px/2);}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1668 .elementor-element.elementor-element-8629934{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-icon{padding-inline-end:12px;}.elementor-1668 .elementor-element.elementor-element-8629934 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-349dc53{--display:flex;}.elementor-1668 .elementor-element.elementor-element-7f9dfa7 .elementor-icon-wrapper{text-align:center;}.elementor-1668 .elementor-element.elementor-element-8331382{--display:flex;}.elementor-1668 .elementor-element.elementor-element-1a1f2e7{--display:flex;}.elementor-1668 .elementor-element.elementor-element-ed9a59b{text-align:center;}.elementor-1668 .elementor-element.elementor-element-efe9ec7{text-align:center;}.elementor-1668 .elementor-element.elementor-element-dfd1449{text-align:center;}.elementor-1668 .elementor-element.elementor-element-ea6231e{--display:flex;}.elementor-1668 .elementor-element.elementor-element-3de30ac .elementor-button-content-wrapper{flex-direction:row;}.elementor-1668 .elementor-element.elementor-element-e481cf1 .elementor-button-content-wrapper{flex-direction:row;}.elementor-1668 .elementor-element.elementor-element-73eb57f{text-align:center;}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(24px/2);}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(24px/2);}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(24px/2);}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-24px/2);}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-24px/2);}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1668 .elementor-element.elementor-element-ef7eb72{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-icon{padding-inline-end:10px;}.elementor-1668 .elementor-element.elementor-element-ef7eb72 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(12px/2);}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(12px/2);}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(12px/2);}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-12px/2);}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-12px/2);}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1668 .elementor-element.elementor-element-22fae8e{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1668 .elementor-element.elementor-element-22fae8e .elementor-icon-list-text{transition:color 0.3s;}/* Start custom CSS *//* ==========================================================================
   SOBRE MÍ — sistema de diseño (ida y vuelta con home)
   Solo widgets nativos + este CSS. Sin HTML incrustado, sin JS propio.
   Los efectos de aparición usan animaciones nativas de Elementor (_animation).
   ========================================================================== */

/* ---------- normalización: los contenedores Elementor traen gaps y
   padding por defecto; aquí todo el ritmo lo mandan nuestros márgenes. ---------- */
.lz-c.lz-c{ --gap:0; --row-gap:0; --column-gap:0; --widgets-spacing:0px;
  --widgets-spacing-row:0px; --widgets-spacing-column:0px;
  --content-width:100%; --width:100%;
  --padding-top:0; --padding-right:0; --padding-bottom:0; --padding-left:0;
  --margin-top:0; --margin-right:0; --margin-bottom:0; --margin-left:0 }
.lz-c.lz-c > .elementor-element{ max-width:100% }

/* La hoja base atómica llega tarde y fuerza display:flex/min-height:0/padding:10px. */
.lz-c.lz-c.lz-c{ display:flex; flex-direction:column; min-height:0; padding:0 }
.lz-c.lz-c.lz-c.lz-nav{ display:flex; flex-direction:row; align-items:center;
  justify-content:space-between; padding:18px 48px }
.lz-c.lz-c.lz-c.lz-container{ padding:0; margin-inline:auto;
  width:min(1160px, calc(100% - 48px)); max-width:100% }
.lz-c.lz-c.lz-c.lz-sec{ padding:clamp(96px,11vw,150px) 0 }
.lz-c.lz-c.lz-c.lz-hero{ min-height:100vh; align-items:center; padding:150px 0 130px }
.lz-c.lz-c.lz-c.lz-hero-inner{ max-width:760px }
.lz-c.lz-c.lz-c.lz-mv{ display:flex; flex-direction:column }
.lz-c.lz-c.lz-c.lz-item{ display:flex; flex-direction:row }
.lz-c.lz-c.lz-c.lz-mile{ display:flex; flex-direction:column }
.lz-c.lz-c.lz-c.lz-cta{ padding:clamp(110px,13vw,170px) 0 }
.lz-c.lz-c.lz-c.lz-foot{ padding:72px 0 0 }
.lz-c.lz-c.lz-c.lz-footgrid{ flex-direction:row; flex-wrap:wrap;
  gap:clamp(32px,5vw,64px); padding-bottom:64px }
.lz-c.lz-c.lz-c.lz-footbar{ flex-direction:row; flex-wrap:wrap; align-items:center;
  justify-content:space-between; gap:16px; padding:24px 0 28px }
.lz-c.lz-c.lz-c.lz-actions,.lz-c.lz-c.lz-c.lz-cta-actions{ flex-direction:row; flex-wrap:wrap }
.lz-c.lz-c.lz-c.lz-cta-actions{ justify-content:center }

/* Widgets clásicos dentro de contenedores: que no roben el posicionamiento. */
.lz-c .elementor-element.elementor-widget,
.lz-c .elementor-widget-container{ position:static }

/* ---------- tokens ---------- */
:root{
  --bg:#0B0A08; --bg-soft:#0E0C09; --skin:#15120C; --ink:#EDE6D6; --muted:#A79D8A;
  --gold:#C9A24B; --gold-hi:#E3C368; --red:#B03A30; --blue:#2E4C74;
  --red-deep:#5E241D; --red-soft:#6A2A22;
  --hairline:rgba(237,230,214,.09); --goldline:rgba(201,162,75,.30);
  --ease:cubic-bezier(.22,1,.36,1);
  --disp:'Bebas Neue','Arial Narrow',sans-serif;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Jost',Verdana,sans-serif;
}
body{ background:var(--bg); color:var(--ink);
  font:300 16px/1.6 var(--sans); overflow-x:hidden }
.elementor-widget-text-editor{ color:inherit; font:300 16px/1.6 var(--sans) }
.elementor-widget-text-editor p{ margin:0 }
a{ color:inherit }
::selection{ background:var(--gold); color:#141008 }
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{
  outline:1px solid var(--gold); outline-offset:4px }
section[id]{ scroll-margin-top:86px }
.lz-bt{ border-top:1px solid var(--hairline) }

/* ---------- nav fija ---------- */
.lz-nav{ position:fixed; inset:0 0 auto 0; z-index:700;
  border-bottom:1px solid transparent;
  transition:background .35s, border-color .35s, padding .35s }
.lz-nav.is-scrolled{ background:rgba(11,10,8,.82);
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  border-bottom-color:var(--hairline); padding-block:11px }
.lz-nav .elementor-widget-heading .elementor-heading-title{ margin:0 }
.lz-brandmark{ width:40px; height:40px; border:1px solid var(--goldline); border-radius:50%;
  display:grid; place-items:center; font:400 18px/1 var(--disp); letter-spacing:.04em;
  color:var(--gold); flex:none }
.lz-navlinks .elementor-icon-list-item{ margin:0; padding:0 }
.lz-navlinks .elementor-icon-list-item a{ text-decoration:none; padding:6px 2px }

/* ---------- banda tricolor ---------- */
.lz-triband{ height:3px; border:0; width:100%;
  background:linear-gradient(90deg,var(--red) 0 33.4%, #EDE6D6 33.4% 66.7%, var(--blue) 66.7% 100%) }

/* ---------- botones ---------- */
.btnw{ display:inline-flex }
.btnw .elementor-button{ position:relative; overflow:hidden; display:inline-flex; align-items:center;
  gap:12px; padding:19px 36px; border-radius:2px; text-decoration:none;
  font:400 14.5px var(--disp); letter-spacing:.2em; text-transform:uppercase;
  transition:background .35s, color .35s, border-color .35s }
.btnw.btn-sm .elementor-button{ padding:14px 26px; font-size:12.5px; letter-spacing:.18em }
.btnw .elementor-button-content-wrapper{ display:inline-flex; align-items:center; gap:12px; flex-direction:row }
.btnw .elementor-button-icon{ display:inline-flex; align-items:center; flex:none; line-height:1 }
.btnw .elementor-button-icon svg{ width:17px; height:17px; fill:currentColor; display:block }
.btnw.btn-gold .elementor-button{ background:var(--gold); color:#161208 }
.btnw.btn-gold .elementor-button:hover{ background:var(--gold-hi) }
.btnw.btn-ghost .elementor-button{ border:1px solid rgba(201,162,75,.4); color:var(--ink) }
.btnw.btn-ghost .elementor-button:hover{ border-color:var(--gold); background:rgba(201,162,75,.07) }

/* ---------- medallón (CSS puro, sustituye al SVG giratorio) ---------- */
.lz-med{ position:absolute; right:clamp(24px,7vw,110px); top:50%; transform:translateY(-50%) }
.lz-med-ring{ position:relative; width:clamp(232px,23vw,292px); aspect-ratio:1;
  display:grid; place-items:center }
.lz-med-ring::before,.lz-med-ring::after{ content:""; position:absolute; border-radius:50% }
.lz-med-ring::before{ inset:0; border:1px solid var(--goldline) }
.lz-med-ring::after{ inset:28px; border:1px solid var(--hairline) }
.lz-med-spin{ position:absolute; inset:9px; border:1px dashed rgba(201,162,75,.22);
  border-radius:50%; animation:lzspin 26s linear infinite }
@keyframes lzspin{ to{ transform:rotate(360deg) } }
.lz-med-v{ position:absolute; inset:0; display:grid; place-content:center; gap:8px;
  justify-items:center; text-align:center }

/* ---------- firma (imagen SVG autoanimada, vía widget Image nativo) ---------- */
.lz-firma img{ width:min(230px,58vw); height:auto; display:block }
.lz-firma{ align-self:flex-start }

/* ---------- tipografía de sección ---------- */
.lz-h1 .elementor-heading-title{ font:400 clamp(4rem,10.5vw,9.2rem)/.96 var(--disp);
  letter-spacing:.015em; text-transform:uppercase; color:var(--ink); margin:26px 0 10px }
.lz-h2 .elementor-heading-title{ font:400 clamp(2.8rem,5.8vw,4.9rem)/1.02 var(--disp);
  letter-spacing:.015em; text-transform:uppercase; color:var(--ink); margin:20px 0 0 }
.lz-it .elementor-heading-title{ font:500 italic .98em/1.05 var(--serif);
  letter-spacing:0; text-transform:none; color:var(--gold-hi); margin:0 }
.lz-kicker .elementor-heading-title{ font:400 12.5px var(--disp); letter-spacing:.3em;
  text-transform:uppercase; color:var(--muted); margin:0 }
.lz-sub{ max-width:52ch; color:var(--muted); font:300 16.5px/1.7 var(--sans) }

/* ---------- 01 timeline ---------- */
.lz-timeline{ position:relative; margin-top:72px; display:flex; flex-direction:column }
.lz-timeline::before{ content:""; position:absolute; left:19px; top:8px; bottom:8px; width:2px;
  background:linear-gradient(var(--gold),var(--gold) 62%,var(--hairline) 62%) }
.lz-item{ display:grid; grid-template-columns:40px 132px 1fr; gap:2px 28px; padding:36px 0;
  align-items:start }
.lz-item:first-child{ padding-top:8px }
.lz-item:last-child{ padding-bottom:8px }
.lz-dot{ width:12px; height:12px; border-radius:50%; margin:9px 0 0 14px; flex:none;
  background:var(--bg); border:1px solid var(--gold);
  box-shadow:0 0 0 7px rgba(201,162,75,.14) }
.lz-year{ font:400 1.9rem/1 var(--disp); letter-spacing:.06em; color:var(--gold-hi) }
.lz-tyear .elementor-heading-title{ font:400 1.9rem/1 var(--disp); letter-spacing:.06em;
  color:var(--gold-hi); margin:0 }
.lz-tbody{ max-width:52ch }
.lz-tbody .elementor-widget-heading .elementor-heading-title{ font:400 1.5rem var(--disp);
  letter-spacing:.04em; text-transform:uppercase; color:var(--ink); margin:0 }
.lz-tbody .elementor-widget-text-editor{ font:300 15px/1.7 var(--sans); color:var(--muted);
  margin-top:8px }

/* ---------- 02 split con columna pegajosa ---------- */
.lz-split{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr);
  gap:clamp(44px,6vw,96px); align-items:start }
.lz-col-left{ position:sticky; top:110px }
.lz-body p,.lz-body .elementor-widget-text-editor{ font:300 16px/1.8 var(--sans);
  color:var(--muted); max-width:60ch }
.lz-body .elementor-widget-text-editor + .elementor-widget-text-editor{ margin-top:22px }
.lz-aval{ display:flex; gap:16px; align-items:flex-start; margin-top:44px;
  padding:20px 24px; border:1px solid var(--goldline); background:rgba(201,162,75,.04) }
.lz-aval .elementor-icon-list-icon svg{ width:22px; height:22px; fill:var(--gold) }
.lz-aval .elementor-icon-list-text{ font:300 13.5px/1.7 var(--sans); color:var(--muted) }
.lz-quote{ margin-top:48px; padding-left:28px; border-left:2px solid var(--gold) }
.lz-quote .elementor-heading-title{ font:400 clamp(1.9rem,3.4vw,3rem)/1.12 var(--disp);
  letter-spacing:.03em; text-transform:uppercase; color:var(--ink); margin:0 }
.lz-qsrc .elementor-heading-title{ font:500 italic 1.25rem var(--serif);
  text-transform:none; letter-spacing:0; color:var(--gold-hi); margin:14px 0 0 }
.lz-qnote .elementor-heading-title{ font:400 10px var(--sans); font-style:normal;
  letter-spacing:.3em; text-transform:uppercase; color:var(--muted); margin:6px 0 0 }

/* ---------- 03 brújula ---------- */
.lz-mvgrid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:56px }
.lz-mv{ position:relative; overflow:hidden; border:1px solid var(--hairline); background:#12100B;
  padding:38px 34px 36px; transition:transform .45s var(--ease), border-color .35s }
.lz-mv:hover{ transform:translateY(-5px); border-color:var(--goldline) }
.lz-mv .elementor-icon{ width:46px; height:46px; border:1px solid var(--goldline);
  border-radius:50%; display:grid; place-items:center; background:none; padding:0;
  color:var(--gold); transition:transform .45s var(--ease) }
.lz-mv .elementor-icon svg{ width:21px; height:21px; fill:currentColor; display:block }
.lz-mv:hover .elementor-icon{ transform:rotate(-12deg) scale(1.06) }
.lz-mv .elementor-icon-box-title{ margin-top:22px }
.lz-mv .elementor-icon-box-title a,.lz-mv .elementor-icon-box-title span{
  font:400 2rem var(--disp); letter-spacing:.04em; text-transform:uppercase; color:var(--ink) }
.lz-mv .elementor-icon-box-description{ margin-top:12px; font:300 15px/1.75 var(--sans);
  color:var(--muted); max-width:44ch }
.lz-list-h .elementor-heading-title{ display:flex; align-items:center; gap:12px;
  font:400 12.5px var(--disp); letter-spacing:.32em; text-transform:uppercase;
  color:var(--gold); margin:72px 0 0 }
.lz-valores{ list-style:none; margin-top:20px; border-top:1px solid var(--hairline) }
.lz-val{ display:grid; grid-template-columns:60px 1fr 42px; align-items:baseline;
  padding:22px 0 20px; border-bottom:1px solid var(--hairline); cursor:pointer }
.lz-val-i{ font:500 italic 1.1rem var(--serif); color:var(--gold) }
.lz-val-n{ font:400 clamp(1.4rem,2.3vw,1.8rem)/1.1 var(--disp); letter-spacing:.05em;
  text-transform:uppercase; color:var(--ink); transition:color .35s, transform .45s var(--ease) }
.lz-val-d{ grid-column:2; max-height:0; opacity:0; overflow:hidden;
  font:300 14.5px/1.65 var(--sans); color:var(--muted);
  transition:max-height .55s var(--ease), opacity .4s ease, margin-top .55s var(--ease) }
.lz-val-a{ font-size:18px; color:var(--gold); opacity:0; transform:translateX(-10px);
  transition:opacity .35s, transform .45s var(--ease) }
.lz-val-a svg{ width:18px; height:18px; fill:currentColor; display:block }
.lz-val:focus-within .lz-val-n,.lz-val:hover .lz-val-n{ color:var(--gold-hi); transform:translateX(6px) }
.lz-val:focus-within .lz-val-d,.lz-val:hover .lz-val-d{ max-height:90px; opacity:1; margin-top:10px }
.lz-val:focus-within .lz-val-a,.lz-val:hover .lz-val-a{ opacity:1; transform:none }

/* ---------- 04 bloque rojo ---------- */
.lz-sec-red{ background:var(--red-deep); overflow:hidden }
.lz-sec-red .lz-muted{ color:#D9BFB6 }
.lz-ghost{ position:absolute; right:clamp(8px,3vw,56px); top:clamp(40px,7vw,96px);
  font:400 clamp(10rem,26vw,22rem)/1 var(--disp); color:rgba(237,230,214,.05);
  pointer-events:none; user-select:none }
.lz-milegrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:56px }
.lz-mile{ position:relative; overflow:hidden; border:1px solid var(--hairline);
  background:rgba(0,0,0,.16); padding:30px 28px;
  transition:transform .45s var(--ease), border-color .35s, background .35s }
.lz-mile .elementor-icon svg{ width:24px; height:24px; fill:var(--gold) }
.lz-mile .elementor-icon-box-title{ margin-top:16px }
.lz-mile .elementor-icon-box-title a,.lz-mile .elementor-icon-box-title span{
  font:400 1.7rem var(--disp); letter-spacing:.04em; text-transform:uppercase; color:var(--ink) }
.lz-mile .elementor-icon-box-description{ margin-top:10px; font:300 14.5px/1.65 var(--sans);
  color:#D9BFB6 }
.lz-mile:hover{ transform:translateY(-6px) rotate(-.5deg);
  border-color:rgba(201,162,75,.5); background:rgba(0,0,0,.26) }

/* ---------- cierre ---------- */
.lz-cta{ position:relative; text-align:center; overflow:hidden }
.lz-cta::before{ content:""; position:absolute; inset:3px 1.6% 3px; pointer-events:none;
  border:1px solid rgba(201,162,75,.5) }
.lz-seal{ position:absolute; top:0; left:50%; transform:translate(-50%,-50%);
  width:48px; height:48px; border-radius:50%; background:var(--bg);
  border:1px solid var(--goldline); display:grid; place-items:center; color:var(--gold) }
.lz-seal svg{ width:20px; height:20px; fill:currentColor }
.lz-cta-title .elementor-heading-title{ font:400 clamp(3.2rem,9.5vw,8.6rem)/.98 var(--disp);
  letter-spacing:.015em; text-transform:uppercase; color:var(--ink); margin:22px 0 12px }
.lz-cta-it .elementor-heading-title{ font:500 italic clamp(1.5rem,3.2vw,2.4rem)/1.25 var(--serif);
  color:var(--gold-hi); margin:0 0 26px }
.lz-cta-sub{ max-width:52ch; margin:0 auto; font:300 15.5px/1.7 var(--sans); color:var(--muted) }
.lz-cta-note{ margin-top:18px; font:300 italic 13px var(--sans); color:var(--muted) }
.lz-cta-meta .elementor-icon-list-text{ font:300 13px var(--sans); color:var(--muted) }
.lz-cta-meta .elementor-icon-list-icon svg{ width:16px; height:16px; fill:var(--gold) }
.lz-soc .elementor-icon-list-icon svg{ width:19px; height:19px; fill:var(--muted) }

/* ---------- pie ---------- */
.lz-foot{ border-top:1px solid var(--hairline) }
.lz-foot .elementor-widget-heading .elementor-heading-title{ font:400 11.5px var(--disp);
  letter-spacing:.34em; text-transform:uppercase; color:var(--gold); margin:0 0 20px }
.lz-fnav .elementor-icon-list-item,.lz-fcontact .elementor-icon-list-item{ padding:7px 0 }
.lz-fnav .elementor-icon-list-item a,.lz-fnav .elementor-icon-list-text{
  font:300 14px var(--sans); color:var(--muted); text-decoration:none }
.lz-fnav .elementor-icon-list-item:hover .elementor-icon-list-text{ color:var(--ink) }
.lz-fcontact .elementor-icon-list-text{ font:300 13.5px/1.7 var(--sans); color:var(--muted) }
.lz-fcontact .elementor-icon-list-icon svg{ width:16px; height:16px; fill:var(--gold) }
.lz-footbar{ border-top:1px solid var(--hairline); font:300 12px var(--sans); color:var(--muted) }
.lz-totop .elementor-button{ width:44px; height:44px; padding:0; border:1px solid var(--goldline);
  border-radius:50%; background:none; color:var(--gold); display:grid; place-items:center }
.lz-totop .elementor-button-content-wrapper{ display:grid; place-items:center }
.lz-totop .elementor-button-icon svg{ width:18px; height:18px; fill:currentColor }
.lz-totop .elementor-button:hover{ background:var(--gold); color:#161208 }

/* ---------- responsive ---------- */
@media (max-width:1000px){ .lz-med{ display:none } }
@media (max-width:960px){
  .lz-split{ grid-template-columns:1fr }
  .lz-col-left{ position:static }
  .lz-mvgrid,.lz-milegrid{ grid-template-columns:1fr }
  .lz-footgrid{ grid-template-columns:1fr 1fr }
  .lz-item{ grid-template-columns:40px 1fr }
}
@media (max-width:900px){
  .lz-navlinks{ display:none }
  .lz-hero{ min-height:0; padding:130px 0 90px }
}
@media (max-width:640px){
  .lz-nav .btnw.btn-sm{ display:none }
  .lz-footgrid{ grid-template-columns:1fr }
  .lz-ghost{ font-size:clamp(5rem,24vw,8rem); top:auto; bottom:24px }
  .lz-mv{ padding:30px 24px 28px }
}

/* ---------- movimiento reducido: sin spin ni draw ---------- */
@media (prefers-reduced-motion:reduce){
  .lz-med-spin{ animation:none }
  html{ scroll-behavior:auto }
  .lz-firma path{ animation:none; stroke-dashoffset:0 }
}
/* Bumps de especificidad y ajustes para el build nativo de Sobre mí */

/* --- grids nativos (la hoja base del contenedor impone display:flex) --- */
.lz-c.lz-c.lz-c.lz-item{ display:grid; grid-template-columns:40px 132px 1fr; gap:2px 28px; align-items:start }
.lz-c.lz-c.lz-c.lz-split{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr);
  gap:clamp(44px,6vw,96px); align-items:start }
.lz-c.lz-c.lz-c.lz-mvgrid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:56px }
.lz-c.lz-c.lz-c.lz-milegrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:56px }
.lz-c.lz-c.lz-c.lz-footgrid{ display:grid; grid-template-columns:1.6fr 1fr 1.2fr auto;
  gap:clamp(32px,5vw,64px); padding-bottom:64px }
.lz-c.lz-c.lz-c.lz-val{ display:grid; grid-template-columns:60px 1fr; gap:2px 18px; align-items:baseline;
  padding:22px 0 20px; border-bottom:1px solid var(--hairline) }
.lz-c.lz-c.lz-c.lz-valores{ display:flex; flex-direction:column; border-top:1px solid var(--hairline) }
.lz-c.lz-c.lz-c.lz-timeline{ display:flex; flex-direction:column; position:relative; margin-top:72px }
.lz-c.lz-c.lz-c.lz-quote{ display:flex; flex-direction:column; margin-top:48px;
  padding-left:28px; border-left:2px solid var(--gold) }
.lz-c.lz-c.lz-c.lz-body{ display:flex; flex-direction:column; gap:22px }
.lz-c.lz-c.lz-c.lz-tbody{ display:flex; flex-direction:column; max-width:52ch }

/* --- geometría del punto del timeline (gana a la normalización del contenedor) --- */
.lz-c.lz-c.lz-dot{ width:12px; height:12px; min-height:0; margin:9px 0 0 14px; flex:none;
  padding:0; background:var(--bg); border:1px solid var(--gold); border-radius:50%;
  box-shadow:0 0 0 7px rgba(201,162,75,.14) }

/* --- medallón --- */
.lz-c.lz-c.lz-c.lz-med{ position:absolute; right:clamp(24px,7vw,110px); top:50%;
  transform:translateY(-50%); padding:0; min-height:0 }
.lz-c.lz-c.lz-c.lz-hero{ position:relative }
.lz-c.lz-c.lz-med-ring{ position:relative; width:clamp(232px,23vw,292px); min-height:clamp(232px,23vw,292px);
  aspect-ratio:1; display:grid; place-items:center; border-radius:50% }
.lz-c.lz-c.lz-med-ring::before,.lz-c.lz-c.lz-med-ring::after{ content:""; position:absolute;
  border-radius:50%; pointer-events:none }
.lz-c.lz-c.lz-med-ring::before{ inset:0; border:1px solid var(--goldline) }
.lz-c.lz-c.lz-med-ring::after{ inset:28px; border:1px solid var(--hairline) }
.lz-c.lz-c.lz-med-spin{ position:absolute !important; inset:9px; min-height:0; padding:0;
  border:1px dashed rgba(201,162,75,.22); border-radius:50%; animation:lzspin 26s linear infinite }
.lz-c.lz-c.lz-med-v{ position:absolute; inset:0; display:grid; place-content:center;
  justify-items:center; gap:8px; min-height:0; padding:0; text-align:center }
@keyframes lzspin{ to{ transform:rotate(360deg) } }

/* --- fantasma "V" en la banda roja --- */
.lz-c.lz-c.lz-c.lz-sec-red{ position:relative }
.lz-ghost.elementor-heading-title{ position:absolute; right:clamp(8px,3vw,56px);
  top:clamp(40px,7vw,96px); font:400 clamp(10rem,26vw,22rem)/1 var(--disp);
  color:rgba(237,230,214,.05); margin:0; pointer-events:none; user-select:none }

/* --- valores: siempre visibles en pantallas táctiles --- */
@media (hover:none){
  .lz-c.lz-c .lz-val-d{ max-height:none; opacity:1; margin-top:8px }
  .lz-val .lz-val-a{ opacity:1; transform:none }
}
.lz-val .elementor-widget-heading .elementor-heading-title,.lz-val .elementor-widget-text-editor{ margin:0 }
.lz-val .elementor-widget-icon{ grid-column:2; justify-self:end }

/* --- nav fija: deja sitio al contenido --- */
body.elementor-page-1598 > .elementor > .elementor-element:first-child{ }
.e-con.lz-nav{ position:fixed; inset:0 0 auto 0; z-index:700 }
.lz-hero{ padding-top:150px }

/* --- icon-box: quita el wrapper de texto por defecto y unifica voces --- */
.lz-mv .elementor-icon-box-content,.lz-mile .elementor-icon-box-content{ display:flex;
  flex-direction:column }
.lz-mile .elementor-icon-box-title a,.lz-mile .elementor-icon-box-title > span,
.lz-mv .elementor-icon-box-title a,.lz-mv .elementor-icon-box-title > span{ text-decoration:none }
.lz-sec-red .elementor-icon-box-description{ color:#D9BFB6 }

/* --- seal del cierre --- */
.lz-seal{ position:absolute; top:0; left:50%; transform:translate(-50%,-50%);
  width:48px; height:48px; border-radius:50%; background:var(--bg);
  border:1px solid var(--goldline); display:grid; place-items:center; color:var(--gold) }
.lz-seal .elementor-icon{ background:none; border:0; padding:0; line-height:1 }
.lz-seal svg{ width:20px; height:20px; fill:currentColor }

/* --- meta y redes del cierre/pie: iconos del tamaño correcto --- */
.lz-cta-meta .elementor-icon-list-icon svg,.lz-fcontact .elementor-icon-list-icon svg{
  width:16px; height:16px; fill:var(--gold) }
.lz-soc .elementor-icon-list-icon svg{ width:19px; height:19px; fill:var(--muted) }
.lz-soc .elementor-icon-list-item:hover .elementor-icon-list-icon svg{ fill:var(--gold-hi) }
.lz-soc .elementor-icon-list-text{ font-size:0 }

/* --- footer --- */
.lz-foot .elementor-icon-list-text,.lz-fnav .elementor-icon-list-text{ font:300 14px var(--sans) }
.lz-footbar .elementor-widget-text-editor{ font:300 12px var(--sans); color:var(--muted) }

@media (max-width:960px){
  .lz-c.lz-c.lz-c.lz-item{ grid-template-columns:40px 1fr }
  .lz-c.lz-c.lz-c.lz-footgrid{ grid-template-columns:1fr 1fr }
  .lz-ghost.elementor-heading-title{ font-size:clamp(5rem,24vw,8rem); top:auto; bottom:24px }
}
@media (max-width:900px){ .lz-c.lz-c.lz-c.lz-med{ display:none } }
@media (max-width:640px){
  .lz-c.lz-c.lz-c.lz-footgrid{ grid-template-columns:1fr }
  .lz-c.lz-c.lz-c.lz-mv{ padding:30px 24px 28px }
}
@media (prefers-reduced-motion:reduce){ .lz-c.lz-c.lz-med-spin{ animation:none } }
/* --- tri-band nativo (divider) + ajustes finales --- */
.lz-c.lz-c .lz-triband{ padding:0; min-height:0 }
.lz-c.lz-c .lz-triband .elementor-divider{ padding:0 }
.lz-c.lz-c .lz-triband .elementor-divider-separator{ display:block; border:0; height:3px; width:100%;
  background:linear-gradient(90deg,var(--red) 0 33.4%, #EDE6D6 33.4% 66.7%, var(--blue) 66.7% 100%) }

/* --- kicker/h2/títulos: garantizar la tipografía de diseño --- */
.lz-c.lz-c .lz-kicker .elementor-heading-title{ font:400 12.5px var(--disp) !important;
  letter-spacing:.32em; text-transform:uppercase; color:var(--muted); margin:0 }
.lz-c.lz-c .lz-h2 .elementor-heading-title{ font:400 clamp(2.8rem,5.8vw,4.9rem)/1.02 var(--disp) !important;
  letter-spacing:.015em; text-transform:uppercase; color:var(--ink); margin:20px 0 0 }
.lz-c.lz-c .lz-h1 .elementor-heading-title{ font:400 clamp(4rem,10.5vw,9.2rem)/.96 var(--disp) !important;
  letter-spacing:.015em; text-transform:uppercase; color:var(--ink); margin:26px 0 10px }
.lz-c.lz-c .lz-it .elementor-heading-title{ font:500 italic clamp(1.5rem,3.2vw,2.4rem)/1.25 var(--serif) !important;
  letter-spacing:0; text-transform:none; color:var(--gold-hi); margin:0 0 26px }
.lz-c.lz-c .lz-cta-title .elementor-heading-title{ font:400 clamp(3.2rem,9.5vw,8.6rem)/.98 var(--disp) !important;
  letter-spacing:.015em; text-transform:uppercase; color:var(--ink); margin:22px 0 12px }
.lz-c.lz-c .lz-cta-it .elementor-heading-title{ font:500 italic clamp(1.5rem,3.2vw,2.4rem)/1.25 var(--serif) !important;
  letter-spacing:0; text-transform:none; color:var(--gold-hi); margin:0 0 26px }
.lz-c.lz-c .lz-tyear .elementor-heading-title{ font:400 1.9rem/1 var(--disp) !important;
  letter-spacing:.06em; color:var(--gold-hi); margin:0 }
.lz-c.lz-c .lz-tbody .elementor-widget-heading .elementor-heading-title{
  font:400 1.5rem var(--disp) !important; letter-spacing:.04em; text-transform:uppercase;
  color:var(--ink); margin:0 }
.lz-c.lz-c .lz-tbody .elementor-widget-text-editor{ font:300 15px/1.7 var(--sans);
  color:var(--muted); margin-top:8px; max-width:52ch }
.lz-c.lz-c .lz-val-i .elementor-heading-title{ font:500 italic 1.1rem var(--serif) !important;
  color:var(--gold); margin:0 }
.lz-c.lz-c .lz-val-n .elementor-heading-title{ font:400 clamp(1.4rem,2.3vw,1.8rem)/1.1 var(--disp) !important;
  letter-spacing:.05em; text-transform:uppercase; color:var(--ink); margin:0 }
.lz-c.lz-c .lz-val-d{ font:300 14.5px/1.65 var(--sans); color:var(--muted); grid-column:2;
  max-height:0; opacity:0; overflow:hidden; margin-top:0;
  transition:max-height .55s var(--ease), opacity .4s ease, margin-top .55s var(--ease) }
.lz-c.lz-c .lz-val:hover .lz-val-d,.lz-c.lz-c .lz-val:focus-within .lz-val-d{
  max-height:90px; opacity:1; margin-top:8px }
.lz-c.lz-c .lz-val-a .elementor-icon{ background:none; border:0; padding:0; color:var(--gold) }
.lz-c.lz-c .lz-val-a{ opacity:0; transform:translateX(-10px); transition:opacity .35s, transform .45s var(--ease) }
.lz-c.lz-c .lz-val:hover .lz-val-a,.lz-c.lz-c .lz-val:focus-within .lz-val-a{ opacity:1; transform:none }
.lz-c.lz-c .lz-list-h .elementor-icon-list-text{ font:400 12.5px var(--disp); letter-spacing:.32em;
  text-transform:uppercase; color:var(--gold) }
.lz-c.lz-c .lz-list-h{ margin-top:72px }
.lz-c.lz-c .lz-list-h .elementor-icon-list-icon svg{ width:19px; height:19px; fill:var(--gold) }
.lz-c.lz-c .lz-aval .elementor-icon-list-text{ font:300 13.5px/1.7 var(--sans); color:var(--muted) }
.lz-c.lz-c .lz-aval .elementor-icon-list-icon svg{ width:22px; height:22px; fill:var(--gold) }
.lz-c.lz-c .lz-aval{ display:flex; gap:16px; align-items:flex-start; margin-top:44px; padding:20px 24px;
  border:1px solid var(--goldline); background:rgba(201,162,75,.04) }
.lz-c.lz-c .lz-qsrc .elementor-heading-title{ font:500 italic 1.25rem var(--serif) !important;
  text-transform:none; letter-spacing:0; color:var(--gold-hi); margin:14px 0 0 }
.lz-c.lz-c .lz-qnote .elementor-heading-title{ font:400 10px var(--sans) !important; font-style:normal;
  letter-spacing:.3em; text-transform:uppercase; color:var(--muted); margin:6px 0 0 }
.lz-c.lz-c .lz-quote .elementor-heading-title{ font:400 clamp(1.9rem,3.4vw,3rem)/1.12 var(--disp) !important;
  letter-spacing:.03em; text-transform:uppercase; color:var(--ink); margin:0 }
.lz-c.lz-c .lz-body .elementor-widget-text-editor{ font:300 16px/1.8 var(--sans); color:var(--muted);
  max-width:60ch }
.lz-c.lz-c .lz-firma img{ width:min(230px,58vw); height:auto; display:block }
.lz-c.lz-c .lz-firma{ align-self:flex-start }
body.elementor-page-1598{ background:#0B0A08 }
.lz-c.lz-c .lz-soc .elementor-icon-list-text{ font-size:0; line-height:0 }
/* --- marca del nav agrupada (marca + wordmark) --- */
.lz-c.lz-c.lz-c.lz-brand{ display:flex; flex-direction:row; align-items:center; gap:14px; padding:0 }
.lz-c.lz-c.lz-brand .elementor-widget-heading .elementor-heading-title{ margin:0 }
/* --- botones: el brillo no debe pintarse en el wrapper --- */
.btnw::after{ display:none }
/* --- contadores/estáticos --- */
.lz-c.lz-c.lz-c.lz-sec > .elementor-element:first-child{ margin-top:0 }

/* --- correctivo: la marca y los enlaces no deben estirarse --- */
.lz-c.lz-c.lz-nav .lz-brand{ flex:0 0 auto }
.lz-c.lz-c.lz-nav .lz-navlinks{ flex:0 0 auto }
.lz-c.lz-c.lz-nav .lz-navlinks .elementor-icon-list-items{ flex-wrap:nowrap }
/* --- correctivo: el botón fantasma hereda el gris por defecto de Elementor --- */
.btnw.btn-ghost .elementor-button{ background:none }
.btnw.btn-ghost .elementor-button:hover{ background:rgba(201,162,75,.07) }
/* --- correctivo: el medallón debe ajustarse a su contenido, no medir 1440 --- */
.lz-c.lz-c.lz-c.lz-med{ --width:auto; width:auto }
.lz-c.lz-c.lz-nav .lz-brand{ --width:auto; width:auto }
.lz-c.lz-c.lz-nav .lz-navlinks{ --width:auto; width:auto }

/* ============================================================
   Animaciones de entrada
   El módulo "Animated" de Elementor está desactivado en este sitio,
   así que `elementor-invisible` (visibility:hidden) nunca se retira y
   ocultaba el timeline. Se neutraliza y el efecto de aparición se
   reproduce con animaciones dirigidas por scroll, en CSS puro.
   ============================================================ */
.elementor-invisible{ visibility:visible !important; opacity:1 !important; animation:none !important }

@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    .lz-c.lz-item,
    .lz-c.lz-mv,
    .lz-c.lz-mile,
    .lz-h2 .elementor-heading-title,
    .lz-cta-title .elementor-heading-title,
    .lz-cta-it .elementor-heading-title,
    .lz-triband,
    .lz-c.lz-val,
    .lz-c.lz-container.lz-split{
      animation: lzRise linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 28%;
    }
  }
}
@keyframes lzRise{
  from{ opacity:0; transform: translateY(28px) }
  to{ opacity:1; transform: none }
}
/* el tri-band debe dibujarse de izquierda a derecha, no subir */
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    .lz-triband{ animation-name: lzDraw; transform-origin: left }
    .lz-triband .elementor-divider-separator{ animation: lzFade linear both; animation-timeline: view();
      animation-range: entry 0% cover 20% }
  }
}
@keyframes lzDraw{ from{ transform: scaleX(0) } to{ transform: scaleX(1) } }
@keyframes lzFade{ from{ opacity:0 } to{ opacity:1 } }
/* correctivo: la regla del quote pisaba la fuente de la cita y la nota */
.lz-c.lz-c .lz-quote .lz-qsrc .elementor-heading-title{ font:500 italic 1.25rem var(--serif) !important;
  text-transform:none; letter-spacing:0; color:var(--gold-hi); margin:14px 0 0 }
.lz-c.lz-c .lz-quote .lz-qnote .elementor-heading-title{ font:400 10px var(--sans) !important;
  font-style:normal; letter-spacing:.3em; text-transform:uppercase; color:var(--muted); margin:6px 0 0 }
.lz-c.lz-c .lz-quote > .elementor-element:first-child .elementor-heading-title{
  font:400 clamp(1.9rem,3.4vw,3rem)/1.12 var(--disp) !important; letter-spacing:.03em;
  text-transform:uppercase; color:var(--ink) }
/* correctivo: la descripción de cada valor es el último hijo del item;
   se coloca en la columna 2 y se revela al pasar el cursor o enfocar */
.lz-c.lz-c .lz-val > .elementor-element:last-child{ grid-column:2; max-height:0; opacity:0;
  overflow:hidden; margin-top:0; font:300 14.5px/1.65 var(--sans); color:var(--muted);
  transition:max-height .55s var(--ease), opacity .4s ease, margin-top .55s var(--ease) }
.lz-c.lz-c .lz-val:hover > .elementor-element:last-child,
.lz-c.lz-c .lz-val:focus-within > .elementor-element:last-child{ max-height:90px; opacity:1; margin-top:8px }
@media (hover:none){
  .lz-c.lz-c .lz-val > .elementor-element:last-child{ max-height:none; opacity:1; margin-top:8px }
}
/* las tarjetas de misión/visión: contenido a la izquierda */
.lz-c.lz-c .lz-mv .elementor-icon-box-wrapper{ text-align:left }
.lz-c.lz-c .lz-mv .elementor-icon-box-description{ text-align:left }
/* correctivo: el reseteo `position:static` de los widgets ganaba a estas
   reglas de clase, así que el fantasma y el sello caían al flujo normal */
.lz-c.lz-c.lz-c.lz-ghost{ position:absolute; right:clamp(8px,3vw,56px); top:clamp(40px,7vw,96px);
  left:auto; width:auto; --width:auto; max-width:none; padding:0 }
.lz-c.lz-c.lz-c.lz-ghost .elementor-heading-title{ font:400 clamp(10rem,26vw,22rem)/1 var(--disp) !important;
  color:rgba(237,230,214,.05); margin:0; white-space:nowrap }
.lz-c.lz-c.lz-c.lz-seal{ position:absolute; top:0; left:50%; right:auto;
  transform:translate(-50%,-50%); width:48px; height:48px; border-radius:50%;
  background:var(--bg); border:1px solid var(--goldline); display:grid; place-items:center;
  color:var(--gold); padding:0 }
/* las tarjetas de la banda roja también a la izquierda */
.lz-c.lz-c .lz-mile .elementor-icon-box-wrapper,.lz-c.lz-c .lz-mile .elementor-icon-box-description{
  text-align:left }
.lz-c.lz-c .lz-cta{ text-align:center }
/* el fantasma y el sello son WIDGETS (sin lz-c): se ancla con el contenedor padre */
.lz-c .elementor-element.lz-ghost{ position:absolute; right:clamp(8px,3vw,56px); top:clamp(40px,7vw,96px);
  left:auto; width:auto; max-width:none; padding:0; --width:auto }
.lz-c .elementor-element.lz-seal{ position:absolute; top:0; left:50%; right:auto;
  transform:translate(-50%,-50%); width:48px; height:48px; border-radius:50%; padding:0;
  background:var(--bg); border:1px solid var(--goldline); display:grid; place-items:center;
  color:var(--gold) }
/* correctivo móvil: las listas inline de Elementor usan márgenes negativos
   (space_between/2) y desbordaban 8px el viewport */
@media (max-width:900px){
  .lz-c.lz-c .elementor-icon-list-items.elementor-inline-items{ margin-inline:0 }
  .lz-c.lz-c .lz-cta-meta .elementor-icon-list-items,
  .lz-c.lz-c .lz-soc .elementor-icon-list-items{ justify-content:center; flex-wrap:wrap }
}
/* correctivo: los overrides responsive deben igualar la especificidad de las
   rejillas base, o siguen ganando las de escritorio */
@media (max-width:960px){
  .lz-c.lz-c.lz-c.lz-mvgrid,
  .lz-c.lz-c.lz-c.lz-milegrid,
  .lz-c.lz-c.lz-c.lz-split{ grid-template-columns:1fr }
  .lz-c.lz-c.lz-c.lz-footgrid{ grid-template-columns:1fr 1fr }
}
@media (max-width:640px){
  .lz-c.lz-c.lz-c.lz-footgrid{ grid-template-columns:1fr }
  .lz-c.lz-c .lz-cta-meta{ flex-direction:column; align-items:center }
}
/* ==========================================================================
   SERVICIOS — extensión del sistema de diseño (Sobre mí / Home)
   Solo widgets nativos + este CSS.
   ========================================================================== */

/* ---------- nav: color activo en "Servicios" ---------- */
.lz-c.lz-c.lz-c.lz-nav{ padding:18px clamp(20px,4vw,48px) }
.lz-c.lz-c .lz-navlinks .elementor-icon-list-item:nth-child(3) .elementor-icon-list-text{
  color:var(--ink); position:relative }
.lz-c.lz-c .lz-navlinks .elementor-icon-list-item:nth-child(3) .elementor-icon-list-text::after{
  content:""; position:absolute; left:0; bottom:-4px; width:100%; height:1px; background:var(--gold) }

/* ---------- hero ---------- */
.lz-c.lz-c .lz-kick{ margin:0; padding:0 }
.lz-c.lz-c .lz-kick .elementor-icon-list-item{ align-items:center }
.lz-c.lz-c .lz-kick .elementor-icon-list-text{ font:400 12.5px var(--disp); letter-spacing:.3em;
  text-transform:uppercase; color:var(--muted) }
.lz-c.lz-c .lz-kick .elementor-icon-list-icon svg{ width:15px; height:15px; fill:var(--gold) }
.lz-c.lz-c .lz-hero-sub{ max-width:52ch; color:var(--muted); font:300 16.5px/1.7 var(--sans) }
.lz-c.lz-c.lz-c.lz-actions{ display:flex; flex-direction:row; flex-wrap:wrap; gap:16px; margin-top:44px }

/* sillón técnico */
.lz-c.lz-c.lz-c.lz-chair{ position:absolute; right:clamp(24px,7vw,110px); top:50%;
  transform:translateY(-50%); display:flex; flex-direction:row; align-items:center; gap:22px;
  padding:0; min-height:0; --width:auto; width:auto; z-index:1 }
.lz-c.lz-c .lz-chaircap .elementor-heading-title{ writing-mode:vertical-rl; font:400 11px var(--disp) !important;
  letter-spacing:.4em; text-transform:uppercase; color:var(--muted); margin:0 }
.lz-c.lz-c .lz-chairimg img{ width:clamp(190px,17vw,250px); height:auto; display:block }

/* indicador de scroll */
.lz-c.lz-c.lz-c.lz-cue{ position:absolute; bottom:30px; left:50%; transform:translateX(-50%);
  text-align:center; padding:0; min-height:0; --width:auto; width:auto }
.lz-c.lz-c .lz-cuetext .elementor-heading-title{ font:400 11px var(--disp) !important;
  letter-spacing:.4em; text-transform:uppercase; color:var(--muted); margin:0 }
.lz-c.lz-c.lz-c.lz-cue::after{ content:""; display:block; width:1px; height:54px; margin:12px auto 0;
  background:var(--hairline); position:relative }
.lz-c.lz-c.lz-c.lz-cue::before{ content:""; position:absolute; left:50%; bottom:16px; width:1px; height:16px;
  background:var(--gold); animation:lzCue 2.3s cubic-bezier(.6,0,.4,1) infinite }
@keyframes lzCue{ 0%{ bottom:66px; opacity:0 } 12%{ opacity:1 } 65%,100%{ bottom:-4px; opacity:0 } }

/* ---------- etiqueta de sección ---------- */
.lz-c.lz-c.lz-c.lz-sectag{ display:flex; flex-direction:row; align-items:center; gap:18px;
  margin-bottom:26px; padding:0; min-height:0 }
.lz-c.lz-c .lz-sectag::before,.lz-c.lz-c .lz-sectag::after{ content:""; flex:1; height:1px;
  background:var(--hairline) }
.lz-c.lz-c .lz-sectag.lz-left::before{ display:none }
.lz-c.lz-c .lz-secn .elementor-heading-title{ font:500 italic 1.1rem var(--serif) !important;
  color:var(--gold); margin:0 }
.lz-c.lz-c .lz-sect .elementor-heading-title{ font:400 12.5px var(--disp) !important;
  letter-spacing:.32em; text-transform:uppercase; color:var(--muted); margin:0 }

/* ---------- tipografía de sección (variante "it" de bloque) ---------- */
.lz-c.lz-c .lz-h2it .elementor-heading-title{ font:500 italic clamp(2.74rem,5.68vw,4.8rem)/1.05 var(--serif) !important;
  letter-spacing:0; text-transform:none; color:var(--gold-hi); margin:0 }
.lz-c.lz-c .lz-intro{ max-width:56ch; margin-top:18px; font:300 16px/1.7 var(--sans); color:var(--muted) }

/* ---------- chips ---------- */
.lz-c.lz-c .lz-chips{ margin-top:26px }
.lz-c.lz-c .lz-chips .elementor-icon-list-item{ border:1px solid var(--hairline); padding:10px 16px;
  margin:0; align-items:center; transition:border-color .3s }
.lz-c.lz-c .lz-chips .elementor-icon-list-item:hover{ border-color:var(--goldline) }
.lz-c.lz-c .lz-chips .elementor-icon-list-text{ font:400 11.5px var(--disp); letter-spacing:.18em;
  text-transform:uppercase; color:var(--muted); transition:color .3s }
.lz-c.lz-c .lz-chips .elementor-icon-list-item:hover .elementor-icon-list-text{ color:var(--ink) }
.lz-c.lz-c .lz-chips .elementor-icon-list-icon svg{ width:5px; height:5px; fill:var(--gold) }

/* ---------- 01 · rejilla silla ---------- */
.lz-c.lz-c.lz-c.lz-silla{ display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,440px);
  gap:clamp(32px,5vw,64px); margin-top:56px; align-items:start }

/* la carta */
.lz-c.lz-c.lz-c.lz-carta{ position:relative; border:1px solid var(--goldline); background:#12100B;
  padding:34px 34px 26px; display:flex; flex-direction:column }
.lz-c.lz-c.lz-c.lz-carta::before{ content:""; position:absolute; inset:7px;
  border:1px solid var(--hairline); pointer-events:none }
.lz-c.lz-c.lz-c.lz-cartahead{ display:flex; flex-direction:row; align-items:center; gap:12px;
  padding:0 6px 18px }
.lz-c.lz-c .lz-cartaico{ display:inline-flex; width:auto; flex:none }
.lz-c.lz-c .lz-cartaico .elementor-icon{ line-height:1 }
.lz-c.lz-c .lz-cartaico svg{ width:19px; height:19px; fill:var(--gold) }
.lz-c.lz-c.lz-c.lz-cartaheadtx{ display:flex; flex-direction:column }
.lz-c.lz-c .lz-ct .elementor-heading-title{ font:400 13px var(--disp) !important; letter-spacing:.26em;
  text-transform:uppercase; color:var(--ink); margin:0 }
.lz-c.lz-c .lz-cs .elementor-heading-title{ font:400 9.5px var(--disp) !important; letter-spacing:.22em;
  text-transform:uppercase; color:var(--muted); margin:3px 0 0 }

/* filas de la carta */
.lz-c.lz-c .lz-cartalist{ border-top:1px solid var(--hairline); padding:0; margin:0 }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-items{ margin:0; padding:0 }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-item{ display:block; margin:0; padding:0 }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-item > a{ display:flex; flex-direction:row;
  align-items:baseline; width:100%; padding:19px 6px; border-bottom:1px solid var(--hairline);
  text-decoration:none; transition:transform .4s var(--ease), background .3s }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-text{ flex:1; display:flex; flex-direction:row;
  align-items:baseline; gap:16px; margin:0; font:400 clamp(1.25rem,2vw,1.5rem) var(--disp);
  letter-spacing:.05em; text-transform:uppercase; color:var(--ink); transition:color .3s }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-text::before{ flex:none; width:44px;
  font:500 italic 1.15rem var(--serif); color:var(--gold) }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-item:nth-child(1) .elementor-icon-list-text::before{ content:"01" }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-item:nth-child(2) .elementor-icon-list-text::before{ content:"02" }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-item:nth-child(3) .elementor-icon-list-text::before{ content:"03" }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-item:nth-child(4) .elementor-icon-list-text::before{ content:"04" }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-item:nth-child(5) .elementor-icon-list-text::before{ content:"05" }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-text::after{ content:""; flex:1; min-width:24px;
  align-self:center; border-bottom:2px dotted rgba(237,230,214,.18); transform:translateY(-5px);
  transition:border-color .35s }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-icon{ order:3; flex:none; align-self:center;
  display:inline-flex; align-items:center; gap:8px }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-icon::before{ content:"Agendar"; font:400 11px var(--disp);
  letter-spacing:.22em; text-transform:uppercase; color:var(--muted); transition:color .3s }
.lz-c.lz-c .lz-cartalist .elementor-icon-list-icon svg{ width:14px; height:14px; fill:var(--gold);
  opacity:0; transform:translateX(-6px); transition:opacity .35s, transform .45s var(--ease) }
@media (hover:hover){
  .lz-c.lz-c .lz-cartalist .elementor-icon-list-item > a:hover{ transform:translateX(8px);
    background:rgba(201,162,75,.03) }
  .lz-c.lz-c .lz-cartalist .elementor-icon-list-item > a:hover .elementor-icon-list-text{ color:var(--gold-hi) }
  .lz-c.lz-c .lz-cartalist .elementor-icon-list-item > a:hover .elementor-icon-list-text::after{
    border-color:rgba(201,162,75,.6) }
  .lz-c.lz-c .lz-cartalist .elementor-icon-list-item > a:hover .elementor-icon-list-icon::before{ color:var(--gold-hi) }
  .lz-c.lz-c .lz-cartalist .elementor-icon-list-item > a:hover .elementor-icon-list-icon svg{ opacity:1; transform:none }
}
.lz-c.lz-c .lz-cartanote{ margin-top:18px; padding:0 6px }
.lz-c.lz-c .lz-cartanote .elementor-icon-list-item{ display:flex; align-items:flex-start; margin:0 }
.lz-c.lz-c .lz-cartanote .elementor-icon-list-icon{ flex:none; margin-top:3px }
.lz-c.lz-c .lz-cartanote .elementor-icon-list-icon svg{ width:15px; height:15px; fill:var(--gold) }
.lz-c.lz-c .lz-cartanote .elementor-icon-list-text{ font:300 italic 13.5px/1.65 var(--sans); color:var(--muted) }

/* el vale (ticket) */
.lz-c.lz-c.lz-c.lz-ticket{ position:relative; padding:36px 36px 32px; --hole:var(--bg);
  border:1px dashed rgba(201,162,75,.55); border-radius:10px; background:rgba(201,162,75,.05);
  transition:transform .35s var(--ease); display:flex; flex-direction:column }
.lz-c.lz-c.lz-c.lz-ticket:hover{ transform:translateY(-3px) }
.lz-c.lz-c.lz-c.lz-ticket::before,.lz-c.lz-c.lz-c.lz-ticket::after{ content:""; position:absolute;
  top:50%; transform:translateY(-50%); width:18px; height:18px; border-radius:50%;
  background:var(--hole,#0B0A08); border:1px solid rgba(201,162,75,.5) }
.lz-c.lz-c.lz-c.lz-ticket::before{ left:-10px }
.lz-c.lz-c.lz-c.lz-ticket::after{ right:-10px }
.lz-c .elementor-element.lz-tscissors{ position:absolute; top:-11px; left:36px; width:auto;
  --width:auto; padding:0 9px; background:var(--bg); z-index:2; line-height:1 }
.lz-c.lz-c .lz-tscissors .elementor-icon{ line-height:1 }
.lz-c.lz-c .lz-tscissors svg{ width:19px; height:19px; fill:var(--gold) }
.lz-c.lz-c .lz-mtag .elementor-heading-title{ font:400 11px var(--disp) !important; letter-spacing:.36em;
  text-transform:uppercase; color:var(--gold); margin:0 }
.lz-c.lz-c .lz-mtitle .elementor-heading-title{ font:400 2.2rem var(--disp) !important; letter-spacing:.03em;
  text-transform:uppercase; color:var(--ink); margin:10px 0 0 }
.lz-c.lz-c .lz-mnote .elementor-heading-title{ font:300 italic 13.5px/1.6 var(--sans) !important;
  color:var(--muted); margin:6px 0 0 }
.lz-c.lz-c .lz-mfoot .elementor-heading-title{ font:300 italic 12.5px var(--sans) !important;
  color:var(--muted); margin:16px 0 0; text-align:center }

/* formulario nativo */
.lz-c.lz-c .lz-mform{ margin-top:28px }
.lz-c.lz-c .lz-mform .elementor-form-fields-wrapper{ display:flex; flex-direction:column; gap:24px }
.lz-c.lz-c .lz-mform .elementor-field-group{ margin:0; padding:0; width:100%; display:block }
.lz-c.lz-c .lz-mform .elementor-field-label{ display:block; font:400 10.5px var(--disp);
  letter-spacing:.28em; text-transform:uppercase; color:var(--muted); margin-bottom:2px; padding:0 }
.lz-c.lz-c .lz-mform .elementor-field-textual,
.lz-c.lz-c .lz-mform .elementor-select-wrapper select{ width:100% !important;
  background-color:transparent !important; border:0 !important;
  border-bottom:1px solid var(--hairline) !important; border-radius:0 !important;
  padding:10px 2px !important; color:var(--ink) !important; min-height:0 !important;
  box-shadow:none !important; font:300 15px var(--sans) !important;
  transition:border-color .3s }
.lz-c.lz-c .lz-mform .elementor-field-textual:focus,
.lz-c.lz-c .lz-mform .elementor-select-wrapper select:focus{
  outline:0 !important; border-bottom-color:var(--gold) !important; color:var(--ink) !important }
.lz-c.lz-c .lz-mform .elementor-field-textual::placeholder{ color:rgba(167,157,138,.5) !important }
.lz-c.lz-c .lz-mform select.elementor-field-textual{ appearance:none !important; -webkit-appearance:none !important;
  cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' fill='none' stroke='%23C9A24B' stroke-width='1.5'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important; background-position:right 4px center !important;
  background-size:12px 12px !important }
.lz-c.lz-c .lz-mform select option{ background:#15120C; color:var(--ink) }
.lz-c.lz-c .lz-mform .elementor-button{ width:100%; display:inline-flex; align-items:center;
  justify-content:center; gap:12px; background:var(--gold); color:#161208; border:0; border-radius:2px;
  padding:19px 36px; font:400 14.5px var(--disp); letter-spacing:.2em; text-transform:uppercase;
  transition:background .35s }
.lz-c.lz-c .lz-mform .elementor-button:hover{ background:var(--gold-hi) }
.lz-c.lz-c .lz-mform .elementor-button-content-wrapper{ display:inline-flex; align-items:center;
  gap:12px; flex-direction:row }
.lz-c.lz-c .lz-mform .elementor-button-icon svg{ width:17px; height:17px; fill:currentColor }
.lz-c.lz-c .lz-mform .elementor-message{ font:300 13px var(--sans); margin-top:12px }
.lz-c.lz-c .lz-mform .elementor-message-success{ color:var(--gold-hi) }
.lz-c.lz-c .lz-mform .elementor-message-danger{ color:#C96A5B }

/* ---------- 02 · el taller ---------- */
.lz-c.lz-c.lz-c.lz-sec-blue{ position:relative; overflow:hidden; background:var(--blue-deep);
  --hairline:rgba(237,230,214,.15); --muted:#A9B4C9; --bg:#1D2D49 }
.lz-c.lz-c .lz-sec-blue > .lz-container{ position:relative; z-index:1 }
.lz-c.lz-c .lz-sec-blue .lz-intro,.lz-c.lz-c .lz-sec-blue .lz-mdesc{ color:#A9B4C9 }
.lz-c .elementor-element.lz-ghostb{ position:absolute; right:clamp(8px,3vw,56px);
  top:clamp(40px,7vw,96px); left:auto; width:auto; max-width:none; padding:0; --width:auto; z-index:0 }
.lz-c.lz-c .lz-ghostb .elementor-heading-title{ font:400 clamp(7rem,17vw,15rem)/1 var(--disp) !important;
  color:rgba(237,230,214,.05); margin:0; white-space:nowrap }

.lz-c.lz-c.lz-c.lz-mgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:56px }
.lz-c.lz-c.lz-c.lz-mile{ position:relative; overflow:hidden; display:flex; flex-direction:column;
  border:1px solid var(--hairline); background:rgba(0,0,0,.16); padding:30px 28px; min-height:196px;
  transition:transform .45s var(--ease), border-color .35s, background .35s }
.lz-c .elementor-element.lz-mnum{ position:absolute; top:16px; right:20px; width:auto; --width:auto }
.lz-c.lz-c .lz-mnum .elementor-heading-title{ font:500 italic 1.15rem var(--serif) !important;
  color:rgba(237,230,214,.3); margin:0 }
.lz-c.lz-c .lz-mico{ display:inline-flex; width:auto; flex:none }
.lz-c.lz-c .lz-mico .elementor-icon{ line-height:1 }
.lz-c.lz-c .lz-mico svg{ width:24px; height:24px; fill:var(--gold) }
.lz-c.lz-c .lz-mtitle .elementor-heading-title{ font:400 1.7rem var(--disp) !important;
  letter-spacing:.04em; text-transform:uppercase; color:var(--ink); margin:16px 0 0 }
.lz-c.lz-c .lz-mdesc{ margin-top:10px; font:300 14.5px/1.65 var(--sans); color:var(--muted) }
.lz-c .elementor-element.lz-marr{ position:absolute; bottom:20px; right:22px; width:auto; --width:auto;
  color:var(--gold-hi); opacity:0; transform:translate(-8px,8px); transition:.4s var(--ease) }
.lz-c.lz-c .lz-marr .elementor-icon{ line-height:1 }
.lz-c.lz-c .lz-marr svg{ width:19px; height:19px; fill:currentColor }
@media (hover:hover){
  .lz-c.lz-c.lz-c.lz-mile:hover{ transform:translateY(-6px) rotate(-.5deg);
    border-color:rgba(201,162,75,.5); background:rgba(0,0,0,.26) }
  .lz-c.lz-c .lz-mile:hover .lz-marr{ opacity:1; transform:none }
}
.lz-c.lz-c.lz-c.lz-tcta{ margin-top:48px }

/* ---------- 03 · el mostrador ---------- */
.lz-c.lz-c.lz-c.lz-prodgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:56px }
.lz-c.lz-c.lz-c.lz-prod{ position:relative; overflow:hidden; border:1px solid var(--hairline);
  background:#12100B; padding:30px 26px 28px; min-height:218px; display:flex; flex-direction:column;
  gap:16px; transition:border-color .35s }
.lz-c.lz-c.lz-c.lz-prod:hover{ border-color:var(--goldline) }
.lz-c.lz-c .lz-pico{ display:inline-flex; width:auto; flex:none }
.lz-c.lz-c .lz-pico .elementor-icon{ width:46px; height:46px; border:1px solid var(--goldline);
  border-radius:50%; display:grid; place-items:center; color:var(--gold); line-height:1 }
.lz-c.lz-c .lz-pico svg{ width:21px; height:21px; fill:currentColor }
.lz-c.lz-c .lz-pcat .elementor-heading-title{ font:400 11px var(--disp) !important; letter-spacing:.32em;
  text-transform:uppercase; color:var(--gold); margin:0 }
.lz-c.lz-c .lz-pname .elementor-heading-title{ font:400 1.7rem var(--disp) !important;
  letter-spacing:.03em; text-transform:uppercase; color:var(--ink); margin:0 }
.lz-c.lz-c .lz-pdesc{ font:300 13.5px/1.65 var(--sans); color:var(--muted); margin-top:auto }

/* destacada */
.lz-c.lz-c.lz-c.lz-feat{ grid-column:1/-1; flex-direction:row; align-items:center;
  gap:clamp(24px,4vw,54px); padding:38px clamp(26px,4vw,54px) }
.lz-c.lz-c .lz-feat .lz-pico .elementor-icon{ width:66px; height:66px }
.lz-c.lz-c .lz-feat .lz-pico svg{ width:29px; height:29px }
.lz-c.lz-c.lz-c.lz-fmain{ flex:1; display:flex; flex-direction:column }
.lz-c.lz-c .lz-feat .lz-pname .elementor-heading-title{ font-size:clamp(1.9rem,3.4vw,2.7rem) !important }
.lz-c.lz-c .lz-feat .lz-pdesc{ margin-top:10px; max-width:48ch }
.lz-c.lz-c.lz-c.lz-pbadge{ position:absolute; top:16px; right:18px; padding:0; min-height:0;
  --width:86px; width:86px; height:86px; border-radius:50%; background:var(--gold); color:#161208;
  display:grid; place-items:center; text-align:center; transform:rotate(8deg);
  transition:transform .4s var(--ease) }
.lz-c.lz-c .lz-pbadgeb .elementor-heading-title{ font:400 1.6rem/1 var(--disp) !important; color:#161208; margin:0 }
.lz-c.lz-c .lz-pbadges .elementor-heading-title{ font:400 9px var(--disp) !important; letter-spacing:.2em;
  text-transform:uppercase; margin:3px 0 0; color:#161208 }
.lz-c.lz-c .lz-feat:hover .lz-pbadge{ transform:rotate(-4deg) scale(1.08) }
.lz-c.lz-c.lz-c.lz-pcoupon{ flex:none; max-width:250px; display:flex; flex-direction:column }
.lz-c.lz-c .lz-ctag .elementor-heading-title{ font:400 11px var(--disp) !important; letter-spacing:.36em;
  text-transform:uppercase; color:var(--gold); margin:0 }
.lz-c.lz-c.lz-c.lz-cbigline{ display:flex; flex-direction:row; flex-wrap:wrap; gap:.35ch;
  align-items:baseline; margin-top:10px }
.lz-c.lz-c .lz-cbig .elementor-heading-title{ font:400 1.5rem/1.25 var(--disp) !important;
  letter-spacing:.03em; text-transform:uppercase; color:var(--ink); margin:0 }
.lz-c.lz-c .lz-cbigem .elementor-heading-title{ font:500 italic 1.53rem/1.25 var(--serif) !important;
  text-transform:none; color:var(--gold-hi); margin:0 }
.lz-c.lz-c .lz-csmall{ font:300 13px/1.6 var(--sans); color:var(--muted); margin-top:8px }
.lz-c.lz-c .lz-prodnote{ display:flex; justify-content:center; margin-top:44px }
.lz-c.lz-c .lz-prodnote .elementor-icon-list-item{ justify-content:center; align-items:center; margin:0 }
.lz-c.lz-c .lz-prodnote .elementor-icon-list-icon svg{ width:17px; height:17px; fill:var(--gold) }
.lz-c.lz-c .lz-prodnote .elementor-icon-list-text{ font:300 italic 14px var(--sans); color:var(--muted) }

/* ---------- cierre ---------- */
.lz-c.lz-c.lz-c.lz-cta-actions{ display:flex; flex-direction:row; flex-wrap:wrap;
  justify-content:center; gap:16px; margin-top:44px }
.lz-c.lz-c .lz-ctasub{ max-width:52ch; margin:0 auto; font:300 15.5px/1.7 var(--sans); color:var(--muted) }
.lz-c.lz-c .lz-ctanote{ margin-top:18px; font:300 italic 13px var(--sans); color:var(--muted) }
.lz-c.lz-c .lz-cta-meta{ margin-top:64px }
.lz-c.lz-c .lz-cta-meta .elementor-icon-list-items{ justify-content:center; flex-wrap:wrap }
.lz-c.lz-c .lz-cta-meta .elementor-icon-list-item a{ text-decoration:none; transition:color .3s }
.lz-c.lz-c .lz-cta-meta .elementor-icon-list-item a:hover .elementor-icon-list-text{ color:var(--ink) }
.lz-c.lz-c .lz-cta-socials{ margin-top:30px }
.lz-c.lz-c .lz-cta-socials .elementor-icon-list-items{ justify-content:center; flex-wrap:wrap }
.lz-c.lz-c .lz-soc .elementor-icon-list-icon{ width:42px; height:42px; border:1px solid var(--hairline);
  border-radius:50%; display:grid; place-items:center; transition:border-color .3s, transform .35s var(--ease) }
.lz-c.lz-c .lz-soc .elementor-icon-list-item:hover .elementor-icon-list-icon{ border-color:var(--gold);
  transform:translateY(-4px) }
.lz-c.lz-c .lz-soc .elementor-icon-list-item:hover .elementor-icon-list-icon svg{ fill:var(--gold-hi) }

/* ---------- movimiento reducido ---------- */
@media (prefers-reduced-motion:reduce){
  .lz-c.lz-c.lz-c.lz-cue::before{ animation:none }
}

/* ---------- responsive ---------- */
@media (max-width:960px){
  .lz-c.lz-c.lz-c.lz-silla{ grid-template-columns:1fr }
  .lz-c.lz-c.lz-c.lz-mgrid{ grid-template-columns:1fr }
  .lz-c.lz-c.lz-c.lz-prodgrid{ grid-template-columns:1fr 1fr }
  .lz-c.lz-c.lz-c.lz-feat{ flex-direction:column; align-items:flex-start }
  .lz-c.lz-c.lz-c.lz-pbadge{ position:static; margin-left:auto; margin-top:-40px }
  .lz-c.lz-c.lz-c.lz-pcoupon{ max-width:none }
}
@media (max-width:900px){
  .lz-c.lz-c.lz-c.lz-chair{ display:none }
  .lz-c.lz-c .lz-cta-meta .elementor-icon-list-items{ justify-content:center; flex-wrap:wrap }
}
@media (max-width:640px){
  .lz-c.lz-c.lz-c.lz-prodgrid{ grid-template-columns:1fr }
  .lz-c.lz-c.lz-c.lz-ticket{ padding:30px 24px 26px }
  .lz-c.lz-c.lz-c.lz-carta{ padding:26px 22px 20px }
  .lz-c.lz-c.lz-c.lz-carta::before{ inset:5px }
  .lz-c.lz-c .lz-cartalist .elementor-icon-list-text::before{ width:34px }
  .lz-c.lz-c .lz-cartalist .elementor-icon-list-icon::before{ display:none }
  .lz-c.lz-c .lz-ghostb .elementor-heading-title{ font-size:clamp(4rem,20vw,6.5rem) !important }
  .lz-c .elementor-element.lz-ghostb{ top:auto; bottom:24px }
  .lz-c.lz-c .lz-chips .elementor-icon-list-item{ padding:9px 13px }
}

/* ---------- aparición al hacer scroll (CSS puro) ---------- */
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    .lz-c.lz-carta,
    .lz-c.lz-ticket,
    .lz-c.lz-prod,
    .lz-c.lz-sectag,
    .lz-c.lz-mgrid,
    .lz-c.lz-prodgrid,
    .lz-h2it .elementor-heading-title,
    .lz-c.lz-ctasub,
    .lz-c.lz-cta-meta{
      animation: lzRise linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 28%;
    }
  }
}

/* ==========================================================================
   FOTOGRAFÍA REAL + LOGO DE MARCA  (append · post 1668 · Servicios)
   Convención .lz-foto: aspect-ratio fijo + object-fit:cover para que seis
   orientaciones distintas de origen no rompan la retícula.
   ========================================================================== */

/* --- base de la foto --- */
.lz-c .lz-foto img{ display:block; width:100%; height:100%; object-fit:cover;
  filter:saturate(.92) contrast(1.03) }
.lz-c .lz-foto{ border:1px solid var(--goldline); background:var(--bg-soft); overflow:hidden }
.lz-c.lz-c.lz-c.lz-foto{ --width:auto; width:100%; max-width:100%; padding:0; min-height:0 }

/* --- logo de marca (nav + pie) --- */
.lz-c.lz-c .lz-logow .elementor-widget-container{ display:flex; align-items:center }
.lz-c.lz-c .lz-logow img{ display:block; width:auto; max-width:none; height:40px }
.lz-c.lz-c .lz-logowfoot img{ height:64px }
.lz-c.lz-c.lz-c.lz-logow{ --width:auto; width:auto; max-width:100% }
.lz-c.lz-c.lz-c.lz-logowfoot{ margin-bottom:18px }

/* --- nombre textual para lectores de pantalla --- */
.lz-c.lz-c .lz-sr .elementor-heading-title{ position:absolute!important; width:1px; height:1px;
  overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; padding:0; margin:-1px }

/* --- hero: foto documental dentro de la columna de texto --- */
.lz-c.lz-c.lz-c.lz-herofoto{ --width:auto; width:100%; margin-top:44px }
.lz-c .lz-herofoto, .lz-c .lz-herofoto .elementor-widget-container{ width:100% }
.lz-c.lz-c .lz-herofoto img{ aspect-ratio:16/10; height:auto }

/* --- 01 · placa de archivo --- */
.lz-c.lz-c.lz-c.lz-placa{ --width:auto; width:min(340px,100%); max-width:340px;
  margin-top:56px; align-self:flex-start }
.lz-c .lz-placa .elementor-widget-container{ width:100% }
.lz-c.lz-c .lz-placa img{ aspect-ratio:2/3; height:auto }

/* --- 02 · el taller: dúo documental (la banda azul no cambia de color ni ritmo) --- */
.lz-c.lz-c.lz-c.lz-tduo{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px; margin-top:56px; padding:0; min-height:0; --width:auto; width:100% }
.lz-c.lz-c.lz-c.lz-tduo > .elementor-element{ --width:auto; width:100% }
.lz-c .lz-tfoto, .lz-c .lz-tfoto .elementor-widget-container{ width:100% }
.lz-c.lz-c .lz-tfoto img{ aspect-ratio:4/5; height:auto }

/* archivo histórico 2015-2016 */
.lz-c .lz-fotoarch img{ filter:grayscale(.85) sepia(.08) contrast(1.02) }
.lz-c .lz-fotoarch:hover img{ filter:none }
.lz-c .lz-fotoarch{ transition:border-color .4s var(--ease) }
.lz-c .lz-fotoarch:hover{ border-color:var(--gold) }

/* --- 03 · el mostrador: la foto no toca badge, cupón ni precio --- */
.lz-c.lz-c.lz-c.lz-pfoto{ --width:auto; width:100%; max-width:100% }
.lz-c .lz-pfoto, .lz-c .lz-pfoto .elementor-widget-container{ width:100% }
.lz-c.lz-c .lz-pfoto img{ aspect-ratio:4/5; height:auto }
.lz-c.lz-c.lz-c.lz-feat .lz-pfotofeat{ flex:none; width:clamp(170px,19vw,230px); max-width:230px }
.lz-c.lz-c .lz-pfotofeat img{ aspect-ratio:4/5; height:auto }

/* --- responsive: los overrides igualan la especificidad de la regla base --- */
@media (max-width:960px){
  .lz-c.lz-c.lz-c.lz-tduo{ grid-template-columns:repeat(2,minmax(0,1fr)) }
  .lz-c.lz-c.lz-c.lz-feat .lz-pfotofeat{ flex:none; width:100%; max-width:100% }
  .lz-c.lz-c .lz-pfotofeat img{ aspect-ratio:16/9 }
}
@media (max-width:640px){
  .lz-c.lz-c.lz-c.lz-tduo{ grid-template-columns:1fr }
  .lz-c.lz-c .lz-herofoto img{ aspect-ratio:4/3 }
  .lz-c.lz-c .lz-logow img{ height:34px }
  .lz-c.lz-c .lz-logowfoot img{ height:56px }
}
@media (prefers-reduced-motion:reduce){
  .lz-c .lz-fotoarch{ transition:none }
}
/* --- correctivo (append · 1668): las clases de widget (.lz-foto, .lz-placa …) van
   en el propio widget y NO llevan .lz-c, así que los body.elementor-page-1668es compuestos
   .lz-c.lz-c.lz-c.lz-* no casaban: la placa de archivo medía 1160px de ancho. --- */
.lz-c.lz-c .lz-foto{ --width:auto; width:100%; max-width:100%; padding:0; min-height:0 }
.lz-c.lz-c .lz-herofoto{ --width:auto; width:100%; margin-top:44px }
.lz-c.lz-c .lz-placa{ --width:auto; width:min(340px,100%); max-width:340px;
  margin-top:56px; align-self:flex-start }
.lz-c.lz-c .lz-logow{ --width:auto; width:auto; max-width:100% }
.lz-c.lz-c .lz-logowfoot{ margin-bottom:18px }
.lz-c.lz-c .lz-pfoto{ --width:auto; width:100%; max-width:100% }
/* --- correctivo 2 (append · 1668): .lz-foto (0,4,0) ganaba por especificidad al
   ancho de la placa (0,3,0) y seguía midiendo 1160px. Misma especificidad y después. --- */
.lz-c.lz-c .lz-foto.lz-placa{ --width:auto; width:min(340px,100%); max-width:340px;
  margin-top:56px; align-self:flex-start }
/* --- correctivo 3 (append · 1668): la tarjeta sin foto (Tec Italy) hereda la altura
   de sus vecinas con foto y dejaba un hueco en el centro. Su contenido se centra. --- */
.lz-c.lz-c.lz-c.lz-nofoto{ justify-content:center }
.lz-c.lz-c .lz-nofoto .lz-pdesc{ margin-top:0 }/* End custom CSS */