.ctt-hotel-finder{--navy:#0b2447;--blue:#2563eb;--red:#d92d20;--ink:#172033;--muted:#667085;--line:#e5eaf0;--soft:#f7f9fc;--blue-soft:#eff6ff;max-width:1180px;margin:0 auto;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.ctt-hotel-finder *{box-sizing:border-box}.ctt-hotel-finder h1,.ctt-hotel-finder h2,.ctt-hotel-finder h3{margin-top:0;color:var(--navy);letter-spacing:-.035em}.ctt-hotel-finder__hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);gap:3rem;align-items:center;padding:clamp(2.5rem,6vw,5.5rem) clamp(1.25rem,5vw,4.5rem);border-top:4px solid var(--red);background:linear-gradient(135deg,#fff 0%,var(--blue-soft) 100%)}.ctt-hotel-finder__hero h1{max-width:13ch;margin-bottom:1rem;font-size:clamp(2.6rem,6vw,5rem);line-height:1}.ctt-hotel-finder__subtitle{max-width:25ch;color:var(--navy);font-size:clamp(1.25rem,2.5vw,1.8rem);font-weight:750}.ctt-hotel-finder__hero>div>p:not([class]){max-width:680px;color:var(--muted);font-size:1.08rem;line-height:1.7}.ctt-hotel-finder__hero ul{display:flex;gap:1.5rem;margin:1.5rem 0 0;padding:0;list-style:none;color:var(--navy);font-weight:700}.ctt-hotel-finder__hero aside{padding:2rem;border:1px solid #bfdbfe;border-radius:16px;background:#fff;box-shadow:0 14px 40px rgb(11 36 71 / .1);line-height:1.65}.ctt-hotel-finder__eyebrow{margin:0 0 .65rem;color:var(--red);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.ctt-hotel-finder__form{margin:2rem clamp(1rem,4vw,3rem);border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 44px rgb(11 36 71 / .08);overflow:hidden}.ctt-hotel-finder__form-head{display:grid;grid-template-columns:1fr minmax(230px,.55fr);gap:2rem;align-items:center;padding:2rem;border-bottom:1px solid var(--line)}.ctt-hotel-finder__form-head h2{margin:0;font-size:clamp(1.7rem,3vw,2.5rem)}.ctt-hotel-finder__form-head>div:last-child>span{display:block;margin-bottom:.45rem;color:var(--muted);font-size:.9rem}.ctt-hotel-finder__progress{height:9px;border-radius:99px;background:#e9eef5;overflow:hidden}.ctt-hotel-finder__progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--red),var(--blue));transition:width .25s ease}.ctt-hotel-finder__questions{display:grid;grid-template-columns:1fr 1fr}.ctt-hotel-finder fieldset{min-width:0;margin:0;padding:2rem;border:0;border-bottom:1px solid var(--line)}.ctt-hotel-finder fieldset:nth-child(odd){border-right:1px solid var(--line)}.ctt-hotel-finder legend{display:flex;gap:.7rem;align-items:center;width:100%;color:var(--navy);font-size:1.08rem;font-weight:800}.ctt-hotel-finder legend span{display:grid;width:2rem;height:2rem;place-items:center;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-size:.75rem}.ctt-hotel-finder fieldset>p{margin:.65rem 0;color:var(--muted);font-size:.9rem;line-height:1.5}.ctt-hotel-finder__options{display:grid;gap:.65rem;margin-top:1rem}.ctt-hotel-finder__options--compact{grid-template-columns:repeat(3,minmax(0,1fr))}.ctt-hotel-finder__options label{display:block;cursor:pointer}.ctt-hotel-finder__options input{position:absolute;opacity:0}.ctt-hotel-finder__options label span{display:block;min-height:100%;padding:.85rem 1rem;border:1px solid var(--line);border-radius:10px;background:var(--soft);line-height:1.45;transition:.18s ease}.ctt-hotel-finder__options label strong{display:block;color:var(--navy)}.ctt-hotel-finder__options input:checked+span{border-color:var(--blue);background:var(--blue-soft);box-shadow:inset 4px 0 0 var(--blue)}.ctt-hotel-finder__options input:focus-visible+span{outline:3px solid rgb(37 99 235 / .28);outline-offset:2px}.ctt-hotel-finder__form-footer{display:flex;gap:2rem;align-items:center;justify-content:space-between;padding:1.5rem 2rem;background:var(--soft)}.ctt-hotel-finder__form-footer p{max-width:650px;margin:0;color:var(--muted);font-size:.9rem}.ctt-hotel-finder button,.ctt-hotel-finder__offer a{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.2rem;border:0;border-radius:8px;background:var(--red);color:#fff!important;font:inherit;font-weight:800;text-decoration:none;cursor:pointer}.ctt-hotel-finder__results{margin:2rem clamp(1rem,4vw,3rem)}.ctt-hotel-finder__result{padding:clamp(1.5rem,4vw,3rem);border:1px solid #bfdbfe;border-top:4px solid var(--blue);border-radius:18px;background:linear-gradient(135deg,#fff,var(--blue-soft));box-shadow:0 16px 48px rgb(11 36 71 / .1)}.ctt-hotel-finder__result h2{font-size:clamp(2rem,4vw,3.2rem)}.ctt-hotel-finder__result-name{color:var(--red);font-size:1.2rem;font-weight:800}.ctt-hotel-finder__result-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.ctt-hotel-finder__result section{padding:1.25rem;border:1px solid var(--line);border-radius:12px;background:#fff}.ctt-hotel-finder__result ul{margin:.75rem 0 0;padding-left:1.2rem}.ctt-hotel-finder__result li{margin:.45rem 0}.ctt-hotel-finder__note{color:var(--muted);font-size:.9rem}.ctt-hotel-finder__offer{margin-top:1.5rem;padding:1.5rem;border-radius:14px;background:var(--navy);color:#fff}.ctt-hotel-finder__offer h3{color:#fff}.ctt-hotel-finder__offer .ctt-hotel-finder__eyebrow{color:#fda29b}.ctt-hotel-finder__offer small{display:block;margin-top:.7rem;color:#dbe7f5}.ctt-hotel-finder__actions{display:flex;gap:.75rem;margin-top:1.25rem}.ctt-hotel-finder__actions button{background:var(--navy)}.ctt-hotel-finder__guide{margin:3rem clamp(1rem,4vw,3rem);padding:2rem}.ctt-hotel-finder__guide>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.ctt-hotel-finder__guide article{padding:1.5rem;border:1px solid var(--line);border-radius:14px;background:#fff}.ctt-hotel-finder__guide article>span{color:var(--red);font-weight:800}.ctt-hotel-finder__guide p{color:var(--muted);line-height:1.65}@media (max-width:800px){.ctt-hotel-finder__hero,.ctt-hotel-finder__form-head{grid-template-columns:1fr}.ctt-hotel-finder__questions{grid-template-columns:1fr}.ctt-hotel-finder fieldset:nth-child(odd){border-right:0}.ctt-hotel-finder__guide>div{grid-template-columns:1fr}.ctt-hotel-finder__result-grid{grid-template-columns:1fr}}@media (max-width:640px){.ctt-hotel-finder__hero{padding:2.5rem 1.1rem;gap:1.5rem}.ctt-hotel-finder__hero ul{flex-wrap:wrap;gap:.8rem 1.2rem}.ctt-hotel-finder__form{margin:1rem .65rem}.ctt-hotel-finder__form-head,.ctt-hotel-finder fieldset,.ctt-hotel-finder__form-footer{padding:1.2rem}.ctt-hotel-finder__form-footer{align-items:stretch;flex-direction:column}.ctt-hotel-finder__form-footer button{width:100%}.ctt-hotel-finder__options--compact{grid-template-columns:1fr}.ctt-hotel-finder__results{margin:1rem .65rem}.ctt-hotel-finder__actions{flex-direction:column}.ctt-hotel-finder__actions button{width:100%}}@media print{.ctt-hotel-finder__hero,.ctt-hotel-finder__form,.ctt-hotel-finder__guide,.ctt-hotel-finder__offer,.ctt-hotel-finder__actions{display:none!important}.ctt-hotel-finder__results{margin:0}.ctt-hotel-finder__result{border:0;box-shadow:none}}.ctt-hotel-trip-profile{margin-top:1.25rem;padding:1rem 1.1rem;border:1px solid #cfdced;border-radius:14px;background:#f7fbff;color:#17324f}.ctt-hotel-trip-profile label{display:flex;align-items:flex-start;gap:.7rem;cursor:pointer}.ctt-hotel-trip-profile label span,.ctt-hotel-trip-profile label strong{display:block}.ctt-hotel-trip-profile p{margin:.55rem 0 0 1.7rem;font-size:.9rem;color:#667085}.ctt-hotel-trip-profile button{margin:.7rem 0 0 1.7rem;padding:0;border:0;background:#fff0;color:#2563eb;text-decoration:underline;cursor:pointer}.ctt-hotel-finder__reuse{margin:1rem 2rem 0;padding:.85rem 1rem;border-left:4px solid var(--blue);background:var(--blue-soft);color:var(--navy);line-height:1.5}@media (max-width:640px){.ctt-hotel-finder__reuse{margin:1rem 1.2rem 0}}