/* RHEINGAU BIKES: verbindliche Mobile-Schicht */
@media (max-width: 900px){
  html,
  body{
    max-width:100%;
    overflow-x:hidden;
  }

  body{
    text-size-adjust:100%;
    -webkit-text-size-adjust:100%;
  }

  main,
  section,
  header,
  footer,
  form,
  article,
  aside,
  nav,
  .container,
  [class*="shell"],
  [class*="panel"],
  [class*="grid"],
  [class*="card"]{
    min-width:0;
    max-width:100%;
  }

  img,
  picture,
  video,
  iframe,
  canvas,
  svg{
    max-width:100%;
  }

  input,
  select,
  textarea,
  button{
    max-width:100%;
    font-size:16px;
  }

  h1,
  h2,
  h3,
  h4,
  p,
  a,
  strong,
  small,
  span,
  label,
  address{
    min-width:0;
    overflow-wrap:break-word;
  }

  .rb-home-full-calculator,
  .svc-grid,
  .svc-grid--stack,
  .svc-hero-grid,
  .svc-detail-grid,
  .rb-home-location > .container,
  .rb-sell-process-grid,
  .rb-sell-aeo-grid,
  .rb-buy-grid,
  .rb-kontakt5 .rbk5-shell,
  .rb-stock-request-card{
    grid-template-columns:minmax(0,1fr) !important;
  }

  .svc-panel,
  .rb-buy-panel,
  .rb-sell-form,
  .rb-stock-request-card{
    width:100% !important;
    min-width:0 !important;
  }

  .site-footer .container{
    width:100%;
    padding-right:18px !important;
    padding-left:18px !important;
  }
}

