/* Help & info pages, contact form, newsletter, 404, header Help menu. */

/* Info pages (layout from legal.css) */
.trt-info-page__hero { background: radial-gradient(120% 140% at 85% 0%, var(--trt-primary-light, #0071c2) 0%, transparent 55%), var(--trt-primary, #003580); }
.trt-info-page__intro { max-width: 640px; margin: 12px 0 0 !important; font-size: 1.08rem; line-height: 1.55; opacity: .9; }
.trt-info-note { padding: 12px 16px; border-radius: 12px; background: #e9f9d5; color: #1d4d0a; font-weight: 600; }
.trt-info-note.is-error { background: #ffe1ec; color: #8a0b3e; }
.trt-info-help { display: grid; gap: 10px; padding: 16px; border: 1px solid var(--trt-border, #e3e7ee); border-radius: var(--trt-radius, 16px); background: var(--trt-card, #fff); }
.trt-info-help__title { margin: 0 !important; font-weight: 700; }
.trt-info-help .trt-channels { grid-template-columns: 1fr; }

/* How it works steps */
.trt-steps ol { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; margin: 24px 0 !important; padding: 0 !important; list-style: none; }
.trt-steps li { display: grid; gap: 6px; padding: 18px; border-radius: 16px; background: var(--trt-bg, #f5f7fa); border: 1px solid var(--trt-border, #e3e7ee); }
.trt-steps strong { font-size: 1.05rem; }
.trt-steps span { color: var(--trt-muted, #5b6472); font-size: .95rem; line-height: 1.55; }

/* FAQ */
.trt-faq { border-bottom: 1px solid var(--trt-border, #e3e7ee); }
.trt-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 0; cursor: pointer; list-style: none; }
.trt-faq summary::-webkit-details-marker { display: none; }
.trt-faq summary::after { content: "+"; flex: 0 0 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: var(--trt-bg, #f5f7fa); font-weight: 700; transition: transform .2s; }
.trt-faq[open] summary::after { transform: rotate(45deg); }
.trt-faq summary h3 { margin: 0 !important; font-size: 1.02rem !important; }
.trt-faq__a { padding: 0 0 14px; }
.trt-faq__a p { margin: 0 0 .6em; }

/* Contact channels */
.trt-channels { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; margin: 18px 0 !important; padding: 0 !important; list-style: none; }
.trt-channel { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--trt-border, #e3e7ee); border-radius: 14px; background: var(--trt-card, #fff); color: var(--trt-text, #1d2433) !important; text-decoration: none !important; transition: border-color .15s, transform .15s; }
.trt-channel:hover { border-color: var(--trt-primary, #003580); transform: translateY(-1px); }
.trt-channel__ico { display: grid; place-items: center; flex: 0 0 40px; height: 40px; border-radius: 12px; background: var(--trt-bg, #f5f7fa); }
.trt-channel__ico .trt-icon { width: 20px; height: 20px; }
.trt-channel.is-whatsapp .trt-channel__ico { background: #25d366; color: #fff; }
.trt-channel.is-telegram .trt-channel__ico { background: #229ed9; color: #fff; }
.trt-channel span:last-child { display: grid; min-width: 0; }
.trt-channel strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.trt-channel small { color: var(--trt-muted, #5b6472); }

/* Partner list (About) */
.trt-partner-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 !important; padding: 0 !important; list-style: none; }
.trt-partner-list li { display: inline-flex; align-items: center; gap: 8px; margin: 0 !important; padding: 6px 12px 6px 6px; border: 1px solid var(--trt-border, #e3e7ee); border-radius: 999px; font-size: .9rem; font-weight: 600; }
.trt-partner-list img { width: 28px; height: 28px; border-radius: 50%; object-fit: contain; background: #fff; }

/* Forms */
.trt-cform { display: grid; gap: 14px; margin: 16px 0 !important; }
.trt-cform__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.trt-cform__field { display: grid; gap: 6px; font-weight: 600; font-size: .92rem; }
.trt-cform__field input, .trt-cform__field select, .trt-cform__field textarea, .trt-nl__row input { width: 100%; min-height: 46px; padding: 10px 14px; border: 1px solid var(--trt-border, #cfd6e0); border-radius: 12px; background: var(--trt-card, #fff); color: var(--trt-text, #1d2433); font: inherit; font-weight: 400; box-sizing: border-box; }
.trt-cform__field textarea { resize: vertical; }
.trt-cform__field :focus, .trt-nl__row input:focus { outline: 2px solid var(--trt-primary, #003580); outline-offset: 1px; }
.trt-cform__check, .trt-nl__check { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: start; font-size: .88rem; line-height: 1.45; cursor: pointer; }
.trt-cform__check input, .trt-nl__check input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--trt-primary, #003580); }
.trt-cform__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.trt-cform__send { justify-self: start; }
.trt-cform__status { margin: 0 !important; padding: 10px 14px; border-radius: 12px; font-weight: 600; }
.trt-cform__status.is-ok { background: #e9f9d5; color: #1d4d0a; }
.trt-cform__status.is-error { background: #ffe1ec; color: #8a0b3e; }

/* Newsletter */
.trt-nl { display: grid; gap: 16px; align-items: center; }
.trt-nl__title { margin: 0 0 6px !important; font-size: 1.3rem; line-height: 1.25; }
.trt-nl__text p { margin: 0 !important; opacity: .85; }
.trt-nl__form { display: grid; gap: 10px; }
.trt-nl__row { display: flex; gap: 8px; }
.trt-nl__row input { flex: 1; min-width: 0; }
.trt-nl__row .trt-btn { flex: 0 0 auto; }
.trt-nl--card { padding: clamp(18px, 3vw, 28px); border-radius: 20px; background: var(--trt-bg, #f5f7fa); border: 1px solid var(--trt-border, #e3e7ee); }
.trt-nl--band { padding: 32px 0; }
@media (min-width: 900px) { .trt-nl--band, .trt-nl--wide { grid-template-columns: 1fr minmax(360px, 460px); gap: 40px; } }
.trt-footer__nl { background: var(--trt-primary, #003580); color: #fff; }
.trt-footer__nl .trt-nl__check a, .trt-footer__nl .trt-cform__status { color: inherit; }
.trt-footer__nl .trt-nl__title { color: #fff; }
.trt-skin-genz .trt-footer__nl { background: var(--trt-accent, #d4ff3a); color: #121217; border-top: 2px solid #121217; }
.trt-skin-genz .trt-footer__nl .trt-nl__title { color: #121217; }
.trt-skin-genz .trt-footer__nl .trt-nl__row input { border: 2px solid #121217; background: #fff; color: #121217; }
.trt-skin-genz .trt-footer__nl .trt-btn { background: #121217; color: #fff; border-color: #121217; }
.trt-skin-genz .trt-footer__nl .trt-nl__check input { accent-color: #121217; }
.trt-journal-nl { margin: 40px auto; max-width: 960px; }

/* 404 */
.trt-404__hero { padding: clamp(40px, 7vw, 80px) 0 40px; text-align: center; background: var(--trt-bg, #f5f7fa); }
.trt-404__code { margin: 0 !important; font-size: clamp(4rem, 14vw, 9rem); font-weight: 900; line-height: 1; letter-spacing: -.04em; color: var(--trt-primary, #003580); }
.trt-404__code span { display: inline-block; font-size: .7em; vertical-align: .1em; animation: trt-spin 6s ease-in-out infinite; }
@keyframes trt-spin { 50% { transform: rotate(40deg); } }
@media (prefers-reduced-motion: reduce) { .trt-404__code span { animation: none; } }
.trt-404__title { margin: 10px 0 8px !important; font-size: clamp(1.6rem, 4vw, 2.4rem); }
.trt-404__text { max-width: 560px; margin: 0 auto 24px !important; color: var(--trt-muted, #5b6472); }
.trt-404__search { max-width: 980px; margin: 0 auto; text-align: left; }
.trt-404__body { padding-block: 32px 64px; }
.trt-404__dests { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin: 0 0 36px; padding: 0; list-style: none; }
.trt-404__dests a { display: grid; grid-template-columns: auto 1fr; column-gap: 10px; align-items: center; padding: 12px 14px; border: 1px solid var(--trt-border, #e3e7ee); border-radius: 14px; background: var(--trt-card, #fff); color: var(--trt-text, #1d2433); text-decoration: none; font-weight: 700; }
.trt-404__dests a:hover { border-color: var(--trt-primary, #003580); }
.trt-404__dests .trt-icon { grid-row: span 2; width: 20px; height: 20px; color: var(--trt-primary, #003580); }
.trt-404__dests small { color: var(--trt-muted, #5b6472); font-weight: 500; }
.trt-404__tours { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 16px; margin: 0 0 32px; padding: 0; list-style: none; }
.trt-404__links { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }

/* Header Help menu */
.trt-help { position: relative; }
.trt-help__menu { position: absolute; right: 0; top: calc(100% + 8px); z-index: 60; min-width: 240px; margin: 0; padding: 8px; list-style: none; border-radius: 16px; background: var(--trt-card, #fff); color: var(--trt-text, #1d2433); border: 1px solid var(--trt-border, #e3e7ee); box-shadow: 0 18px 40px -14px rgba(0, 0, 0, .35); }
.trt-help__menu a { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; color: inherit !important; text-decoration: none; font-weight: 600; font-size: .92rem; }
.trt-help__menu a:hover { background: var(--trt-bg, #f5f7fa); }
.trt-help__menu .trt-icon { width: 18px; height: 18px; color: var(--trt-muted, #5b6472); }
@media (max-width: 899.98px) {
	.trt-help__menu, .trt-help__menu[hidden] { position: static; display: grid; min-width: 0; margin-top: 6px; box-shadow: none; }
	.trt-help > .trt-header__help { display: none; }
}
button.trt-header__help { background-color: transparent; font-family: inherit; line-height: inherit; cursor: pointer; }
.trt-help .trt-header__help[aria-expanded="true"] { background-color: rgba(127, 127, 127, .16); }
.trt-legal__body .trt-channels, .trt-legal__body .trt-partner-list, .trt-legal__body .trt-steps ol { padding-left: 0 !important; }
.trt-legal__body .trt-channels li, .trt-legal__body .trt-partner-list li, .trt-legal__body .trt-steps li { list-style: none; margin: 0; }
.trt-legal__body .trt-channels li::marker, .trt-legal__body .trt-steps li::marker { content: none; }
.trt-legal__body p.trt-info-note, .trt-legal__body .trt-cform__status.is-ok, .trt-cform__status.is-ok { color: #1d4d0a; }
.trt-legal__body p.trt-info-note.is-error, .trt-legal__body .trt-cform__status.is-error, .trt-cform__status.is-error { color: #8a0b3e; }
.trt-cform__send, .trt-nl--card .trt-nl__row .trt-btn { background: var(--trt-primary, #003580); border-color: var(--trt-primary, #003580); color: #fff; }
.trt-cform__send:disabled, .trt-nl__row .trt-btn:disabled { opacity: .6; cursor: wait; }
/* Breathing room between the last page section and the newsletter band. */
.trt-footer__nl { margin-top: clamp(48px, 7vw, 88px); }
.trt-footer__nl .trt-nl--band { padding-block: clamp(28px, 4vw, 44px); }
