/* FastVisits page pairs: two-level menu, footer columns, landing pages and guides.
   Uses the design tokens from base.css and site.css. */

/* Desktop menu: seven top items, one level of links under each. */
.desktop-nav{gap:22px}
.desktop-nav summary,.desktop-nav>a{white-space:nowrap}
.desktop-nav>a{color:inherit}.desktop-nav>a:hover{color:var(--brand)}
.desktop-nav>a[aria-current],.nav-drop.nav-current>summary{color:var(--brand)}
.nav-panel.nav-list{grid-template-columns:1fr;width:260px;left:-16px;padding:12px;gap:2px}
.nav-panel.nav-list a{padding:10px 12px;font-size:13.5px;font-weight:600;color:var(--ink2)}
.nav-panel.nav-list a[aria-current]{background:var(--brand-tint);color:var(--brand)}
.desktop-nav>.nav-drop:nth-last-of-type(-n+2) .nav-panel.nav-list{left:auto;right:-16px}
.desktop-nav>.nav-drop:nth-of-type(4) .nav-panel.nav-list{width:290px}
@media(max-width:1180px){.desktop-nav{gap:14px;font-size:12.5px}.desktop-nav .nav-drop summary{gap:4px}.nav-cta{margin-left:4px}.nav{gap:14px}.site-header .logo-lockup{width:148px;height:auto}}

