/* Descubra os EUA — estilos de viagem e apresentação institucional */
.travel-styles-section { padding-top:30px; }
.travel-style-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.travel-style-card { position:relative; isolation:isolate; overflow:hidden; display:flex; align-items:center; justify-content:center; aspect-ratio:2.05/1; min-height:150px; border:1px solid #e4dcea; border-radius:16px; background:#26103f; color:#fff; text-align:center; text-decoration:none; transition:transform .2s ease,box-shadow .2s ease; }
.travel-style-card img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.travel-style-card::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(25,0,48,.32),rgba(25,0,48,.62) 48%,rgba(25,0,48,.82)); }
.travel-style-copy { display:flex; flex-direction:column; align-items:center; gap:7px; padding:22px 12px; text-shadow:0 1px 8px #19003080; }
.travel-style-title { font-family:Georgia,"Times New Roman",serif; font-size:21px; font-weight:700; line-height:1.2; }
.travel-style-subtitle { font-size:14px; line-height:1.4; font-weight:500; }
.travel-style-card:hover { color:#fff; transform:translateY(-3px); box-shadow:0 9px 22px #19003020; }
.travel-style-card:hover img { transform:scale(1.045); }
.travel-style-card:focus-visible { outline:3px solid #7552a8; outline-offset:4px; }
.travel-styles-more { display:flex; flex-wrap:wrap; gap:12px 25px; margin-top:20px; color:var(--muted-foreground); font-size:14px; }
.travel-styles-more a:hover { color:var(--purple); text-decoration:underline; text-underline-offset:4px; }
.footer .footer-top { display:grid; grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr); align-items:start; gap:65px; }
.footer .project-brand img { width:200px; max-width:100%; }
.footer .footer-identity { max-width:300px; }
.footer .footer-identity p { margin:18px 0 0; line-height:1.7; }
.footer .footer-identity .footer-project-note { font-size:13px; color:#c4b3d5; }
.footer .footer-contact h2 { margin:0; color:#fff; font-size:26px; line-height:1.25; letter-spacing:-.5px; }
.footer .footer-contact>p { margin:12px 0 18px; max-width:540px; font-size:15px; line-height:1.6; }
.footer .footer-contact .footer-cta { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:46px; padding:12px 20px; border-radius:8px; background:#c1ff72; color:#190030; font-weight:600; font-size:14px; line-height:1.3; text-decoration:none; transition:background .2s; }
.footer .footer-contact .footer-cta:hover { background:#d4ff9f; color:#190030; }
.footer .footer-contacts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 28px; margin-top:24px; font-style:normal; }
.footer .footer-contacts a { display:flex; flex-direction:column; align-items:flex-start; gap:4px; color:#fff; font-size:14px; line-height:1.5; overflow-wrap:anywhere; text-decoration:none; }
.footer .footer-contacts a>span:first-child { color:#c4b3d5; font-size:12px; letter-spacing:.04em; }
.footer .footer-contacts a:hover>span:last-child { color:#c1ff72; text-decoration:underline; text-underline-offset:4px; }
.footer a:focus-visible { outline:2px solid #c1ff72; outline-offset:5px; border-radius:3px; }
@media (max-width:1000px) {
 .travel-style-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .footer .footer-top { grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr); gap:35px; }
}
@media (max-width:700px) {
 .travel-style-grid { gap:12px; }
 .travel-style-card { min-height:138px; aspect-ratio:1.4/1; border-radius:12px; }
 .travel-style-title { font-size:19px; }
 .travel-style-copy { padding:18px 9px; gap:6px; }
 .travel-styles-more { gap:12px 20px; }
 .footer .footer-top { grid-template-columns:1fr; gap:30px; }
 .footer .project-brand img { width:180px; }
 .footer .footer-contact h2 { font-size:24px; }
 .footer .footer-contacts { gap:18px 16px; }
}
@media (max-width:380px) {
 .travel-style-title { font-size:17px; }
 .travel-style-subtitle { font-size:13px; }
 .footer .footer-contacts { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
 .travel-style-card,.travel-style-card img,.footer .footer-cta { transition:none; }
 .travel-style-card:hover,.travel-style-card:hover img { transform:none; }
}