@media (max-width: 640px){
  :root{
    --rb-mobile-gutter:16px;
  }

  body{
    font-size:15px;
  }

  .container,
  .svc-container,
  .svc-detail-container,
  .rgb-stock-container{
    width:100% !important;
    max-width:100% !important;
    padding-right:var(--rb-mobile-gutter) !important;
    padding-left:var(--rb-mobile-gutter) !important;
  }

  section{
    scroll-margin-top:76px;
  }

  h1{
    font-size:clamp(32px,11vw,46px) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
  }

  h2{
    font-size:clamp(25px,8vw,34px) !important;
    line-height:1.08 !important;
    letter-spacing:0 !important;
  }

  h3{
    font-size:19px !important;
    line-height:1.2 !important;
  }

  p,
  li,
  label,
  address{
    line-height:1.55;
  }

  .rb-min-header{
    min-height:68px !important;
  }

  .rb-min-header .container{
    min-height:68px !important;
    padding-right:12px !important;
    padding-left:16px !important;
  }

  .rb-burger{
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    min-height:54px !important;
  }

  .rb-offcanvas{
    width:100% !important;
    max-width:100% !important;
  }

  .rb-oc-body{
    padding-right:18px !important;
    padding-left:18px !important;
  }

  .hero-full,
  .rb-home-hero{
    min-height:100svh !important;
    height:auto !important;
  }

  .rb-home-hero-content{
    align-content:end !important;
    min-height:100svh !important;
    padding-top:100px !important;
    padding-bottom:48px !important;
  }

  .rb-home-brand-logo{
    max-width:min(190px,55vw) !important;
  }

  .rb-home-scroll-link{
    width:max-content;
    max-width:100%;
  }

  .rb-home-services,
  .rb-home-stock,
  .rb-home-sold,
  .rb-home-location,
  .svc-section,
  .rb-sell-process,
  .rb-sell-aeo,
  .rb-sell-form-section,
  .rb-sell-faq,
  .rb-stock-request,
  .rb-sold-section{
    padding-top:52px !important;
    padding-bottom:52px !important;
  }

  .rb-home-section-head,
  .svc-section-head{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    align-items:start !important;
  }

  .rb-home-section-head > *,
  .svc-section-head > *{
    max-width:100% !important;
  }

  .rb-home-service-menu,
  .rb-home-sold-grid,
  .rb-sold-grid,
  .rgb-stock-grid,
  .rb-stock-hero-stats{
    grid-template-columns:minmax(0,1fr) !important;
  }

  .rb-home-service-menu a,
  .rb-home-service-menu a:first-child,
  .rb-home-service-menu a:nth-child(odd),
  .rb-home-service-menu a:nth-child(even){
    grid-column:auto !important;
    width:100% !important;
    min-height:88px !important;
  }

  .rb-home-full-calculator,
  .svc-grid,
  .svc-grid--stack{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    min-width:0 !important;
  }

  .svc-panel,
  .rb-home-full-calculator .svc-panel{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:16px 13px !important;
  }

  .svc-row,
  .svc-row--two,
  .svc-row--three,
  .rb-home-full-calculator .svc-row--three,
  .svc-date-range,
  .rb-home-request-grid{
    grid-template-columns:minmax(0,1fr) !important;
  }

  .svc-date-range,
  .svc-date-range .svc-field,
  .svc-date-range input[type="date"]{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }

  .svc-pill > input + span,
  .svc-group > .svc-row--three .svc-pill > input + span{
    width:100% !important;
    min-width:0 !important;
  }

  .svc-summary{
    position:static !important;
    top:auto !important;
  }

  .svc-bottom-actions,
  .svc-hero-actions,
  .svc-detail-actions,
  .rb-stock-hero-actions,
  .rb-stock-request-actions,
  .rb-home-location-actions,
  .rb-kontakt5 .rbk5-actions,
  .rb-buy-route-actions{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    gap:10px !important;
  }

  .svc-bottom-actions > *,
  .svc-hero-actions > *,
  .svc-detail-actions > *,
  .rb-stock-hero-actions > *,
  .rb-stock-request-actions > *,
  .rb-home-location-actions > *,
  .rb-kontakt5 .rbk5-actions > *,
  .rb-buy-route-actions > *{
    justify-content:center !important;
    width:100% !important;
    min-height:48px;
  }

  .svc-hero,
  .svc-detail-hero,
  .rb-stock-hero,
  .rb-sell-hero,
  .rb-contact-hero,
  .rb-sold-hero{
    min-height:0 !important;
    padding-top:104px !important;
    padding-bottom:48px !important;
  }

  .svc-hero-copy,
  .svc-detail-hero > *,
  .rb-stock-hero-inner,
  .rb-sell-hero .container,
  .rb-contact-hero .container,
  .rb-sold-hero .container{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }

  .rb-stock-lead,
  .rb-sell-hero p:not(.rb-sell-kicker),
  .rb-sold-lead,
  .svc-lead{
    max-width:100% !important;
    font-size:15px !important;
  }

  .rb-stock-hero-stats{
    display:grid !important;
    gap:0 !important;
  }

  .rb-stock-hero-stats > *{
    width:100% !important;
    min-width:0 !important;
  }

  .rgb-stock-card,
  .rgb-stock-swiper,
  .rgb-stock-card-body,
  .rb-home-sold-card,
  .rb-sold-card{
    width:100% !important;
    min-width:0 !important;
  }

  .rgb-stock-card-title,
  .rgb-stock-card-title a,
  .rgb-stock-meta-value,
  .rgb-stock-date-value{
    writing-mode:horizontal-tb !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
  }

  .rgb-stock-meta-item,
  .rgb-stock-date-row{
    grid-template-columns:28px minmax(0,1fr) !important;
    gap:10px !important;
  }

  .rgb-stock-meta-value,
  .rgb-stock-date-value{
    grid-column:2 !important;
    text-align:left !important;
  }

  .rgb-compare-bar-inner{
    width:100% !important;
    padding:10px 12px !important;
  }

  .rgb-compare-title{
    display:none !important;
  }

  .rb-sell-process-grid,
  .rb-sell-aeo-grid,
  .rb-sell-steps,
  .rb-sell-answer-list{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:0 !important;
  }

  .rb-sell-steps article,
  .rb-sell-answer-list article{
    grid-template-columns:38px minmax(0,1fr) !important;
    min-width:0 !important;
  }

  .rb-sell-form{
    padding:18px 14px !important;
  }

  .rb-sell-form .row > *{
    width:100% !important;
    flex:0 0 100% !important;
  }

  .rb-sell-form .d-flex{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .rb-sell-form .btn{
    width:100% !important;
    min-height:48px;
  }

  .rb-kontakt5.rbk5-wrap{
    width:100% !important;
    padding-right:var(--rb-mobile-gutter) !important;
    padding-left:var(--rb-mobile-gutter) !important;
  }

  .rb-kontakt5 .rbk5-side h2,
  .rb-kontakt5 .rbk5-title{
    max-width:100% !important;
    font-size:clamp(29px,9vw,38px) !important;
  }

  .rb-kontakt5 .rbk5-side p,
  .rb-kontakt5 .rbk5-side-list span,
  .rb-kontakt5 .rbk5-sub{
    font-size:15px !important;
  }

  .rb-kontakt5 .rbk5-field,
  .rb-kontakt5 input,
  .rb-kontakt5 textarea,
  .rb-kontakt5 select{
    width:100% !important;
    min-width:0 !important;
  }

  .rb-contact-pills,
  .rb-sell-pills,
  .rb-sold-tags,
  .rb-sold-filter{
    max-width:100%;
    overflow-x:auto;
    flex-wrap:nowrap !important;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }

  .rb-contact-pills::-webkit-scrollbar,
  .rb-sell-pills::-webkit-scrollbar,
  .rb-sold-tags::-webkit-scrollbar,
  .rb-sold-filter::-webkit-scrollbar{
    display:none;
  }

  .rb-contact-pills > *,
  .rb-sell-pills > *,
  .rb-sold-tags > *,
  .rb-sold-filter > *{
    flex:0 0 auto;
    white-space:nowrap;
  }

  .rb-home-location > .container{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:24px !important;
  }

  .rb-home-map{
    width:100% !important;
    min-width:0 !important;
    min-height:360px !important;
  }

  .rb-map-pin{
    max-width:calc(100% - 24px) !important;
  }

  .rb-buy-shell{
    padding-top:96px !important;
    padding-bottom:52px !important;
  }

  .rb-buy-grid,
  .rb-buy-fields,
  .rb-buy-payment-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:12px !important;
  }

  .rb-buy-panel{
    padding:16px 13px !important;
  }

  .rb-buy-summary,
  .rb-buy-summary > div,
  .rb-buy-bank-details > div{
    position:static !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:5px !important;
  }

  .rb-buy-summary > div strong,
  .rb-buy-bank-details strong{
    text-align:left !important;
    overflow-wrap:anywhere;
  }

  .rb-buy-qr{
    width:min(100%,320px);
    margin-inline:auto;
  }

  .rb-sold-filter{
    margin-right:calc(var(--rb-mobile-gutter) * -1) !important;
    padding-right:var(--rb-mobile-gutter) !important;
  }

  .rb-cb{
    right:12px !important;
    bottom:12px !important;
    left:12px !important;
    width:auto !important;
    max-height:calc(100svh - 24px);
    overflow-y:auto;
    transform:none !important;
  }

  .rb-cb .rb-cb-row{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .rb-cb .rb-btn,
  .rb-cb .rb-btn-link{
    justify-content:center;
    width:100%;
    min-height:44px;
  }

  .site-footer{
    margin-top:0 !important;
  }

  .site-footer .container{
    gap:22px !important;
    padding-top:32px !important;
    padding-bottom:32px !important;
  }

  .site-footer a{
    display:inline-block;
    margin:4px 4px 4px 0;
    min-height:24px;
  }
}

@media (max-width: 380px){
  :root{
    --rb-mobile-gutter:12px;
  }

  h1{
    font-size:34px !important;
  }

  h2{
    font-size:27px !important;
  }

  .rb-burger{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    min-height:50px !important;
  }

  .rb-home-map{
    min-height:330px !important;
  }
}