/* Mobile menu: group title, then its links. */
.mobile-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 22px;max-height:calc(100vh - 68px);overflow-y:auto;overscroll-behavior:contain}
.mobile-group{display:flex;flex-direction:column;padding:10px 0 8px;border-bottom:1px solid var(--line)}
.mobile-group-title{font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);padding:4px 10px 6px}
.mobile-group a{padding:8px 10px;font-size:14px}
.mobile-group a[aria-current]{background:var(--brand-tint);color:var(--brand)}
.mobile-single a{font-size:15px}
.mobile-menu .menu-trial{grid-column:1/-1;justify-content:center;margin-top:12px;color:#fff;text-align:center}
.mobile-menu .menu-trial:hover{background:#4727de}
@media(max-width:620px){.mobile-menu{grid-template-columns:1fr;padding:6px 18px 20px}}

/* Footer: company row, then six link columns. */
.site-footer .footer-grid.footer-grid-menu{grid-template-columns:repeat(6,minmax(0,1fr));gap:34px 26px}
.footer-grid-menu .footer-intro{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-start;gap:18px 54px;padding-bottom:34px;border-bottom:1px solid #2b2639}
.footer-grid-menu .footer-intro p{margin:0;max-width:340px;grid-column:auto;grid-row:auto}
.footer-grid-menu .footer-intro .footer-note{margin:0;max-width:260px;grid-column:auto}
.footer-grid-menu .footer-col>a{display:block;text-decoration:none;font-size:12.5px;color:#d8d3e4;margin:11px 0;line-height:1.45}
.footer-grid-menu .footer-col>a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.site-footer .footer-grid.footer-grid-menu{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.site-footer .footer-grid.footer-grid-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}.footer-grid-menu .footer-intro{display:block}.footer-grid-menu .footer-intro>*+*{margin-top:16px}.footer-grid-menu>div:last-child{grid-column:auto;display:block}}

/* Landing page hero with the one-field trial form. */
.pair-hero{padding-bottom:58px}
.pair-hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:start}
.pair-hero-copy{padding-top:18px}
.pair-hero h1{font-size:clamp(34px,4.2vw,54px);line-height:1.06}
.pair-hero .page-lead{font-size:18px;max-width:600px;margin-top:22px}
.pair-hero-facts{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:12px}
.pair-hero-facts li{display:flex;gap:11px;align-items:flex-start;font-size:15px;font-weight:600;color:var(--ink2)}
.pair-hero-facts .ic{flex:none;width:22px;height:22px;padding:3px;border-radius:50%;background:var(--brand-tint);stroke:var(--brand);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
.pair-hero .trial-card{width:100%;max-width:440px;justify-self:end}
@media(max-width:979px){.pair-hero-grid{grid-template-columns:1fr;gap:30px}.pair-hero .trial-card{justify-self:start;max-width:560px}.pair-hero-copy{padding-top:0}.pair-commercial footer.site-footer{padding-bottom:84px}}
@media(max-width:620px){.pair-hero .page-lead{font-size:16px}.pair-hero-facts li{font-size:14px}}

/* Prose additions. */
.pair-prose>p:first-child{font-size:18.5px;color:var(--ink)}
.pair-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:40px 0;padding:24px 26px;border-radius:16px;background:linear-gradient(120deg,#f2efff 0,#fbfaff 70%);border:1px solid #ddd5ff}
.article-prose .pair-cta{margin-top:40px}
.pair-cta .pair-cta-title{font-size:19px;font-weight:750;line-height:1.35;color:var(--ink);margin:6px 0 6px;letter-spacing:-.02em}
.pair-cta p{font-size:14.5px;line-height:1.65;margin:0}
.pair-cta .btn{flex:none;color:#fff;text-decoration:none;white-space:nowrap}
.article-prose .pair-cta a.btn{color:#fff;text-decoration:none;font-weight:700}
@media(max-width:700px){.pair-cta{flex-direction:column;align-items:flex-start;padding:22px}}
.pair-calc{margin:34px 0}
.pair-calc .calculator{max-width:none}
.pair-faq{margin-top:58px}
.pair-faq h2{margin-bottom:12px}
.pair-faq .faq{max-width:none}
.pair-faq .faq summary{font-size:16.5px;line-height:1.45;color:var(--ink)}
.pair-faq .faq-answer{padding:0 30px 20px 0}
.pair-faq .faq-answer p{font-size:15.5px;line-height:1.75;color:var(--ink2);padding:0}
.pair-faq .faq-answer>*+*{margin-top:12px}
.pair-contact a{justify-content:space-between}

/* Guides hub. */
.pair-hub-group+.pair-hub-group{margin-top:58px}
.pair-hub-group>h2{font-size:clamp(23px,2.4vw,30px);margin-bottom:22px}
.pair-hub .journal-card{min-height:0}
@media(max-width:979px){.pair-hub .journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.pair-hub .journal-grid{grid-template-columns:1fr}}

/* Dubai office card. */
.pair-office-card h2{font-size:18px;line-height:1.45}
.pair-office-card .btn{margin-top:16px}
.pair-office-card .subtle-link{display:inline-block;margin-top:12px}

/* Top promo bar: the free-trial offer on every page */
.utility-bar.promo-bar{background:linear-gradient(90deg,#3E22C8,#5B3DF5 60%,#6B4CFF);color:#fff;font-size:13px;line-height:1.35}
.promo-bar .promo-inner{justify-content:center;gap:16px;min-height:40px;padding-top:5px;padding-bottom:5px;text-align:left}
.promo-bar .promo-text{margin:0;display:flex;align-items:center;gap:10px;color:#ECE8FF}
.promo-bar .promo-text strong{color:#fff;font-weight:750}
.promo-bar .promo-pill{flex:none;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.utility-bar.promo-bar a.promo-cta{flex:none;display:inline-flex;align-items:center;gap:6px;padding:5px 13px;border-radius:999px;background:var(--lime);color:var(--ink);font-weight:750;font-size:12.5px;text-decoration:none;white-space:nowrap}
.utility-bar.promo-bar a.promo-cta:hover{background:#d4f75f;text-decoration:none}
.promo-bar .promo-short{display:none}
@media(max-width:960px){.promo-bar .promo-long{display:none}.promo-bar .promo-short{display:inline}.utility-bar.promo-bar{font-size:12.5px}.promo-bar .promo-inner{gap:10px}}
@media(max-width:380px){.promo-bar .promo-pill{display:none}}
/* Header Register button: secondary, quieter than the trial CTAs */
.site-header .nav-cta.nav-register{background:transparent;color:var(--ink2);border:1.5px solid #D6D9E3;box-shadow:none;font-weight:650}
.site-header .nav-cta.nav-register:hover{background:var(--brand-tint);border-color:#C9C2FF;color:var(--brand);transform:none}
.mobile-menu .menu-register{grid-column:1/-1;justify-content:center;text-align:center;color:var(--ink2);border:1.5px solid #D6D9E3;background:transparent}
