/* Cluster de Turismo Accesible — specific frontend UI, independent of RDCA. */
:root {--cta-ink:#083b65;--cta-accent:#f8b51d;--cta-border:#d9e2ea;--cta-bg:#f7f9fb;}
.cta-application,.cta-directory,.cta-account,.cta-contact{max-width:1200px;margin:0 auto;padding:clamp(24px,4vw,58px) 18px 68px;color:#193750}
.cta-application{max-width:940px}.cta-eyebrow{text-transform:uppercase;letter-spacing:.085em;font-size:.77rem;font-weight:800;color:#367596}
.cta-form-heading h1,.cta-directory h1,.cta-account h1,.cta-contact h1{color:var(--cta-ink);font-size:clamp(2rem,4vw,3rem);line-height:1.12;margin:.45rem 0 1rem}.cta-form-heading{margin-bottom:24px}
.cta-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:0;margin:0 0 26px;list-style:none}.cta-steps li{color:#536879;line-height:1.3;font-size:.76rem;text-align:center;font-weight:600}.cta-steps li span{display:grid;place-items:center;margin:0 auto 8px;width:34px;height:34px;border:2px solid #d1e0ea;border-radius:50%;background:#fff;color:#5d6f7d}.cta-steps li.is-active span,.cta-steps li.is-complete span{background:var(--cta-ink);border-color:var(--cta-ink);color:#fff}.cta-steps li.is-active{color:var(--cta-ink)}
.cta-public-form{display:grid;gap:20px}.cta-step{border:1px solid var(--cta-border);border-radius:16px;background:#fff;padding:clamp(18px,3vw,34px);min-width:0}.cta-step[hidden]{display:none}.cta-step legend{padding:0 10px;color:var(--cta-ink);font-size:1.35rem;font-weight:800}.cta-public-form label:not(.cta-option){display:flex;flex-direction:column;gap:7px;font-weight:650;margin:0 0 18px}.cta-public-form label b{color:#9a3c20}.cta-public-form input:not([type=checkbox]):not([type=file]),.cta-public-form select,.cta-public-form textarea,.cta-filters select{display:block;width:100%;border:1px solid #bccedc;background:#fff;border-radius:10px;min-height:45px;padding:10px 12px;font:inherit;color:#123d5d}.cta-public-form input:focus-visible,.cta-public-form select:focus-visible,.cta-public-form textarea:focus-visible,.cta-filters select:focus-visible{outline:3px solid #a7d7ea;outline-offset:2px}.cta-public-form small{font-weight:400;color:#51687a}.cta-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.cta-public-form p{line-height:1.6}.cta-public-form h3{color:var(--cta-ink);margin:24px 0 12px}.cta-option{display:flex;align-items:start;gap:9px;line-height:1.4;font-weight:500;margin:0;cursor:pointer}.cta-option input{width:18px;height:18px;flex-shrink:0;margin-top:1px;accent-color:#0b4e7d}.cta-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 20px;margin:18px 0}.cta-accordion{border:1px solid #e1e9f0;border-radius:12px;margin:12px 0;padding:14px}.cta-accordion summary{cursor:pointer;font-weight:800;color:var(--cta-ink)}.cta-consent{background:#f4f8fa;padding:16px;border-radius:12px}.cta-form-actions{display:flex;justify-content:flex-end;gap:12px}.cta-button{display:inline-flex;justify-content:center;align-items:center;background:var(--cta-ink);color:#fff!important;border:1px solid var(--cta-ink);font-weight:750;line-height:1.2;padding:13px 20px;border-radius:10px;text-decoration:none;cursor:pointer}.cta-button:hover{background:#125b8e;color:#fff}.cta-button--secondary{background:#fff;color:var(--cta-ink)!important}.cta-button--secondary:hover{color:#fff!important}.cta-button[hidden],.cta-form-actions [hidden]{display:none}.cta-suggestions{position:relative;display:flex;flex-direction:column;gap:2px;border:1px solid #bfd0da;box-shadow:0 8px 20px #10344a20;border-radius:8px;max-height:240px;overflow:auto}.cta-suggestions[hidden]{display:none}.cta-suggestions button{border:0;background:#fff;padding:12px;text-align:left;font:inherit;cursor:pointer}.cta-suggestions button:hover,.cta-suggestions button:focus{background:#ebf5fa}.cta-gallery-thumbs{display:flex;flex-wrap:wrap;gap:8px}.cta-gallery-thumbs img{max-height:86px;max-width:110px;object-fit:cover}.cta-honeypot{position:absolute;left:-9999px;opacity:0}.cta-account-summary{padding:20px;background:#f1f6fa;border-radius:12px;display:flex;flex-direction:column}.cta-account-header,.cta-my-item{display:flex;justify-content:space-between;align-items:center;gap:20px}.cta-account-header{margin:28px 0 16px}.cta-my-list{display:grid;gap:12px}.cta-my-item{padding:20px;border:1px solid var(--cta-border);border-radius:12px}.cta-my-item h3{margin:0}.cta-my-item p{margin:6px 0}.cta-my-actions{display:flex;align-items:center;gap:12px}.cta-directory-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:32px;margin-top:32px}.cta-directory-sidebar{align-self:start}.cta-filters{display:flex;flex-direction:column;gap:18px;padding:18px;border:1px solid var(--cta-border);border-radius:14px;background:#fff}.cta-filter-title{display:flex;justify-content:space-between;align-items:center}.cta-filter-title h2{font-size:1.25rem;margin:0}.cta-filters>label{display:grid;gap:7px;font-weight:700}.cta-filter-group{border:0;border-top:1px solid var(--cta-border);padding:15px 0 0;margin:0}.cta-filter-group legend{font-weight:800;color:var(--cta-ink);padding-top:10px}.cta-filter-options{display:grid;gap:10px;max-height:220px;overflow:auto;margin-top:12px}.cta-filter-options label{display:flex;gap:8px;align-items:start;font-weight:450;line-height:1.35;font-size:.9rem}.cta-filter-options input{accent-color:#0b4e7d;flex-shrink:0}.cta-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.cta-card{border:1px solid var(--cta-border);border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.cta-card-media{display:block;aspect-ratio:16/9;background:#ebf3f8;overflow:hidden}.cta-card-media img{width:100%;height:100%;object-fit:cover}.cta-card-placeholder{height:100%;display:grid;place-items:center;font-size:3rem;color:#90afc5}.cta-card-body{padding:19px;display:grid;gap:10px}.cta-card-body h2{font-size:1.3rem;margin:0}.cta-card-body a{color:var(--cta-ink);text-decoration:none}.cta-card-body p{margin:0;color:#617483}.cta-card-meta{display:flex;justify-content:space-between;gap:8px;font-weight:700;color:#24729c;font-size:.8rem}.cta-sponsor{background:#fff0bc;color:#76520c;border-radius:50px;padding:3px 9px}.cta-chips{display:flex;flex-wrap:wrap;gap:7px;padding:0;margin:0;list-style:none}.cta-chips li{font-size:.78rem;background:#edf5f9;padding:6px 9px;border-radius:24px}.cta-pagination{margin-top:26px}.cta-pagination ul{display:flex;gap:8px;list-style:none}.cta-mobile-filters-toggle{display:none}.cta-single{max-width:1120px;margin:0 auto;padding:40px 18px 70px}.cta-single-header{display:flex;align-items:center;gap:24px;padding:25px 0}.cta-single-header img{width:140px;max-height:125px;object-fit:contain}.cta-single h1{color:var(--cta-ink);font-size:clamp(2rem,4vw,3.2rem);line-height:1.12}.cta-single-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:24px;margin-top:25px}.cta-panel{background:#fff;border:1px solid var(--cta-border);border-radius:14px;padding:24px;margin-bottom:20px}.cta-panel h2{color:var(--cta-ink);font-size:1.35rem;margin-top:0}.cta-panel h3{font-size:1rem;margin-top:24px}.cta-panel dl{display:grid;grid-template-columns:120px 1fr;gap:10px}.cta-panel dt{font-weight:800}.cta-panel dd{margin:0;overflow-wrap:anywhere}.cta-map{width:100%;height:280px;border-radius:10px;margin-top:20px}.cta-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cta-gallery img{width:100%;height:190px;object-fit:cover;border-radius:8px}.cta-breadcrumb{margin-bottom:10px}.cta-results>p{margin:0 0 16px}
@media(max-width:850px){.cta-directory-layout{grid-template-columns:1fr}.cta-directory-sidebar{display:none}.cta-directory-sidebar.cta-filters-open{display:block}.cta-mobile-filters-toggle{display:inline-flex;margin-bottom:16px}.cta-single-columns{grid-template-columns:1fr}}@media(max-width:640px){.cta-steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:16px}.cta-grid-two,.cta-check-grid,.cta-card-grid{grid-template-columns:1fr}.cta-account-header,.cta-my-item{flex-direction:column;align-items:stretch}.cta-application,.cta-directory{padding-inline:12px}.cta-single-header{align-items:flex-start;flex-direction:column}.cta-panel dl{grid-template-columns:1fr;gap:3px}.cta-panel dd{margin-bottom:12px}}
