/* V24.14: presentation of travel guidance only. */
/* Keep the temporary fallback out of the first layout; final sidebar unchanged.
   No-JS, preview and provider-error fallback remain available. */
html:not([data-preview="true"]) body.ro-tips-runtime .ro-tips-fallback:not(.ro-tips-fallback-ready){visibility:hidden}
.ro-travel-tips{position:relative;isolation:isolate;box-sizing:border-box;container-type:inline-size;width:100%;max-width:440px;margin:20px 0 0;padding:26px 24px 16px;color:#06275b;background:#fff;border:1px solid #d8e5f3;border-radius:17px;box-shadow:0 8px 25px rgba(19,59,96,.055);text-align:left;font-family:Roboto,Arial,sans-serif;overflow-wrap:break-word}
.ro-travel-tips::before{content:"";position:absolute;z-index:-1;inset:8px;border-radius:13px;background:linear-gradient(155deg,#edf6ff 0%,#f7fbff 38%,#fff 76%);pointer-events:none}
.ro-travel-tips[hidden]{display:none!important}
.ro-tips-fallback:empty{display:none}
.ro-tips-fallback>.ro-travel-tips{max-width:440px;margin:24px 0 32px}
.ro-tips-eyebrow{display:block;color:#0064cc;font-size:12px;line-height:1.2;font-weight:700;letter-spacing:0;margin:0 0 6px}
.ro-travel-tips h2{font-family:inherit;font-size:26px;line-height:1.12;letter-spacing:-.45px;margin:0 0 14px;font-weight:800;color:#06275b;text-wrap:pretty}
.ro-travel-tips p{font-size:14px;line-height:1.38;margin:0;color:#4d6180}
.ro-travel-tips .ro-tips-intro{font-size:15px;line-height:1.3;margin-bottom:20px}
.ro-tip-row{display:flex;gap:16px;align-items:flex-start;margin:0 0 19px}
.ro-tip-icon{display:block;flex:0 0 52px;width:52px;height:52px;padding:12px;box-sizing:border-box;color:#0066cb;background:#e0efff;border-radius:50%}
.ro-travel-tips h3{font-family:inherit;font-size:15px;line-height:1.25;margin:2px 0 5px;font-weight:700;color:#06275b}
.ro-tips-faq{display:flex;align-items:flex-start;gap:12px;padding:13px 14px;background:#eaf4ff;border-radius:10px;margin:3px -10px 0}
.ro-tips-faq .ro-tip-icon{flex-basis:42px;width:42px;height:42px;padding:10px;background:#d8ebff}
.ro-tips-faq>div{min-width:0;flex:1}
.ro-travel-tips a{color:#0064cc;text-decoration:underline;text-underline-offset:2px}
.ro-tips-faq a{display:inline-flex;align-items:center;gap:8px;font-size:13px;line-height:1.35;margin-top:7px}
.ro-tips-faq summary{position:relative;list-style:none;padding-right:18px;font-size:13px;line-height:1.35;color:#0064cc;cursor:pointer}
.ro-tips-faq summary::-webkit-details-marker{display:none}
.ro-tips-faq summary::after{content:"";position:absolute;right:1px;top:4px;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.ro-tips-faq details[open]>summary::after{transform:rotate(225deg);top:8px}
.ro-tips-faq details p{font-size:13px;line-height:1.35;margin-top:7px}
.ro-tips-related{border-top:1px solid #d8e5f3;margin:14px -10px 0;padding-top:12px}
.ro-tips-related h3{margin:0 0 8px}
.ro-tips-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ro-tips-links a{display:flex;align-items:center;gap:9px;min-width:0;min-height:58px;border:1px solid #d8e5f3;background:#fff;border-radius:9px;overflow:hidden;text-decoration:none;font-size:13px;font-weight:700;line-height:1.2;box-shadow:0 1px 2px rgba(19,59,96,.02);transition:border-color .15s,box-shadow .15s}
.ro-tips-links img{width:64px;height:58px;flex:0 0 64px;object-fit:cover}
.ro-tips-links a>span:first-of-type{flex:1;min-width:0;overflow-wrap:anywhere}
.ro-tips-links a>span:last-of-type{padding-right:9px;font-size:25px;line-height:1}
.ro-tips-links a:hover{border-color:#8eb9e5;box-shadow:0 3px 8px rgba(19,59,96,.08)}
.ro-travel-tips a:focus-visible,.ro-travel-tips summary:focus-visible{outline:3px solid #0064cc;outline-offset:3px;border-radius:3px}
.ro-tips-body>summary{display:none}
@container(min-width:370px){.ro-travel-tips h2{font-size:28px}.ro-tips-links img{width:76px;flex-basis:76px}}
@container(max-width:280px){.ro-tips-links{grid-template-columns:1fr}.ro-tip-row{gap:12px}.ro-tip-icon{width:46px;height:46px;flex-basis:46px;padding:10px}}
@media(max-width:680px){
 .ro-travel-tips{padding:23px 22px 16px;margin-top:16px;border-radius:16px}
 .ro-travel-tips h2{font-size:25px;line-height:1.15}
 .ro-tips-fallback>.ro-travel-tips{max-width:none}
 .ro-tips-body>summary{display:list-item;padding:11px 0 6px;color:#0064cc;font-size:14px;font-weight:700;cursor:pointer;min-height:44px;box-sizing:border-box}
 .ro-tips-body[open]>.ro-tips-expanded{padding-top:10px}
 .ro-travel-tips .ro-tips-intro{margin-bottom:4px}
 .ro-tips-links{grid-template-columns:1fr}
 .ro-tips-links img{width:76px;flex-basis:76px}
 .ro-tips-faq summary{padding-top:6px;padding-bottom:6px;min-height:44px}
 .ro-tips-faq summary::after{top:12px}.ro-tips-faq details[open]>summary::after{top:16px}
 .ro-tips-faq a{min-height:44px;margin-top:2px}
}
@media(prefers-reduced-motion:reduce){.ro-tips-links a{transition:none}}

/* Mobile selection footer: preserve the native vendor credit and move only our link. */
@media(max-width:680px){
 body.destination-page.ro-browse-footer-active .destination-search-shell{padding-bottom:0}
 body.destination-page .ro-browse-footer{float:none;width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0 12px;min-height:44px}
 body.destination-page .ro-browse-footer .destination-all-link{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}
 body.destination-page.ro-browse-footer-active #roTipsFallback>.ro-travel-tips{margin-top:16px}
}

/* V24.30: paragraph spacing for additional destination guidance. */
.ro-travel-tips .ro-plan-row p+p{margin-top:9px}
