/* Installed Benefit Map app only: first-screen discovery polish.
   Ordinary mobile web, desktop and NAVER/Google map routes remain unchanged. */

/* The additional festival tile is intentionally absent from the ordinary website. */
body.concierge-home .bc-app-festival-entry { display:none!important; }

@media (max-width:720px) {
  /* The companion script moves the discovery section in DOM order,
     so keyboard/screen-reader focus matches what appears on screen. */
  html.bc-installed-app body.concierge-home .bc-main {
    min-width:0;
    padding-bottom:calc(18px + env(safe-area-inset-bottom,0px));
  }

  /* Compact, legible voice/search entry. Keep AI consent and the microphone. */
  html.bc-installed-app body.concierge-home .bc-hero {
    margin-bottom:0!important;
    padding:18px 12px 14px!important;
    border-radius:20px!important;
  }
  html.bc-installed-app body.concierge-home .bc-hero h2 {
    margin:0 auto 7px!important;
    font-size:clamp(26px,7.2vw,32px)!important;
    line-height:1.17!important;
    letter-spacing:-.9px!important;
  }
  html.bc-installed-app body.concierge-home .bc-hero .bc-intro {
    max-width:35ch!important;
    margin:0 auto!important;
    font-size:12px!important;
    line-height:1.55!important;
    overflow-wrap:anywhere;
  }
  html.bc-installed-app body.concierge-home .bc-workspace { margin-top:12px!important; }
  html.bc-installed-app body.concierge-home #concierge-form {
    padding:10px 11px!important;
    border-radius:16px!important;
  }
  html.bc-installed-app body.concierge-home #question {
    min-height:52px!important;
    max-height:150px!important;
    font-size:16px!important;
    line-height:1.55!important;
  }
  html.bc-installed-app body.concierge-home .bc-suggestions {
    margin:10px 0 0!important;
    gap:7px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html.bc-installed-app body.concierge-home .bc-suggestions button {
    min-width:0!important;
    min-height:44px!important;
    padding:7px 6px!important;
    font-size:11.5px!important;
    line-height:1.3!important;
    overflow-wrap:anywhere;
  }

  /* Four recognizable destinations first, followed by local news and saved prep. */
  html.bc-installed-app body.concierge-home .bc-section[aria-labelledby="explore-heading"] {
    margin:15px 0 9px!important;
  }
  html.bc-installed-app body.concierge-home .bc-section[aria-labelledby="explore-heading"] .bc-section-head {
    margin-bottom:10px!important;
    align-items:flex-end!important;
  }
  html.bc-installed-app body.concierge-home .bc-section[aria-labelledby="explore-heading"] .bc-section-head h2 {
    font-size:21px!important;
    line-height:1.25!important;
    margin:3px 0 0!important;
  }
  html.bc-installed-app body.concierge-home .bc-section[aria-labelledby="explore-heading"] > .quick {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  html.bc-installed-app body.concierge-home .bc-section[aria-labelledby="explore-heading"] > .quick a.card {
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 19px!important;
    grid-template-rows:37px auto auto!important;
    align-content:start!important;
    align-items:start!important;
    column-gap:3px!important;
    row-gap:4px!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:130px!important;
    padding:12px 11px!important;
    border-radius:18px!important;
    overflow:hidden;
    box-shadow:0 7px 16px rgba(22,48,73,.08)!important;
    text-decoration:none!important;
    transform:none!important;
  }
  html.bc-installed-app body.concierge-home .bc-section > .quick a.card .bc-icon {
    grid-column:1!important;
    grid-row:1!important;
    width:36px!important;
    height:36px!important;
    margin:0!important;
    border-radius:12px!important;
    font-size:21px!important;
    color:inherit!important;
    background:rgba(255,255,255,.65)!important;
  }
  /* Replace faint monochrome symbols with recognizable travel/policy icons in the app. */
  html.bc-installed-app body.concierge-home .quick a.card[href^="/travel/"] .bc-icon,
  html.bc-installed-app body.concierge-home .quick a.card[href^="/policies/"] .bc-icon {
    font-size:0!important;
  }
  html.bc-installed-app body.concierge-home .quick a.card[href^="/travel/"] .bc-icon::before {
    content:"🧭";
    font-size:22px!important;
  }
  html.bc-installed-app body.concierge-home .quick a.card[href^="/policies/"] .bc-icon::before {
    content:"📋";
    font-size:22px!important;
  }
  html.bc-installed-app body.concierge-home .bc-section > .quick a.card h3 {
    grid-column:1 / -1!important;
    grid-row:2!important;
    margin:0!important;
    min-width:0!important;
    font-size:15px!important;
    line-height:1.3!important;
    letter-spacing:-.4px!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  html.bc-installed-app body.concierge-home .bc-section > .quick a.card p {
    grid-column:1 / -1!important;
    grid-row:3!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
    max-width:100%!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1.4!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  html.bc-installed-app body.concierge-home .bc-section > .quick a.card .bc-arrow {
    position:static!important;
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    justify-self:end!important;
    margin:0!important;
    font-size:18px!important;
    line-height:1.6!important;
  }
  html.bc-installed-app body.concierge-home .bc-app-festival-entry {
    display:grid!important;
  }
  html.bc-installed-app body.concierge-home .quick a.card[href^="/world-travel/"] {
    background:linear-gradient(145deg,#FFE4DC 0%,#FFF2EA 58%,#FFF9E9 100%)!important;
    border:1px solid #FFC7BA!important;
    border-top:4px solid #FF6B6B!important;
    color:#63263A!important;
  }
  html.bc-installed-app body.concierge-home .quick a.card[href^="/travel/"] {
    background:linear-gradient(145deg,#D8EDFF 0%,#E8F5FF 62%,#FAFDFF 100%)!important;
    border:1px solid #A4CFFF!important;
    border-top:4px solid #0864DE!important;
    color:#133B77!important;
  }
  html.bc-installed-app body.concierge-home .quick a.card[href^="/policies/"] {
    background:linear-gradient(145deg,#D7F8EE 0%,#E8F9F7 65%,#FBFFFF 100%)!important;
    border:1px solid #99E4DA!important;
    border-top:4px solid #00A89E!important;
    color:#155550!important;
  }
  html.bc-installed-app body.concierge-home .quick a.card[href^="/festivals/"] {
    background:linear-gradient(145deg,#EEE0FF 0%,#F4EAFF 62%,#FFFAFF 100%)!important;
    border:1px solid #D7B9FF!important;
    border-top:4px solid #8B5CF6!important;
    color:#4D2C7D!important;
  }
  html.bc-installed-app body.concierge-home .quick a.card[href^="/my-prep/"] {
    background:linear-gradient(145deg,#F0F3F9,#FFFFFF)!important;
    border:1px solid #CCD8E7!important;
    border-top:4px solid #5F789B!important;
    color:#2D455F!important;
  }
  html.bc-installed-app body.concierge-home .bc-main > .prep-home-link {
    margin:10px 0 14px!important;
    padding:12px!important;
    gap:8px!important;
    border-radius:15px!important;
  }
  html.bc-installed-app body.concierge-home .bc-main > .prep-home-link strong {
    font-size:13px!important;
    line-height:1.4!important;
  }
  html.bc-installed-app body.concierge-home .bc-main > .prep-home-link small {
    font-size:11px!important;
    line-height:1.35!important;
  }
  html.bc-installed-app body.concierge-home .bc-main > .bc-section:not([aria-labelledby="explore-heading"]) {
    margin:18px 0 24px!important;
  }
}

/* Extra narrow Android devices remain two-column without cropped controls. */
@media (max-width:350px) {
  html.bc-installed-app body.concierge-home .bc-section[aria-labelledby="explore-heading"] > .quick {
    gap:7px!important;
  }
  html.bc-installed-app body.concierge-home .bc-section[aria-labelledby="explore-heading"] > .quick a.card {
    padding:10px 9px!important;
    min-height:124px!important;
  }
  html.bc-installed-app body.concierge-home .bc-section > .quick a.card h3 {
    font-size:14px!important;
  }
}
