/* Customer mobile shell only. Desktop layouts retain their original rules. */
.mobileDock,.mobileCheckout{display:none}
@media(max-width:767px){
  body.mobileApp{--mobile-dock:70px;padding-bottom:calc(var(--mobile-dock) + env(safe-area-inset-bottom,0px));}
  .mobileApp .header[data-header]{position:sticky;top:0;z-index:60;background:#faf7ff;}
  .mobileApp .header .topbar{display:none;}
  .mobileApp .header .nav__inner{min-height:62px;padding-top:10px;padding-bottom:10px;}
  .mobileApp .header .brand__logo{width:166px;height:auto;}
  .mobileApp .header .nav__toggle{min-width:44px;min-height:44px;}
  .mobileApp .header .nav__menu{max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain;}
  .mobileDock{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:65;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));background:rgba(255,250,247,.97);border-top:1px solid #e9e1ee;box-shadow:0 -5px 24px #31204e0a;}
  .mobileDock a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:54px;color:#73677d;text-decoration:none;font:600 11px/1.3 system-ui,sans-serif;border-radius:14px;}
  .mobileDock a[aria-current]{color:#6245a0;background:#ede7f6;}
  .mobileDock__icon{position:relative;height:25px;}.mobileDock svg{width:24px;height:24px;}
  .mobileDock__count{position:absolute;left:16px;top:-4px;min-width:16px;padding:1px 3px;border-radius:12px;background:#f64d94;color:white;font-size:10px;text-align:center;}
  .mobileApp main .section{padding-top:24px;padding-bottom:28px;}
  .mobileApp main h1{font-size:clamp(28px,7.8vw,38px);line-height:1.12;}
  .mobileApp main .container{width:calc(100% - 28px);}
  .mobileApp .cartCrumbs,.mobileApp .checkoutCrumbs{display:none;}
  .mobileApp .flowSteps{overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;gap:6px;}
  .mobileApp .flowStep{font-size:10px;padding:8px;}
  .mobileApp input:not([type=checkbox]):not([type=radio]):not([type=range]),.mobileApp textarea,.mobileApp select{font-size:16px;}
  .mobileApp main button,.mobileApp main .btn{min-height:44px;}
  .mobileApp .cartItem{grid-template-columns:92px minmax(0,1fr);gap:12px;padding:12px;}
  .mobileApp .cartItem__select{position:static;grid-column:1 / -1;justify-self:start;min-height:44px;}
  .mobileApp .cartItem__body{min-width:0;}
  .mobileApp .cartItem__media{min-height:0;align-self:start;}
  .mobileApp .cartItem__media img{height:auto;max-height:180px;object-fit:contain;}
  .mobileApp .cartItem__top h2,.mobileApp .cartItem__top h3{font-size:20px;}
  .mobileApp .cartItem__actions{gap:10px;}
  .mobileApp .cartSummary__card,.mobileApp .checkoutCard{padding:18px;border-radius:20px;}
  .mobileApp--cart{padding-bottom:calc(140px + env(safe-area-inset-bottom,0px))!important;}
  .mobileCheckout{display:flex;position:fixed;bottom:calc(69px + env(safe-area-inset-bottom,0px));left:0;right:0;padding:10px 16px;background:#fffafd;z-index:64;border-top:1px solid #eee5ef;}
  .mobileCheckout button{width:100%;min-height:46px;border:0;border-radius:14px;background:#f64d94;color:white;font:700 15px system-ui,sans-serif;}
  .mobileCheckout button:disabled{opacity:.5;}
  .mobileCheckout[hidden],.mobileApp--keyboard .mobileDock,.mobileApp--keyboard .mobileCheckout{display:none;}
  .mobileApp .toast{bottom:calc(145px + env(safe-area-inset-bottom,0px));}
  .mobileApp .postcardCollection__hero{gap:18px;}
  .mobileApp .postcardCreateCard{padding:18px;}
  .mobileApp .postcardCollection__head{margin-top:16px;}
  .mobileApp .footer__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
  .mobileApp .footer__col a{display:inline-flex;align-items:center;min-height:44px;}
}
@media(max-width:520px){
  body.business-page.mobileApp .footer__cols{grid-template-columns:minmax(0,1fr);}
}

@media(max-width:767px){
  body.business-page.mobileApp .footer__grid,
  body.business-page.mobileApp .footer__grid>div,
  body.business-page.mobileApp .footer__cols,
  body.business-page.mobileApp .footer__contact-service,
  body.business-page.mobileApp .footer__col{min-width:0;max-width:100%;}
  body.business-page.mobileApp .footer__cols{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;}
  body.business-page.mobileApp .brand--footer{width:min(340px,100%);max-width:100%;}
  body.business-page.mobileApp .brand--footer .brand__logo{width:100%;max-width:340px;}
  body.business-page.mobileApp .newsletter{width:100%;min-width:0;box-sizing:border-box;}
  body.business-page.mobileApp .newsletter__form{width:100%;min-width:0;}
  body.business-page.mobileApp .newsletter__form input,
  body.business-page.mobileApp .newsletter__form label{min-width:0;max-width:100%;box-sizing:border-box;}
  body.business-page.mobileApp .newsletter__form label span{min-width:0;overflow-wrap:anywhere;}
  body.business-page.mobileApp .footer__col a{display:inline-flex;align-items:center;min-height:44px;}
  body.business-page.mobileApp .footer__col li,
  body.business-page.mobileApp .footer p{overflow-wrap:anywhere;}
}