/* ==========================================================================
   rb-responsive.css
   O celular não é o desktop espremido: é outra composição, com menos
   camadas e a mesma intenção. Cada breakpoint foi revisado individualmente.
   --------------------------------------------------------------------------
   1440  telas largas
   1200  desktop menor
   1024  tablet paisagem · o menu vira hambúrguer · as sobreposições acabam
    900  tablet
    768  tablet retrato / celular grande
    600  celular
    420  celular pequeno
   extras  toque, altura curta, movimento reduzido, impressão
   ========================================================================== */


/* ==========================  ≥ 1440px  ================================== */
@media (min-width:1440px){
  :root{--rb-header-h:88px}
  .rb-hero__art{width:min(44vw,620px)}
}


/* ==========================  ≤ 1200px  ================================== */
@media (max-width:1200px){
  .rb-hero__art{width:min(50vw,540px)}
  .rb-hero__copy{grid-column:1 / 8}

  .rb-works__head,.rb-works__foot{margin-left:clamp(0px,8vw,140px)}
  .rb-index__head{margin-right:clamp(0px,5vw,100px)}
  .rb-expo__slot--1{grid-column:1 / 9}
  .rb-expo__slot--2{grid-column:8 / -1}
  .rb-expo__slot--3{grid-column:1 / 7}
  .rb-expo__slot--4{grid-column:7 / -1}
  .rb-expo__slot--5{grid-column:2 / 12}

  .rb-col-hero__inner{margin-left:clamp(0px,5vw,90px)}
  .rb-colecao__grade{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rb-colecao__grade > *:nth-child(3n+2),
  .rb-colecao__grade > *:nth-child(3n){margin-top:0}
  .rb-colecao__grade > *:nth-child(even){margin-top:clamp(1.5rem,5vh,4rem)}

  .rb-journal__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rb-journal__grid > *:nth-child(3n+2){margin-top:0}
  .rb-journal__grid > *:nth-child(even){margin-top:clamp(1rem,3vh,2.5rem)}

  .rb-gift-items__grid,.rb-benefits__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rb-howto__list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rb-footer__top{grid-template-columns:minmax(220px,1.4fr) repeat(2,minmax(0,1fr))}

  .rb-lightbox__nav--prev{left:0;top:auto;bottom:-64px;transform:none}
  .rb-lightbox__nav--next{right:0;top:auto;bottom:-64px;transform:none}
}


/* ====  ≤ 1024px · o menu vira hambúrguer e as camadas se desfazem  ====== */
@media (max-width:1024px){
  :root{--rb-header-h:72px}

  /* — Header — */
  .rb-nav{display:none}
  .rb-burger{display:inline-flex}
  .rb-header__cta .rb-header__btn{display:none}
  .rb-header.is-hidden{transform:none}

  /* — HOME · Hero — */
  .rb-hero{min-height:auto;padding-block:calc(var(--rb-header-h) + 4vh) 7vh}
  .rb-hero__stage{grid-template-columns:1fr;gap:clamp(1.75rem,4vh,2.75rem)}
  /* display:contents dissolve o invólucro: a obra entra logo após o título. */
  .rb-hero__copy{display:contents}
  .rb-hero__eyebrow{order:1;margin-bottom:0}
  .rb-hero__title{order:2;max-width:16ch;margin-bottom:0}
  .rb-hero__art{order:3;grid-column:1;grid-row:auto;width:min(88%,520px);justify-self:center;margin-right:0;transform:rotate(-.8deg)}
  .rb-hero__text{order:4;max-width:58ch}
  .rb-hero__actions{order:5}
  .rb-hero__marks{order:6;position:static;margin-top:clamp(1.5rem,3vh,2.25rem);justify-content:flex-start}
  .rb-hero__plate{height:min(46svh,420px)}
  .rb-hero__veil{background:linear-gradient(180deg,rgba(9,10,12,.26),rgba(9,10,12,0) 44%)}
  .rb-hero__cue{display:none}
  .rb-hero__word{top:26%;font-size:clamp(6rem,26vw,14rem)}
  @keyframes rb-enter-art{
    from{opacity:0;transform:rotate(-.8deg) translateY(28px) scale(1.02)}
    to{opacity:1;transform:rotate(-.8deg)}
  }

  /* — HOME · demais seções — */
  .rb-manifesto{min-height:auto}
  .rb-manifesto__inner{margin-left:0}
  .rb-expo{grid-template-columns:1fr}
  .rb-expo__slot{grid-column:1!important}
  .rb-expo__slot--1{margin-top:0}
  .rb-expo__slot--2{margin-top:clamp(2.5rem,7vh,5rem);padding-left:clamp(1.5rem,8vw,5rem)}
  .rb-expo__slot--3{margin-top:clamp(2.5rem,7vh,5rem);padding-right:clamp(1.5rem,10vw,7rem)}
  .rb-expo__slot--4{margin-top:clamp(2.5rem,7vh,5rem);padding-left:clamp(1rem,5vw,3rem)}
  .rb-expo__slot--5{margin-top:clamp(2.5rem,7vh,5rem)}
  .rb-works__head,.rb-works__foot{margin-left:0}
  .rb-index__head{text-align:left;margin-right:0;margin-left:0}
  .rb-index__head .rb-eyebrow{flex-direction:row}
  .rb-index__head .rb-eyebrow::before{background:linear-gradient(90deg,rgba(198,164,108,0),var(--rb-gold))}
  .rb-index__link{grid-template-columns:minmax(40px,52px) minmax(0,1fr) auto;row-gap:.5rem}
  .rb-index__desc{grid-column:2 / -1}
  .rb-method__head{grid-template-columns:1fr;gap:1.75rem;align-items:start}
  .rb-trilha__etapa{grid-template-columns:1fr;gap:.4rem}
  .rb-trilha__texto{grid-column:1;grid-row:auto;align-self:start;max-width:56ch}
  .rb-trilha__etapa:nth-child(even){padding-left:0}
  .rb-about__stage{grid-template-columns:1fr;gap:clamp(2rem,5vh,3.5rem)}
  .rb-about__media,.rb-about__copy{grid-column:1;grid-row:auto}
  .rb-about__media{margin-left:calc(-1 * var(--rb-gutter));max-width:min(90%,480px);transform:rotate(.5deg)}
  .rb-gift__stage{grid-template-columns:1fr;gap:1.75rem;align-items:start}

  /* — SOBRE — */
  .rb-story-hero{min-height:auto;padding-block:calc(var(--rb-header-h) + 4vh) 7vh}
  .rb-story-hero__stage{grid-template-columns:1fr;gap:clamp(1.75rem,4vh,2.75rem)}
  .rb-story-hero__copy{display:contents}
  .rb-story-hero__eyebrow{order:1}
  .rb-story-hero__title{order:2;max-width:18ch;margin-bottom:0}
  .rb-story-hero__art{order:3;grid-column:1;grid-row:auto;margin-left:0;justify-self:center;width:min(88%,480px);transform:rotate(.6deg)}
  .rb-story-hero__plate{height:min(46svh,420px)}
  .rb-story-hero__veil{background:linear-gradient(180deg,rgba(9,10,12,.26),rgba(9,10,12,0) 44%)}
  .rb-story-hero__verse{order:4;max-width:58ch}
  .rb-story-hero__marks{order:5;position:static;margin-top:clamp(1.5rem,3vh,2.25rem)}
  @keyframes rb-enter-story{
    from{opacity:0;transform:rotate(.6deg) translateY(28px) scale(1.02)}
    to{opacity:1;transform:rotate(.6deg)}
  }
  .rb-cap{grid-template-columns:1fr;gap:clamp(1.5rem,4vh,2.5rem);padding-block:clamp(2.5rem,6vh,4.5rem)}
  .rb-cap__corpo,
  .rb-cap:nth-child(even) .rb-cap__corpo,
  .rb-cap--sozinho .rb-cap__corpo{grid-column:1;grid-row:auto;text-align:left}
  .rb-cap__obra,
  .rb-cap:nth-child(even) .rb-cap__obra{grid-column:1;grid-row:auto;margin:0;justify-self:stretch;width:100%}
  .rb-cap--1 .rb-cap__obra,.rb-cap--2 .rb-cap__obra,.rb-cap--3 .rb-cap__obra,
  .rb-cap--4 .rb-cap__obra,.rb-cap--5 .rb-cap__obra{margin-top:0}
  .rb-cap--sozinho .rb-cap__titulo,
  .rb-cap--sozinho .rb-cap__texto,
  .rb-cap--sozinho .rb-cap__citacao{margin-inline:0}
  .rb-cap--sozinho .rb-cap__rotulo{justify-content:flex-start}
  .rb-cap--sozinho .rb-cap__citacao{padding-left:1.25rem;border-left:1px solid var(--rb-line-gold)}
  .rb-jornada__linha{left:calc(var(--rb-gutter) - 6px)}
  .rb-cap__ponto{left:calc(-1 * var(--rb-gutter) + 4px)}

  /* — PRODUTOS — */
  .rb-ed__stage,.rb-servico__stage{grid-template-columns:1fr;gap:clamp(1.75rem,4vh,3rem)}
  .rb-ed__copy,.rb-ed__obra,
  .rb-ed--rev .rb-ed__copy,.rb-ed--rev .rb-ed__obra,
  .rb-servico__obra,.rb-servico__copy{grid-column:1;grid-row:auto;margin-left:0;justify-self:stretch;width:100%;padding-left:0}
  .rb-servico__obra{transform:none;max-width:520px}
  .rb-colecao__barra{flex-direction:column;align-items:flex-start}

  /* — PRESENTE — */
  .rb-gift-hero__grid{grid-template-columns:1fr;gap:clamp(2rem,5vh,3rem)}
  .rb-gift-hero__grid > div:first-child,
  .rb-gift-hero__media{grid-column:1}
  .rb-gift-hero__media{max-width:440px;margin-inline:auto}
  .rb-gift-hero__risco{display:none}
  .rb-gift-form__inner{grid-template-columns:1fr;gap:2rem}

  /* — LISTA DE ESPERA — */
  .rb-wait{min-height:auto;padding-block:calc(var(--rb-header-h) + 4vh) 7vh}
  .rb-wait__art{width:100%;inset:0;opacity:.5}
  .rb-wait__img{
    -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 46%,#000 100%);
    mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 46%,#000 100%);
  }
  .rb-wait__veil{background:linear-gradient(180deg,var(--rb-obsidian) 18%,rgba(9,10,12,.9) 56%,rgba(9,10,12,.96) 100%)}
  .rb-wait__grid{grid-template-columns:1fr;gap:2.5rem}
  .rb-wait__panel{max-width:520px}

  /* — EVENTOS — */
  .rb-next{grid-template-columns:1fr}
  .rb-next__media,.rb-next__body{grid-column:1;grid-row:auto;margin-left:0;padding-left:0}
  .rb-next__body{padding-top:clamp(1.5rem,4vh,2.5rem)}
  .rb-next__scrim{display:none}
  .rb-agenda__link{grid-template-columns:minmax(96px,140px) minmax(0,1fr);grid-template-areas:"date body" "side side";row-gap:1rem}
  .rb-agenda__date{grid-area:date}
  .rb-agenda__body{grid-area:body}
  .rb-agenda__side{grid-area:side;justify-content:space-between}
  .rb-experience__grid{grid-template-columns:1fr;gap:2rem}
  .rb-experience__copy{position:static}
  .rb-past__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rb-past__grid > *{grid-column:span 1!important;margin-top:0!important}

  /* — JOURNAL — */
  .rb-feature__card{grid-template-columns:1fr;gap:1.5rem}
  .rb-feature__media,.rb-feature__body{grid-column:1;grid-row:auto}
  .rb-feature__marca{position:static;display:block;margin-bottom:1rem}
  .rb-newsletter__inner{grid-template-columns:1fr;gap:2rem}
  .rb-gallery--grid{grid-template-columns:repeat(2,minmax(0,1fr))}

  /* — SUPORTE — */
  .rb-help__link{grid-template-columns:minmax(34px,42px) 28px minmax(0,1fr);row-gap:.45rem}
  .rb-help__text{grid-column:3 / -1}
  .rb-help__arrow{display:none}
  .rb-faq__grid,.rb-contact__inner{grid-template-columns:1fr;gap:2rem}
  .rb-faq__aside{position:static}

  /* — LEGAL — */
  .rb-legal__grid{grid-template-columns:1fr;gap:2rem}
  .rb-legal__nav{position:static;padding-bottom:1.5rem;border-bottom:1px solid var(--rb-line)}
  .rb-legal__nav ul{display:flex;gap:.5rem;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-left:0;padding-bottom:.5rem;scrollbar-width:none}
  .rb-legal__nav ul::-webkit-scrollbar{display:none}
  .rb-legal__nav li{flex:none}
  .rb-legal__nav a{padding:.55rem 1rem;border:1px solid var(--rb-line);border-radius:var(--rb-r-pill);white-space:nowrap;font-size:var(--rb-fs-micro)}
  .rb-legal__nav a.is-active{padding-left:1rem;border-color:var(--rb-line-gold);background:rgba(198,164,108,.07)}

  /* — Rodapé — */
  .rb-footer__top{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem}
  .rb-footer__brand{grid-column:1 / -1}
}


/* ==========================  ≤ 900px  =================================== */
@media (max-width:900px){
  .rb-howto__list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rb-works__head{max-width:100%}
}


/* ==========================  ≤ 768px  =================================== */
@media (max-width:768px){
  :root{
    --rb-fs-body:1rem;
    --rb-fs-lead:1.0625rem;
    --rb-section-y:clamp(3.5rem,3rem + 4vw,5rem);
    --rb-section-y-sm:2.75rem;
  }

  /* Palavras de composição menores, mas presentes. */
  .rb-hero__word,.rb-manifesto__word,.rb-method__word,.rb-closing__word,
  .rb-footer__word,.rb-story-hero__word,.rb-jornada__word,.rb-col-hero__word,
  .rb-servico__word,.rb-paper__word,.rb-wait__word,.rb-events-hero__word{font-size:clamp(4.5rem,24vw,9rem)}
  .rb-hero__key{width:120vw;top:-18%;right:-30%}
  .rb-hero__fill,.rb-story-hero__key{display:none}

  /* Marcas de grafite: as grandes ficam, as pequenas saem. */
  .rb-atmos__hachura,.rb-atmos__grade{display:none}
  .rb-atmos__circulo{width:120vw;top:-10%;right:-40%;opacity:.045}

  /* Botões com área de toque confortável. */
  .rb-btn{min-height:52px}
  .rb-actions{width:100%}
  .rb-actions .rb-btn{flex:1 1 auto;min-width:min(100%,260px)}
  .rb-hero .rb-actions .rb-btn--gold,
  .rb-closing .rb-actions .rb-btn--gold,
  .rb-gift .rb-actions .rb-btn{width:100%}

  .rb-expo__slot--2,.rb-expo__slot--3,.rb-expo__slot--4{padding-inline:0}
  .rb-expo__num{top:-1.6em;font-size:.625rem}
  .rb-index__link{grid-template-columns:minmax(36px,44px) minmax(0,1fr);row-gap:.4rem}
  .rb-index__go{display:none}
  .rb-index__desc{grid-column:2}
  .rb-trilha{padding-left:1.9rem}
  .rb-trilha__linha{left:.5rem}
  .rb-trilha__ponto{left:-1.45rem}
  .rb-method__foot{padding-left:1.9rem}
  .rb-about__media{margin-left:calc(-1 * var(--rb-gutter));max-width:100%;transform:none}

  .rb-colecao__grade{grid-template-columns:1fr;row-gap:clamp(2.5rem,6vh,4rem)}
  .rb-colecao__grade > *:nth-child(even){margin-top:0}
  .rb-filtros{gap:.75rem 1.25rem}
  .rb-peca__desc{max-width:100%}

  .rb-gift-items__grid,.rb-benefits__grid{gap:1.5rem}
  .rb-gift-item:nth-child(even),.rb-benefit:nth-child(even){margin-top:0}

  .rb-journal__grid{grid-template-columns:1fr;row-gap:clamp(2.5rem,6vh,4rem)}
  .rb-journal__grid > *:nth-child(even){margin-top:0}
  .rb-single__media{padding-inline:var(--rb-gutter)}

  .rb-acc__btn{padding-block:1.25rem;font-size:1.1rem}
  .rb-acc__inner{padding-right:1.5rem}

  .rb-past__grid{grid-template-columns:1fr}
  .rb-past__cap{opacity:1;transform:none}
  .rb-next__facts{grid-template-columns:repeat(2,minmax(0,1fr))}

  /* No toque não existe hover: a legenda da obra fica sempre visível. */
  .rb-work__info{opacity:1;transform:none;padding:1rem}
  .rb-work::after{opacity:1}
  .rb-work__frame,.rb-work__more{display:none}
  .rb-work__title{font-size:1.1rem}

  .rb-footer__bar{flex-direction:column;align-items:flex-start;gap:.75rem}
  .rb-footer__sign{font-size:.95rem}

  .rb-lightbox{padding:1rem}
  .rb-lightbox__stage{gap:.75rem}
  .rb-lightbox__img{max-height:64vh}
  .rb-lightbox__close{top:auto;bottom:-58px;right:calc(50% - 24px)}
  .rb-lightbox__nav--prev{left:1rem;bottom:-58px}
  .rb-lightbox__nav--next{right:1rem;bottom:-58px}
}


/* ==========================  ≤ 600px  =================================== */
@media (max-width:600px){
  :root{--rb-gutter:1.25rem;--rb-header-h:64px}

  h1,.rb-h1{letter-spacing:-.015em}
  .rb-hero__title{font-size:clamp(2.15rem,8.5vw,2.9rem);max-width:100%}
  .rb-story-hero__title,.rb-wait__title,.rb-col-hero__title{font-size:clamp(2rem,8vw,2.7rem);max-width:100%}
  .rb-manifesto__title,.rb-closing__title{max-width:100%}
  .rb-manifesto__body{max-width:100%}
  .rb-eyebrow{letter-spacing:.24em}
  .rb-eyebrow::before{width:20px}

  .rb-hero__art,.rb-story-hero__art{width:100%;transform:none}
  .rb-hero__plate,.rb-story-hero__plate{height:min(42svh,360px);box-shadow:0 34px 70px -40px rgba(0,0,0,.9),0 0 0 1px rgba(244,241,234,.045)}
  @keyframes rb-enter-art{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
  @keyframes rb-enter-story{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
  .rb-hero__spot,.rb-story-hero__spot{filter:blur(20px)}
  .rb-hero__marks,.rb-story-hero__marks{gap:.85rem}
  .rb-hero__side,.rb-story-hero__side{letter-spacing:.2em;font-size:.625rem}

  .rb-gift-items__grid,.rb-benefits__grid,.rb-howto__list{grid-template-columns:1fr}
  .rb-gallery--grid{grid-template-columns:1fr}
  .rb-next__facts{grid-template-columns:1fr;gap:1rem}
  .rb-agenda__link{grid-template-columns:1fr;grid-template-areas:"date" "body" "side";gap:.75rem}
  .rb-agenda__day{font-size:2.2rem}
  .rb-help__link{grid-template-columns:minmax(30px,36px) minmax(0,1fr)}
  .rb-help__icon{display:none}
  .rb-help__text{grid-column:2}

  .rb-footer__top{grid-template-columns:1fr;gap:2rem}
  .rb-footer__desc{max-width:100%}
  .rb-menu{padding-top:calc(var(--rb-header-h) + 1rem)}
  .rb-menu__link{font-size:1.6rem;padding-block:.95rem}

  /* 16px evita o zoom automático do iOS ao focar um campo. */
  .rb-input,.rb-textarea,.rb-select{min-height:50px;font-size:16px}
  .rb-textarea{min-height:130px}

  /* Fundo com menos camadas: desempenho antes de sofisticação. */
  .rb-bg__dots{display:none}
  .rb-bg::after{opacity:.24}
  .rb-expo .rb-work::before,.rb-peca__spot,.rb-cap__spot{display:none}
  .rb-expo .rb-work{box-shadow:0 28px 60px -40px rgba(0,0,0,.85),0 0 0 1px rgba(244,241,234,.04)}
  .rb-about__spot,.rb-ed__spot,.rb-servico__spot{filter:blur(18px)}
  .rb-card::after,.rb-hero__plate::after{display:none}
  .rb-cursor{display:none}
}


/* ==========================  ≤ 420px  =================================== */
@media (max-width:420px){
  :root{--rb-gutter:1.1rem}
  .rb-brand__name{font-size:1.15rem;letter-spacing:.13em}
  .rb-hero__title{font-size:2rem}
  .rb-manifesto__title{font-size:1.9rem}
  .rb-numeral{font-size:2rem}
  .rb-menu__link{font-size:1.45rem}
  .rb-btn{padding-inline:1.15rem;font-size:.6875rem;letter-spacing:.13em}
  .rb-acc__btn{font-size:1.02rem;gap:1rem}
  .rb-acc__inner{padding-right:1rem}
  .rb-quote__text{font-size:1.35rem}
  .rb-404__num{font-size:4.5rem}
  .rb-search__form{flex-direction:column}
}


/* ===============  Toque · sem hover, sem profundidade de mouse  ========= */
@media (hover:none){
  .rb-poeira{display:none}
  [data-rb-depth]{translate:none!important}
  .rb-expo .rb-work::before,.rb-peca__spot,.rb-cap__spot{opacity:1}
  .rb-index__go,.rb-help__arrow,.rb-peca__cta{opacity:1;transform:none}
  .rb-past__cap{opacity:1;transform:none}
  .rb-method__step:hover,.rb-agenda__link:hover,.rb-index__link:hover,.rb-help__link:hover{padding-left:0;background:none}
  .rb-cursor{display:none}
  /* Alvo de toque nunca abaixo de 44px. */
  .rb-nav__link,.rb-footer__list a,.rb-legal__nav a,.rb-journal__cats a{padding-block:.7rem}
}


/* ===============  Telas baixas · o hero não pode empurrar tudo  ========= */
@media (max-height:680px) and (min-width:1025px){
  .rb-hero,.rb-story-hero,.rb-wait{min-height:auto;padding-block:calc(var(--rb-header-h) + 3rem) 4rem}
  .rb-hero__cue{display:none}
  .rb-hero__plate,.rb-story-hero__plate{height:min(64svh,480px)}
}


/* ==========================  Impressão  ================================= */
@media print{
  .rb-bg,.rb-header,.rb-menu,.rb-cursor,.rb-lightbox,.rb-poeira,.rb-atmos,
  .rb-footer__top,.rb-actions,.rb-form,.rb-hero__cue,.rb-legal__nav,
  [class*="__word"]{display:none!important}
  body{background:#fff;color:#000;font-size:11pt}
  h1,h2,h3,h4{color:#000}
  .rb-on-paper{background:#fff}
  .rb-container{max-width:100%;padding:0}
  section{padding-block:1rem!important;min-height:0!important}
  a{color:#000;text-decoration:underline}
  .rb-acc__panel{height:auto!important;overflow:visible!important}
  .rb-legal__block{page-break-inside:avoid;border-bottom:1px solid #ccc}
  [data-rb-reveal]{opacity:1!important;transform:none!important}
}
