/* Home V2: layout specific to the citizen start screen, built on v2-foundation.css. */
.citizen-app{width:min(100%,var(--v2-content-width));background:var(--paper);box-shadow:0 0 48px #183b4b16}
.citizen-hero{
  height:clamp(160px,34vw,306px);
  padding:clamp(18px,4vw,34px) var(--v2-content-inline);
  background:
    linear-gradient(90deg,#f4fbfffa 0%,#f4fbffbf 34%,#ffffff12 70%),
    url('/assets/v2/home-bambui-hero.webp') 62% center/cover no-repeat;
}
.citizen-hero:after{bottom:-30px;height:62px;background:var(--paper);border-radius:52% 52% 0 0/64% 64% 0 0}
.citizen-logo{width:clamp(164px,34vw,312px);max-height:146px;object-fit:contain;object-position:left center;filter:none;mix-blend-mode:multiply}
.citizen-location{margin:8px 0 0 4px;color:#5f6e8b;font-size:clamp(.82rem,1.8vw,1.08rem);font-weight:500}
.citizen-actions{gap:14px}
.citizen-icon-button,.citizen-avatar{background:#fffffff2;box-shadow:0 5px 18px #0a2d5724}
.citizen-icon-button{width:52px;height:52px}
.citizen-avatar{width:66px;height:66px}
.citizen-hero-image-note{right:14px;bottom:36px;background:#082f5bcc;color:#fff}

.citizen-content{padding:0 var(--v2-content-inline) 28px}
.welcome-copy{margin-top:2px}
.welcome-copy h1{font-size:clamp(2rem,5.2vw,3.05rem);letter-spacing:-.045em;line-height:1.02}
.welcome-copy p{margin-top:6px;color:var(--navy-soft);font-size:clamp(1.18rem,3vw,1.6rem)}
.citizen-search{height:clamp(66px,9vw,84px);border-color:#d9dee6;border-radius:var(--v2-radius-md);background:#fff;box-shadow:0 8px 24px #163d680d}
.citizen-search input{font-size:clamp(1rem,2.8vw,1.38rem)}
.citizen-search button{background:var(--orange);color:#fff}

.category-grid{gap:clamp(8px,1.8vw,16px);margin:24px -10px}
.category-grid button{aspect-ratio:.94;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--v2-radius-md);box-shadow:inset 0 0 0 1px #ffffffa8}
.category-grid button[data-category="comida"]{background:linear-gradient(145deg,#fff8f2,#fff0e7)}
.category-grid button[data-category="mercado"]{background:linear-gradient(145deg,#f7fbf3,#eaf4e6)}
.category-grid button[data-category="serviços"]{background:linear-gradient(145deg,#f1f9ff,#e4f2fd)}
.category-grid button[data-category="cidade"]{background:linear-gradient(145deg,#f5f9f3,#eaf1e8)}
.category-grid button[data-category="mobilidade"]{background:linear-gradient(145deg,#f8f7ff,#eeecff)}
.category-symbol{width:100%;height:56%;aspect-ratio:auto;border-radius:0;background:transparent;box-shadow:none}
.category-symbol svg{width:58%;height:58%}
.category-food svg,.category-market svg{fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round}
.category-service svg,.category-city svg,.category-mobility svg{width:68%;height:68%;fill:currentColor;stroke:none}
.category-grid strong{margin-top:0;color:var(--navy);font-size:clamp(.76rem,2vw,1.08rem);font-weight:700;line-height:1.05}
.category-grid button[aria-pressed=true]{outline:3px solid var(--orange);outline-offset:2px}
.category-grid button[aria-pressed=true] .category-symbol{outline:0}

.local-promo{height:clamp(188px,42vw,350px);border-radius:var(--v2-radius-lg);box-shadow:var(--v2-shadow)}
.local-promo:after{background:linear-gradient(90deg,#211007ed 0%,#29160ac2 40%,transparent 72%)}
.local-promo-copy{inset:clamp(24px,5vw,44px) auto auto clamp(24px,5vw,42px)}
.local-promo-copy p,.local-promo-copy strong{font-size:clamp(1.65rem,5vw,3.1rem)}
.local-promo-copy a{background:var(--orange);box-shadow:0 8px 18px #7a210733}

.citizen-section{padding-top:clamp(24px,4vw,36px)}
.citizen-section-heading h2{font-size:clamp(1.85rem,4.5vw,2.6rem)}
.citizen-section-heading button{color:var(--orange);font-size:clamp(.95rem,2vw,1.18rem)}
.status.is-catalog-summary{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#catalogo .catalog-grid{margin-top:18px}
.merchant-card{padding:14px;border-color:#edf0f2;border-radius:var(--v2-radius-lg);box-shadow:var(--v2-shadow)}
.merchant-cover{height:clamp(158px,27vw,245px);border-radius:calc(var(--v2-radius-lg) - 8px);overflow:hidden}
.merchant-cover>button{width:52px;height:52px;box-shadow:0 4px 14px #102d4a1f}
.merchant-cover>button svg{fill:none;stroke:var(--navy-soft);stroke-linecap:round;stroke-linejoin:round}
.merchant-copy{padding:12px 4px 2px}
.merchant-heading{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap}
.merchant-copy h3{margin:0;font-size:clamp(1.35rem,3vw,1.72rem)}
.merchant-availability{display:flex;align-items:center;margin:8px 0 0}
.merchant-location{display:inline-flex;align-items:center;gap:6px}
.merchant-location svg{width:18px;height:18px;fill:currentColor;stroke:currentColor}
.merchant-products{gap:12px;margin-top:12px}
.product-tile{border-radius:var(--v2-radius-md);box-shadow:0 5px 16px #163d680a}
.product-tile>img{height:clamp(104px,18vw,150px)}
.product-tile strong{display:-webkit-box;min-height:2.3em;overflow:hidden;white-space:normal;line-height:1.15;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.product-tile>button{background:var(--orange)}

.citizen-bottom-nav{background:#fffffff7;border-top-color:#e6e8ec;box-shadow:0 -8px 28px #0a2d570d;backdrop-filter:blur(12px)}
.citizen-bottom-nav :is(a,button){color:#536485}
.citizen-bottom-nav [aria-current=page]{color:var(--orange)}

@media(max-width:640px){
  .citizen-app{padding-bottom:78px}
  .citizen-hero{height:154px;padding:14px 18px;background-position:58% center}
  .citizen-hero:after{bottom:-22px;height:42px}
  .citizen-topbar{gap:10px}
  .citizen-logo{width:154px;max-height:72px}
  .citizen-location{margin-top:4px;font-size:.76rem}
  .citizen-location svg{width:17px;height:17px}
  .citizen-actions{gap:7px}
  .citizen-icon-button{width:38px;height:38px}
  .citizen-icon-button svg{width:22px;height:22px}
  .citizen-avatar{width:46px;height:46px;border-width:3px;font-size:.65rem}
  .citizen-hero-image-note{right:9px;bottom:24px;font-size:.55rem}
  .citizen-content{padding-inline:18px}
  .welcome-copy{margin-top:3px}
  .welcome-copy h1{font-size:1.72rem}
  .welcome-copy p{font-size:1.1rem;margin:3px 0 17px}
  .citizen-search{height:58px;border-radius:16px;padding-left:14px}
  .citizen-search>svg{width:25px;height:25px}
  .citizen-search input{font-size:.93rem}
  .citizen-search button{width:44px;height:44px}
  .category-grid{gap:7px;margin:18px -4px}
  .category-grid button{border-radius:13px}
  .category-grid strong{font-size:.67rem;margin-top:0}
  .local-promo{height:178px;border-radius:18px;margin-top:4px}
  .local-promo-copy{left:20px;top:21px;width:50%}
  .local-promo-copy p,.local-promo-copy strong{font-size:1.5rem}
  .local-promo-copy>span{font-size:.9rem;margin:10px 0 12px}
  .local-promo-copy a{padding:10px 17px;font-size:.9rem}
  .citizen-section{padding-top:24px}
  .citizen-section-heading h2{font-size:1.75rem}
  #catalogo .catalog-grid{margin-top:14px}
  .merchant-card{padding:10px}
  .merchant-cover{height:122px;border-radius:15px}
  .merchant-cover>button{width:44px;height:44px}
  .merchant-copy{padding:10px 3px 2px}
  .merchant-heading{gap:7px 12px}
  .merchant-copy h3{font-size:1.16rem}
  .merchant-location,.merchant-availability{font-size:.78rem}
  .merchant-products{gap:8px;margin-top:10px}
  .product-tile{border-radius:13px}
  .product-tile>img{height:91px}
  .product-tile>div{padding:8px 40px 10px 10px}
  .product-tile strong{font-size:.78rem}
  .product-tile>button{width:34px;height:34px;right:7px;bottom:8px}
  .citizen-bottom-nav{height:72px}
}

@media(min-width:941px){
  .citizen-app{border-inline:1px solid #e5e9e8}
}
