/* DineQube V7.7 — exact Home-header parity + Hotel grid stability + Home social footer */

/* Secondary marketing pages use the exact same header geometry/behavior as Home. */
body:not(.home-v71) .h71-header{overflow:visible;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid #edf2ef}
body:not(.home-v71) .h71-navbar{width:min(1480px,calc(100% - 48px));max-width:1480px;gap:18px;margin-inline:auto}
body:not(.home-v71) .h71-header .brand{flex:0 0 auto;min-width:150px}
body:not(.home-v71) .h71-header .brand img{height:54px;width:auto;max-width:225px;object-fit:contain}
body:not(.home-v71) .h71-header .nav-links{flex:1 1 auto;min-width:0;justify-content:center;gap:2px}
body:not(.home-v71) .h71-header .nav-link{font-size:14px;font-weight:700;color:#294a43;white-space:nowrap}
body:not(.home-v71) .h71-header .ai-nav{box-shadow:0 8px 26px rgba(40,105,240,.13);white-space:nowrap}
body:not(.home-v71) .h71-header .nav-actions{margin-left:auto;flex:0 0 auto;gap:10px}
body:not(.home-v71) .h71-header .nav-actions .btn{white-space:nowrap}
body:not(.home-v71) .h71-login{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border-radius:12px;color:#21443c;border:1px solid transparent;font-weight:700;text-decoration:none;transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease}
body:not(.home-v71) .h71-login:hover,body:not(.home-v71) .h71-login:focus-visible{color:#0f7b5a;background:#f0faf6;border-color:#cfe8dd;transform:translateY(-2px);box-shadow:0 8px 22px rgba(15,123,90,.10);outline:none}
body:not(.home-v71) .h71-mobile-cta{display:none}

@media(max-width:1360px){
  body:not(.home-v71) .h71-navbar{width:min(1320px,calc(100% - 36px));gap:12px}
  body:not(.home-v71) .h71-header .nav-link{padding-inline:7px;font-size:12px}
  body:not(.home-v71) .h71-header .ai-nav{padding-inline:9px;font-size:12px}
  body:not(.home-v71) .h71-header .brand{min-width:136px}
  body:not(.home-v71) .h71-header .brand img{height:46px}
  body:not(.home-v71) .h71-header .nav-actions{gap:7px}
  body:not(.home-v71) .h71-header .nav-actions .btn{padding-inline:13px;font-size:12px}
  body:not(.home-v71) .h71-login{padding-inline:10px;font-size:12px}
}
@media(max-width:1240px){
  body:not(.home-v71) .h71-why{display:none}
  body:not(.home-v71) .h71-navbar{width:calc(100% - 28px)}
}
@media(max-width:1100px){
  body:not(.home-v71) .h71-navbar{position:relative;width:calc(100% - 28px);height:72px}
  body:not(.home-v71) .h71-header .brand{flex:0 0 auto;min-width:0;margin-right:auto}
  body:not(.home-v71) .h71-header .nav-links{position:absolute;left:0;right:0;top:78px;z-index:1100;display:none;flex-direction:column;align-items:stretch;gap:5px;padding:12px;background:rgba(255,255,255,.99);border:1px solid #dfeae5;border-radius:18px;box-shadow:0 24px 60px rgba(16,45,39,.14)}
  body:not(.home-v71) .h71-header .nav-links.open{display:flex}
  body:not(.home-v71) .h71-header .nav-link,body:not(.home-v71) .h71-header .ai-nav{display:flex!important;justify-content:center;min-height:44px;font-size:13px;padding:10px 14px}
  body:not(.home-v71) .h71-header .h71-why{display:flex!important}
  body:not(.home-v71) .h71-mobile-cta{display:flex!important}
  body:not(.home-v71) .h71-mobile-trial{background:#0f7b5a!important;color:#fff!important}
  body:not(.home-v71) .h71-header .menu-toggle{display:block}
  body:not(.home-v71) .h71-header .nav-actions{margin-left:auto}
  body:not(.home-v71) .h71-header .nav-actions .btn-outline{display:none}
}
@media(max-width:760px){
  body:not(.home-v71) .h71-navbar{width:calc(100% - 22px);height:68px}
  body:not(.home-v71) .h71-header .brand img{height:42px}
  body:not(.home-v71) .h71-login{min-height:40px;padding-inline:10px}
  body:not(.home-v71) .h71-header .nav-actions .btn-primary{min-height:42px;padding-inline:12px;font-size:11px}
}
@media(max-width:520px){
  body:not(.home-v71) .h71-header .nav-actions .btn-primary{display:none}
  body:not(.home-v71) .h71-login{display:inline-flex!important;min-width:54px}
  body:not(.home-v71) .h71-header .menu-toggle{margin-left:0}
  body:not(.home-v71) .h71-header .nav-links{top:72px}
}

/* Hotel Experience OS: intentional two-row composition instead of accidental 12-col gaps. */
.page-hotel .bento{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:dense!important;gap:18px!important;align-items:stretch!important}
.page-hotel .bento>.bento-card{grid-column:span 1!important;min-width:0!important;min-height:450px!important;height:100%!important;padding:26px!important}
.page-hotel .bento>.bento-card.wide{grid-column:span 2!important}
.page-hotel .bento>.bento-card:nth-child(4){grid-column:3!important;grid-row:1!important}
.page-hotel .bento>.bento-card:nth-child(5){grid-column:3!important;grid-row:2!important}
.page-hotel .bento>.bento-card:nth-child(3){grid-column:1 / span 2!important;grid-row:2!important}
.page-hotel .bento-card .kicker{min-height:18px!important}
.page-hotel .bento-card h3{min-height:58px!important;margin-bottom:10px!important}
.page-hotel .bento-card .copy{min-height:66px!important;margin-bottom:0!important}
.page-hotel .bento-media{margin-top:auto!important;width:100%!important;height:230px!important;min-height:230px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:14px!important;overflow:hidden!important}
.page-hotel .bento-media img,.page-hotel .bento-media video{display:block!important;margin:auto!important;max-width:100%!important;max-height:100%!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;padding:8px!important}
.page-hotel .dq-op-icon,.page-hotel .dq-ai-feature-visual{margin:auto!important;align-self:center!important}
@media(max-width:980px){
  .page-hotel .bento{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .page-hotel .bento>.bento-card,.page-hotel .bento>.bento-card:nth-child(4),.page-hotel .bento>.bento-card:nth-child(5){grid-column:auto!important;grid-row:auto!important}
  .page-hotel .bento>.bento-card.wide,.page-hotel .bento>.bento-card:nth-child(3){grid-column:1 / -1!important;grid-row:auto!important}
}
@media(max-width:680px){
  .page-hotel .bento{grid-template-columns:1fr!important}
  .page-hotel .bento>.bento-card,.page-hotel .bento>.bento-card.wide,.page-hotel .bento>.bento-card:nth-child(3),.page-hotel .bento>.bento-card:nth-child(4),.page-hotel .bento>.bento-card:nth-child(5){grid-column:1!important;grid-row:auto!important;min-height:0!important}
  .page-hotel .bento-media{height:220px!important;min-height:220px!important}
  .page-hotel .bento-card h3,.page-hotel .bento-card .copy{min-height:0!important}
}

/* Home footer social links above copyright. */
.dq-footer-social{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.10);margin-top:34px;padding-top:22px}
.dq-footer-social-label{font-size:12px;font-weight:800;letter-spacing:.04em;color:#d9ebe5}
.dq-footer-social-links{display:flex;align-items:center;gap:11px}
.dq-social-icon{width:42px;height:42px;border-radius:13px!important;padding:0!important;display:grid!important;place-items:center!important;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important}
.dq-social-icon:hover{transform:translateY(-2px);filter:brightness(1.05)}
.dq-social-icon svg{width:22px;height:22px;display:block}
.dq-instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0 5%,#fdf497 6%,#fd5949 40%,#d6249f 62%,#285AEB 90%);box-shadow:0 10px 24px rgba(214,36,159,.22)}
.dq-instagram svg rect,.dq-instagram svg circle{fill:none;stroke:#fff;stroke-width:1.9}.dq-instagram svg .ig-dot{fill:#fff;stroke:none}
.dq-linkedin{background:#0A66C2;box-shadow:0 10px 24px rgba(10,102,194,.22)}
.dq-linkedin svg{fill:#fff}
.footer .dq-footer-social + .footer-bottom{margin-top:18px;padding-top:18px}
@media(max-width:680px){.dq-footer-social{align-items:flex-start;flex-direction:column}.dq-footer-social-links{gap:10px}}

/* V7.8 responsive guard — some content pages use an inline desktop journey grid.
   Keep every step readable on a phone instead of allowing a fixed 3/4-column row
   to push the page horizontally. */
@media (max-width: 680px){
  .journey[style*="grid-template-columns"]{
    grid-template-columns:1fr !important;
  }
  .journey-step,
  .journey-step > *{
    min-width:0;
  }
  .journey-step{
    overflow-wrap:anywhere;
  }
}
