.elementor .elementor-element.elementor-element-1c7afb1{--display:flex;--min-height:10vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor .elementor-element.elementor-element-1c7afb1:not(.elementor-motion-effects-element-type-background), .elementor .elementor-element.elementor-element-1c7afb1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-cd2d769 );}.elementor .elementor-element.elementor-element-cf2b5e1{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor .elementor-element.elementor-element-cf2b5e1.e-con{--flex-grow:0;--flex-shrink:0;}.elementor .elementor-element.elementor-element-ca6bac7 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor .elementor-element.elementor-element-ca6bac7 img{width:20%;max-width:100%;height:100%;object-fit:contain;object-position:center center;opacity:1;}.elementor .elementor-element.elementor-element-c82e2fe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor .elementor-element.elementor-element-c82e2fe.e-con{--flex-grow:0;--flex-shrink:0;}.elementor .elementor-element.elementor-element-5d6e10b{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-end;}.elementor .elementor-element.elementor-element-5d6e10b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-menu-item{padding-left:15px;padding-right:15px;}.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-sub-menu-item{padding-left:calc( 15px + 20px );padding-right:15px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__layout-vertical .menu-item ul ul a.hfe-sub-menu-item{padding-left:calc( 15px + 40px );padding-right:15px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__layout-vertical .menu-item ul ul ul a.hfe-sub-menu-item{padding-left:calc( 15px + 60px );padding-right:15px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__layout-vertical .menu-item ul ul ul ul a.hfe-sub-menu-item{padding-left:calc( 15px + 80px );padding-right:15px;}.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-menu-item, .elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-sub-menu-item{padding-top:11px;padding-bottom:11px;}.elementor .elementor-element.elementor-element-72af8bc ul.sub-menu{width:220px;}.elementor .elementor-element.elementor-element-72af8bc .sub-menu a.hfe-sub-menu-item,
						 .elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown li a.hfe-menu-item,
						 .elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown li a.hfe-sub-menu-item,
						 .elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible li a.hfe-menu-item,
						 .elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible li a.hfe-sub-menu-item{padding-top:15px;padding-bottom:15px;}.elementor .elementor-element.elementor-element-72af8bc{width:var( --container-widget-width, 80.71% );max-width:80.71%;--container-widget-width:80.71%;--container-widget-flex-grow:0;}.elementor .elementor-element.elementor-element-72af8bc.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__toggle{margin:0 auto;}.elementor .elementor-element.elementor-element-72af8bc a.hfe-menu-item, .elementor .elementor-element.elementor-element-72af8bc a.hfe-sub-menu-item{font-family:"DM Sans", Sans-serif;font-weight:600;}.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-menu-item, .elementor .elementor-element.elementor-element-72af8bc .sub-menu a.hfe-sub-menu-item{color:var( --e-global-color-8cd1398 );}.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-menu-item:hover,
								.elementor .elementor-element.elementor-element-72af8bc .sub-menu a.hfe-sub-menu-item:hover,
								.elementor .elementor-element.elementor-element-72af8bc .menu-item.current-menu-item a.hfe-menu-item,
								.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-menu-item.highlighted,
								.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-menu-item:focus{color:var( --e-global-color-text );}.elementor .elementor-element.elementor-element-72af8bc .sub-menu,
								.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown,
								.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible,
								.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown .menu-item a.hfe-menu-item,
								.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown .menu-item a.hfe-sub-menu-item{background-color:#fff;}.elementor .elementor-element.elementor-element-72af8bc .sub-menu li a.hfe-sub-menu-item,
							.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown li a.hfe-sub-menu-item,
							.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown li a.hfe-menu-item,
							.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible li a.hfe-menu-item,
							.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible li a.hfe-sub-menu-item{font-family:"DM Sans", Sans-serif;font-weight:500;}.elementor .elementor-element.elementor-element-72af8bc nav.hfe-nav-menu__layout-horizontal .sub-menu,
							.elementor .elementor-element.elementor-element-72af8bc nav:not(.hfe-nav-menu__layout-horizontal) .sub-menu.sub-menu-open,
							.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown .hfe-nav-menu,
						 	.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible .hfe-nav-menu{border-style:solid;}.elementor .elementor-element.elementor-element-72af8bc .sub-menu li.menu-item:not(:last-child),
						.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown li.menu-item:not(:last-child),
						.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible li.menu-item:not(:last-child){border-bottom-style:solid;border-bottom-color:#c4c4c4;border-bottom-width:1px;}.elementor .elementor-element.elementor-element-ed10813{--display:flex;--min-height:7vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0%;--margin-bottom:-10%;--margin-left:0%;--margin-right:0%;}.elementor .elementor-element.elementor-element-ed10813:not(.elementor-motion-effects-element-type-background), .elementor .elementor-element.elementor-element-ed10813 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-356bd45 );}.elementor .elementor-element.elementor-element-01fee65{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor .elementor-element.elementor-element-01fee65.e-con{--flex-grow:0;--flex-shrink:0;}.elementor .elementor-element.elementor-element-5d1ef96 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor .elementor-element.elementor-element-5d1ef96 img{width:25%;max-width:100%;height:100%;object-fit:contain;object-position:center center;opacity:0.63;}.elementor .elementor-element.elementor-element-5827b80{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor .elementor-element.elementor-element-5827b80.e-con{--flex-grow:0;--flex-shrink:0;}.elementor .elementor-element.elementor-element-fe636df{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor .elementor-element.elementor-element-fe636df.e-con{--flex-grow:0;--flex-shrink:0;}.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-menu-item{padding-left:15px;padding-right:15px;}.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-sub-menu-item{padding-left:calc( 15px + 20px );padding-right:15px;}.elementor .elementor-element.elementor-element-f56b34a .hfe-nav-menu__layout-vertical .menu-item ul ul a.hfe-sub-menu-item{padding-left:calc( 15px + 40px );padding-right:15px;}.elementor .elementor-element.elementor-element-f56b34a .hfe-nav-menu__layout-vertical .menu-item ul ul ul a.hfe-sub-menu-item{padding-left:calc( 15px + 60px );padding-right:15px;}.elementor .elementor-element.elementor-element-f56b34a .hfe-nav-menu__layout-vertical .menu-item ul ul ul ul a.hfe-sub-menu-item{padding-left:calc( 15px + 80px );padding-right:15px;}.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-menu-item, .elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-sub-menu-item{padding-top:11px;padding-bottom:11px;}.elementor .elementor-element.elementor-element-f56b34a .sub-menu a.hfe-sub-menu-item,
						 .elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown li a.hfe-menu-item,
						 .elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown li a.hfe-sub-menu-item,
						 .elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown-expandible li a.hfe-menu-item,
						 .elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown-expandible li a.hfe-sub-menu-item{padding-top:15px;padding-bottom:15px;}.elementor .elementor-element.elementor-element-f56b34a{width:var( --container-widget-width, 80.71% );max-width:80.71%;--container-widget-width:80.71%;--container-widget-flex-grow:0;}.elementor .elementor-element.elementor-element-f56b34a.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor .elementor-element.elementor-element-f56b34a a.hfe-menu-item, .elementor .elementor-element.elementor-element-f56b34a a.hfe-sub-menu-item{font-family:"DM Sans", Sans-serif;font-weight:600;}.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-menu-item, .elementor .elementor-element.elementor-element-f56b34a .sub-menu a.hfe-sub-menu-item{color:var( --e-global-color-cd2d769 );}.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-menu-item:hover,
								.elementor .elementor-element.elementor-element-f56b34a .sub-menu a.hfe-sub-menu-item:hover,
								.elementor .elementor-element.elementor-element-f56b34a .menu-item.current-menu-item a.hfe-menu-item,
								.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-menu-item.highlighted,
								.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-menu-item:focus{color:var( --e-global-color-c24263e );}.elementor .elementor-element.elementor-element-f56b34a .sub-menu,
								.elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown,
								.elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown-expandible,
								.elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown .menu-item a.hfe-menu-item,
								.elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown .menu-item a.hfe-sub-menu-item{background-color:#fff;}.elementor .elementor-element.elementor-element-f56b34a .sub-menu li.menu-item:not(:last-child),
						.elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown li.menu-item:not(:last-child),
						.elementor .elementor-element.elementor-element-f56b34a nav.hfe-dropdown-expandible li.menu-item:not(:last-child){border-bottom-style:solid;border-bottom-color:#c4c4c4;border-bottom-width:1px;}@media(min-width:768px){.elementor .elementor-element.elementor-element-1c7afb1{--width:100%;}.elementor .elementor-element.elementor-element-cf2b5e1{--width:20%;}.elementor .elementor-element.elementor-element-c82e2fe{--width:40%;}.elementor .elementor-element.elementor-element-5d6e10b{--width:40%;}.elementor .elementor-element.elementor-element-ed10813{--content-width:100%;}.elementor .elementor-element.elementor-element-01fee65{--width:20%;}.elementor .elementor-element.elementor-element-5827b80{--width:50%;}.elementor .elementor-element.elementor-element-fe636df{--width:30%;}}@media(max-width:1024px){body:not(.rtl) .elementor .elementor-element.elementor-element-72af8bc.hfe-nav-menu__breakpoint-tablet .hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item:not(:last-child){margin-right:0px;}body .elementor .elementor-element.elementor-element-72af8bc nav.hfe-nav-menu__layout-vertical .hfe-nav-menu > li.menu-item:not(:last-child){margin-bottom:0px;}body:not(.rtl) .elementor .elementor-element.elementor-element-f56b34a.hfe-nav-menu__breakpoint-tablet .hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item:not(:last-child){margin-right:0px;}body .elementor .elementor-element.elementor-element-f56b34a nav.hfe-nav-menu__layout-vertical .hfe-nav-menu > li.menu-item:not(:last-child){margin-bottom:0px;}}@media(max-width:767px){.elementor .elementor-element.elementor-element-cf2b5e1{--width:25%;}.elementor .elementor-element.elementor-element-ca6bac7 img{width:100%;}.elementor .elementor-element.elementor-element-c82e2fe{--width:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;}.elementor .elementor-element.elementor-element-5d6e10b{--width:70%;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;}.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-menu-item{padding-left:0px;padding-right:0px;}.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-sub-menu-item{padding-left:calc( 0px + 20px );padding-right:0px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__layout-vertical .menu-item ul ul a.hfe-sub-menu-item{padding-left:calc( 0px + 40px );padding-right:0px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__layout-vertical .menu-item ul ul ul a.hfe-sub-menu-item{padding-left:calc( 0px + 60px );padding-right:0px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__layout-vertical .menu-item ul ul ul ul a.hfe-sub-menu-item{padding-left:calc( 0px + 80px );padding-right:0px;}.elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-menu-item, .elementor .elementor-element.elementor-element-72af8bc .menu-item a.hfe-sub-menu-item{padding-top:10px;padding-bottom:10px;}body:not(.rtl) .elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item:not(:last-child){margin-right:0px;}body.rtl .elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item:not(:last-child){margin-left:0px;}.elementor .elementor-element.elementor-element-72af8bc nav:not(.hfe-nav-menu__layout-horizontal) .hfe-nav-menu > li.menu-item:not(:last-child){margin-bottom:0px;}body:not(.rtl) .elementor .elementor-element.elementor-element-72af8bc.hfe-nav-menu__breakpoint-mobile .hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item:not(:last-child){margin-right:0px;}body .elementor .elementor-element.elementor-element-72af8bc nav.hfe-nav-menu__layout-vertical .hfe-nav-menu > li.menu-item:not(:last-child){margin-bottom:0px;}.elementor .elementor-element.elementor-element-72af8bc ul.sub-menu{width:0px;}.elementor .elementor-element.elementor-element-72af8bc .sub-menu li a.hfe-sub-menu-item,
						.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown li a.hfe-menu-item,
						.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible li a.hfe-menu-item{padding-left:20px;padding-right:20px;}.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible a.hfe-sub-menu-item,
						.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown li a.hfe-sub-menu-item{padding-left:calc( 20px + 20px );padding-right:20px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-dropdown .menu-item ul ul a.hfe-sub-menu-item,
						.elementor .elementor-element.elementor-element-72af8bc .hfe-dropdown-expandible .menu-item ul ul a.hfe-sub-menu-item{padding-left:calc( 20px + 40px );padding-right:20px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-dropdown .menu-item ul ul ul a.hfe-sub-menu-item,
						.elementor .elementor-element.elementor-element-72af8bc .hfe-dropdown-expandible .menu-item ul ul ul a.hfe-sub-menu-item{padding-left:calc( 20px + 60px );padding-right:20px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-dropdown .menu-item ul ul ul ul a.hfe-sub-menu-item,
						.elementor .elementor-element.elementor-element-72af8bc .hfe-dropdown-expandible .menu-item ul ul ul ul a.hfe-sub-menu-item{padding-left:calc( 20px + 80px );padding-right:20px;}.elementor .elementor-element.elementor-element-72af8bc nav.hfe-nav-menu__layout-horizontal:not(.hfe-dropdown) ul.sub-menu, .elementor .elementor-element.elementor-element-72af8bc nav.hfe-nav-menu__layout-expandible.menu-is-active, .elementor .elementor-element.elementor-element-72af8bc nav.hfe-nav-menu__layout-vertical:not(.hfe-dropdown) ul.sub-menu{margin-top:0px;}.elementor .elementor-element.elementor-element-72af8bc .hfe-dropdown.menu-is-active{margin-top:0px;}.elementor .elementor-element.elementor-element-72af8bc > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0% 0% 0% 0%;}.elementor .elementor-element.elementor-element-72af8bc{--container-widget-width:50%;--container-widget-flex-grow:0;width:var( --container-widget-width, 50% );max-width:50%;}.elementor .elementor-element.elementor-element-72af8bc.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:1;}.elementor .elementor-element.elementor-element-72af8bc a.hfe-menu-item, .elementor .elementor-element.elementor-element-72af8bc a.hfe-sub-menu-item{font-size:15px;}.elementor .elementor-element.elementor-element-72af8bc nav.hfe-nav-menu__layout-horizontal .sub-menu,
							.elementor .elementor-element.elementor-element-72af8bc nav:not(.hfe-nav-menu__layout-horizontal) .sub-menu.sub-menu-open,
							.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown .hfe-nav-menu,
						 	.elementor .elementor-element.elementor-element-72af8bc nav.hfe-dropdown-expandible .hfe-nav-menu{border-width:1px 1px 1px 1px;}.elementor .elementor-element.elementor-element-01fee65{--width:25%;}.elementor .elementor-element.elementor-element-5d1ef96 img{width:100%;}.elementor .elementor-element.elementor-element-5827b80{--width:20%;}.elementor .elementor-element.elementor-element-fe636df{--width:55%;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;}.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-menu-item{padding-left:0px;padding-right:0px;}.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-sub-menu-item{padding-left:calc( 0px + 20px );padding-right:0px;}.elementor .elementor-element.elementor-element-f56b34a .hfe-nav-menu__layout-vertical .menu-item ul ul a.hfe-sub-menu-item{padding-left:calc( 0px + 40px );padding-right:0px;}.elementor .elementor-element.elementor-element-f56b34a .hfe-nav-menu__layout-vertical .menu-item ul ul ul a.hfe-sub-menu-item{padding-left:calc( 0px + 60px );padding-right:0px;}.elementor .elementor-element.elementor-element-f56b34a .hfe-nav-menu__layout-vertical .menu-item ul ul ul ul a.hfe-sub-menu-item{padding-left:calc( 0px + 80px );padding-right:0px;}.elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-menu-item, .elementor .elementor-element.elementor-element-f56b34a .menu-item a.hfe-sub-menu-item{padding-top:5px;padding-bottom:5px;}body:not(.rtl) .elementor .elementor-element.elementor-element-f56b34a .hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item:not(:last-child){margin-right:0px;}body.rtl .elementor .elementor-element.elementor-element-f56b34a .hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item:not(:last-child){margin-left:0px;}.elementor .elementor-element.elementor-element-f56b34a nav:not(.hfe-nav-menu__layout-horizontal) .hfe-nav-menu > li.menu-item:not(:last-child){margin-bottom:0px;}body:not(.rtl) .elementor .elementor-element.elementor-element-f56b34a.hfe-nav-menu__breakpoint-mobile .hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item:not(:last-child){margin-right:0px;}body .elementor .elementor-element.elementor-element-f56b34a nav.hfe-nav-menu__layout-vertical .hfe-nav-menu > li.menu-item:not(:last-child){margin-bottom:0px;}.elementor .elementor-element.elementor-element-f56b34a{--container-widget-width:50%;--container-widget-flex-grow:0;width:var( --container-widget-width, 50% );max-width:50%;}.elementor .elementor-element.elementor-element-f56b34a.elementor-element{--align-self:flex-end;--order:-99999 /* order start hack */;}.elementor .elementor-element.elementor-element-f56b34a a.hfe-menu-item, .elementor .elementor-element.elementor-element-f56b34a a.hfe-sub-menu-item{font-size:12px;}}
/* ------------------------------------------------------------------ header: language selector
   Added by the header work, August 2026. No production counterpart.
   Lives in the header's right-hand container (5d6e10b) next to the menu widget.
   That container is column-flex on desktop in production's own CSS, which would
   stack the selector under the menu and make the bar 38px taller, so it is turned
   into a row here. Measured budget at 1440: the container is 576px, the menu widget
   is 465px of it and the five labels fill 403px; the selector is sized so that
   widget + gap + selector stays inside 576 and the menu never wraps to a second row.
   Every button selector is doubled: the Elementor kit paints every <button> purple
   at (0,1,1) and a single class loses to it. */
.elementor .elementor-element.elementor-element-5d6e10b{
  --flex-direction:row;
  --justify-content:flex-end;
  --align-items:center;
  --gap:0px 14px;
  --row-gap:0px;
  --column-gap:14px;
}
/* Production splits the header 20% logo / 40% empty / 40% nav, and caps the menu
   widget at 80.71% of its column. Measured consequence: the column is 440px at
   1100px and the widget 355px, but the five labels need 403px -- so the menu was
   ALREADY wrapping onto two rows below about 1180px, before any language selector
   existed. The middle column is empty at every width. Taking 10% off it and giving
   it to the nav column, and sizing the widget to its content instead of to a
   percentage, buys the room for the selector and removes the pre-existing wrap.
   Measured after: one row from 1025px to 1440px. */
@media (min-width:768px){
  .elementor .elementor-element.elementor-element-c82e2fe{--width:30%;}
  .elementor .elementor-element.elementor-element-5d6e10b{--width:50%;}
}
@media (min-width:1025px){
  /* Desktop only. Below 1025px production sizes this widget to 50% of its column
     on purpose and the widget holds nothing but the burger; overriding it there
     dragged the open panel 8px past the right edge of a 390px viewport. Measured. */
  .elementor .elementor-element.elementor-element-72af8bc{
    width:auto;
    max-width:none;
    --container-widget-width:auto;
  }
}

/* -------------------------------------------------- header: the open phone menu
   Production's own CSS reveals this <nav> by flipping visibility and height and
   gives it no surface at all: measured computed background rgba(0,0,0,0), no
   border, no shadow, no padding, z-index auto. The panel is 175px tall under a
   104px header, so four of the five links land on the hero photograph with
   nothing behind them. The current item is #7A7A7A, which is 4.29:1 even against
   white and fails WCAG AA before the photo is considered.
   Scoped to the header widget (72af8bc). The footer's menu has the same defect and
   is deliberately left alone: another change is in flight there. */
@media only screen and (max-width:1024px){
  .elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__toggle.hfe-active-menu + nav.hfe-nav-menu__layout-horizontal{
    position:absolute;
    top:100%;
    right:0;
    left:auto;
    margin-top:10px;
    margin-right:12px;
    /* Not max-content: the li are width:100% of the ul, so max-content resolved to
       366px and pushed the panel 7px off the left edge of a 390px viewport. */
    width:280px;
    max-width:calc(100vw - 24px);
    padding:6px;
    background:#fff;
    border:1px solid #e6e6e6;
    border-radius:14px;
    box-shadow:0 14px 34px rgba(21,47,78,.18);
    /* Above the hero, the sticky header's own children and the language panel. */
    z-index:130;
  }
  .elementor .elementor-element.elementor-element-72af8bc .hfe-active-menu + nav .hfe-nav-menu > li.menu-item{
    width:100%;
  }
  .elementor .elementor-element.elementor-element-72af8bc .hfe-active-menu + nav li.menu-item > a.hfe-menu-item{
    display:block;
    padding:11px 14px;
    border-radius:9px;
    color:var(--e-global-color-8cd1398,#000);
    font-size:16px;
    text-align:left;
  }
  .elementor .elementor-element.elementor-element-72af8bc .hfe-active-menu + nav li.menu-item > a.hfe-menu-item:hover,
  .elementor .elementor-element.elementor-element-72af8bc .hfe-active-menu + nav li.menu-item > a.hfe-menu-item:focus-visible{
    background:rgba(145,8,220,.07);
    color:var(--e-global-color-primary,#9108DC);
  }
  .elementor .elementor-element.elementor-element-72af8bc .hfe-active-menu + nav li.menu-item > a.hfe-menu-item:focus-visible{
    outline:2px solid var(--e-global-color-primary,#9108DC);
    outline-offset:-2px;
  }
  /* The page you are on. Production paints it #7A7A7A (4.29:1, below AA); the brand
     purple on white is 8.06:1 and also says "current" more clearly than grey does. */
  .elementor .elementor-element.elementor-element-72af8bc .hfe-active-menu + nav li.menu-item.current-menu-item > a.hfe-menu-item{
    color:var(--e-global-color-primary,#9108DC);
    font-weight:700;
  }
  /* The separators production draws between items are for a full-width bar; inside
     a card they read as clutter. */
  .elementor .elementor-element.elementor-element-72af8bc .hfe-active-menu + nav li.menu-item:not(:last-child){
    border-bottom:0;
  }
}
.ql-lang{
  position:relative;
  flex:0 0 auto;
  /* The header container has no padding of its own, so without this the pill's
     border sits flush on the viewport edge. The menu widget never showed it
     because its 80.71% cap left 62px of empty widget to the right of the labels. */
  margin-right:16px;
  font-family:"DM Sans",Sans-serif;
  line-height:1;
}
.ql-lang[hidden]{display:none;}
.ql-lang__button.ql-lang__button{
  display:inline-flex;
  align-items:center;
  gap:6px;
  height:36px;
  padding:0 10px 0 9px;
  margin:0;
  border:1px solid #dcdcdc;
  border-radius:100px;
  background:transparent;
  background-color:transparent;
  color:var(--e-global-color-8cd1398,#000);
  font-family:"DM Sans",Sans-serif;
  font-size:14px;
  font-weight:600;
  letter-spacing:.02em;
  cursor:pointer;
  transition:border-color .15s ease,background-color .15s ease;
}
.ql-lang__button.ql-lang__button:hover,
.ql-lang__button.ql-lang__button:focus-visible{
  border-color:var(--e-global-color-primary,#9108DC);
  background-color:rgba(145,8,220,.06);
}
.ql-lang__button.ql-lang__button:focus-visible{
  outline:2px solid var(--e-global-color-primary,#9108DC);
  outline-offset:2px;
}
.ql-lang__globe{flex:0 0 auto;display:block;}
.ql-lang__code{display:block;}
.ql-lang__caret{flex:0 0 auto;display:block;transition:transform .15s ease;}
.ql-lang__button[aria-expanded="true"] .ql-lang__caret{transform:rotate(180deg);}

.ql-lang__menu{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  z-index:120;
  margin:0;
  padding:6px;
  min-width:184px;
  list-style:none;
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:14px;
  box-shadow:0 12px 32px rgba(21,47,78,.16);
}
.ql-lang__menu[hidden]{display:none;}
.ql-lang__menu li{margin:0;list-style:none;}
.ql-lang__item{
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 10px;
  border-radius:9px;
  color:var(--e-global-color-8cd1398,#000);
  font-size:15px;
  font-weight:500;
  text-decoration:none;
  white-space:nowrap;
}
.ql-lang__item:hover,.ql-lang__item:focus-visible{
  background:rgba(145,8,220,.07);
  color:var(--e-global-color-primary,#9108DC);
}
.ql-lang__abbr{
  flex:0 0 auto;
  min-width:26px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  color:var(--e-global-color-text,#7A7A7A);
}
.ql-lang__item[aria-current="true"]{
  color:var(--e-global-color-primary,#9108DC);
  font-weight:700;
}
.ql-lang__item[aria-current="true"] .ql-lang__abbr{color:inherit;}
/* A language whose copy of THIS page does not exist yet. The link is still valid --
   it goes to that language's home page -- and says so rather than 404ing. */
.ql-lang__item[data-ql-fallback]{color:var(--e-global-color-text,#7A7A7A);}
.ql-lang__item[data-ql-fallback]::after{
  content:"\2197";
  margin-left:auto;
  padding-left:10px;
  font-size:12px;
  opacity:.65;
}

@media only screen and (max-width:1024px){
  /* Left of the burger: the thumb owns the right edge of a phone header. */
  .ql-lang{order:-1;margin-right:0;}
  .ql-lang__button.ql-lang__button{height:40px;padding:0 10px;}
}
@media only screen and (max-width:767px){
  .ql-lang__button.ql-lang__button{gap:5px;padding:0 9px;font-size:13px;}
  .ql-lang__menu{min-width:172px;}
}

/* ================================================================ HEADER v2 (proposal)
   Behind a flag: nothing below applies unless site.js has put data-hdr on <html>,
   which it only does for ?hdr=v2 or ?hdr=v2-noimg. The default header is untouched.

     http://localhost:8899/site/?hdr=v2         the proposal
     http://localhost:8899/site/?hdr=v2-noimg   the same, with the logo image removed
     http://localhost:8899/site/                today

   What it changes and why, all measured (see the report for the sites):
   - Phone bar 104px -> 60px. Measured comparators at 390px: Parc Asterix 56,
     Civitatis 58, Europa-Park 50, PortAventura 60. 104px is a fifth of an iPhone 12
     viewport spent on chrome before the visitor has seen anything.
   - The header's height is currently --min-height:10vh, so it grows with the WINDOW,
     not with its contents: 90px in a 900px-tall window, 108px in a 1080px one. v2
     pins it.
   - The logo box is 25% x 100% of the phone header (97.5 x 104 measured) for a
     372x397 near-square lockup. v2 sizes it by height with width:auto, so the mark
     sets its own footprint instead of filling whatever box it is given.
   - "Tu viaje" becomes a filled pill rather than the second of five equal text links.
     PortAventura does this with "Promociones", Parc Asterix with "Reserver": on a
     site that sells one thing, the primary action should not be typographically
     identical to "FAQ". Targeted by href, not by position, so it survives reordering.
   - The empty middle column is dropped and the nav is allowed to breathe. */

html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-1c7afb1{
  --min-height:72px;
  min-height:72px;
  box-shadow:0 1px 0 rgba(21,47,78,.08);
}
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-ca6bac7 img{
  width:auto;
  height:36px;
  max-height:36px;
  object-fit:contain;
  object-position:left center;
}
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-cf2b5e1{
  --width:auto;
  --justify-content:center;
  padding-left:24px;
}
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-c82e2fe{--width:0px;}
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-5d6e10b{
  --width:auto;
  --flex-grow:1;
  flex-grow:1;
  padding-right:24px;
}
/* The primary action, found by destination rather than by position. */
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc li.menu-item > a.hfe-menu-item[href$="/tu-viaje/"]{
  background:var(--e-global-color-primary,#9108DC);
  color:#fff;
  border-radius:100px;
  padding:9px 18px;
  margin:0 4px;
}
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc li.menu-item > a.hfe-menu-item[href$="/tu-viaje/"]:hover{
  background:#7a06bb;
  color:#fff;
}
/* The "removed" arm of the comparison: no image, a text wordmark in its place, so
   the home link and the brand anchor both survive. */
html[data-hdr="v2-noimg"] .elementor .elementor-element.elementor-element-ca6bac7 img{display:none;}
html[data-hdr="v2-noimg"] .elementor .elementor-element.elementor-element-ca6bac7 a::after{
  content:"QLESS PARK";
  display:inline-block;
  font-family:"DM Sans",Sans-serif;
  font-weight:700;
  font-size:19px;
  letter-spacing:.06em;
  color:var(--e-global-color-primary,#9108DC);
  white-space:nowrap;
}

@media only screen and (max-width:1024px){
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-1c7afb1{
    --min-height:60px;
    min-height:60px;
  }
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-cf2b5e1{
    --width:auto;
    padding-left:16px;
  }
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-ca6bac7 img{
    width:auto;
    height:30px;
    max-height:30px;
  }
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-5d6e10b{
    --width:auto;
    padding-right:14px;
    --column-gap:10px;
    --gap:0px 10px;
  }
  /* Code only on a phone: the globe and the caret are 30px of the 78px pill and
     say nothing a two-letter code does not. */
  html[data-hdr^="v2"] .ql-lang__globe,
  html[data-hdr^="v2"] .ql-lang__caret{display:none;}
  html[data-hdr^="v2"] .ql-lang__button.ql-lang__button{padding:0 11px;height:38px;}
  /* The action stays in the bar; the other four links go behind the burger. */
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc{
    order:2;
  }
  html[data-hdr^="v2"] .ql-lang{order:1;}
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__toggle{
    margin:0;
    margin-left:auto;
  }
}

/* The lifted primary action (v2 only; site.js creates it, nothing ships it). */
html[data-hdr^="v2"] .ql-cta{
  display:none;
  flex:0 0 auto;
  align-items:center;
  height:38px;
  padding:0 16px;
  border-radius:100px;
  background:var(--e-global-color-primary,#9108DC);
  color:#fff;
  font-family:"DM Sans",Sans-serif;
  font-size:14px;
  font-weight:600;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
html[data-hdr^="v2"] .ql-cta:hover,html[data-hdr^="v2"] .ql-cta:focus-visible{background:#7a06bb;color:#fff;}
@media only screen and (max-width:1024px){
  html[data-hdr^="v2"] .ql-cta{display:inline-flex;order:1;}
  html[data-hdr^="v2"] .ql-lang{order:0;}
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc{order:3;}
  /* The bar already carries it, so it does not need repeating inside the panel. */
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc .hfe-active-menu + nav li.menu-item > a.hfe-menu-item[href$="/tu-viaje/"]{display:none;}
  html[data-hdr="v2-noimg"] .elementor .elementor-element.elementor-element-ca6bac7 a::after{
    font-size:16px;letter-spacing:.04em;
  }
}
@media only screen and (max-width:400px){
  /* At 390 the four things in the bar are 16+124+8+40+8+96+8+40+14 = 354 of 390.
     The label is what gives, not the touch target. */
  html[data-hdr^="v2"] .ql-cta{padding:0 13px;font-size:13px;}
}

/* v2 phone bar: keep everything on one 60px row and inside the viewport.
   Production sizes the menu widget at 50% of its column below 767px; with the
   column now auto-width that pushed the burger past the right edge (measured
   x=363 of 390 with margin-left:auto inside an over-wide widget). */
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-1c7afb1{
  --align-items:center;
  --flex-wrap-mobile:nowrap;
  flex-wrap:nowrap;
}
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-cf2b5e1,
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-5d6e10b{
  --align-items:center;
  align-self:center;
}
html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-cf2b5e1{
  --justify-content:center;
  --align-items:flex-start;
}
@media only screen and (max-width:1024px){
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc{
    width:auto;
    max-width:none;
    --container-widget-width:auto;
    --align-self:center;
  }
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__toggle{
    margin:0;
  }
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-5d6e10b{
    --justify-content:flex-end;
    justify-content:flex-end;
  }
}

/* The closed nav still measured 271px of max-content and was sizing the widget,
   so justify-content:flex-end pushed an over-wide box right while the burger glyph
   drew at its left edge — the whole bar looked bunched into the left half of a
   390px screen. Take the panel out of flow so the widget is exactly the burger. */
@media only screen and (max-width:1024px){
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc div.hfe-nav-menu.hfe-layout-horizontal{
    position:relative;
    width:auto;
  }
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc nav.hfe-nav-menu__layout-horizontal{
    position:absolute;
    top:100%;
    right:0;
    left:auto;
  }
  html[data-hdr^="v2"] .elementor .elementor-element.elementor-element-72af8bc .hfe-nav-menu__toggle{
    width:40px;
    margin:0;
  }
}

/* Third arm of the logo question: the Q mark on its own plus a text wordmark.
   The header asset today is cropped-logo_small_svg.png, 372x397 -- a near-square
   stack of the Q over "QLESS PARK" -- and at a 36px bar height the word under the
   Q is 8px and unreadable. cropped-logo_Q_svg-192x192.png already exists (it is
   the favicon), reads at any size, and the wordmark next to it is live text.
   ?hdr=v2-qmark */
html[data-hdr="v2-qmark"] .elementor .elementor-element.elementor-element-ca6bac7 img{
  content:url("../img/cropped-logo_Q_svg-192x192.png");
  width:auto;
  height:34px;
  max-height:34px;
}
html[data-hdr="v2-qmark"] .elementor .elementor-element.elementor-element-ca6bac7 a{
  display:inline-flex;
  align-items:center;
  gap:9px;
}
html[data-hdr="v2-qmark"] .elementor .elementor-element.elementor-element-ca6bac7 a::after{
  content:"QLESS PARK";
  font-family:"DM Sans",Sans-serif;
  font-weight:700;
  font-size:18px;
  letter-spacing:.05em;
  color:var(--e-global-color-primary,#9108DC);
  white-space:nowrap;
}
@media only screen and (max-width:1024px){
  html[data-hdr="v2-qmark"] .elementor .elementor-element.elementor-element-ca6bac7 img{height:28px;max-height:28px;}
  html[data-hdr="v2-qmark"] .elementor .elementor-element.elementor-element-ca6bac7 a::after{font-size:15px;}
}

/* ================================================================== HERO v2 (proposal)
   Behind a flag. Nothing below applies unless site.js has put data-hero on <html>,
   which it only does for one of the three arms. The shipped hero is untouched.

     http://localhost:8899/site/?hero=v2         compact, photograph kept
     http://localhost:8899/site/?hero=v2-proof   compact, the ITINERARY in place of the photo
     http://localhost:8899/site/?hero=v2-noimg   compact, NO image at all
     http://localhost:8899/site/?hero=off        today

   Combine with the nav proposal: ?hdr=v2-qmark&hero=v2-proof. The two are independent
   on purpose, so each can be judged on its own.

   ------------------------------------------------------------------ why, measured
   Today the homepage hero is `> .elementor-container{min-height:100vh}` on EVERY
   device. On a 390x844 phone that is 844px, the CTA sits at y=694, and the first
   thing that is not the hero is at y=998 - 154px past the fold. Of eleven phone
   heroes measured on 23/08/2026 (see the report) we were the only one spending a
   whole viewport on a decorative photograph, and our first action was 2-3x further
   down than anyone's: Eurostar 12, Parc Asterix 200, Booking 260, PortAventura 278,
   Civitatis 301, Wanderlog 359, us 694.

   Five of those eleven put an action INSIDE the hero. Two (Airbnb, Booking) have no
   photograph in the phone hero at all - Booking's is a flat navy block with the
   search widget on it. Wanderlog, the only measured site in our actual category,
   shows the PRODUCT: a frame containing a real itinerary, no photograph anywhere.

   That is what the three arms test. They are the same geometry; they differ only in
   what fills the band, so the comparison is about the image and nothing else. */

/* ------------------------------------------------------- the evidence strip
   Markup in templates/_header.html, copy in content/<lang>/_site.json. Shipped
   `hidden`; this is the rule that reveals it, and it is the only one. */
html[data-hero="strip"] .ql-evidence,
html[data-hero^="v2"] .ql-evidence{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:38px;
  padding:0 16px;
  background:#F4ECFB;
  border-bottom:1px solid #E6D8F5;
  color:#152F4E;
  font-family:"DM Sans",Sans-serif;
  font-size:13.5px;
  line-height:1.25;
  text-align:center;
}
html[data-hero="strip"] .ql-evidence__mark,
html[data-hero^="v2"] .ql-evidence__mark{flex:0 0 auto;fill:var(--e-global-color-primary,#9108DC);}
/* The tallest bar is the one that matters -- keep it brand, dim the others so the
   glyph reads as a profile rather than as three equal blocks. */
html[data-hero="strip"] .ql-evidence__mark rect,
html[data-hero^="v2"] .ql-evidence__mark rect{opacity:.45;}
html[data-hero="strip"] .ql-evidence__mark rect:nth-child(2),
html[data-hero^="v2"] .ql-evidence__mark rect:nth-child(2){opacity:1;}
html[data-hero="strip"] .ql-evidence__bar3,
html[data-hero^="v2"] .ql-evidence__bar3{opacity:.7;}
html[data-hero="strip"] .ql-evidence__text,
html[data-hero^="v2"] .ql-evidence__text{font-weight:500;}

/* =============================================== the homepage hero (.elementor-element-f91c446)
   The one number that matters: min-height 100vh -> a fixed band. Fixed, not vh: a
   hero that grows with the window is the same defect the nav had at --min-height:10vh,
   and it is why the same page is 844px of chrome on a phone and 900px on a laptop. */
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-f91c446{
  position:relative;
  overflow:hidden;
}
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-container{
  min-height:420px;
}

/* Type. The title is Raleway 900 at 67px desktop / 40px phone with letter-spacing
   7.9px. On a 390px phone that spacing is what forces "Vive al maximo la magia de
   Disneyland Paris" onto FOUR lines; it is a display effect borrowed from a wide
   layout and it does not survive the narrow one. */
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-09966e8{
  font-size:46px;
  letter-spacing:1.5px;
  line-height:1.06;
  max-width:22ch;
  margin-inline:auto;
}
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-713c580{
  width:var(--container-widget-width,100%);
  max-width:52ch;
  font-size:18px;
  line-height:1.45;
  margin-inline:auto;
  padding-top:10px;
}
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-1a664cc > .elementor-widget-container{
  padding:16px 20px 0;
}
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-1a664cc .elementor-button{
  font-size:17px;
  padding:13px 28px;
  border-radius:999px;
}

/* Arm 1 -- the photograph stays, but it stops being a wash.
   The shipped overlay is #000 at a flat 0.5 everywhere, which greys the photo out
   AND leaves the title on a mid-grey field. A bottom-weighted scrim gives the type
   its contrast where the type actually is and gives the photograph back its sky. */
html[data-hero="v2"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-background-overlay{
  opacity:1;
  background-color:transparent;
  background-image:linear-gradient(180deg,
    rgba(6,12,24,.24) 0%, rgba(6,12,24,.52) 46%, rgba(6,12,24,.80) 100%);
}

/* Arms 2 and 3 share a background, so the ONLY difference between them is whether
   the itinerary is there. That is the A/B Pol asked for: can the image be removed. */
html[data-hero="v2-proof"] .elementor .elementor-element.elementor-element-f91c446,
html[data-hero="v2-noimg"] .elementor .elementor-element.elementor-element-f91c446{
  background-image:none;
  background-color:#152F4E;
}
html[data-hero="v2-proof"] .elementor .elementor-element.elementor-element-f91c446{
  background-image:linear-gradient(135deg,#152F4E 0%,#241243 56%,#3A0B63 100%);
}
html[data-hero="v2-noimg"] .elementor .elementor-element.elementor-element-f91c446{
  background-image:linear-gradient(135deg,#152F4E 0%,#103663 100%);
}
html[data-hero="v2-proof"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-background-overlay,
html[data-hero="v2-noimg"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-background-overlay{
  display:none;
}

/* Arm 2 -- the artefact. Injected by site.js from the <template> in _header.html,
   so the two arms that do not use it never fetch the image.
   Desktop: text left, artefact right, the Wanderlog shape.
   The card is deliberately cropped at the bottom: it is a page of something longer,
   and showing it whole would invite reading it rather than recognising it. */
html[data-hero="v2-proof"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-container{
  padding-right:min(430px,40%);
}
html[data-hero="v2-proof"] .ql-heroart{
  position:absolute;
  top:26px;
  bottom:0;
  right:max(24px,5vw);
  width:min(340px,32%);
  display:flex;
  align-items:flex-start;
  justify-content:center;
  pointer-events:none;
}
html[data-hero="v2-proof"] .ql-heroart__img{
  width:100%;
  height:auto;
  max-height:100%;
  object-fit:cover;
  object-position:top center;
  border-radius:12px 12px 0 0;
  box-shadow:0 18px 44px rgba(0,0,0,.34);
  background:#fff;
}

/* ---------------------------------------------------------------- phone */
@media only screen and (max-width:1024px){
  html[data-hero="strip"] .ql-evidence,
  html[data-hero^="v2"] .ql-evidence{min-height:34px;font-size:12.5px;gap:8px;}
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-container{
    min-height:340px;
  }
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-09966e8{
    width:var(--container-widget-width,100%);
    max-width:100%;
    font-size:29px;
    letter-spacing:.5px;
    line-height:1.14;
    padding:0 14px;
  }
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-713c580{
    font-size:15px;
    line-height:1.4;
    padding:8px 18px 0;
  }
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-1a664cc > .elementor-widget-container{
    padding:14px 16px 0;
  }
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-1a664cc .elementor-button{
    font-size:16px;
    padding:12px 24px;
  }
  /* The artefact becomes a strip along the bottom edge, showing its own header and
     the first rows. Same idea as the desktop card: recognisable, not readable. */
  html[data-hero="v2-proof"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-container{
    padding-right:0;
    padding-bottom:126px;
  }
  html[data-hero="v2-proof"] .ql-heroart{
    top:auto;
    right:0;
    left:0;
    bottom:0;
    width:auto;
    height:118px;
    padding:0 16px;
    align-items:flex-end;
  }
  html[data-hero="v2-proof"] .ql-heroart__img{
    height:118px;
    max-height:118px;
    border-radius:10px 10px 0 0;
    box-shadow:0 -2px 26px rgba(0,0,0,.30);
  }
}
@media only screen and (max-width:479px){
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-09966e8{font-size:27px;}
}

/* ============================================== the three inner-page hero bands
   /contrata/ + /beta/ (3d9c068), /faq/ (30bd86b), /contact/ (92de522).

   Measured: each is a 127px band on a phone whose only content is one <h1>, and each
   downloads a full-size photograph to fill it -- 868 KB (1920x2560, PORTRAIT), 776 KB
   (1707x2560, PORTRAIT) and 680 KB. Two portrait images 2560px tall, rendered into a
   390x127 landscape sliver, with no srcset because they are CSS backgrounds. The
   mirror took /contrata/ from 296 KB to 20 KB of markup and then hands 868 KB back in
   one image.

   They are also pinned with hard pixel offsets -- background-position:705px -320px on
   /faq/, 0px 506px on /contact/ - which were tuned for one viewport and cannot be
   right on another.

   Arm 1 keeps the photographs and repairs them (cover + centre + a real height).
   Arms 2 and 3 drop them for a flat band, which costs zero bytes. */
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-3d9c068,
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-30bd86b,
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-92de522{
  --min-height:132px;
  --overlay-opacity:.42;
  box-shadow:none;
}
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-4cf9e06,
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-b74ab8e,
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-324cf07{
  --min-height:0px;
}
html[data-hero="v2"] .elementor .elementor-element.elementor-element-3d9c068,
html[data-hero="v2"] .elementor .elementor-element.elementor-element-30bd86b,
html[data-hero="v2"] .elementor .elementor-element.elementor-element-92de522{
  background-size:cover;
  background-position:center 42%;
}
html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-3d9c068,
html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-30bd86b,
html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-92de522,
html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-3d9c068,
html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-30bd86b,
html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-92de522,
html[data-hero="v2-proof"] .elementor .elementor-element.elementor-element-3d9c068,
html[data-hero="v2-proof"] .elementor .elementor-element.elementor-element-30bd86b,
html[data-hero="v2-proof"] .elementor .elementor-element.elementor-element-92de522,
html[data-hero="v2-noimg"] .elementor .elementor-element.elementor-element-3d9c068,
html[data-hero="v2-noimg"] .elementor .elementor-element.elementor-element-30bd86b,
html[data-hero="v2-noimg"] .elementor .elementor-element.elementor-element-92de522{
  background-image:linear-gradient(135deg,#152F4E 0%,#103663 100%);
  --overlay-opacity:0;
}
/* The title: Carme 600 at 3vw with letter-spacing 20px (9px on a phone). At 1440 that
   is 43px type tracked 20px, which is wider than the word it is tracking. */
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-21bb44d .elementor-heading-title,
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-cae2878 .elementor-heading-title,
html[data-hero^="v2"] .elementor .elementor-element.elementor-element-8a0c4cf .elementor-heading-title{
  font-size:32px;
  letter-spacing:9px;
  line-height:1.2;
}
@media only screen and (max-width:1024px){
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-3d9c068,
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-30bd86b,
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-92de522{
    --min-height:104px;
  }
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-21bb44d .elementor-heading-title,
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-cae2878 .elementor-heading-title,
  html[data-hero^="v2"] .elementor .elementor-element.elementor-element-8a0c4cf .elementor-heading-title{
    font-size:21px;
    letter-spacing:4px;
  }
}

/* ------------------------------------------------------------- reduced motion
   The hero CTA carries .elementor-animation-grow (a scale on hover) and the header
   carries `transition: all .4s !important`. Both should be off for a visitor who has
   asked for less motion. Scoped to the flag only because turning it on site-wide is a
   change outside this proposal -- it should be made globally, and that is in the report. */
@media (prefers-reduced-motion:reduce){
  html[data-hero^="v2"] .elementor .elementor-animation-grow,
  html[data-hero^="v2"] .elementor .elementor-animation-grow:hover,
  html[data-hero^="v2"] .elementor .elementor-animation-grow:focus{
    transform:none;
    transition:none;
  }
  html[data-hero^="v2"] .she-header-yes,
  html[data-hero^="v2"] .she-header-yes.e-con{transition:none !important;}
  html[data-hero^="v2"] .ql-heroart__img{transition:none;}
}

/* ============================================== HERO: REMOVAL, AND THE FUNCTIONAL HERO
   Session 2. The three arms above are all COMPACT heroes - they shrink the band and
   argue about what fills it. Pol asked a different question as well: can the hero go?
   These are the answers to that, plus the one arm where the hero does work instead of
   decorating.

     http://localhost:8899/site/?hero=none      no hero at all
     http://localhost:8899/site/?hero=strip     no hero, but the one evidence line stays
     http://localhost:8899/site/?hero=v2-form   compact hero carrying the four questions

   `none` is a real option and is built like one: no leftover gap, the <h1> is the
   first thing on the page, and the inner pages keep their own <h1> instead of losing
   it with the band. Two of the eleven phone heroes measured on 23/08/2026 (Airbnb,
   Eurostar) have no hero band above the fold at all, so this is not a straw man.

   ------------------------------------------------------------------------ none, strip
   The homepage band goes entirely. It carries a tagline and one CTA, and NOT the
   <h1> - the page's only <h1> is "Mejoramos tu experiencia en Disneyland Paris" in
   the section below, so removing the hero costs no heading. Verified in
   templates/home.html before writing this rule.

   The grey 50px spacer band under it goes too, or removal just leaves a grey stripe
   where the photograph was. */
html[data-hero="none"] .elementor .elementor-element.elementor-element-f91c446,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-f91c446,
html[data-hero="none"] .elementor .elementor-element.elementor-element-5373165,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-5373165{
  display:none;
}

/* The inner pages are the harder half. Their band DOES carry the <h1>
   (/contrata/ 21bb44d, /faq/ cae2878, /contact/ 8a0c4cf), so it cannot simply be
   hidden - that would ship three pages with no heading. The band is dissolved
   instead: no photograph, no overlay, no minimum height, and the title recoloured
   from white to navy so it survives losing its dark backdrop. What is left is a page
   that begins with its own title, which is what "no hero" should mean. */
html[data-hero="none"] .elementor .elementor-element.elementor-element-3d9c068,
html[data-hero="none"] .elementor .elementor-element.elementor-element-30bd86b,
html[data-hero="none"] .elementor .elementor-element.elementor-element-92de522,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-3d9c068,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-30bd86b,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-92de522{
  background-image:none;
  background-color:transparent;
  --min-height:0px;
  --overlay-opacity:0;
  box-shadow:none;
  padding:26px 0 4px;
}
html[data-hero="none"] .elementor .elementor-element.elementor-element-3d9c068 > .elementor-background-overlay,
html[data-hero="none"] .elementor .elementor-element.elementor-element-30bd86b > .elementor-background-overlay,
html[data-hero="none"] .elementor .elementor-element.elementor-element-92de522 > .elementor-background-overlay,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-3d9c068 > .elementor-background-overlay,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-30bd86b > .elementor-background-overlay,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-92de522 > .elementor-background-overlay{
  display:none;
}
html[data-hero="none"] .elementor .elementor-element.elementor-element-4cf9e06,
html[data-hero="none"] .elementor .elementor-element.elementor-element-b74ab8e,
html[data-hero="none"] .elementor .elementor-element.elementor-element-324cf07,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-4cf9e06,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-b74ab8e,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-324cf07{
  --min-height:0px;
}
/* White type on a white page is the one way this arm could ship broken, so the
   recolour is here and not left to inheritance. #152F4E is the palette navy
   (--e-global-color-65e99da); on #fff that is 12.1:1. */
html[data-hero="none"] .elementor .elementor-element.elementor-element-21bb44d .elementor-heading-title,
html[data-hero="none"] .elementor .elementor-element.elementor-element-cae2878 .elementor-heading-title,
html[data-hero="none"] .elementor .elementor-element.elementor-element-8a0c4cf .elementor-heading-title,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-21bb44d .elementor-heading-title,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-cae2878 .elementor-heading-title,
html[data-hero="strip"] .elementor .elementor-element.elementor-element-8a0c4cf .elementor-heading-title{
  color:#152F4E;
  font-size:32px;
  letter-spacing:6px;
  line-height:1.2;
}
@media only screen and (max-width:1024px){
  html[data-hero="none"] .elementor .elementor-element.elementor-element-3d9c068,
  html[data-hero="none"] .elementor .elementor-element.elementor-element-30bd86b,
  html[data-hero="none"] .elementor .elementor-element.elementor-element-92de522,
  html[data-hero="strip"] .elementor .elementor-element.elementor-element-3d9c068,
  html[data-hero="strip"] .elementor .elementor-element.elementor-element-30bd86b,
  html[data-hero="strip"] .elementor .elementor-element.elementor-element-92de522{
    padding:20px 0 2px;
  }
  html[data-hero="none"] .elementor .elementor-element.elementor-element-21bb44d .elementor-heading-title,
  html[data-hero="none"] .elementor .elementor-element.elementor-element-cae2878 .elementor-heading-title,
  html[data-hero="none"] .elementor .elementor-element.elementor-element-8a0c4cf .elementor-heading-title,
  html[data-hero="strip"] .elementor .elementor-element.elementor-element-21bb44d .elementor-heading-title,
  html[data-hero="strip"] .elementor .elementor-element.elementor-element-cae2878 .elementor-heading-title,
  html[data-hero="strip"] .elementor .elementor-element.elementor-element-8a0c4cf .elementor-heading-title{
    font-size:21px;
    letter-spacing:3px;
  }
}

/* ------------------------------------------------------------- the functional hero
   ?hero=v2-form. Markup: templates/_hero-form.html, cloned in by site.js. Copy:
   _site.json hero.form.*. It inherits every html[data-hero^="v2"] rule above - the
   compact band, the type sizes, the evidence strip - and changes only what the form
   needs, so it is the same proposal with work in it rather than a fourth design.

   The argument, measured: five of the eleven phone heroes carry their action inside
   the hero, and the biggest of them (Booking) has nothing else in it. Our purchase is
   four questions since August 2026. A hero that asks them is a hero that earns its
   height; a hero that shows a castle and a button is 844px of phone spent pointing at
   a form one page away. */
html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-f91c446{
  background-image:linear-gradient(135deg,#152F4E 0%,#241243 62%,#3A0B63 100%);
  background-color:#152F4E;
}
html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-background-overlay{
  display:none;
}
/* The band stops being a fixed height and becomes exactly as tall as the questions
   are. A form in a box of someone else's height is how you get a scrollbar inside a
   hero. */
html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-container{
  min-height:0;
  padding:30px 0 34px;
}
/* The subtitle and the CTA both go: the form's own lead says the same thing in fewer
   words, and a button that scrolls to a form is redundant when the form is here. */
html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-713c580,
html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-1a664cc{
  display:none;
}

.ql-heroform-wrap{width:100%;}
.ql-heroform{
  background:#fff;
  border-radius:16px;
  padding:16px 16px 14px;
  box-shadow:0 18px 44px rgba(0,0,0,.30);
  text-align:left;
  font-family:"DM Sans",Sans-serif;
  color:#152F4E;
}
.ql-heroform__lead{margin:0 0 12px;font-size:13.5px;line-height:1.35;color:#3C4A5C;}
.ql-heroform__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;}
.ql-heroform__field{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;}
.ql-heroform__label{line-height:1.2;}
.ql-heroform__field input,
.ql-heroform__field select{
  /* 16px and not a pixel less: iOS Safari zooms the whole page when a field smaller
     than that takes focus, and a zoomed page in a hero is how a purchase is lost. */
  font:inherit;
  font-size:16px;
  font-weight:400;
  height:44px;
  width:100%;
  box-sizing:border-box;
  padding:0 10px;
  border:1px solid #C9D2DE;
  border-radius:9px;
  background:#fff;
  color:#152F4E;
}
.ql-heroform__field input:focus-visible,
.ql-heroform__field select:focus-visible,
.ql-heroform__cta:focus-visible{outline:2px solid #9108DC;outline-offset:2px;}
.ql-heroform__buy{display:flex;align-items:center;gap:12px;margin-top:14px;}
.ql-heroform__cta{
  font:inherit;
  font-size:16px;
  font-weight:700;
  background:var(--e-global-color-primary,#9108DC);
  color:#fff;
  border:0;
  border-radius:999px;
  padding:13px 26px;
  cursor:pointer;
}
.ql-heroform__price{margin:0;font-size:13px;line-height:1.3;color:#3C4A5C;}
.ql-heroform__note{margin:10px 0 0;font-size:12px;line-height:1.35;color:#5A6675;}
/* Submitting cannot work in a static mirror, so it has to fail visibly. site.js adds
   this class and role="status" instead of a message of its own. */
.ql-heroform__note.is-flagged{color:#9108DC;font-weight:600;}

@media only screen and (min-width:1025px){
  /* Text left, questions right - the shape Booking and Wanderlog both use. */
  html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-d1257f5 > .elementor-widget-wrap{
    flex-direction:row;
    align-items:center;
    gap:44px;
    max-width:1180px;
    margin-inline:auto;
    padding-inline:24px;
  }
  html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-e74d185{
    flex:1 1 auto;
    min-width:0;
  }
  html[data-hero="v2-form"] .ql-heroform-wrap{flex:0 0 424px;}
  html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-09966e8{
    font-size:42px;
    max-width:15ch;
    margin-inline:0;
  }
  /* The title's centring is an inline style on the <p> inside WordPress content, so
     it cannot be overridden without this. The alternative is editing home.json, which
     would change the shipped page for every arm. */
  html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-09966e8 p{
    text-align:left !important;
  }
  .ql-heroform{padding:20px 20px 18px;}
}
@media only screen and (max-width:1024px){
  /* Name and email want the full width; the date and the day count are short enough
     to share a row, which saves one field's height on the phone. */
  html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-09966e8{
    font-size:24px;
    padding:0 16px 14px;
  }
  html[data-hero="v2-form"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-container{
    padding:22px 14px 26px;
  }
  .ql-heroform__field:nth-child(1),
  .ql-heroform__field:nth-child(2){grid-column:1 / -1;}
  .ql-heroform__buy{flex-direction:column;align-items:stretch;gap:8px;margin-top:12px;}
  .ql-heroform__cta{width:100%;}
  .ql-heroform__price{text-align:center;}
  .ql-heroform__note{text-align:center;}
}
@media (prefers-reduced-motion:reduce){
  .ql-heroform__cta{transition:none;}
}

/* --------------------------------------------------------------- the evidence hero
   ?hero=v2-data. Same compact band as the arms above; what fills it is the product's
   one real differentiator - the queue data - instead of a photograph of a castle that
   any of the eleven comparators could have used.

   Markup templates/_hero-data.html, chart generated from themeparks'
   data/static/averages_minutes.csv, copy in _site.json hero.data.*.

   Unlike ?hero=v2-form this arm KEEPS the subtitle and the CTA: it is an argument, not
   a transaction, so it has to end in a button. Layout is a grid rather than a flex row
   because the CTA is a sibling of the title block in Elementor's markup, and a row
   would put it beside the title instead of under it. */
html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-f91c446{
  background-image:linear-gradient(135deg,#152F4E 0%,#241243 62%,#3A0B63 100%);
  background-color:#152F4E;
}
html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-background-overlay{
  display:none;
}
html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-container{
  min-height:0;
  padding:26px 0 30px;
}
.ql-curve{
  margin:0;
  width:100%;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.17);
  border-radius:14px;
  padding:12px 12px 11px;
  box-sizing:border-box;
}
.ql-curve__svg{width:100%;height:auto;display:block;}
.ql-curve__area{stroke:none;}
.ql-curve__line{fill:none;stroke:#C77DFF;stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round;}
.ql-curve__axis{stroke:rgba(255,255,255,.26);stroke-width:1;}
.ql-curve__dot{fill:#fff;stroke:#C77DFF;stroke-width:2.4;}
.ql-curve__val{fill:#fff;font-family:"DM Sans",Sans-serif;font-size:11px;font-weight:700;}
.ql-curve__tick{fill:rgba(255,255,255,.62);font-family:"DM Sans",Sans-serif;font-size:9.5px;}
.ql-curve__cap{
  margin:9px 2px 0;
  color:rgba(255,255,255,.93);
  font-family:"DM Sans",Sans-serif;
  font-size:12.5px;
  line-height:1.35;
  text-align:left;
}
.ql-curve__src{display:block;margin-top:3px;color:rgba(255,255,255,.62);font-size:11px;}

@media only screen and (min-width:1025px){
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-d1257f5 > .elementor-widget-wrap{
    display:grid;
    grid-template-columns:1fr 396px;
    grid-template-areas:"t c" "b c";
    align-items:center;
    gap:0 44px;
    max-width:1180px;
    margin-inline:auto;
    padding-inline:24px;
  }
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-e74d185{grid-area:t;}
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-1a664cc{grid-area:b;}
  html[data-hero="v2-data"] .ql-curve{grid-area:c;}
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-09966e8{
    font-size:42px;
    max-width:15ch;
    margin-inline:0;
  }
  /* Inline text-align on the <p> inside WordPress content; see the same note above. */
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-09966e8 p,
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-713c580 p{
    text-align:left !important;
  }
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-713c580{
    margin-inline:0;
    max-width:46ch;
  }
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-1a664cc{
    text-align:left;
  }
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-1a664cc .elementor-align-center,
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-1a664cc .elementor-button-wrapper{
    text-align:left;
  }
}
@media only screen and (max-width:1024px){
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-f91c446 > .elementor-container{
    padding:20px 14px 24px;
  }
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-09966e8{font-size:25px;}
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-713c580{
    font-size:14px;
    padding:6px 8px 0;
  }
  html[data-hero="v2-data"] .ql-curve{margin-top:12px;}
  html[data-hero="v2-data"] .ql-curve__cap{font-size:12px;}
}

/* --------------------------------------------- breathing room for the removal arms
   With the band gone the <h1> starts exactly at the bar's bottom edge - measured
   y=104 on a phone, y=90 on a desktop, i.e. touching. `strip` does not need this (the
   evidence line separates them); `none` does. */
html[data-hero="none"] .elementor .elementor-element.elementor-element-3c11372{
  padding-top:18px;
}

/* Two corrections after looking at the first render of ?hero=v2-data:
   - desktop: the subtitle sat BESIDE the title, because both widgets carry
     elementor-widget__width-initial and the wrap is a flex row. It wants the full
     column width under the title.
   - phone: the DOM order is title, CTA, chart, so the button came before the argument
     it is meant to follow. The chart is ordered between them. */
@media only screen and (min-width:1025px){
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-713c580{
    width:100%;
  }
}
@media only screen and (max-width:1024px){
  html[data-hero="v2-data"] .ql-curve{order:2;}
  html[data-hero="v2-data"] .elementor .elementor-element.elementor-element-1a664cc{order:3;}
}
