:root {
  --ink: #202022;
  --coffee: #171617;
  --graphite: #1b1c1f;
  --ivory: #f6f2ea;
  --sand: #eae0d0;
  --gold: #e7c486;
  --gold-ink: #755125;
  --quiet: #55514d;
  --line: #d2c8ba;
  --dark-line: #ffffff25;
  --sans: 'Segoe UI', system-ui, sans-serif;
  --display: 'Futura Md BT', 'Century Gothic', 'Aptos', var(--sans);
}
*, *::before, *::after { box-sizing: border-box }
html { scroll-behavior: smooth }
body { margin: 0; background: var(--ivory); color: var(--ink); font: 16px/1.65 var(--sans) }
a { color: inherit }
img { display: block; width: 100% }
h1, h2, h3, p, figure { margin: 0 }
h1, h2, h3 { font-family: var(--display); font-weight: 700; line-height: 1.05; letter-spacing: -.04em; overflow-wrap: anywhere }
h1 { font-size: clamp(3rem, 6.5vw, 6.6rem) }
h2 { font-size: clamp(2.2rem, 4vw, 4rem) }
h3 { font-size: clamp(1.35rem, 2vw, 2rem) }
em { color: var(--gold-ink); font-style: normal }
:focus-visible { outline: 2px solid #ab754b; outline-offset: 4px }
.wrap { width: min(calc(100% - 96px), 1232px); margin-inline: auto }
.skip:not(:focus) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%) }
.skip:focus { position: fixed; z-index: 10; top: 8px; left: 8px; padding: 8px; background: var(--ivory); color: var(--ink) }

