/* ==========================================================================
   /constech - ConstBot page styles. Every selector is scoped under body.page-turismointeligente.
   Sections: hero (Moppi circle ticker), about (intro + stats + use cases + success case +
   "Torre de Control" + "Mide, aprende" + PROCESS steps), process, cases, results overrides, tail image,
   FAQ overrides (heading inside the white card), CTA "Tablet" variant overrides.
   Breakpoints: >=1200 desktop, 768-1199 tablet, <768 phone.
   ========================================================================== */

/* ---------- Shared bits ------------------------------------------------ */
body.page-turismointeligente .tag { display: inline-flex; align-items: center; gap: 10px; padding: 6px 16px 6px 6px; border-radius: 40px; background: #f7f6f5; }
body.page-turismointeligente .tag--white { padding: 6px 16px; background: var(--c-white); }
body.page-turismointeligente .tag__icon { display: flex; align-items: center; justify-content: center; width: 29px; height: 29px; padding: 8px; border-radius: 30px; background: #7842ed; }
body.page-turismointeligente .tag__icon svg { width: 13px; height: 13px; fill: #faf2fa; }
body.page-turismointeligente .tag__title { font-family: var(--f-dm); font-weight: 500; font-size: 14px; line-height: 26px; letter-spacing: -0.5px; color: #131313; white-space: nowrap; }
body.page-turismointeligente .tag__title--mobile { display: none; }
/* near-invisible "Abstract Dots" texture used by the live cards/tags */
body.page-turismointeligente .dots { position: absolute; inset: 0; margin: 0; border-radius: inherit; overflow: hidden; pointer-events: none; }
body.page-turismointeligente .dots img { width: 100%; height: 100%; object-fit: cover; }

/* ---------- Hero: Moppi (Circle Ticker) ------------------------------- */
body.page-turismointeligente .hero { position: relative; z-index: 1; display: flex; flex-direction: row; align-items: flex-end; justify-content: center; height: 769px; width: 100%; overflow: visible; }
body.page-turismointeligente .hero__wrap { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 10px; flex: 1 0 0; width: 1px; height: 591px; overflow: hidden; pointer-events: none; }
body.page-turismointeligente .hero__spacer { flex: none; width: 100%; height: 100px; }
body.page-turismointeligente .hero__circle-wrap { position: relative; display: flex; align-items: center; justify-content: center; flex: none; width: 1276px; height: 1276px; perspective: 1200px; }
body.page-turismointeligente .hero__circle { position: relative; width: 1276px; height: 1276px; flex: none; will-change: transform; animation: turismo-spin 50s linear infinite; }
body.page-turismointeligente .hero__arm:nth-child(1) { --arm-rot: 0deg; }
body.page-turismointeligente .hero__arm:nth-child(2) { --arm-rot: 15deg; }
body.page-turismointeligente .hero__arm:nth-child(3) { --arm-rot: 30deg; }
body.page-turismointeligente .hero__arm:nth-child(4) { --arm-rot: 45deg; }
body.page-turismointeligente .hero__arm:nth-child(5) { --arm-rot: 60deg; }
body.page-turismointeligente .hero__arm:nth-child(6) { --arm-rot: 75deg; }
body.page-turismointeligente .hero__arm:nth-child(7) { --arm-rot: 90deg; }
body.page-turismointeligente .hero__arm:nth-child(8) { --arm-rot: 105deg; }
body.page-turismointeligente .hero__arm:nth-child(9) { --arm-rot: 120deg; }
body.page-turismointeligente .hero__arm:nth-child(10) { --arm-rot: 135deg; }
body.page-turismointeligente .hero__arm:nth-child(11) { --arm-rot: 150deg; }
body.page-turismointeligente .hero__arm:nth-child(12) { --arm-rot: 165deg; }
body.page-turismointeligente .hero__arm { position: absolute; top: 50%; left: 50%; display: flex; flex-direction: column; justify-content: space-between; align-items: center; width: min-content; height: 100%; transform: translate(-50%, -50%) rotate(var(--arm-rot, 0deg)); }
body.page-turismointeligente .hero__card { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: none; width: 110px; height: 110px; padding: 5px; border-radius: 26px; background: rgba(8, 8, 8, 0.32); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05); overflow: hidden; }
body.page-turismointeligente .hero__card--flip { transform: rotate(180deg); }
body.page-turismointeligente .hero__card-img { position: relative; width: 100%; height: 100%; border-radius: 22px; overflow: hidden; }
body.page-turismointeligente .hero__card-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
body.page-turismointeligente .hero__card-border { position: absolute; inset: 0; border-radius: 22px; background: linear-gradient(0deg, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0.15) 100%); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), inset 0 -0.5px 0 rgba(255, 255, 255, 0.2), inset 0.5px 0 0 rgba(255, 255, 255, 0.2), inset -0.5px 0 0 rgba(255, 255, 255, 0.2); }
@keyframes turismo-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
body.page-turismointeligente .hero__container { position: absolute; top: 330px; left: 50%; z-index: 4; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 10px; width: 49%; max-width: 600px; transform: translateX(-50%); }
body.page-turismointeligente .hero__mascot { position: absolute; top: -241px; left: calc(45.6667% - 249.5px); width: 499px; height: 757px; filter: contrast(1.09) hue-rotate(340deg) saturate(1.3); -webkit-mask-image: linear-gradient(#000 39%, rgba(0, 0, 0, 0) 79%); mask-image: linear-gradient(#000 39%, rgba(0, 0, 0, 0) 79%); pointer-events: none; }
body.page-turismointeligente .hero__mascot img { width: 100%; height: 100%; object-fit: cover; }
body.page-turismointeligente .hero__inner { position: relative; display: flex; flex-direction: column; align-items: center; gap: 91px; width: 100%; }
/* "NEW Features" highlight tag: present in the live DOM but rendered at opacity 0 */
body.page-turismointeligente .hero__tag { position: relative; display: inline-flex; align-items: center; gap: 12px; height: 38px; padding: 6px 16px; border-radius: 40px; border: 1px solid rgba(79, 26, 214, 0.15); background: linear-gradient(rgba(255, 255, 255, 0.08) -100%, rgba(255, 255, 255, 0.05) 100%); opacity: 0; overflow: hidden; }
body.page-turismointeligente .hero__tag-overlay { position: absolute; inset: 0; opacity: 0.2; background: conic-gradient(rgba(255, 255, 255, 0.15) 0deg, rgba(255, 255, 255, 0) 72deg, rgba(79, 26, 214, 0.2) 360deg); }
body.page-turismointeligente .hero__tag-badge { position: relative; display: inline-flex; align-items: center; padding: 9px 20px; border-radius: 26px; background: #7842ed; font-family: var(--f-serif); font-size: 16px; line-height: 10px; letter-spacing: -0.5px; color: #faf2fa; }
body.page-turismointeligente .hero__tag-title { position: relative; font-family: var(--f-dm); font-weight: 500; font-size: 14px; line-height: 26px; letter-spacing: -0.5px; color: #131313; }
body.page-turismointeligente .hero__content { display: flex; flex-direction: column; align-items: center; gap: 20px; width: 100%; padding: 49px 0; }
body.page-turismointeligente .hero__title { width: 100%; font-family: var(--f-dm); font-weight: 400; font-size: 53px; line-height: 50px; letter-spacing: -1.9px; text-align: center; color: #131313; }
body.page-turismointeligente .hero__title-serif { font-family: var(--f-serif); font-style: italic; font-weight: 400; }
body.page-turismointeligente .hero__body { max-width: 421px; font-family: var(--f-dm); font-weight: 400; font-size: 16px; line-height: 23px; letter-spacing: -0.5px; text-align: center; color: #131313; }
body.page-turismointeligente .hero__body--mobile { display: none; }
body.page-turismointeligente .hero__buttons { display: flex; align-items: center; justify-content: center; gap: 10px; }
body.page-turismointeligente .hero__buttons .btn { min-height: 46px; padding: 10px 28px; }

/* ---------- About container -------------------------------------------- */
body.page-turismointeligente .about { display: flex; flex-direction: column; gap: 10px; padding: 0 50px 70px; background: var(--c-bg); }
body.page-turismointeligente .about__wrapper { width: 100%; border-radius: var(--r-lg); background: linear-gradient(rgb(249, 247, 246) 0%, rgba(247, 244, 242, 0) 100%); }
body.page-turismointeligente .about__container { display: flex; flex-direction: column; gap: 0; padding: 112px 0 0; background: var(--c-white); border-radius: 70px; }
body.page-turismointeligente .about__heading { display: flex; flex-direction: column; align-items: center; gap: 24px; padding: 0 32px; }
body.page-turismointeligente .about__title { max-width: 899px; font-family: var(--f-dm); font-weight: 300; font-size: 48px; line-height: 1.1; letter-spacing: -2.4px; text-align: center; color: var(--c-ink); }
body.page-turismointeligente .about__title strong { font-weight: 400; }
body.page-turismointeligente .about__claim { max-width: 899px; font-family: var(--f-is); font-weight: 400; font-size: 33px; line-height: 1.1; letter-spacing: -1.32px; text-align: center; color: var(--c-ink); }
body.page-turismointeligente .about__stats.about__stats--mobile { display: none; }
body.page-turismointeligente .about__intro { max-width: 640px; font-family: var(--f-satoshi); font-weight: 400; font-size: 20px; line-height: 30px; letter-spacing: -0.4px; text-align: center; color: var(--c-text); }
body.page-turismointeligente .about__stats { display: flex; gap: 48px; width: 100%; max-width: 1100px; margin-top: 28px; padding: 28px 32px 4px; border-radius: var(--r-md); }
body.page-turismointeligente .about__stat { display: flex; flex-direction: column; gap: 10px; flex: 1 0 0; padding: 0 0 26px; border-bottom: 1px solid rgba(17, 16, 17, 0.1); }
body.page-turismointeligente .about__stat-n { font-family: var(--f-dm); font-weight: 300; font-size: 46px; line-height: 46px; letter-spacing: -2.3px; color: var(--c-text); }
body.page-turismointeligente .about__stat-label { font-family: var(--f-satoshi); font-weight: 400; font-size: 18px; line-height: 27px; color: var(--c-text); }

/* use cases: 4 text blocks (100vh each) + sticky chat mock on the right */
body.page-turismointeligente .usecases { padding: 0 60px; }
body.page-turismointeligente .usecases__container { display: flex; gap: 96px; width: 100%; max-width: 1160px; margin: 0 auto; border-radius: var(--r-lg); }
body.page-turismointeligente .usecases__texts { display: flex; flex-direction: column; gap: 10px; flex: 1 0 0; min-width: 0; }
body.page-turismointeligente .usecases__txt { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 24px; width: 100%; min-height: 100vh; }
body.page-turismointeligente .usecases__category { display: inline-flex; align-items: center; gap: 12px; padding: 7px 15px; /* live box 186x40 incl. border */ border-radius: var(--r-md); border: 1px solid rgba(17, 16, 17, 0.1); }
body.page-turismointeligente .usecases__category svg { width: 24px; height: 24px; flex: none; }
body.page-turismointeligente .usecases__category span { font-family: var(--f-satoshi); font-weight: 500; font-size: 14px; line-height: 21px; letter-spacing: 2.24px; text-transform: uppercase; white-space: nowrap; color: var(--c-ink-60); }
body.page-turismointeligente .usecases__title { width: 100%; font-family: var(--f-dm); font-weight: 300; font-size: 36px; line-height: 1.2; letter-spacing: -0.72px; color: var(--c-ink); text-wrap: balance; }
body.page-turismointeligente .usecases__desc { width: 100%; max-width: 640px; font-family: var(--f-satoshi); font-weight: 400; font-size: 20px; line-height: 30px; letter-spacing: -0.4px; color: var(--c-text); }
body.page-turismointeligente .usecases__img { position: relative; width: 100%; aspect-ratio: 305 / 263; border-radius: var(--r-md); overflow: hidden; }
body.page-turismointeligente .usecases__img img { width: 100%; height: 100%; object-fit: cover; }
body.page-turismointeligente .usecases__img { display: none; }
body.page-turismointeligente .usecases__sticky { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: center; flex: none; width: 560px; height: 100vh; }
body.page-turismointeligente .usecases__media { position: relative; width: 560px; height: 481px; border-radius: var(--r-md); overflow: hidden; }
body.page-turismointeligente .usecases__layer { position: absolute; inset: 0; opacity: 0; transition: opacity 0.5s var(--ease-out); }
body.page-turismointeligente .usecases__layer img { width: 100%; height: 100%; object-fit: cover; }
body.page-turismointeligente .usecases__layer.is-active { opacity: 1; }

/* success case */
body.page-turismointeligente .success { display: flex; flex-direction: column; align-items: center; gap: 60px; padding: 0 0 77px; }
body.page-turismointeligente .success__top { display: flex; justify-content: center; width: 100%; padding: 0 120px; }
body.page-turismointeligente .success__content { display: flex; flex-direction: column; align-items: center; gap: 30px; width: 100%; max-width: 680px; }
body.page-turismointeligente .success__head { display: flex; flex-direction: column; align-items: center; gap: 30px; width: 100%; }
body.page-turismointeligente .success__title { display: flex; flex-direction: column; width: 100%; }
body.page-turismointeligente .success__h2 { font-family: var(--f-dm); font-weight: 300; font-size: 46px; line-height: 50px; letter-spacing: -1.9px; text-align: center; color: #080808; }
body.page-turismointeligente .success__line { display: block; }
body.page-turismointeligente .success__line--serif { font-family: var(--f-serif); font-style: italic; font-weight: 400; color: var(--c-text); }
body.page-turismointeligente .success__body--mobile, body.page-turismointeligente .success__t-mobile { display: none; }
body.page-turismointeligente .tower { width: 100%; max-width: 899px; padding: 0; font-family: var(--f-dm); font-weight: 300; font-size: 72px; line-height: 1.1; letter-spacing: -0.05em; text-align: center; color: var(--c-ink); }
body.page-turismointeligente .success__h2--mobile { display: none; }
body.page-turismointeligente .success__body { max-width: 463px; font-family: var(--f-dm); font-weight: 400; font-size: 16px; line-height: 26px; letter-spacing: -0.2px; text-align: center; color: #131313; }
body.page-turismointeligente .success__bottom { width: 100%; max-width: 1340px; padding: 0 96px; }
body.page-turismointeligente .success__compare { display: flex; justify-content: space-between; gap: 24px; padding: 40px; background: #f7f6f5; border-radius: 30px; }
body.page-turismointeligente .success__card { display: flex; flex-direction: column; width: 450px; max-width: 100%; flex: none; }
body.page-turismointeligente .success__card-head { display: flex; align-items: center; height: 50px; padding: 0 0 0 35px; }
body.page-turismointeligente .success__card-title { font-family: var(--f-dm); font-weight: 400; font-size: 20px; line-height: 50px; letter-spacing: -1.9px; color: var(--c-text); }
body.page-turismointeligente .success__card-title--serif { font-family: "Playfair Display", "Playfair Display Placeholder", serif; font-style: italic; }
body.page-turismointeligente .success__list { position: relative; display: flex; flex-direction: column; gap: 22px; padding: 30px; border-radius: 20px; }
body.page-turismointeligente .success__list--primary { background: var(--c-bg); }
body.page-turismointeligente .success__dots { position: absolute; inset: 0; border-radius: 20px; overflow: hidden; pointer-events: none; }
body.page-turismointeligente .success__dots img { width: 100%; height: 100%; object-fit: cover; }
body.page-turismointeligente .success__item { position: relative; display: flex; align-items: flex-start; gap: 10px; }
body.page-turismointeligente .success__icon { display: block; flex: none; width: 23px; height: 23px; }
body.page-turismointeligente .success__icon--neg { background: url("data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 viewBox=%220 0 23 23%22><path d=%22M 21.323 11.5 C 21.304 10.825 21.098 10.167 20.727 9.601 C 20.357 9.037 19.836 8.585 19.224 8.299 C 19.457 7.664 19.506 6.977 19.37 6.315 C 19.233 5.653 18.913 5.042 18.448 4.552 C 17.957 4.087 17.347 3.768 16.684 3.63 C 16.023 3.494 15.336 3.543 14.701 3.776 C 14.416 3.162 13.965 2.641 13.4 2.271 C 12.834 1.9 12.176 1.693 11.5 1.677 C 10.825 1.695 10.169 1.899 9.605 2.271 C 9.04 2.642 8.592 3.163 8.308 3.776 C 7.673 3.543 6.984 3.492 6.32 3.63 C 5.656 3.766 5.044 4.085 4.553 4.552 C 4.088 5.043 3.77 5.655 3.635 6.316 C 3.499 6.978 3.551 7.665 3.786 8.299 C 3.172 8.585 2.649 9.036 2.277 9.6 C 1.905 10.165 1.697 10.823 1.677 11.5 C 1.698 12.176 1.905 12.834 2.277 13.399 C 2.649 13.964 3.172 14.416 3.786 14.701 C 3.551 15.335 3.499 16.021 3.635 16.683 C 3.771 17.346 4.088 17.957 4.552 18.448 C 5.043 18.911 5.654 19.229 6.316 19.366 C 6.977 19.504 7.664 19.454 8.299 19.224 C 8.585 19.836 9.036 20.357 9.601 20.728 C 10.166 21.098 10.825 21.304 11.5 21.323 C 12.176 21.306 12.834 21.1 13.4 20.73 C 13.965 20.36 14.416 19.837 14.701 19.225 C 15.333 19.475 16.025 19.534 16.691 19.396 C 17.356 19.258 17.966 18.929 18.447 18.448 C 18.928 17.967 19.258 17.357 19.396 16.691 C 19.534 16.025 19.475 15.332 19.224 14.701 C 19.836 14.415 20.357 13.964 20.728 13.398 C 21.098 12.834 21.304 12.175 21.323 11.5 Z M 10.101 15.525 L 6.516 11.941 L 7.868 10.58 L 10.034 12.746 L 14.634 7.734 L 16.042 9.037 Z%22 fill=%22rgb(255,4,0)%22></path><path d=%22M 6 16 L 6 7 L 17 7 L 17 16 Z%22 fill=%22rgb(255,4,0)%22></path><path d=%22M 15.207 9.414 L 13.793 8 L 11.5 10.293 L 9.207 8 L 7.793 9.414 L 10.086 11.707 L 7.793 14 L 9.207 15.414 L 11.5 13.121 L 13.793 15.414 L 15.207 14 L 12.914 11.707 Z%22 fill=%22rgb(255,255,255)%22></path></svg>") center / contain no-repeat; }
body.page-turismointeligente .success__icon--pos { margin-top: 2px; }
body.page-turismointeligente .success__icon svg { width: 100%; height: 100%; }
body.page-turismointeligente .success__item-text { font-family: var(--f-dm); font-weight: 300; font-size: 16px; line-height: 26px; letter-spacing: -0.2px; color: #000; }
body.page-turismointeligente .success__item-text--h4 { font-size: 18px; letter-spacing: -0.5px; color: var(--c-text); }
body.page-turismointeligente .success__item--neg .success__icon { margin-top: 0; }

/* "Mide, aprende y mejora con datos reales." + tabs */
body.page-turismointeligente .measure { padding: 0; }
body.page-turismointeligente .measure__inner { position: relative; display: flex; flex-direction: column; width: 100%; max-width: 1100px; margin: 0 auto; padding: 0 60px; }
body.page-turismointeligente .measure__tabs { position: absolute; top: 8px; right: 60px; display: flex; gap: 32px; }
body.page-turismointeligente .measure__tab { display: flex; flex-direction: column; gap: 12px; cursor: pointer; }
body.page-turismointeligente .measure__tab-label { font-family: var(--f-satoshi); font-weight: 500; font-size: 18px; line-height: 1.2; letter-spacing: -0.36px; white-space: nowrap; color: rgba(17, 16, 17, 0.4); transition: color 0.3s var(--ease-out); }
body.page-turismointeligente .measure__tab-line { display: block; height: 2px; border-radius: 4px; background: var(--c-ink-60); opacity: 0.12; transition: opacity 0.3s var(--ease-out); }
/* live: inactive tabs brighten on hover (text .4 -> .6, underline .12 -> .24) */
body.page-turismointeligente .measure__tab:not(.is-active):hover .measure__tab-label { color: rgba(17, 16, 17, 0.6); }
body.page-turismointeligente .measure__tab:not(.is-active):hover .measure__tab-line { opacity: 0.24; }
body.page-turismointeligente .measure__tab.is-active .measure__tab-label { color: var(--c-text); }
body.page-turismointeligente .measure__tab.is-active .measure__tab-line { opacity: 1; }
body.page-turismointeligente .measure__content { display: flex; flex-direction: column; gap: 4px; width: 409px; max-width: 100%; padding-top: 35px; }
body.page-turismointeligente .measure__title { font-family: var(--f-dm); font-weight: 300; font-size: 46px; line-height: 1.1; letter-spacing: -0.92px; color: var(--c-ink); }
body.page-turismointeligente .measure__title strong { font-weight: 400; }
body.page-turismointeligente .measure__text { font-family: var(--f-satoshi); font-weight: 400; font-size: 18px; line-height: 27px; color: var(--c-text); }
body.page-turismointeligente .measure__text--mobile { display: none; }
body.page-turismointeligente .measure__images { display: flex; align-items: flex-end; gap: 24px; height: 375px; margin: 49px 0 -28px; }
body.page-turismointeligente .measure__image1 { width: 410px; height: 375px; flex: none; border-radius: 64px; overflow: hidden; }
body.page-turismointeligente .measure__image1 svg { width: 100%; height: 100%; }
body.page-turismointeligente .measure__image2 { display: flex; flex-direction: column; width: 546px; flex: none; }
body.page-turismointeligente .measure__image2-bg { display: flex; align-items: center; justify-content: center; width: 546px; height: 514px; padding: 65px 26px 54px 27px; background: #f7f6f5; border-radius: 60px; }
body.page-turismointeligente .measure__image2-bg img { width: 493px; height: 395px; object-fit: cover; }

/* ---------- Nuestro Proceso ------------------------------------------- */
body.page-turismointeligente .process { display: flex; flex-direction: column; align-items: center; gap: 60px; }
body.page-turismointeligente .process__top { display: flex; justify-content: center; width: 100%; padding: 100px 0 0; }
body.page-turismointeligente .process__content { display: flex; flex-direction: column; align-items: center; gap: 30px; width: 100%; max-width: 630px; }
body.page-turismointeligente .process__taghead { display: flex; flex-direction: column; align-items: center; gap: 30px; width: 100%; }
body.page-turismointeligente .process__title { display: flex; flex-direction: column; gap: 10px; width: 100%; }
body.page-turismointeligente .process__h2 { display: flex; flex-direction: column; gap: 10px; font-family: var(--f-dm); font-weight: 400; font-size: 54px; line-height: 50px; letter-spacing: -1.9px; text-align: center; color: #080808; }
body.page-turismointeligente .process__line { display: block; }
body.page-turismointeligente .process__line--mobile { display: none; }
body.page-turismointeligente .process__body { max-width: 520px; font-family: var(--f-dm); font-weight: 400; font-size: 16px; line-height: 26px; letter-spacing: -0.2px; text-align: center; color: #131313; }
body.page-turismointeligente .process__body--mobile { display: none; }
body.page-turismointeligente .process__bottom { display: flex; gap: 10px; width: 100%; max-width: 1200px; padding: 30px; background: var(--c-white); border-radius: 30px; }
body.page-turismointeligente .process__card { position: relative; display: flex; flex-direction: column; gap: 22px; flex: 1 0 0; padding: 30px; background: var(--c-white); border-radius: 20px; }
body.page-turismointeligente .process__card-text { position: relative; display: flex; flex-direction: column; gap: 16px; }
body.page-turismointeligente .process__card-title { font-family: var(--f-dm); font-weight: 400; font-size: 28px; line-height: 30px; letter-spacing: -0.6px; text-align: center; color: var(--c-text); }
body.page-turismointeligente .process__card-body { font-family: var(--f-dm); font-weight: 400; font-size: 17px; line-height: 26px; letter-spacing: -0.5px; text-align: center; color: var(--c-ink-60); }

/* ---------- Casos reales de uso --------------------------------------- */
body.page-turismointeligente .cases { display: flex; flex-direction: column; align-items: center; gap: 57px; padding: 109px 80px 0; }
body.page-turismointeligente .cases__container { display: flex; flex-direction: column; align-items: center; gap: 60px; width: 100%; max-width: 1280px; padding: 0 80px 60px; border-radius: 20px; }
body.page-turismointeligente .cases__content { display: flex; flex-direction: column; align-items: center; gap: 19px; width: 100%; max-width: 800px; }
body.page-turismointeligente .cases__title { font-family: var(--f-dm); font-weight: 400; font-size: 37px; line-height: 33px; letter-spacing: -1.9px; text-align: center; color: #2b2b2b; }
body.page-turismointeligente .cases__body { max-width: 450px; font-family: var(--f-dm); font-weight: 400; font-size: 16px; line-height: 26px; letter-spacing: -0.2px; text-align: center; color: #1c1c1c; }
body.page-turismointeligente .cases__cta { display: flex; justify-content: center; width: 100%; max-width: 500px; }
body.page-turismointeligente .cases__cta .btn { min-height: 46px; padding: 10px 28px; }
body.page-turismointeligente .cases__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; width: 100%; max-width: 1120px; }
body.page-turismointeligente .case-card { display: flex; flex-direction: column; gap: 22px; padding: 30px; background: var(--c-white); border-radius: 20px; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.07); } /* live: no hover effect on the cards */
body.page-turismointeligente .case-card__content { display: flex; flex-direction: column; gap: 19px; }
body.page-turismointeligente .case-card__middle { display: flex; flex-direction: column; gap: 0; }
body.page-turismointeligente .case-card__title { font-family: var(--f-dm); font-weight: 500; font-size: 24px; line-height: 26px; letter-spacing: -0.5px; color: #3d3d3d; }
body.page-turismointeligente .case-card__sub, body.page-turismointeligente .case-card__text { font-family: var(--f-dm); font-weight: 400; font-size: 16px; line-height: 26px; letter-spacing: -0.2px; color: #3d3d3d; }
body.page-turismointeligente .case-card__sep { display: block; width: 230px; height: 1px; background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0) 100%); }
body.page-turismointeligente .cases__tags { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 20px; width: 100%; max-width: 896px; }
body.page-turismointeligente .cases__tag { position: relative; display: flex; background: var(--c-white); border-radius: 17px; }
body.page-turismointeligente .cases__tag .dots { top: -7px; bottom: -7px; border-radius: 100%; }
body.page-turismointeligente .cases__tag-inner { position: relative; display: flex; align-items: center; padding: 13px 14px; border-radius: 16px; }
body.page-turismointeligente .cases__tag-text { font-family: var(--f-dm); font-weight: 500; font-size: 16px; line-height: 26px; letter-spacing: -0.5px; white-space: nowrap; color: #424242; }

/* ---------- Results (testimonials variant B) page colours ------------- */
body.page-turismointeligente .results__container { padding: 120px 0 128px; }
body.page-turismointeligente .results__stat { font-weight: 500; line-height: 43.2px; letter-spacing: -0.72px; }
body.page-turismointeligente .results__stat .n { line-height: 120px; letter-spacing: -2px; }
body.page-turismointeligente .results__stat--tight { letter-spacing: -2px; }
body.page-turismointeligente .results__card--green { background: linear-gradient(rgb(255, 255, 255) 49.9067%, rgb(169, 223, 172) 100%); }
body.page-turismointeligente .results__card--green .results__stat, body.page-turismointeligente .results__card--green .results__caption { color: #6f9954; }
body.page-turismointeligente .results__card--lilac { background: #e5dbeb; }
body.page-turismointeligente .results__card--lilac .results__caption { color: #987da5; }
body.page-turismointeligente .results__card--purple { background: linear-gradient(rgb(255, 255, 255) 0%, rgb(216, 200, 250) 100%); }
body.page-turismointeligente .results__card--purple .results__caption { color: #94a1aa; }
body.page-turismointeligente .results__card--orange { background: linear-gradient(rgb(253, 253, 255) 0%, rgb(250, 228, 208) 100%); }
body.page-turismointeligente .results__card--orange .results__stat, body.page-turismointeligente .results__card--orange .results__caption { color: #c28951; }

/* ---------- FAQ: heading lives inside the white card on this page ------ */
body.page-turismointeligente .faq { gap: 0; }
body.page-turismointeligente .faq__container { display: flex; flex-direction: column; gap: 64px; padding: 120px 60px; }
body.page-turismointeligente .faq__heading { padding: 0; }
body.page-turismointeligente .faq__list { gap: 12px; width: 100%; max-width: 1080px; margin: 0 auto; padding: 0 64px; }

/* ---------- Closing CTA: live page uses the "Tablet" variant at 1440 --- */
body.page-turismointeligente .cta-final { padding: 0 0 50px; }
body.page-turismointeligente .cta-final__container { gap: 84px; padding: 15px 30px 80px; }
body.page-turismointeligente .cta-final__card { width: 100%; min-height: 0; margin: 0; gap: 38px; padding: 99px 0 98px; border-radius: var(--r-md); }
body.page-turismointeligente .cta-final__title { max-width: 1132px; font-size: 51px; line-height: 0.9; letter-spacing: -0.04em; color: var(--c-ink); }
body.page-turismointeligente .site-footer__social { padding: 0; }
body.page-turismointeligente .site-footer__copy { padding: 0 60px; line-height: 1.2; }


/* ---------- PROCESS / STEP 1-4 (Geist) inside the About card --------- */
body.page-turismointeligente .steps { display: flex; flex-direction: column; align-items: center; gap: 80px; width: 100%; padding: 130px 130px 210px; }
body.page-turismointeligente .steps__heading { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; width: 100%; }
body.page-turismointeligente .steps__eyebrow { display: flex; align-items: flex-start; gap: 8px; }
body.page-turismointeligente .steps__sq { flex: none; width: 16px; height: 16px; margin-top: 2px; background: #ffbc6c; }
body.page-turismointeligente .steps__eyebrow p { font-family: var(--f-geist); font-weight: 700; font-size: 16px; line-height: 1.4; letter-spacing: -0.01em; color: #0d0d0d; }
body.page-turismointeligente .steps__intro { max-width: 360px; font-family: var(--f-geist); font-weight: 400; font-size: 16px; line-height: 1.5; letter-spacing: -0.01em; color: rgba(13, 13, 13, 0.7); }
body.page-turismointeligente .steps__list { display: flex; flex-direction: column; align-items: center; gap: 64px; width: 100%; }
body.page-turismointeligente .steps__line { width: 100%; height: 2px; background: #0d0d0d; opacity: 0.1; }
body.page-turismointeligente .steps__row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; width: 100%; }
body.page-turismointeligente .steps__label { font-family: var(--f-geist); font-weight: 700; font-size: 16px; line-height: 1.4; letter-spacing: -0.01em; color: #0d0d0d; }
body.page-turismointeligente .steps__open { grid-column: span 2; display: flex; flex-direction: column; gap: 20px; }
body.page-turismointeligente .steps__open h3 { max-width: 560px; font-family: var(--f-geist); font-weight: 400; font-size: 61px; line-height: 0.94; letter-spacing: -0.04em; color: #0d0d0d; }
body.page-turismointeligente .steps__open p { max-width: 360px; font-family: var(--f-geist); font-weight: 400; font-size: 16px; line-height: 1.5; letter-spacing: -0.01em; color: rgba(13, 13, 13, 0.7); }

/* ---------- Trailing landscape: 3579px image centered under the footer (live overflows; clipped here) */
body.page-turismointeligente { overflow-x: hidden; }
body.page-turismointeligente .tail { position: relative; width: 100%; overflow: hidden; line-height: 0; }
body.page-turismointeligente .tail__inner { position: relative; left: 50%; width: 3579px; transform: translateX(-50%); }
body.page-turismointeligente .tail__inner img { display: block; width: 3579px; height: auto; }

/* ==========================================================================
   Tablet (768 - 1199)
   ========================================================================== */
@media (max-width: 1199px) {
  body.page-turismointeligente .hero__wrap { height: 657px; }
  body.page-turismointeligente .hero__mascot { width: 426px; height: 646px; top: -391px; left: calc(49.5% - 213px); }
  body.page-turismointeligente .steps { padding: 80px 36px; }
  body.page-turismointeligente .site-header--solid .btn-wa { padding: 12px; gap: 0; }
  body.page-turismointeligente .site-header--solid .btn-wa span { display: none; }
  body.page-turismointeligente .hero__container { width: 100%; }
  body.page-turismointeligente .usecases { padding: 0 40px; }
  body.page-turismointeligente .usecases__container { gap: 0; }
  body.page-turismointeligente .usecases__texts { gap: 128px; }
  body.page-turismointeligente .usecases__txt { min-height: 0; gap: 32px; }
  body.page-turismointeligente .usecases__img { display: block; }
  body.page-turismointeligente .usecases__txt--desktop { display: none; }
  body.page-turismointeligente .usecases__sticky { display: none; }
  body.page-turismointeligente .success__top { padding: 35px 50px; }
  body.page-turismointeligente .success__bottom { padding: 0 40px; }
  body.page-turismointeligente .success__compare { flex-direction: column; }
  body.page-turismointeligente .success__card { width: 100%; }
  body.page-turismointeligente .measure__inner { padding: 0 40px; }
  body.page-turismointeligente .measure__tabs { position: static; overflow: hidden; margin-bottom: 48px; }
  body.page-turismointeligente .measure__images { flex-wrap: wrap; height: auto; }
  body.page-turismointeligente .measure__image1 { display: none; }
  body.page-turismointeligente .measure__image2, body.page-turismointeligente .measure__image2-bg { width: 100%; }
  body.page-turismointeligente .measure__image2-bg { height: auto; padding: 60px; }
  body.page-turismointeligente .measure__image2-bg img { width: 100%; height: auto; }
  body.page-turismointeligente .process__bottom { flex-direction: column; }
  body.page-turismointeligente .cases { padding: 80px 40px 0; }
  body.page-turismointeligente .cases__container { padding: 80px 20px 60px; }
  body.page-turismointeligente .cases__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 768px) and (max-width: 1199px) {
  /* live tablet variant: no stats row, "Mide" block uses the short copy centered, results grid shows columns 3-4 only */
  body.page-turismointeligente .about__stats.about__stats--desktop, body.page-turismointeligente .about__stats.about__stats--mobile { display: none; }
  body.page-turismointeligente .tower { font-size: 43px; }
  body.page-turismointeligente .measure__content { width: 100%; align-items: center; text-align: center; }
  body.page-turismointeligente .measure__text--desktop { display: none; }
  body.page-turismointeligente .measure__text--mobile { display: block; max-width: 560px; }
  body.page-turismointeligente .results__col:not(.results__col--desktop) { display: none; }
}

/* ==========================================================================
   Phone (< 768)
   ========================================================================== */
@media (max-width: 767px) {
  body.page-turismointeligente .tag__title--desktop { display: none; }
  body.page-turismointeligente .tag__title--mobile { display: inline; }

  /* hero */
  body.page-turismointeligente .hero { height: 768px; }
  body.page-turismointeligente .hero__wrap { flex: none; gap: 50px; width: 100%; height: 590px; }
  body.page-turismointeligente .hero__spacer { height: 50px; }
  body.page-turismointeligente .hero__circle-wrap { width: 870px; height: 920px; }
  body.page-turismointeligente .hero__circle { width: 870px; height: 870px; }
  body.page-turismointeligente .hero__container { top: 262px; width: 100%; max-width: none; }
  body.page-turismointeligente .hero__mascot { width: 256px; height: 471px; top: -183px; left: calc(51.9231% - 128px); -webkit-mask-image: linear-gradient(#000 58%, rgba(0, 0, 0, 0) 86%); mask-image: linear-gradient(#000 58%, rgba(0, 0, 0, 0) 86%); }
  body.page-turismointeligente .hero__inner { gap: 41px; padding: 0 20px; }
  body.page-turismointeligente .hero__content { gap: 20px; }
  body.page-turismointeligente .hero__title { padding-bottom: 11px; font-size: 53px; line-height: 45px; }
  body.page-turismointeligente .hero__body { max-width: none; font-family: var(--f-inter); font-size: 16px; line-height: 19.2px; letter-spacing: normal; }
  body.page-turismointeligente .hero__body--desktop { display: none; }
  body.page-turismointeligente .hero__body--mobile { display: block; color: var(--c-text); }

  /* about */
  body.page-turismointeligente .about { padding: 0 15px 20px; }
  body.page-turismointeligente .about__wrapper { border-radius: 45px; }
  body.page-turismointeligente .about__container { gap: 24px; padding: 49px 0 0; border-radius: 43px; }
  body.page-turismointeligente .about__stats.about__stats--desktop { display: none; }
  body.page-turismointeligente .about__stats.about__stats--mobile { display: flex; }
  body.page-turismointeligente .about__heading { padding: 0 20px; }
  body.page-turismointeligente .about__title { max-width: 270px; word-break: break-word; }
  body.page-turismointeligente .about__stat-label, body.page-turismointeligente .usecases__desc { color: var(--c-ink); }
  body.page-turismointeligente .about__intro { font-size: 16px; line-height: 1.4; letter-spacing: normal; color: var(--c-ink); }
  body.page-turismointeligente .about__stats { flex-direction: column; gap: 32px; padding: 40px 0 4px; }
  body.page-turismointeligente .about__stat { align-items: center; padding: 0 0 32px; }
  body.page-turismointeligente .about__stat-label { font-size: 16px; line-height: 1.4; }
  body.page-turismointeligente .about__stat-n { font-size: 73px; line-height: 73px; letter-spacing: -5.84px; }
  body.page-turismointeligente .about__stat-label { text-align: center; }
  body.page-turismointeligente .usecases { padding: 0 20px; }
  body.page-turismointeligente .usecases__desc { font-size: 16px; line-height: 1.4; letter-spacing: normal; }
  body.page-turismointeligente .usecases__img { border-radius: var(--r-md); }
  body.page-turismointeligente .usecases__texts { gap: 64px; }
  body.page-turismointeligente .usecases__txt { gap: 24px; }
  body.page-turismointeligente .usecases__title { font-size: 24px; line-height: 1.2; letter-spacing: -0.48px; }
  body.page-turismointeligente .usecases__txt--4 .usecases__desc { font-size: 16px; line-height: 1.4; letter-spacing: normal; color: var(--c-ink); }
  body.page-turismointeligente .success { gap: 50px; padding: 0; }
  body.page-turismointeligente .success__top { padding: 0 30px; }
  body.page-turismointeligente .success__content { max-width: 460px; }
  body.page-turismointeligente .success__head { gap: 30px; }
  body.page-turismointeligente .success__title { gap: 3px; }
  body.page-turismointeligente .success__h2 { font-size: 28px; line-height: 33px; letter-spacing: -2px; }
  body.page-turismointeligente .success__body--desktop, body.page-turismointeligente .success__t-desktop { display: none; }
  body.page-turismointeligente .success__body--mobile, body.page-turismointeligente .success__t-mobile { display: block; }
  body.page-turismointeligente .tower { max-width: 292px; padding: 0; font-size: 43px; }
  body.page-turismointeligente .steps { display: none; }
  body.page-turismointeligente .success__h2--desktop { display: none; }
  body.page-turismointeligente .success__h2--mobile { display: block; }
  body.page-turismointeligente .success__body { max-width: 298px; font-family: var(--f-satoshi); line-height: 1.4; letter-spacing: normal; color: var(--c-ink); }
  body.page-turismointeligente .success__bottom { padding: 0 10px 31px; }
  body.page-turismointeligente .success__compare { gap: 10px; padding: 10px; }
  body.page-turismointeligente .success__card-head { justify-content: center; padding: 0; }
  body.page-turismointeligente .success__card-title { font-size: 23px; text-align: center; }
  body.page-turismointeligente .success__card-title--serif { font-size: 24px; line-height: 36px; letter-spacing: -2px; }
  body.page-turismointeligente .measure { padding: 16px 0 49px; } /* live (2026-09-07): block 683px, padding 17/0/40 around a 626px inner box; clone inner is 618px so the bottom padding absorbs the 8px */
  body.page-turismointeligente .measure__inner { gap: 20px; padding: 0 20px; }
  body.page-turismointeligente .measure__tabs { margin: 0; }
  body.page-turismointeligente .measure__content { gap: 20px; margin-top: 64px; padding-top: 0; } /* live: title 152px below the section top */
  body.page-turismointeligente .measure__title { font-size: 32px; letter-spacing: -0.64px; }
  body.page-turismointeligente .measure__title strong { font-family: var(--f-inter); font-weight: 700; }
  body.page-turismointeligente .measure__text { max-width: 280px; font-size: 16px; line-height: 1.4; color: var(--c-ink); }
  body.page-turismointeligente .measure__text--desktop { display: none; }
  body.page-turismointeligente .measure__text--mobile { display: block; }
  body.page-turismointeligente .measure__images { margin-top: 20px; padding-top: 12px; } /* live: card top 433px below the section top */
  body.page-turismointeligente .measure__image1 { display: none; }
  body.page-turismointeligente .measure__image2 { width: 100%; }
  body.page-turismointeligente .measure__image2-bg { width: 100%; height: auto; padding: 34px 49px; border-radius: var(--r-md); }
  body.page-turismointeligente .measure__image2-bg img { width: 100%; height: auto; }

  /* process */
  body.page-turismointeligente .process { gap: 50px; padding: 64px 30px; }
  body.page-turismointeligente .process__top { padding: 0; }
  body.page-turismointeligente .process__content { gap: 30px; }
  body.page-turismointeligente .process__title { gap: 3px; }
  body.page-turismointeligente .process__h2 { gap: 3px; }
  body.page-turismointeligente .process__line--desktop { display: none; }
  body.page-turismointeligente .process__line--mobile { display: block; }
  body.page-turismointeligente .process__body--desktop { display: none; }
  body.page-turismointeligente .process__body--mobile { display: block; font-family: var(--f-satoshi); line-height: 1.4; letter-spacing: normal; color: var(--c-ink); }
  body.page-turismointeligente .process__bottom { gap: 10px; padding: 0; }

  /* cases */
  body.page-turismointeligente .cases { gap: 50px; padding: 0 20px; }
  body.page-turismointeligente .cases__container { gap: 50px; padding: 10px 0 60px; }
  body.page-turismointeligente .cases__title { font-size: 33px; line-height: 34px; letter-spacing: -2px; }
  body.page-turismointeligente .cases__body { max-width: 335px; font-family: var(--f-satoshi); line-height: 1.4; letter-spacing: normal; }
  body.page-turismointeligente .cases__grid { grid-template-columns: 1fr; }
  body.page-turismointeligente .case-card { min-height: 0; }
  /* live quirk: the first card keeps a fixed 249px height on phones */
  body.page-turismointeligente .case-card:first-child { height: 217px; overflow: hidden; }
  body.page-turismointeligente .cases__tags { gap: 16px; }
  body.page-turismointeligente .cases__tag--s .cases__tag-inner { padding: 10px 16px; }

  /* results: only the first two columns exist on the live phone layout, column 2 shows text first */
  body.page-turismointeligente .results__container { gap: 48px; padding: 34px 0 63px; }
  body.page-turismointeligente .results__title { font-family: var(--f-is); font-weight: 400; font-size: 23px; line-height: 1.1; letter-spacing: -0.92px; }
  body.page-turismointeligente .results__col--desktop { display: none; }
  body.page-turismointeligente .results__col--up { flex-direction: column-reverse; }
  body.page-turismointeligente .results__col--up .results__image { height: 270px; }
  body.page-turismointeligente .results__card { gap: 80px; }

  /* faq */
  body.page-turismointeligente .faq__container { gap: 32px; padding: 60px 24px 40px; }
  body.page-turismointeligente .faq__title { font-size: 32px; letter-spacing: -1.28px; text-align: left; }
  body.page-turismointeligente .faq__heading { width: 100%; }
  body.page-turismointeligente .faq__list { padding: 0; }

  /* cta */
  body.page-turismointeligente .cta-final { padding: 0 0 10px; }
  body.page-turismointeligente .cta-final__container { gap: 37px; padding: 19px 10px; }
  body.page-turismointeligente .cta-final__title { font-size: 48px; }
  body.page-turismointeligente .site-footer__copy { padding: 0; font-size: 15px; }
}

/* live: the PROCESS intro paragraph keeps its 360px width and overflows the 346.67px grid cell */
@media (min-width: 1200px) {
  body.page-turismointeligente .steps__intro { width: 360px; max-width: none; }
}

@media (prefers-reduced-motion: reduce) {
  body.page-turismointeligente .hero__circle { animation: none; transform: rotate(75deg); }
  body.page-turismointeligente .usecases__layer, body.page-turismointeligente .case-card { transition: none; }
}
/* live quirk: this card's paragraph starts with a tab + newline rendered as a blank first line (white-space: pre-wrap on Framer) */
body.page-turismointeligente .case-card__text--pre { white-space: pre-wrap; } /* live quirk kept at every width */
