.preview-direct { display:none; }
.button, .plan .button, .hero-action .button,
.site-header .nav-cta, .mobile-cta > a,
.footer-contact, .footer-compare, .footer-back, .text-link {
  justify-content:center;
  text-align:center;
  gap:0;
}
.button { font-weight:600; }
.button:active, .footer-contact:active { filter:brightness(.94); }
.footer-instagram { text-align:center; }
.footer-instagram strong { justify-content:center; gap:0; }
.footer-back svg { display:none; }
.footer-back span { display:inline; }
@media(max-width:1024px) {
  :root { --mobile-section:48px; }
  h1,h2,h3,strong,a { overflow-wrap:anywhere; }
  .intro-strip strong { white-space:normal; min-width:0; }
  .intro-strip > a { min-width:0; }
  .site-header .header-inner { flex-wrap:wrap; }
  .site-header nav { min-width:0; }
  .site-header .nav-cta { white-space:normal; text-align:center; }
  .hero-art { height:var(--preview-hero-height,365px); }
  .hero h1 { min-height:188px; font-size:clamp(34px,8.7vw,40px); line-height:1.12; letter-spacing:-.025em; }
  .hero-copy > .hero-definition { margin-top:56px; }
  .hero-definition { max-width:40ch; }
  .hero-assurance { font-size:14px; }
  .hero-credit-terms { font-size:14px; }
  .hero-credit-terms a { text-decoration-thickness:1px; }
  .hero-copy > .hero-mobile-price { margin-top:22px; }
  .preview-direct { display:flex; justify-content:center; align-items:center; gap:16px; min-height:48px; font-size:14px; font-weight:600; margin-top:6px; }
  .quick-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding-block:5px; gap:4px; width:100%; padding-inline:12px; box-shadow:0 6px 18px #3a172509; }
  .quick-nav a { min-width:0; min-height:48px; justify-content:center; flex-wrap:wrap; font-size:13px; border-radius:6px; padding:5px; }
  .quick-nav a[aria-current] { background:var(--wine); color:var(--cream); }
  .recognition-layout { gap:22px; }
  .recognition-list li { padding-block:13px; }
  .solution-points { gap:20px; }
  .solution-points h3 { font-size:23px; }
  .solution-points article { padding-top:16px; }
  .solution-points p { margin-top:8px; }
  .benefit-entry, .benefit-entry.has-photo, .benefit-entry.has-art { grid-template-columns:96px minmax(0,1fr); gap:18px; padding-block:24px; align-items:start; }
  .benefit-media { position:sticky; top:80px; }
  .benefit-media > img { height:auto; aspect-ratio:3/4; object-fit:cover; object-position:center 30%; border-radius:10px; }
  .benefit-entry.has-photo { grid-template-columns:minmax(0,1fr); gap:18px; }
  .has-photo .benefit-media { position:static; }
  .has-photo .benefit-media > img { aspect-ratio:2/1; object-position:center 35%; }
  .benefit-title > svg { display:none; }
  .benefit-title h3 { font-size:24px; line-height:1.15; letter-spacing:-.02em; }
  .benefit-copy .benefit-promise { margin-top:10px; font-weight:600; }
  .benefit-copy p { margin-top:8px; font-size:16px; line-height:1.6; }
  .benefit-art { width:96px; min-height:112px; }
  .magazine-art { padding:12px 5px; transform:rotate(-3deg); }
  .magazine-art > span:last-child { font-size:16px; }
  .magazine-art svg { width:22px; height:22px; }
  .geometry-art, .luvi-art { padding:14px 6px; }
  .geometry-art > span, .luvi-art > span { font-size:16px; }
  .luvi-art small { display:none; }
  .section-intro { margin-bottom:20px; }
  .early-offer { margin-top:20px; }
  .pricing { border-block:1px solid var(--line); }
  .pricing-heading > p { margin-top:16px; }
  .preview-common { margin:24px 0; border-block:1px solid var(--line); }
  .preview-common > summary { padding-block:18px; min-height:58px; font-size:16px; font-weight:600; cursor:pointer; }
  .preview-common .common-inclusions { padding:0 0 22px; margin:0; border:0; background:transparent; }
  .preview-common .common-inclusions h3 { display:none; }
  .preview-common .common-inclusions ul { grid-template-columns:minmax(0,1fr); gap:12px; }
  .plan { padding:24px; }
  .plan h3 { display:flex; flex-direction:row; align-items:center; gap:10px; font-size:28px; }
  .plan-symbol { width:25px; height:25px; flex-shrink:0; }
  .plan-base { display:none; }
  .plan-description { padding-bottom:18px; border-bottom:1px solid var(--line); }
  .featured .plan-description { border-color:#fff8eb40; }
  .plan ul { margin:16px 0; }
  .plan li { line-height:1.55; padding-block:5px; }
  .price { max-width:110px; }
  .price .amount { font-size:42px; }
  .price .period { font-size:12px; }
  .routine-heading { grid-template-columns:minmax(0,1fr) 112px; gap:18px; align-items:start; }
  .routine-heading h2 { grid-column:1/-1; }
  .routine-heading > p { grid-column:1; }
  .routine-heading > .routine-portrait { grid-column:2; grid-row:2; width:112px; height:150px; aspect-ratio:3/4; object-fit:cover; border-radius:40px 8px 8px 8px; margin:0; }
  .preview-agenda { border-bottom:1px solid var(--line); }
  .preview-agenda summary { min-height:80px; padding:16px 30px 16px 0; position:relative; list-style:none; cursor:pointer; }
  .preview-agenda summary::-webkit-details-marker { display:none; }
  .preview-agenda summary::after { content:'+'; position:absolute; right:4px; top:28px; color:var(--ruby); font-size:22px; }
  .preview-agenda[open] summary::after { content:'−'; }
  .preview-agenda .schedule { display:block; font-size:13px; margin-bottom:4px; }
  .preview-agenda h3 { font-size:23px; margin:0; }
  .preview-agenda > p { padding:0 22px 22px 0; font-size:16px; line-height:1.7; }
  .founder-letter + .text-link { min-height:48px; display:inline-flex; align-items:center; }
  .footer-invitation { gap:24px; }
  .footer-grid { row-gap:28px; }
  .footer-column a { min-height:48px; }
  .mobile-cta { flex-wrap:wrap; padding-block:10px calc(10px + env(safe-area-inset-bottom)); }
  .mobile-cta > span { min-width:0; flex:1; }
  .mobile-cta a { min-width:0; flex:1; gap:0; justify-content:center; text-align:center; }
  .mobile-cta strong { white-space:normal; }
}
@media(max-width:359px) {
  .benefit-entry.has-art { grid-template-columns:76px minmax(0,1fr); gap:14px; }
  .benefit-art { width:76px; }
  .benefit-title h3 { font-size:22px; }
  .plan { padding:22px 18px; grid-template-columns:minmax(0,1fr); }
  .plan .price { grid-column:1; grid-row:auto; justify-content:start; margin-top:14px; max-width:none; }
  .plan-description { grid-row:auto; }
  .plan h3 { font-size:28px; }
}
@media(prefers-reduced-motion:reduce) { .quick-nav { scroll-behavior:auto; } }
.footer-back span { display:inline; }

/* Real app screens and the illustrated meeting example. */
.app-gallery {
  display: grid;
  gap: clamp(12px, 2.2vw, 28px);
  align-items: start;
}
.app-gallery-overview {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 0 36px;
}
.app-gallery-daily {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-column: 1 / -1;
  width: min(100%, 720px);
  margin-inline: auto;
}
.app-gallery a, .proof-figure a { display: block; }
.app-gallery img, .benefit-entry .proof-figure img {
  width: 100%;
  height: auto;
  aspect-ratio: auto;
  border: 1px solid var(--line);
  border-radius: 12px;
}
.app-gallery figcaption, .proof-figure figcaption {
  margin-top: 8px;
  color: var(--muted);
  font-size: .875rem;
}
.benefit-editorial > :is(#beneficio-encontros, #beneficio-mapa, #beneficio-luvi) {
  grid-template-columns: minmax(0, 1fr);
}
.benefit-entry .real-media { position: static; width: 100%; }
.force-word { display: inline-flex; align-items: center; gap: 8px; }
.force-word img { width: 32px; height: 32px; border-radius: 6px; }
.meeting-demo { padding: 12px; border-radius: 12px; background: var(--wine); color: var(--cream); }
.meeting-top { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin-bottom: 10px; }
.meeting-top span { color: var(--gold); font-size: .8125rem; }
.meeting-demo figcaption { margin-top: 10px; color: var(--cream); font-size: .8125rem; }
@media (max-width: 599px) {
  .app-gallery-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Equal frames keep the original screenshots readable at full size. */
.app-gallery { align-items: stretch; }
.app-gallery a {
  display: grid;
  place-items: center;
  aspect-ratio: 2 / 3;
  overflow: hidden;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 12px;
}
.app-gallery img { width: 100%; height: 100%; min-height: 0; object-fit: contain; border: 0; border-radius: 0; }
.app-gallery figcaption { text-align: center; font-weight: 600; }
.app-gallery-daily a { aspect-ratio: 3 / 4; }
.intro-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.intro-strip > a { display: grid; grid-template-rows: auto auto; grid-row: auto; gap: 8px; justify-items: center; align-content: center; padding-inline: 4px; }
.intro-strip strong { font-size: clamp(14px, 4vw, 26px); }
.force-word img { width: 36px; height: 36px; border-radius: 0; }
.force-word { color: var(--gold); }
.meeting-demo { padding: clamp(12px, 2.5vw, 18px); }
.meeting-demo > figcaption { color: var(--gold); }
@media (max-width: 1024px) {
  .intro-strip { grid-template-rows: auto; padding-block: 14px; }
}

.meeting-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; list-style: none; padding: 0; margin: 0; }
.meeting-grid li { position: relative; overflow: hidden; aspect-ratio: 4 / 3; border-radius: 6px; background: var(--ruby); }
.benefit-entry .meeting-grid img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; border-radius: 0; }
.meeting-grid span { position: absolute; inset: auto 0 0; padding: 14px 7px 5px; background: linear-gradient(transparent, #221018ed); color: white; font-size: .75rem; line-height: 1.25; }
.meeting-grid small { display: block; color: var(--gold); font-size: .6875rem; }
.meeting-speaker::after { content: ""; position: absolute; inset: 0; border: 2px solid var(--gold); border-radius: inherit; pointer-events: none; }
@media (max-width: 599px) { .meeting-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.meeting-demo { background: #202124; }
.meeting-top > span { color: #e8eaed; }
.meeting-grid li { background: #303134; }
.meeting-speaker::after { border-color: #8ab4f8; }
.meeting-controls { display: flex; justify-content: center; gap: 8px; margin-top: 12px; }
.meeting-controls span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #3c4043; color: white; }
.meeting-controls span:last-child { width: 44px; border-radius: 24px; background: #c5221f; }
.meeting-controls svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.meeting-demo > figcaption { color: #dadce0; }

.map-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: clamp(24px, 5vw, 64px);
  align-items: center;
}
.map-section p { margin-top: 16px; }
.map-section ol { padding-inline-start: 24px; margin-block: 18px; }
.map-section li + li { margin-top: 8px; }
.map-section .proof-figure img { height: auto; border: 1px solid var(--line); border-radius: 12px; }
@media (max-width: 768px) {
  .map-section { grid-template-columns: minmax(0, 1fr); }
}

/* Device frames fitted to the previews. Links open the full captures. */
a.device-mockup {
  position: relative;
  display: block;
  height: auto;
  border: 0;
  background: none;
  overflow: visible;
}
.device-screen {
  display: block;
  position: relative;
  overflow: hidden;
  background: #f8f2e9;
}
a.device-mockup .device-screen img {
  display: block;
  width: 100%;
  height: auto;
  border: 0;
  border-radius: 0;
}
a.device-mockup--iphone {
  aspect-ratio: auto;
  padding: 3px;
  border: 1px solid #a58b65;
  border-radius: clamp(13px, 2vw, 24px);
  background: linear-gradient(145deg, #f4e5cc, #b79b75 65%, #e8d4b5);
  box-shadow: 0 6px 14px #3a172519;
}
.device-mockup--iphone .device-screen {
  aspect-ratio: 5 / 7;
  border-radius: clamp(9px, 1.6vw, 20px);
}
.app-gallery-daily .device-screen { aspect-ratio: 4 / 5; }
a.device-mockup--iphone .device-screen img {
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.device-mockup--iphone .device-screen::after {
  content: "";
  position: absolute;
  inset: 3px auto auto 50%;
  transform: translateX(-50%);
  width: 17%;
  height: 3px;
  border-radius: 9px;
  background: #3a2b2c;
  pointer-events: none;
}
a.device-mockup--macbook { aspect-ratio: auto; padding: 0 3% 7px; }
.device-mockup--macbook .device-screen {
  border: 3px solid #b6a59a;
  border-bottom-width: 4px;
  border-radius: 9px 9px 3px 3px;
}
.device-mockup--macbook::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 7px;
  border-radius: 2px 2px 45% 45%;
  background: linear-gradient(#eee7dd, #ae9e90);
  box-shadow: 0 3px 6px #3a172522;
}

/* The PDF's editorial sections share a consistent reading rhythm. */
.hero-definition p + p, main section > p + p, .editorial-split p + p, .map-section p + p { margin-top: 12px; }
main section > h2 + p, main section > h2 + ul, main section > h2 + div, .editorial-split, .app-gallery { margin-top: 24px; }
main section > .button, .editorial-split .button, .map-section .button, .method .shell > .button, .founder-letter + .button, .rewards-copy > .button { margin-top: 24px; }
.method .forces + p { margin-top: 20px; }
.editorial-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(20px, 5vw, 64px); align-items: start; }
.editorial-split > img { border-radius: 12px; }
.skills-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.skills-grid details { border: 1px solid var(--line); border-radius: 10px; padding: 16px; }
.skills-grid summary { cursor: pointer; font-weight: 600; }
.skills-grid p { margin-top: 12px; }
.recognition-copy .recognition-list { margin-bottom: 20px; }
.app-gallery-daily { margin-inline: 0; }
#beneficio-encontros .meeting-grid img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; }
#duvidas .faq-list { max-width: 820px; }
@media (max-width: 768px) {
  .editorial-split, .skills-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 1024px) {
  .hero h1 { min-height: 0; }
  .closing-inner > div { display: block; }
  .closing-inner .button { margin-top: 20px; }
}

/* Editorial hierarchy for the approved PDF copy. */
main h2 {
  font-size: clamp(2rem, 1.35rem + 2.25vw, 3.5rem);
  line-height: 1.09;
  letter-spacing: -.032em;
  text-wrap: balance;
}
.hero h1 { text-wrap: balance; }
.hero-definition p:first-child {
  font-family: var(--serif);
  font-size: clamp(1.22rem, 1.05rem + .45vw, 1.5rem);
  line-height: 1.4;
  color: var(--ruby);
}
.hero-definition p + p { margin-top: 15px; }
.hero-definition p:last-child { color: var(--muted); }
#reconhecimento { border-bottom: 1px solid var(--line); }
#reconhecimento .recognition-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-block: 26px;
}
#reconhecimento .recognition-list li {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--paper);
  font-family: var(--serif);
  font-size: 1.125rem;
  line-height: 1.4;
}
#reconhecimento .recognition-list li::before { content: none; }
#solucao {
  text-align: center;
  padding-block: clamp(48px, 7vw, 100px);
}
#solucao h2 { max-width: 24ch; margin-inline: auto; }
#solucao h2::after {
  content: "";
  display: block;
  width: 38px;
  height: 1px;
  margin: 24px auto 0;
  background: var(--gold);
}
#solucao > p:first-of-type {
  max-width: 52ch;
  font-family: var(--serif);
  font-size: clamp(1.16rem, 1rem + .45vw, 1.42rem);
  line-height: 1.55;
  color: var(--ruby);
}
#experiencia, #rotina, #beneficio-luvi, #duvidas {
  border-top: 1px solid var(--line);
}
#experiencia > h2, #rotina > h2, #beneficio-encontros > h2, #beneficio-luvi > h2,
#beneficio-comunidade > h2, #duvidas > h2 { max-width: 25ch; }
#experiencia > p:first-of-type, #rotina > p:first-of-type, .editorial-split > div > p:first-child,
.map-section p:first-of-type, .rewards-copy > p:first-of-type {
  font-size: clamp(1rem, .94rem + .25vw, 1.15rem);
  color: var(--ruby);
}
#experiencia > p + p, #rotina > p + p, .editorial-split p + p, .map-section p + p { color: var(--muted); }
#experiencia .app-gallery { margin-block: 32px 0; }
#metodo .forces { margin-top: 30px; }
#metodo .forces article { border-radius: 12px; }
#metodo .forces + p { color: var(--cream); }
#habilidades .skills-grid details { background: var(--paper); }
#geometria, #beneficio-encontros, #beneficio-comunidade { border-top: 1px solid var(--line); }
#saschi .founder-letter > p:first-child {
  font-family: var(--serif);
  color: var(--ruby);
  font-size: clamp(1.15rem, 1rem + .45vw, 1.4rem);
  line-height: 1.5;
}
.closing p { margin-block: 14px 0; }
.closing h2 + p { margin-top: 20px; }
.closing p:last-of-type { color: var(--gold); }
.closing .button { margin-top: 24px; }
@media (max-width: 900px) {
  #reconhecimento .recognition-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 599px) {
  #reconhecimento .recognition-list { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  #reconhecimento .recognition-list li { padding: 12px 14px; }
  #experiencia .app-gallery { margin-top: 24px; }
  .editorial-split { gap: 24px; }
}

.hero h1 {
  font-size: clamp(2.75rem, 3.85vw, 4rem);
  line-height: 1.09;
  letter-spacing: -.03em;
}
.hero h1 em { display: block; margin-top: .22em; color: #83445a; }
.hero h1 em::after { display: none; }
@media (max-width: 1024px) {
  .hero-copy { padding-top: clamp(142px, 39vw, 250px); }
  .hero h1 {
    font-size: clamp(1.75rem, 7.1vw, 2.6rem);
    line-height: 1.13;
    max-width: 25ch;
    color: #fff8eb;
  }
  .hero h1 em { color: #f1d9af; }
  .hero-art::after {
    background: linear-gradient(180deg, transparent 17%, #32152230 34%, #321522c9 59%, #321522f5 100%);
  }
  .hero-copy > .hero-definition { margin-top: 52px; }
}

/* Photography and brand signature for the two opening sections. */
#reconhecimento, #solucao {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: center;
  text-align: left;
}
#solucao .opening-photo { grid-column: 2; grid-row: 1; }
#solucao .opening-copy { grid-column: 1; grid-row: 1; }
#solucao h2 { margin-inline: 0; }
#solucao h2::after { margin-inline: 0; }
.opening-photo {
  position: relative;
  overflow: hidden;
  border-radius: 56px 12px 12px;
}
.opening-photo > img { aspect-ratio: 3 / 2; object-fit: cover; }
.opening-signature {
  position: absolute;
  inset: auto auto 12px 12px;
  width: clamp(106px, 15vw, 150px);
  padding: 9px 12px;
  border-radius: 6px;
  background: var(--wine);
}
.opening-copy > h2 + p { margin-top: 20px; }
.opening-copy > p + p { margin-top: 12px; }
.opening-copy > .button { margin-top: 20px; }
#solucao .opening-copy > p:first-of-type {
  font-family: var(--serif);
  font-size: 1.15rem;
  line-height: 1.55;
  color: var(--ruby);
}
#reconhecimento .recognition-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#reconhecimento .recognition-list li:last-child { grid-column: 1 / -1; }
@media (max-width: 768px) {
  #reconhecimento, #solucao { grid-template-columns: minmax(0, 1fr); }
  #solucao .opening-photo, #solucao .opening-copy { grid-column: auto; grid-row: auto; }
  #reconhecimento .recognition-list { grid-template-columns: minmax(0, 1fr); }
  .opening-photo { border-top-left-radius: 36px; }
}

.forces .force-label { color: var(--gold); }
@media (min-width: 1025px) {
  .forces .force-word { grid-row: 1; }
  .forces h3 { grid-row: 2; }
}

#solucao .opening-photo > img { object-position: center 30%; }

.closing .closing-brand { width: min(180px, 65%); height: auto; aspect-ratio: auto; object-fit: contain; border-radius: 0; margin-bottom: 24px; }
.plan h3 { font-size: clamp(1.15rem, 2.4vw, 1.75rem); }

.forces .force-note {
  color: #e0d0c7;
  font-size: var(--reading-support);
  line-height: var(--reading-line);
}
@media (min-width: 1025px) {
  .forces { grid-template-rows: repeat(5, auto); }
  .forces article { grid-row: span 5; }
  .forces .force-note { grid-row: 5; }
}

.map-section > h2 { grid-column: 1 / -1; max-width: 24ch; }
.map-section > div > p:first-child { margin-top: 0; }

#beneficio-comunidade .editorial-split { align-items: center; margin-top: 0; }
#beneficio-comunidade h2 { max-width: 22ch; margin-bottom: 20px; }
#beneficios-produtos { align-items: start; gap: clamp(24px, 4vw, 60px); }
#beneficios-produtos .product-showcase { padding-bottom: 0; }
#beneficios-produtos .collection-photo img { aspect-ratio: auto; height: auto; }
.closing .closing-portrait { aspect-ratio: auto; height: auto; object-fit: contain; }
.app-gallery-daily { width: 100%; max-width: 960px; }
.app-gallery-daily .device-screen { aspect-ratio: 5 / 7; }
@media (min-width: 769px) {
  .app-gallery-daily { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* Shared framing for the two adjacent editorial sections. */
#beneficio-comunidade .editorial-split, #beneficios-produtos {
  grid-template-columns: minmax(0, 1fr) minmax(0, .94fr);
  gap: clamp(24px, 4vw, 60px);
  align-items: center;
}
#beneficio-comunidade .editorial-split > img,
#beneficios-produtos .collection-photo img {
  width: 100%;
  height: auto;
  border-radius: 48px 12px 12px;
}
#beneficios-produtos .collection-photo figcaption {
  position: static;
  padding: 10px 0 0;
  background: none;
  color: var(--wine);
  font-size: 1.15rem;
}
#beneficios-produtos .product-showcase { column-gap: 16px; row-gap: 12px; }
#beneficios-produtos .product-showcase > p { align-self: center; }
@media (max-width: 768px) {
  #beneficio-comunidade .editorial-split, #beneficios-produtos {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}

@media (min-width: 769px) {
  #beneficios-produtos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto auto auto;
    row-gap: 12px;
    align-items: stretch;
  }
  #beneficios-produtos .rewards-copy {
    grid-area: 1 / 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  #beneficios-produtos .rewards-copy > p { max-width: none; }
  #beneficios-produtos .rewards-copy > .button { margin-top: auto; }
  #beneficios-produtos .rewards-copy > p:last-of-type { margin-bottom: 24px; }
  #beneficios-produtos .product-showcase {
    grid-area: 1 / 2 / span 3;
    grid-template-rows: subgrid;
  }
  #beneficios-produtos .collection-photo {
    grid-row: 1 / span 2;
    display: grid;
    grid-template-rows: subgrid;
  }
  #beneficios-produtos .collection-photo img {
    align-self: stretch;
    object-fit: cover;
  }
  #beneficios-produtos .collection-photo figcaption { padding-top: 0; }
  #beneficios-produtos .product-showcase > p,
  #beneficios-produtos .jewelry-photo { grid-row: 3; }
}