.site-head { background: #111214; color: var(--ivory); border-bottom: 1px solid #dec49d22 }
.head-row, .brand, .site-head nav { display: flex; align-items: center }
.head-row { min-height: 78px; justify-content: space-between; gap: 20px }
.brand { gap: 11px; text-decoration: none; font-family: var(--display); font-size: .92rem; font-weight: 700; letter-spacing: .12em; line-height: 1.15; white-space: nowrap }
.brand i { color: var(--gold); font-style: normal }
.brand small { display: block; margin-top: 5px; color: #d6c2aa; font-size: .57rem; letter-spacing: .23em }
.monogram { width: 44px; height: 44px; flex: none; border-radius: 9px }
.site-head nav { gap: clamp(16px, 3vw, 39px); font-size: .87rem }
.site-head nav a { color: #e6dacf; text-decoration: none }
.site-head nav a:hover { color: var(--gold) }
.site-head .nav-catalog { display: inline-flex; align-items: center; gap: 9px; padding: 8px 13px; border: 1px solid #a3876088; border-radius: 5px; color: #f0d5b1 }
.home-banner { display: block; background: var(--coffee); border-bottom: 1px solid #dec49d38 }
.home-banner img { width: 100%; height: auto }
.home-banner:focus-visible { outline-offset: -4px }
.eyebrow { color: var(--gold-ink); font-size: .69rem; font-weight: 720; letter-spacing: .15em; line-height: 1.45; text-transform: uppercase }
.hero, .collection-section, .editor-note, .benefits, .offer-section, .footer { color: var(--ivory) }
.hero em, .collection-section em, .editor-note em, .benefits em { color: var(--gold) }

.hero {
  padding-block: clamp(44px, 5.5vw, 83px);
  background: radial-gradient(ellipse at 82% 35%, #4a3828 0%, transparent 56%), #171719;
  border-bottom: 1px solid #ad87594a;
}
.hero-grid { display: grid; grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr); gap: clamp(30px, 6.1vw, 96px); align-items: center }
.hero-grid.single { grid-template-columns: minmax(0, 1fr) }
.hero-kicker { display: inline-flex; align-items: center; gap: 9px; color: #ebc99f }
.hero-kicker::before { content: ''; width: 22px; height: 1px; background: #cc9a66 }
.hero-kicker span { color: #d49f6b }
.hero h1 { margin: 12px 0 17px; max-width: 12ch }
.home-hero h1 { font-size: clamp(3.25rem, 6.8vw, 6.5rem); line-height: .99 }
.home-hero h1 em { display: block }
.hero p { max-width: 43ch; color: #dfd2c4; font-size: 1.05rem }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px 22px; margin-top: 25px }
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 48px;
  padding: 10px 18px;
  border: 1px solid transparent;
  border-radius: 4px;
  text-decoration: none;
  text-align: center;
  font-size: .87rem;
  font-weight: 700;
  overflow-wrap: anywhere;
}
.gold { background: #e8c88f; color: #211a12 }
.gold:hover { background: #f1dabe }
.disabled { border-color: #b28d687d; color: #ead8c4 }
.text-link { font-size: .88rem; font-weight: 625; text-underline-offset: 5px; text-decoration-color: #a38668 }
.text-link:hover { text-decoration-color: currentColor }
.hero-figure { min-width: 0; padding: 11px; background: #181514bd; border: 1px solid #b28d6857; border-radius: 10px; box-shadow: 0 26px 56px #0004 }
.figure-head, .hero-figure figcaption { display: flex; justify-content: space-between; align-items: center; gap: 10px 16px; padding: 6px 5px 12px; color: #dcc8b1; font-size: .77rem }
.figure-head > span:last-child { text-align: right; overflow-wrap: anywhere }
.figure-head .eyebrow, .hero-figure figcaption .eyebrow { color: #d5ad83 }
.hero-figure figcaption { padding: 13px 5px 4px }
.hero-figure figcaption a { display: block; margin-top: 3px; color: var(--ivory); font: 700 clamp(.95rem, 1.55vw, 1.24rem)/1.2 var(--display); text-decoration: none; overflow-wrap: anywhere }
.hero-figure figcaption a:hover { text-decoration: underline }
.figure-price { color: #f4dec5; font-weight: 680; white-space: nowrap }
.figure-art { display: block; text-decoration: none }

.amor { --stage-light: #a26a59; --stage-dark: #4c302c; --cover: #683c35; --cover-edge: #bd8d73; --tone: #684740 }
.dinheiro { --stage-light: #a99169; --stage-dark: #504233; --cover: #594632; --cover-edge: #c3a77b; --tone: #6c583e }
.vida { --stage-light: #8e9276; --stage-dark: #404a3d; --cover: #414e3f; --cover-edge: #a9af8b; --tone: #4d5a4d }
.art {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 1.27;
  overflow: hidden;
  isolation: isolate;
  border-radius: 5px;
  background: radial-gradient(ellipse at 50% 40%, var(--stage-light), var(--stage-dark) 76%);
}
.art::after { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .22; background: repeating-linear-gradient(123deg, transparent 0 4px, #fff2 5px, transparent 6px 10px) }
.orbit { position: absolute; width: 70%; height: 96%; transform: rotate(-24deg); border: 1px solid #fff5; border-radius: 50%; box-shadow: 0 0 0 14px #fff1, 0 0 0 29px #fff1, 0 0 0 45px #fff1 }
.book {
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 43%;
  height: 81%;
  min-width: 0;
  padding: 6% 4% 5% 6%;
  overflow: hidden;
  transform: rotate(-8deg);
  border: 1px solid var(--cover-edge);
  border-radius: 2px 6px 6px 2px;
  background: linear-gradient(90deg, #0d0a0947 0%, #0d0a0947 4%, #f8ddba2c 5%, transparent 8%, #0002 100%), var(--cover);
  color: #f8e6d0;
  box-shadow: 6px 5px 0 #e4c9ac, 9px 8px 0 #30241d, 19px 25px 28px #1d141088;
}
.book span, .book small { font-size: clamp(.42rem, .7vw, .62rem); line-height: 1.12; letter-spacing: .14em }
.book i { font-size: clamp(.54rem, 1.4vw, 1.2rem); line-height: 1; font-style: normal; color: #ecd0a7 }
.book strong { font: 700 clamp(.8rem, 2.05vw, 2.12rem)/1.09 var(--display); overflow-wrap: anywhere }
.user-art { background: radial-gradient(ellipse at 50% 28%, #725c4c, #332825 80%) }
.user-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain }
.user-art::after { display: none }

.section { padding-block: clamp(48px, 6.5vw, 94px) }
.section-intro { margin-bottom: 28px }
.section-intro h1, .section-intro h2 { margin: 7px 0 9px }
.section-intro p, .prose, .card p, .info p { color: var(--quiet) }
.section-intro p { max-width: 60ch }
.collection-section { background: var(--graphite) }
.collection-section .eyebrow, .editor-note .eyebrow, .benefits .eyebrow, .offer-section .eyebrow, .footer .eyebrow { color: var(--gold) }
.collection-section .section-intro p, .benefits .section-intro p, .offer p { color: #d9c9bb }
.collection-grid, .card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px }
.collection {
  position: relative;
  display: block;
  min-height: 212px;
  padding: 23px 24px 53px;
  overflow: hidden;
  border: 1px solid #ddc19d3d;
  border-radius: 5px;
  background: linear-gradient(145deg, #ffffff05, transparent 55%), #242427;
  text-decoration: none;
}
.collection::after { content: ''; position: absolute; width: 120px; height: 120px; right: -26px; bottom: -53px; transform: rotate(45deg); border: 1px solid #e7c48635; box-shadow: 0 0 0 17px #ffffff06, 0 0 0 34px #ffffff04; pointer-events: none }
.collection h3 { margin: 12px 0 8px }
.collection p { max-width: 32ch; color: #efe2d6; font-size: .91rem }
.collection-arrow { position: absolute; z-index: 1; right: 17px; bottom: 14px; color: #f0d0a5; font-size: 1.2rem }
.collection:hover { border-color: #dcb48d99 }

.catalog { background: #efe7da }
.card { display: flex; flex-direction: column; min-width: 0; border: 1px solid #ccbbaa; border-radius: 8px; background: var(--ivory) }
.card:hover { border-color: #ab8667 }
.card-art { position: relative; display: block; margin: 8px 8px 0; text-decoration: none }
.card-art .art { aspect-ratio: 1.47 }
.card-art .book strong { font-size: clamp(.7rem, 1.68vw, 1.65rem) }
.art-label { position: absolute; top: 10px; left: 10px; z-index: 2; padding: 4px 8px; border: 1px solid #f0dbc55c; border-radius: 3px; background: #201915e8; color: #f9e5cc; font-size: .59rem; font-weight: 720; letter-spacing: .1em }
.card-body { display: flex; flex: 1; flex-direction: column; gap: 10px; padding: 18px }
.card h3 a { text-decoration: none }
.card h3 a:hover { text-decoration: underline }
.card p { font-size: .91rem; overflow-wrap: anywhere }
.card-foot { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: auto; padding-top: 12px; border-top: 1px solid var(--line) }
.card-foot b { font-size: .95rem }
.card-foot .text-link { color: #69452d }

.editor-note { background: radial-gradient(ellipse at 5% 3%, #49322b, transparent 63%), var(--graphite) }
.manifesto, .faq-layout, .story-grid, .sample-grid { display: grid; grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr); gap: clamp(22px, 5vw, 80px) }
.manifesto { align-items: center }
.story-grid > :only-child { grid-column: 1 / -1 }
.manifesto .section-intro, .faq-layout .section-intro, .sample-grid .section-intro { margin-bottom: 0 }
.manifesto p { max-width: 48ch; margin-bottom: 13px; color: #e4d7c9; font-size: 1.06rem }

.faq details { border-bottom: 1px solid var(--line) }
.faq details:first-child { border-top: 1px solid var(--line) }
summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 15px 0; cursor: pointer; font-weight: 670; list-style: none }
summary::-webkit-details-marker { display: none }
summary::after { content: ''; flex: none; width: 8px; height: 8px; margin-inline: 3px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg) }
details[open] > summary::after { transform: rotate(225deg) }
.disclosure-body { padding: 0 20px 16px 0; color: var(--quiet); overflow-wrap: anywhere }
.disclosure-body p + p, .prose p + p { margin-top: .7em }

.footer { padding: 44px 0 16px; background: #141212; border-top: 1px solid #dec49d28 }
.footer-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) 1fr 1fr; gap: 22px; padding-bottom: 25px }
.footer-grid nav { display: grid; justify-items: start; align-content: start; gap: 6px }
.footer-grid nav a, .footer p { color: #dbccbd; font-size: .83rem }
.footer p { margin-top: 12px }
.footer-end { display: flex; justify-content: space-between; gap: 10px; padding-top: 13px; border-top: 1px solid var(--dark-line); color: #bca893; font-size: .62rem; letter-spacing: .18em }
.preview { padding: 8px 18px; background: #f1d9b4; color: var(--ink); text-align: center; font-weight: 650 }
.collection-page .section-intro { margin-top: 24px }
.empty { padding: 24px; border: 1px solid var(--line); border-radius: 7px }

.product-hero { padding-top: clamp(34px, 4.4vw, 66px) }
.product-hero h1 { max-width: 18ch; font-size: clamp(2.6rem, 4.35vw, 4.65rem); line-height: 1.04 }
.product-hero .hero-kicker { display: flex; width: fit-content }
.breadcrumb { display: inline-block; margin-bottom: 22px; color: #e3d1be; text-decoration: none }
.breadcrumb:hover { text-decoration: underline }
.product-hero .edition-name { margin-bottom: 7px; color: #f3dfca; font-weight: 700 }
.product-hero .figure-price { font-size: 1rem }
.product-hero-figure { display: grid; min-width: 0; gap: 12px }
.product-hero-visual { display: grid; place-items: center; min-width: 0 }
.product-hero-visual .user-art { display: contents }
.product-hero-visual .user-art img {
  position: static;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: min(64vh, 37rem);
  max-height: min(64svh, 37rem);
  object-fit: contain;
}
.product-hero-visual .art:not(.user-art) {
  width: min(100%, 28rem);
  overflow: visible;
  background: none;
}
.product-hero-visual .orbit, .product-hero-visual .art::after { display: none }
.product-hero-figure figcaption {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
  gap: 4px 12px;
  color: #dcc8b1;
  font-size: .77rem;
}
.product-hero-figure figcaption .eyebrow { color: #d5ad83 }
.prose { max-width: 64ch; font-size: 1.05rem; overflow-wrap: anywhere }
.reading-panel { align-self: start; padding: 22px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff42 }
.reading-panel h3, .support h3 { margin-bottom: 12px; font-size: 1.55rem }
.editorial-list { display: grid; list-style: none; padding: 0; margin: 0 }
.editorial-list li { display: grid; grid-template-columns: 2.2ch minmax(0,1fr); align-items: baseline; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); overflow-wrap: anywhere }
.editorial-list li:last-child { border-bottom: 0 }
.editorial-list li > span { color: var(--gold-ink); font-weight: 700; font-size: .73rem; letter-spacing: .03em }
.benefits { background: linear-gradient(125deg, #251d1a, var(--graphite)); border-block: 1px solid #b28d684f }
.benefit-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px }
.benefit-grid li, .benefit-grid li:last-child { display: flex; flex-direction: column; align-items: start; gap: 12px; min-height: 150px; padding: 20px; border: 1px solid #d9ab8052; border-radius: 8px; background: #ffffff06; color: #f2e6d9 }
.benefit-grid li > span { padding: 4px 7px; border-radius: 4px; background: #e1bd8a22; color: var(--gold) }
.gallery-section { background: var(--ivory) }
.gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px }
.gallery > a, .gallery > figure { min-width: 0; padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: #eee3d5 }
.gallery > a:hover { border-color: #a98062 }
.gallery > a img { aspect-ratio: 1.27; object-fit: contain; border-radius: 5px; background: #dfcbb7 }
.gallery figcaption { padding: 8px 5px 2px; color: var(--quiet); font-size: .75rem }
.paper-preview { display: flex; flex-direction: column; justify-content: space-between; gap: 10px; min-height: 0; aspect-ratio: 1.27; padding: 9%; border: 1px solid #be9c7d; border-radius: 5px; background: linear-gradient(118deg,#f7eddf,#e4cbb2); color: #4b3229; overflow: hidden }
.paper-preview strong { font: 700 clamp(1rem, 2.7vw, 2.65rem)/1.1 var(--display); overflow-wrap: anywhere }
.paper-preview small, .paper-preview span { font-size: .65rem; letter-spacing: .13em }
.sample { background: #eadecf; border-block: 1px solid var(--line) }
.sample details { align-self: start; padding: 3px 17px; border: 1px solid #bca68e; border-radius: 8px; background: #fff9f0 }
.sample .disclosure-body { padding-right: 0 }
.contents { background: var(--ivory) }
.contents-list li { grid-template-columns: 1fr }
.contents-list li > span { display: none }
.offer-section { background: radial-gradient(ellipse at 12% 8%, #50372b, transparent 65%), #201a18 }
.offer { display: grid; grid-template-columns: minmax(0,1fr) minmax(230px,310px); align-items: center; gap: clamp(22px, 5vw, 72px) }
.offer h2 { max-width: 18ch; margin: 6px 0 11px; font-size: clamp(2.4rem, 4.3vw, 4.2rem) }
.offer-action { display: grid; gap: 8px; padding: 18px; border: 1px solid #bc947563; border-radius: 8px; background: #1c15148c }
.offer-action strong { font: 700 1.9rem/1.15 var(--display); color: #f3dcc3 }
.offer-action .text-link { justify-self: center; margin-top: 3px }
.support { margin-top: 17px; padding: 16px; border: 1px solid var(--line); border-radius: 8px; background: #eee3d5 }
.support h3 { margin-bottom: 4px }
.support p { margin-bottom: 7px; color: var(--quiet) }
.mobile-buy { display: none }
.info { min-height: 60vh }
.info .eyebrow { display: block; margin-top: 30px }
.info h1 { margin: 8px 0 15px }
.info p { max-width: 64ch }

.guided-page { --edition-line: #cfc4b3; background: var(--ivory); color: var(--ink) }
.guided-page h2 { font-size: clamp(2.2rem, 4vw, 4.1rem); line-height: 1.03; text-wrap: balance }
.guided-page h3 { font-size: clamp(1.35rem, 2.1vw, 1.9rem); line-height: 1.15 }
.guided-page .section-intro h2 { margin: 9px 0 13px }

.guided-hero {
  padding-block: clamp(40px, 5.2vw, 76px);
  border-bottom-color: #b997664a;
  background: radial-gradient(ellipse at 85% 28%, #392f2a, transparent 58%), #171719;
}
.guided-hero .hero-grid { grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: clamp(25px, 5vw, 72px) }
.edition-masthead {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 5px 14px;
  padding-bottom: 11px;
  border-bottom: 1px solid #e7c48650;
}
.guided-hero .edition-masthead .breadcrumb { margin: 0; color: var(--gold); text-decoration: none }
.guided-hero .edition-masthead .breadcrumb:hover { text-decoration: underline }
.guided-hero .hero-kicker { color: #c7bbaa }
.guided-hero .hero-kicker::before { display: none }
.guided-hero h1 {
  max-width: 16ch;
  margin: 20px 0 17px;
  font-size: clamp(3.1rem, 4.65vw, 5rem);
  line-height: 1.01;
}
.title-main { display: block; font-weight: 500; text-wrap: balance }
.title-accent { display: block; width: fit-content; margin-top: .06em; color: var(--gold); font-size: 1.21em; letter-spacing: -.06em }
.guided-hero p { max-width: 52ch; color: #e1d9cf; font-size: 1rem }
.guided-hero .hero-support {
  margin-top: 16px;
  padding-left: 13px;
  border-left: 2px solid #bd9460;
  color: #f3dbc1;
  font-weight: 600;
}
.hero-price { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 13px; margin-top: 22px }
.hero-price strong { color: var(--ivory); font: 700 1.85rem/1.1 var(--display) }
.hero-price .eyebrow { padding-left: 13px; border-left: 1px solid var(--dark-line); color: #dfbd8a }
.guided-hero .hero-actions { gap: 9px 16px; margin-top: 13px }
.guided-hero .hero-actions .disabled { min-height: 0; padding: 0; border: 0; color: #c9bcae; font-size: .77rem; font-weight: 600 }

.featured-figure { width: 100%; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none }
.featured-figure .figure-head { padding: 0 0 10px }
.featured-figure figcaption { padding: 11px 0 0; margin-top: 10px; border-top: 1px solid #e7c48640 }
.edition-scene {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 0;
  aspect-ratio: 1.09;
  overflow: hidden;
  isolation: isolate;
  border: 1px solid #e7c48645;
  border-radius: 6px;
  background: radial-gradient(ellipse at 35% 32%, #5d473a, transparent 65%), linear-gradient(135deg, #362a2b, #201e20);
}
.edition-orbit {
  position: absolute;
  width: 83%;
  height: 83%;
  border: 1px solid #dfbd8440;
  border-radius: 50%;
  transform: rotate(-24deg) scaleX(.82);
  box-shadow: 0 0 0 14px #eacba613, 0 0 0 31px #eacba60d;
}
.edition-scene .art:not(.user-art) { width: 100%; height: 100%; border-radius: 0 }
.edition-scene:has(.art:not(.user-art)) .edition-orbit { display: none }
.edition-scene .user-art {
  width: 67%;
  aspect-ratio: 1;
  border: 1px solid #e2b5a5;
  border-radius: 2px 5px 5px 2px;
  background: #301f28;
  transform: rotate(-7deg);
  box-shadow: 5px 5px 0 #debaa8, 8px 8px 0 #493630, 18px 24px 28px #080607aa;
}
.featured-figure .edition-scene { aspect-ratio: 1.32 }
.featured-figure .edition-scene .user-art { width: 60% }
.edition-mark { position: absolute; z-index: 2; right: 12px; bottom: 12px; width: 42px; height: 42px; border-radius: 9px }

.guided-identification .story-grid { grid-template-columns: minmax(0,.79fr) minmax(0,1.21fr); align-items: start }
.guided-situations { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 22px }
.guided-situations li, .guided-situations li:last-child,
.guided-topic-list li, .guided-topic-list li:last-child { gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--edition-line) }
.guided-situations li:nth-child(-n + 2), .guided-topic-list { border-top: 1px solid var(--edition-line) }
.guided-overview { background: #202125; color: var(--ivory); --edition-line: #e4cfad34 }
.guided-overview > .wrap { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(22px,6vw,85px) }
.guided-overview .section-intro { margin: 0 }
.guided-overview .eyebrow, .guided-topic-list li > span { color: var(--gold) }

.guided-expectations { background: var(--sand); border-bottom: 1px solid var(--edition-line) }
.expectation-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-block: 1px solid var(--edition-line) }
.guided-page .expectation { height: 100%; padding: clamp(17px, 3vw, 30px); border: 0; border-radius: 0; background: transparent }
.expectation:nth-child(even) { border-left: 1px solid var(--edition-line) }
.expectation h3 { margin-bottom: 6px }
.plain-list li { position: relative; display: block; padding-left: 15px; border-color: var(--edition-line) }
.plain-list li::before { content: ''; position: absolute; top: 1.32em; left: 1px; width: 5px; height: 5px; transform: rotate(45deg); background: var(--gold-ink) }
.plain-list li > span { display: none }

.guided-page .guided-sample { background: #292526; border-block: 0; color: var(--ivory) }
.guided-page .guided-sample .eyebrow { color: var(--gold) }
.guided-page .guided-sample .section-intro p { color: #ddd0c1 }
.guided-page .sample-grid { align-items: start }
.guided-page .guided-sample .sample-panel {
  padding-inline: 18px;
  border-color: #d7b77d;
  border-radius: 6px;
  background: #f7efe1;
  color: var(--ink);
  box-shadow: 6px 6px 0 #d5b17844;
}
.guided-page .sample-panel > summary { font: 700 1.13rem/1.2 var(--display) }
.sample-questions { padding-bottom: 10px }
.sample .sample-question { padding: 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent }
.sample-question summary { display: grid; grid-template-columns: 2.1ch minmax(0,1fr) auto; gap: 10px; font-size: .91rem }
.sample-question summary span { color: var(--gold-ink); font-size: .72rem }
.sample-question p { padding: 0 18px 13px 25px; color: var(--quiet); font-size: .94rem; overflow-wrap: anywhere }

.guided-page .benefits { border: 0; background: var(--ivory); color: var(--ink) }
.guided-page .benefits :is(.eyebrow,em) { color: var(--gold-ink) }
.guided-page .benefit-grid { gap: 0; border-block: 1px solid var(--edition-line) }
.guided-page .benefit-grid li { min-height: 0; padding: 19px; border: 0; border-radius: 0; background: transparent; color: var(--ink) }
.guided-page .benefit-grid li + li { border-left: 1px solid var(--edition-line) }
.guided-page .benefit-grid li > span { padding: 0; background: none; color: var(--gold-ink); font: 700 2.15rem/1 var(--display) }

.guided-delivery { background: #ece3d5 }
.delivery-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--edition-line) }
.delivery-list li { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 5px 12px; padding: 11px 0; border-bottom: 1px solid var(--edition-line); overflow-wrap: anywhere }
.delivery-list small { padding: 3px 7px; border: 1px solid #bfa483; border-radius: 3px; color: var(--gold-ink); font: 650 .65rem/1.35 var(--sans); letter-spacing: .08em; text-transform: uppercase }
.guided-page .offer-section { background: radial-gradient(ellipse at 90% 16%, #524330, transparent 65%), #1d1d20 }
.guided-page .offer h2 { color: var(--ivory) }
.guided-page .offer-action { padding: 19px; border-color: #d7b77d7d; border-radius: 6px; background: #201e1a }
.guided-page .offer-action strong { color: #f4d6a6; font-size: 2.25rem }
.offer-action button:disabled { background: transparent; cursor: default }
.guided-page .support { border: 0; border-left: 2px solid #b88c57; border-radius: 0; background: var(--sand) }
.guided-page .support h3 { font-size: 1.22rem }

.site-head .edition-nav { flex-wrap: wrap; justify-content: flex-end; gap: 8px clamp(10px, 1.5vw, 22px) }
.edition-nav a { white-space: nowrap }
.home-hero h1:has(.title-main) { max-width: 15ch; font-size: clamp(3rem, 5.4vw, 5.35rem) }
.home-hero h1 .title-accent { font-size: 1em }
.featured-figure figcaption { align-items: start }
.featured-figure figcaption .featured-copy { margin-top: 7px; font-size: .87rem }
.featured-figure figcaption .text-link { margin-top: 8px; font: 650 .85rem/1.3 var(--sans); text-decoration: underline }
.card .card-tagline { color: var(--ink); font-weight: 650 }
.guided-hero .hero-support + p { margin-top: 12px }
.guided-hero .hero-value { margin-top: 12px; color: var(--gold); font-size: .83rem; font-weight: 650 }
.edition-hero .hero-grid { row-gap: 18px }
.edition-hero-notes { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 5px 20px; grid-column: 1 / -1; padding-top: 10px; border-top: 1px solid #e7c48640 }
.edition-hero-notes p { max-width: 75ch; font-size: .83rem }
.edition-cards { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px }
.edition-cards article { min-width: 0; padding: clamp(14px, 2.4vw, 25px); border: 1px solid var(--edition-line); border-radius: 6px }
.edition-cards h3 { margin-bottom: 9px }
.edition-cards p { overflow-wrap: anywhere }
.guided-page .edition-benefits > .wrap { display: block }
.guided-page .edition-benefits .section-intro { margin-bottom: 24px }
.edition-benefits .section-intro p, .offer-section .section-intro p { color: #dfd4c3 }
.edition-benefit-grid { grid-template-columns: repeat(2, minmax(0,1fr)) }
.edition-note { max-width: 65ch; margin-top: 21px; padding-left: 13px; border-left: 2px solid #b58b56; color: var(--quiet); font-weight: 620 }
.edition-chapter-list { border-top: 1px solid var(--edition-line) }
.edition-chapter-list li, .edition-chapter-list li:last-child { border-bottom: 1px solid var(--edition-line) }
.edition-kit .prose { margin-top: 12px }
.edition-kit-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 13px 20px; margin-top: 19px }
.edition-kit-actions strong { font: 700 1.55rem/1.1 var(--display) }
.edition-audience .edition-note { margin-top: 10px }
.edition-statement { background: var(--sand) }
.sample-download { display: inline-block; margin-top: 16px }
.sample-steps [hidden] { display: none }
.sample-steps ol { margin: 9px 0 15px; padding-left: 1.25rem }
.sample-steps li { margin-block: 9px }
.sample-steps li p { padding: 0; color: var(--ink); font-size: 1rem }
.sample-steps:has(.sample-navigation:not([hidden])) ol { padding: 0; list-style: none }
.guided-page .guided-sample .sample-progress { color: var(--gold-ink) }
.sample-navigation { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 }
.sample-back { border-color: var(--line); color: var(--ink) }
.sample-back:disabled { opacity: .55 }
.sample-end h3 { margin: 9px 0 }
.sample-end .text-link { display: inline-block; margin-top: 8px }
.sample-support, .sample-privacy { margin: 8px 0; color: var(--quiet); font-size: .8rem }

.love-lessons {
  --lesson-line: #d9b98c48;
  --lesson-text: #e1d6c9;
  border-block: 1px solid var(--lesson-line);
  background: radial-gradient(ellipse at 88% 0%, #362821 0%, transparent 50%), #1c1715;
  color: var(--ivory);
}
.lesson-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr);
  align-items: end;
  gap: clamp(20px, 5vw, 70px);
  margin-bottom: clamp(27px, 5vw, 60px);
  padding-top: 20px;
  border-top: 1px solid var(--gold);
}
.love-lessons .lesson-heading h2 {
  max-width: 24ch;
  font-size: clamp(2.35rem, 4vw, 4.2rem);
  line-height: 1.06;
  text-wrap: balance;
}
.lesson-heading p, .lesson-copy p { max-width: 58ch; color: var(--lesson-text) }
.lesson-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--lesson-line) }
.lesson-list li {
  display: grid;
  grid-template-columns: minmax(105px, .24fr) minmax(0, 1fr);
  grid-template-areas: "index copy";
  align-items: center;
  gap: clamp(19px, 4.6vw, 66px);
  padding: clamp(22px, 4.2vw, 52px) clamp(14px, 4vw, 60px);
  border-bottom: 1px solid var(--lesson-line);
}
.lesson-list li:nth-child(even) {
  grid-template-columns: minmax(0, 1fr) minmax(105px, .24fr);
  grid-template-areas: "copy index";
  background: linear-gradient(105deg, #ffffff03, #c6a77911);
}
.lesson-index {
  display: grid;
  grid-area: index;
  justify-self: start;
  gap: 1px;
  padding-right: 18px;
  border-right: 1px solid var(--lesson-line);
  color: var(--gold);
}
.lesson-list li:nth-child(even) .lesson-index {
  justify-self: end;
  padding-right: 0;
  padding-left: 18px;
  border-right: 0;
  border-left: 1px solid var(--lesson-line);
}
.lesson-index span { font-size: .68rem; font-weight: 700; letter-spacing: .16em }
.lesson-index strong { font: 500 clamp(2.9rem, 6vw, 5.8rem)/.95 var(--display); letter-spacing: -.05em }
.lesson-copy { grid-area: copy; min-width: 0 }
.love-lessons .lesson-copy h3 {
  max-width: 34ch;
  margin-bottom: 10px;
  font-size: clamp(1.45rem, 2.8vw, 2.55rem);
  line-height: 1.09;
}
.lesson-end { display: grid; justify-items: start; gap: 12px; padding-top: clamp(23px, 4vw, 44px) }
.lesson-end > p { max-width: 35ch; color: #f2debf; font: 500 clamp(1.33rem, 2.4vw, 2.1rem)/1.2 var(--display) }
.lesson-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px }
.lesson-actions strong { color: var(--gold); font-size: 1rem; white-space: nowrap }

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .lesson-list li {
      animation: lesson-entry auto linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 27%;
    }
  }
}
@keyframes lesson-entry {
  from { opacity: .88; transform: translateY(12px) }
  to { opacity: 1; transform: translateY(0) }
}

.btn, .collection, .card, .nav-catalog { transition: background-color .18s ease, border-color .18s ease, color .18s ease }
@media (max-width: 950px) {
  .wrap { width: calc(100% - 48px) }
  .hero-grid { gap: 27px }
  .collection { padding-inline: 15px }
  .card-body { padding-inline: 13px }
}
@media (max-width: 690px) {
  .wrap { width: calc(100% - 32px) }
  .head-row { min-height: 65px; gap: 8px }
  .brand { gap: 6px; font-size: .68rem; letter-spacing: .09em }
  .brand small { font-size: .46rem; letter-spacing: .15em }
  .monogram { width: 32px; height: 32px; border-radius: 6px }
  .site-head nav { gap: 9px; font-size: .73rem }
  .site-head nav > a { display: inline-flex; align-items: center; min-height: 40px }
  .head-row:has(.edition-nav) { align-items: start; flex-direction: column; padding-block: 11px 5px }
  .site-head .edition-nav { width: 100%; justify-content: flex-start; gap: 1px 11px }
  .site-head .edition-nav a { min-height: 33px }
  .site-head .nav-catalog { gap: 4px; padding: 5px 7px }
  .hero-grid, .manifesto, .faq-layout, .story-grid, .sample-grid, .offer { grid-template-columns: 1fr }
  .hero { padding-block: 34px }
  .home-hero h1 { font-size: clamp(3.55rem, 11vw, 5.1rem) }
  .product-hero h1 { font-size: clamp(2.55rem, 8.8vw, 3.85rem) }
  .guided-hero h1 { margin-block: 15px 13px; font-size: clamp(2.4rem, 9.7vw, 4rem) }
  .guided-page h2 { font-size: clamp(2.05rem, 8.6vw, 3.5rem) }
  .guided-page .guided-hero { padding-block: 26px 32px }
  .product-hero-visual .user-art img {
    max-height: min(110vw, 56vh, 28rem);
    max-height: min(110vw, 56svh, 28rem);
  }
  .guided-hero .hero-grid, .guided-overview > .wrap, .guided-identification .story-grid, .guided-situations, .expectation-grid { grid-template-columns: 1fr }
  .guided-situations li, .guided-situations li:last-child { padding-block: 10px }
  .guided-situations li:nth-child(2) { border-top: 0 }
  .expectation:nth-child(even), .guided-page .benefit-grid li + li { border-left: 0; border-top: 1px solid var(--edition-line) }
  .guided-page .sample-grid { gap: 20px }
  .edition-cards, .edition-benefit-grid { grid-template-columns: 1fr }
  .lesson-heading { grid-template-columns: minmax(0, 1fr); gap: 11px }
  .love-lessons .lesson-heading h2 { font-size: clamp(1.85rem, 7.8vw, 3rem); text-wrap: wrap }
  .lesson-list li, .lesson-list li:nth-child(even) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "index" "copy";
    gap: 13px;
    padding: 22px 12px 23px;
  }
  .lesson-index, .lesson-list li:nth-child(even) .lesson-index {
    display: flex;
    align-items: baseline;
    justify-self: start;
    gap: 7px;
    padding: 0;
    border: 0;
  }
  .lesson-index strong { font-size: 2.15rem }
  .love-lessons .lesson-copy h3 { font-size: clamp(1.25rem, 5.3vw, 1.65rem) }
  .lesson-copy p, .lesson-heading p { font-size: .95rem }
  .guided-page .guided-sample .sample-panel { padding-inline: 13px }
  .hero p { font-size: .97rem }
  .hero-actions { margin-top: 19px }
  .figure-head, .hero-figure figcaption { gap: 8px; font-size: .72rem }
  .book strong, .card-art .book strong { font-size: clamp(.9rem, 4.2vw, 1.8rem) }
  .collection-grid, .card-grid, .benefit-grid { grid-template-columns: 1fr }
  .collection, .benefit-grid li { min-height: auto }
  .gallery { gap: 9px }
  .gallery > a, .gallery > figure { padding: 5px }
  .mockups .book strong { font-size: clamp(.61rem, 2.45vw, 1.2rem) }
  .mockups .book span, .mockups .book small { font-size: .35rem }
  .paper-preview small, .paper-preview span { font-size: .46rem }
  .footer-grid { grid-template-columns: 1fr 1fr }
  .footer-grid > div { grid-column: 1 / -1 }
  .mobile-buy {
    position: fixed;
    z-index: 3;
    inset: auto 0 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 65px;
    padding: 8px 16px calc(8px + env(safe-area-inset-bottom));
    border-top: 1px solid #9c795d90;
    background: #181413;
    color: var(--ivory);
  }
  .mobile-buy strong { flex: none }
  .mobile-buy .btn { min-height: 43px; padding-inline: 11px }
  .product-page:has(.mobile-buy) { padding-bottom: 67px }
  .product-page:has(.mobile-buy) + .footer { padding-bottom: 85px }
  html:has(.mobile-buy) { scroll-padding-bottom: 82px }
}
@media (max-width: 355px) {
  .head-row { flex-wrap: wrap; justify-content: center; gap: 6px; padding-block: 8px }
  .site-head nav { justify-content: center }
  .gallery { grid-template-columns: 1fr }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto }
  *, *::before, *::after { transition: none !important }
}

/* Espaçamento da prosa jurídica nas páginas institucionais (candidato v2). */
.info .legal-doc h3 {
  margin: 1.75em 0 .55em;
  font-size: clamp(1.2rem, 1.6vw, 1.55rem);
  letter-spacing: -.03em;
  color: var(--ink);
}
.info .legal-doc h3:first-of-type { margin-top: 1.15em; }
.info .legal-doc ul {
  margin: .45em 0 1em;
  padding-left: 1.15em;
  max-width: 64ch;
  color: var(--quiet);
}
.info .legal-doc li + li { margin-top: .35em; }
.info .legal-doc .draft-note { margin: 0 0 1.15em; }
