.mexico-guide{--mexico-blue: #0b63ce;--mexico-ink: #06245c;--mexico-muted: #39557f;--mexico-line: rgba(147, 197, 253, .48);--mexico-soft: rgba(239, 249, 255, .82);--mexico-warm: rgba(255, 247, 237, .9)}body:has(.mexico-guide) .story-hero,body:has(.mexico-guide) .story-layout,body:has(.mexico-guide) .story-endnotes{width:min(1132px,calc(100vw - 2rem));max-width:calc(100vw - 2rem);margin-left:auto;margin-right:auto}body:has(.mexico-guide) .story-hero h1{max-width:100%;font-size:clamp(2rem,2.75vw,2.75rem);line-height:1.16;letter-spacing:-.02em;overflow-wrap:break-word;text-wrap:pretty}body:has(.mexico-guide) .story-hero__copy{min-width:0}body:has(.mexico-guide) .story-hero__picture{display:block;width:100%;height:clamp(240px,34vw,430px);max-height:430px;overflow:hidden}body:has(.mexico-guide) .story-hero__image{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center center}body:has(.mexico-guide) .story-hero>.story-hero__image{height:clamp(240px,34vw,430px);max-height:430px;aspect-ratio:16 / 9}.mexico-guide h2{scroll-margin-top:7rem}.mexico-answer-box,.mexico-summary-panel,.mexico-booking-tools{margin:1.25rem 0 1.7rem;padding:clamp(1rem,2vw,1.5rem);border:1px solid var(--mexico-line);border-radius:1.5rem;background:linear-gradient(135deg,#eff9fff2,#fffffff2),#fff;box-shadow:0 18px 42px #0f172a14}.mexico-answer-box h3,.mexico-card h3,.mexico-destination-card h3,.mexico-route-card h3,.mexico-region-card h3,.mexico-official-card h3,.mexico-related-card h3{margin:0 0 .55rem;font-family:Newsreader Variable,serif;line-height:1.08}.mexico-chip-grid,.mexico-card-grid,.mexico-destination-grid,.mexico-region-grid,.mexico-route-grid,.mexico-style-grid,.mexico-trip-grid,.mexico-mistake-grid,.mexico-official-grid,.mexico-booking-grid,.mexico-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start;margin:1rem 0 1.75rem}.mexico-destination-grid,.mexico-region-grid,.mexico-mistake-grid,.mexico-official-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mexico-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.mexico-card,.mexico-destination-card,.mexico-region-card,.mexico-route-card,.mexico-style-card,.mexico-trip-card,.mexico-mistake-card,.mexico-official-card,.mexico-related-card,.mexico-booking-card{min-width:0;padding:1rem;border:1px solid rgba(203,213,225,.85);border-radius:1.25rem;background:#fffffff0;box-shadow:0 14px 30px #0f172a0f;line-height:1.55}.mexico-destination-card{display:flex;flex-direction:column;gap:0;height:100%;padding:.72rem;overflow:hidden;border-color:#93c5fd80;background:linear-gradient(145deg,#eff9ffdb,#fffffff5 58%),#fff}.mexico-card{border-color:#93c5fd6b;background:linear-gradient(135deg,rgba(239,249,255,.84),transparent 62%),#fffffff5}.mexico-card-photo{position:relative;display:grid;width:100%;height:clamp(178px,15vw,210px);min-height:0;aspect-ratio:16 / 9;place-items:center;overflow:hidden;border:1px solid rgba(147,197,253,.48);border-radius:1rem;background:radial-gradient(circle at 18% 18%,rgba(56,189,248,.2),transparent 30%),linear-gradient(135deg,#dbeafef2,#fff7edd1)}.mexico-card-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0 46%,rgba(255,255,255,.48) 46% 54%,transparent 54%),linear-gradient(45deg,transparent 0 42%,rgba(255,255,255,.34) 42% 48%,transparent 48%);opacity:.72}.mexico-card-photo:after{content:attr(data-photo-label);position:relative;z-index:1;padding:.36rem .7rem;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:#ffffffb8;color:var(--mexico-ink);font-size:.76rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 18px #0f172a14}.mexico-card-photo__image,.mexico-destination-card img{display:block;width:100%;height:100%;min-height:0;aspect-ratio:16 / 9;object-fit:cover;object-position:center center;border-radius:1rem}.mexico-card-photo:has(img):before,.mexico-card-photo:has(img):after{display:none;content:none}.mexico-destination-card__body{display:flex;flex:1;flex-direction:column;gap:.45rem;padding:.85rem .28rem .25rem}.mexico-chip{padding:1.05rem 1.1rem;border:1px solid rgba(147,197,253,.58);border-radius:1.15rem;background:#eff9ffc7;color:var(--mexico-ink);font-weight:800}.mexico-destination-card p,.mexico-region-card p,.mexico-route-card p,.mexico-style-card p,.mexico-trip-card p,.mexico-mistake-card p,.mexico-official-card p,.mexico-related-card p,.mexico-booking-card p{margin:.45rem 0 0}.mexico-destination-card p+p,.mexico-region-card p+p,.mexico-route-card p+p,.mexico-style-card p+p,.mexico-trip-card p+p,.mexico-mistake-card p+p,.mexico-official-card p+p,.mexico-related-card p+p,.mexico-booking-card p+p{margin-top:.45rem}.mexico-card-label{display:inline-flex;margin-bottom:.65rem;padding:.28rem .65rem;border-radius:999px;background:#dbeafedb;color:var(--mexico-blue);font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.mexico-destination-card .mexico-card-label{width:fit-content;margin-bottom:0}.mexico-card-meta{display:flex;flex-wrap:wrap;gap:.42rem;margin-top:.1rem}.mexico-card-meta span{display:inline-flex;align-items:center;min-height:30px;padding:.3rem .58rem;border:1px solid rgba(147,197,253,.46);border-radius:999px;background:#ffffffb3;color:var(--mexico-muted);font-size:.78rem;font-weight:800;line-height:1.15}.mexico-image-credit{margin:-.65rem 0 1.5rem;color:var(--mexico-muted);font-size:.9rem;text-align:center}.mexico-image-credit a,.mexico-affiliate-text-link,.rich-text a.mexico-affiliate-text-link,.rich-text a.mexico-affiliate-text-link:visited{color:var(--mexico-blue);font-weight:850;text-decoration-thickness:.1em;text-underline-offset:.18em}.mexico-affiliate-text-link:after{content:none}.mexico-official-card a,.mexico-related-card a,.mexico-booking-card a{display:inline-flex;align-items:center;justify-content:center;width:fit-content;max-width:100%;min-height:42px;margin-top:.85rem;padding:.62rem .9rem;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;font-size:.92rem;font-weight:850;line-height:1.2;text-align:center;text-decoration:none}.rich-text .mexico-official-card a,.rich-text .mexico-official-card a:visited,.rich-text .mexico-official-card a:hover,.rich-text .mexico-official-card a:focus-visible,.rich-text .mexico-related-card a,.rich-text .mexico-related-card a:visited,.rich-text .mexico-related-card a:hover,.rich-text .mexico-related-card a:focus-visible,.rich-text .mexico-booking-card a,.rich-text .mexico-booking-card a:visited,.rich-text .mexico-booking-card a:hover,.rich-text .mexico-booking-card a:focus-visible{color:#fff;text-decoration:none}.mexico-booking-tools{background:linear-gradient(135deg,#eff9fff2,#fffbebcc),#fff}.mexico-booking-grid{align-items:start}.mexico-booking-card{align-self:start}.mexico-booking-tools .gyg-widget,.mexico-booking-tools .travelpayout-inline-widget,.mexico-booking-tools .travelpayout-car-widget{align-self:start;width:100%;margin:0}.mexico-booking-grid>.gyg-widget:has([data-lazy-gyg-embed]:not([hidden])),.mexico-booking-grid>.travelpayout-inline-widget:has([data-lazy-travelpayout-embed]:not([hidden])),.mexico-booking-grid>.travelpayout-inline-widget:has([data-lazy-kiwi-taxi-embed]:not([hidden])),.mexico-booking-grid>.travelpayout-car-widget:has([data-lazy-car-rental-embed]:not([hidden])),.mexico-booking-grid>.mexico-booking-card:has(.gyg-widget [data-lazy-gyg-embed]:not([hidden])){grid-column:1 / -1}.mexico-booking-tools .gyg-widget[data-lazy-gyg-loaded=true] .gyg-widget__embed{max-height:min(560px,72vh)}.mexico-map-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin:.5rem 0 1.5rem}.mexico-map-actions .map-link-button{margin-top:0}.map-link-button{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:38px;padding:.5rem .85rem;border:1px solid rgba(15,23,42,.22);border-radius:999px;background:#ffffffbd;color:#0f172adb;font-size:.88rem;font-weight:800;line-height:1.2;text-align:center;text-decoration:none;box-shadow:0 8px 18px #0f172a0d;transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}.rich-text a.map-link-button,.rich-text a.map-link-button:visited,.rich-text a.map-link-button:hover,.rich-text a.map-link-button:focus-visible{color:#0f172adb;text-decoration:none}.map-link-button:hover,.map-link-button:focus-visible{transform:translateY(-1px);border-color:#0f172a6b;background:#f8fafcf2;color:var(--text);box-shadow:0 12px 24px #0f172a17}.map-link-button:focus-visible{outline:3px solid rgba(147,197,253,.75);outline-offset:3px}body:has(.mexico-guide) .story-figure__trigger{display:block;width:100%;max-width:100%;aspect-ratio:16 / 9;max-height:460px;overflow:hidden;border-radius:var(--radius-md)}body:has(.mexico-guide) .story-figure,body:has(.mexico-guide) .story-figure__caption,body:has(.mexico-guide) .story-figure--compact .story-figure__trigger,body:has(.mexico-guide) .story-figure--compact .story-figure__caption{width:100%;max-width:100%;justify-self:stretch}body:has(.mexico-guide) .story-figure__image{display:block;width:100%;height:100%;aspect-ratio:16 / 9;max-height:none;object-fit:cover;object-position:center center}body:has(.mexico-guide) .story-figure--compact .story-figure__image{max-height:none}body:has(.mexico-guide) .story-figure__caption{color:var(--mexico-muted)}:root[data-theme=dark] .mexico-guide{--mexico-blue: #7dd3fc;--mexico-ink: #f8fafc;--mexico-muted: #cbd5e1;--mexico-line: rgba(125, 211, 252, .32);--mexico-soft: rgba(15, 23, 42, .9);--mexico-warm: rgba(30, 41, 59, .9)}:root[data-theme=dark] .mexico-answer-box,:root[data-theme=dark] .mexico-summary-panel,:root[data-theme=dark] .mexico-booking-tools{border-color:var(--mexico-line);background:radial-gradient(circle at top left,rgba(14,116,144,.18),transparent 42%),#111827;box-shadow:0 18px 42px #00000047}:root[data-theme=dark] .mexico-card,:root[data-theme=dark] .mexico-destination-card,:root[data-theme=dark] .mexico-region-card,:root[data-theme=dark] .mexico-route-card,:root[data-theme=dark] .mexico-style-card,:root[data-theme=dark] .mexico-trip-card,:root[data-theme=dark] .mexico-mistake-card,:root[data-theme=dark] .mexico-official-card,:root[data-theme=dark] .mexico-related-card,:root[data-theme=dark] .mexico-booking-card{border-color:#7dd3fc47;background:linear-gradient(145deg,#0f172aeb,#111827fa),#111827;box-shadow:0 16px 34px #0000003d}:root[data-theme=dark] .mexico-chip{border-color:#7dd3fc5c;background:#0f172af0;color:#e0f2fe}:root[data-theme=dark] .mexico-answer-box h3,:root[data-theme=dark] .mexico-card h3,:root[data-theme=dark] .mexico-destination-card h3,:root[data-theme=dark] .mexico-route-card h3,:root[data-theme=dark] .mexico-region-card h3,:root[data-theme=dark] .mexico-style-card h3,:root[data-theme=dark] .mexico-trip-card h3,:root[data-theme=dark] .mexico-mistake-card h3,:root[data-theme=dark] .mexico-official-card h3,:root[data-theme=dark] .mexico-related-card h3,:root[data-theme=dark] .mexico-booking-card h3,:root[data-theme=dark] .mexico-destination-card strong,:root[data-theme=dark] .mexico-route-card strong{color:#f8fafc}:root[data-theme=dark] .mexico-card p,:root[data-theme=dark] .mexico-destination-card p,:root[data-theme=dark] .mexico-region-card p,:root[data-theme=dark] .mexico-route-card p,:root[data-theme=dark] .mexico-style-card p,:root[data-theme=dark] .mexico-trip-card p,:root[data-theme=dark] .mexico-mistake-card p,:root[data-theme=dark] .mexico-official-card p,:root[data-theme=dark] .mexico-related-card p,:root[data-theme=dark] .mexico-booking-card p{color:#cbd5e1}:root[data-theme=dark] .mexico-card-label{background:#0e749057;color:#bae6fd}:root[data-theme=dark] .mexico-card-meta span{border-color:#7dd3fc47;background:#0206175c;color:#e2e8f0}:root[data-theme=dark] body:has(.mexico-guide) .story-figure__caption,:root[data-theme=dark] .mexico-image-credit{color:#cbd5e1}:root[data-theme=dark] .mexico-image-credit a,:root[data-theme=dark] .mexico-affiliate-text-link,:root[data-theme=dark] .rich-text a.mexico-affiliate-text-link,:root[data-theme=dark] .rich-text a.mexico-affiliate-text-link:visited{color:#7dd3fc}:root[data-theme=dark] .map-link-button{border-color:#7dd3fc5c;background:#e0f2fe;color:#082f49}:root[data-theme=dark] .rich-text a.map-link-button,:root[data-theme=dark] .rich-text a.map-link-button:visited,:root[data-theme=dark] .rich-text a.map-link-button:hover,:root[data-theme=dark] .rich-text a.map-link-button:focus-visible{color:#082f49}:root[data-theme=dark] .mexico-official-card a,:root[data-theme=dark] .mexico-related-card a,:root[data-theme=dark] .mexico-booking-card a,:root[data-theme=dark] .mexico-booking-tools .travelpayout-inline-widget__placeholder button,:root[data-theme=dark] .mexico-booking-tools .travelpayout-inline-widget--taxi .travelpayout-inline-widget__placeholder button,:root[data-theme=dark] .mexico-booking-tools .travelpayout-car-widget__placeholder button,:root[data-theme=dark] .mexico-booking-tools .gyg-widget__actions button{border-color:#7dd3fc;background:#bae6fd;color:#082f49;font-weight:850}:root[data-theme=dark] .rich-text .mexico-official-card a,:root[data-theme=dark] .rich-text .mexico-official-card a:visited,:root[data-theme=dark] .rich-text .mexico-related-card a,:root[data-theme=dark] .rich-text .mexico-related-card a:visited,:root[data-theme=dark] .rich-text .mexico-booking-card a,:root[data-theme=dark] .rich-text .mexico-booking-card a:visited{color:#082f49}:root[data-theme=dark] .mexico-booking-tools .gyg-widget__actions a,:root[data-theme=dark] .mexico-booking-tools .booking-widget-close{border-color:#7dd3fc94;background:#02061794;color:#bae6fd;font-weight:850}@media(max-width:900px){.mexico-region-grid,.mexico-mistake-grid,.mexico-official-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1440px){body:has(.mexico-guide) .story-hero,body:has(.mexico-guide) .story-layout,body:has(.mexico-guide) .story-endnotes{width:min(1160px,calc(100vw - 2rem))}}@media(max-width:720px){body:has(.mexico-guide) .story-hero,body:has(.mexico-guide) .story-layout,body:has(.mexico-guide) .story-endnotes{width:min(100%,calc(100vw - 2rem));max-width:calc(100vw - 2rem)}body:has(.mexico-guide) .story-hero__copy{padding:1.15rem;overflow-wrap:break-word}body:has(.mexico-guide) .story-hero h1{font-size:clamp(1.8rem,8vw,2.2rem);line-height:1.14}body:has(.mexico-guide) .story-hero__copy p{overflow-wrap:anywhere;max-width:100%}.mexico-chip-grid,.mexico-card-grid,.mexico-destination-grid,.mexico-region-grid,.mexico-route-grid,.mexico-style-grid,.mexico-trip-grid,.mexico-mistake-grid,.mexico-official-grid,.mexico-booking-grid,.mexico-related-grid{grid-template-columns:1fr}.mexico-chip{border-radius:1.15rem}.mexico-card-photo{height:clamp(170px,47vw,190px)}}
