:root { --paper:#f8e9e5; --paper-light:#fffaf6; --ink:#3d281f; --terracotta:#ad3d51; --green:#59644d; --mustard:#d2a18e; --rose:#e7b4ba; --line:#dfc9c1; }
body { background:#fffaf6; }
header { position:relative; background:#fffaf6; }
nav { flex-wrap:wrap; padding:18px 0; gap:16px; }
.brand { font-size:2.3rem; line-height:1.1; font-weight:400; }
.brand span { font-style:italic; }
.brand small { display:block; font:600 .65rem/2.5 'Segoe UI',sans-serif; letter-spacing:.22em; }
.nav-links { gap:6px; flex-wrap:wrap; }
.nav-links a { font-size:.82rem; }
.button { background:#ad3d51; border-radius:10px; box-shadow:none; gap:20px; }
.button.secondary { color:#542f2c; background:transparent; border:1px solid #ac5b65; box-shadow:none; }
.hero { padding:48px 0 56px; background:radial-gradient(ellipse at 0% 80%,#e8a3aa75,transparent 50%),radial-gradient(ellipse at 100% 10%,#d8ddcb,transparent 50%),#faeee7; }
.hero::after { border-color:#c8788730; width:170px; height:170px; pointer-events:none; }
.hero-grid { margin-top:0; grid-template-columns:1fr 1fr; gap:42px; }
.hero .eyebrow { background:#eeb8ba90; color:#613635; padding:9px 14px; border-radius:38% 12% 28% 8%; letter-spacing:.12em; }
.hero .eyebrow::before { display:none; }
.hero h1 { font-size:clamp(2.3rem,4.6vw,4rem); margin-top:20px; line-height:1.06; }
.hero h1 em { color:#ad3d51; font-weight:400; white-space:nowrap; }
.hero-copy p { margin:22px 0; color:#634b43; font-size:1.05rem; }
.hero-actions { display:grid; max-width:390px; gap:12px; }
.hero-visual { padding-top:90px; }
.art-seal { position:absolute; top:0; right:12%; width:132px; height:132px; border-radius:50%; background:#d78d96; border:5px double #fbe6df; display:grid; place-content:center; text-align:center; transform:rotate(9deg); font:italic 1.25rem/1.15 Georgia,serif; color:#492927; }
.real-covers { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:center; gap:0; padding:45px 8px 30px; }
.hero-visual .real-covers img { width:100%; height:auto; aspect-ratio:auto; object-fit:contain; padding:5px; background:#fffdf8; border-radius:2px; box-shadow:0 15px 22px #4e302c30; transform:rotate(-10deg) translateY(6px); }
.hero-visual .real-covers img:nth-child(2) { transform:rotate(3deg) translateY(-18px); z-index:1; }
.hero-visual .real-covers img:nth-child(3) { transform:rotate(12deg) translateY(22px); }
.hero-note { position:relative; left:auto; bottom:auto; width:auto; margin:18px 0 0; padding:12px; background:transparent; box-shadow:none; transform:rotate(-3deg); text-align:center; font:italic 1.35rem/1.4 Georgia,serif; }
.trust { background:#f3dcd8; padding:24px 0; color:#5b3a34; }
.check { background:#ad3d51; }
.freebies { background:#fffaf6; color:var(--ink); }
.freebies .eyebrow { color:#ad3d51; }
.freebies .section-heading p { color:#755c52; }
.section-heading h2 { line-height:1.15; }
.resource-card { border-radius:18px; border:1px solid #e7cdc7; box-shadow:0 8px 25px #65392e0b; }
.resource-cover { background:#f6e2dc; padding:14px; display:flex; align-items:center; min-height:0; }
.resource-cover img { height:auto; object-fit:contain; }
.resource-content .tag { color:#9a3548; }
.lead-panel { background:#f5e5df; border-radius:20px; box-shadow:none; }
.catalog { background:linear-gradient(#f7eeE7,#fffaf6); }
.catalog-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; align-items:stretch; }
.catalog-card { display:flex; flex-direction:column; border-radius:16px; box-shadow:0 6px 22px #6b463111; }
.catalog-cover { padding:16px; background:#f1dfd5; }
.catalog-cover img { height:250px; width:100%; object-fit:contain; }
.catalog-info { flex:1; padding:18px; }
.catalog-info p { display:block; overflow:visible; }
.catalog-info .button { background:#ad3d51; border-color:#ad3d51; text-transform:none; }
.catalog-price { color:#9a3548; }
.grade-tabs { border-radius:18px; box-shadow:none; }
.grade-tab { box-shadow:none; }
.benefits { background:#f2ded8; }
.benefit { border-radius:14px; }
.portrait-card { background:#64705a; }
.cta { background:#a63c50; }
@media(max-width:1000px) { .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:680px) {
  :root { --terracotta:#ad3d51; --green:#59644d; }
  nav { padding:14px 0 10px; gap:8px; }
  .brand { font-size:1.65rem; }
  .nav-links { gap:0 4px; }
  .nav-links a:not(.button) { padding:5px 8px; font-size:.75rem; min-height:40px; }
  .nav-links .button { min-height:40px; font-size:.75rem; background:#ad3d51; }
  .hero { padding:25px 0 26px; }
  .hero-grid { grid-template-columns:1fr; gap:22px; }
  .hero .eyebrow { font-size:.63rem; padding:7px 10px; }
  .hero h1 { font-size:clamp(1.8rem,6.4vw,2.15rem); line-height:1.14; margin-top:14px; }
  .freebies .section-heading h2, .benefits .section-heading h2,
  .catalog .section-heading h2, .about-copy h2, .cta h2 { font-size:1.5rem; line-height:1.2; }
  .lead-panel h3, .benefit h3, .portrait-card h3 { font-size:1.2rem; line-height:1.25; }
  .section-heading p, .about-copy p, .benefit p, .cta p { font-size:.94rem; line-height:1.6; }
  .hero-actions .button { font-size:.94rem; }
  .hero-copy p { font-size:.95rem; line-height:1.55; margin:16px 0 20px; }
  .hero-actions { max-width:none; }
  .hero-actions .secondary { color:#633d36; border-color:#ac5b65; }
  .hero-visual { padding-top:40px; }
  .art-seal { width:94px; height:94px; font-size:.96rem; right:8%; }
  .real-covers { padding:25px 12px 10px; }
  .hero-note { font-size:1.15rem; margin:16px 0 0; }
  .trust { background:#f3dcd8; }
  .freebies { background:#fffaf6; }
  .freebies .eyebrow { color:#ad3d51; }
  .lead-panel { padding:22px 16px; }
  .catalog-grid { gap:12px; }
  .catalog-card { display:flex; border-radius:12px; }
  .catalog-cover { padding:10px; }
  .catalog-cover img { height:auto; aspect-ratio:600 / 849; object-fit:contain; }
  .catalog-info { padding:12px 10px; }
  .catalog-info small { font-size:.58rem; letter-spacing:.03em; }
  .catalog-info h3 { font-size:1.08rem; }
  .catalog-info p { font-size:.76rem; }
  .catalog-info .button { font-size:.7rem; padding:8px 4px; }
  .catalog-price { font-size:1.25rem; }
  .cta { background:#a63c50; }
}
.landscape-catalog { background:#f8e9e5; }
.horizontal-shortcut { display:flex; width:fit-content; margin:0 auto 28px; background:#59644d; font-size:15px; }
#apostilas-horizontais { scroll-margin-top:24px; }
@media(max-width:680px) { .horizontal-shortcut { width:100%; font-size:14px; } }
.landscape-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.landscape-card { background:#fffaf6; border:1px solid var(--line); border-radius:16px; overflow:hidden; }
.landscape-cover { padding:14px; background:#efe0d5; }
.landscape-cover img { width:100%; height:auto; object-fit:contain; }
.landscape-info { padding:22px; }
.landscape-info small { color:#9a3548; font-weight:700; }
.landscape-info h3 { margin:8px 0 12px; }
.landscape-info p { margin-bottom:18px; color:#634b43; }
.landscape-info .button { width:100%; }
@media(max-width:680px) {
  body { font-size:16px; }
  .brand { font-size:26px; }
  .brand small { font-size:10px; }
  .hero h1 { font-size:clamp(28px,6.8vw,34px); line-height:1.15; }
  .hero-copy p, .section-heading p, .about-copy p, .benefit p, .cta p { font-size:15px; line-height:1.6; }
  .section-heading h2, .freebies .section-heading h2, .catalog .section-heading h2,
  .benefits .section-heading h2, .about-copy h2, .cta h2 { font-size:24px; line-height:1.22; }
  .catalog-info h3 { font-size:18px; line-height:1.25; }
  .catalog-info small { font-size:11px; line-height:1.4; }
  .catalog-info p { font-size:14px; line-height:1.5; }
  .catalog-price { font-size:22px; line-height:1.2; }
  .catalog-info .button, .resource-content .button { font-size:13px; line-height:1.35; min-height:46px; }
  .resource-content h3, .landscape-info h3 { font-size:20px; line-height:1.25; }
  .resource-content p, .landscape-info p, .lead-panel > p { font-size:14px; line-height:1.55; }
  .landscape-grid { grid-template-columns:1fr; }
  .landscape-info { padding:18px; }
  .landscape-info small { font-size:12px; }
  .landscape-info .button { font-size:15px; }
  .eyebrow { font-size:11px; }
}
@media(max-width:380px) { .catalog-grid { grid-template-columns:1fr; } }
body.launch-open { overflow:hidden; }
#launch-dialog { width:min(820px,calc(100% - 24px)); max-height:90dvh; padding:32px; border:0; border-radius:20px; background:#fffaf6; color:#3d281f; overflow:auto; }
#launch-dialog::backdrop { background:#251810aa; }
.launch-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1fr); gap:28px; align-items:center; }
.launch-cover { width:100%; height:auto; max-height:64vh; object-fit:contain; border-radius:8px; }
.launch-close { position:absolute; right:8px; top:6px; border:0; background:#fffaf6; color:#542f2c; width:44px; height:44px; font-size:28px; border-radius:50%; cursor:pointer; }
.launch-copy h2 { font-size:28px; line-height:1.15; margin:10px 0 14px; }
.launch-copy p { font-size:14px; line-height:1.5; }
#launch-form { display:grid; gap:6px; margin-top:16px; }
#launch-form[hidden] { display:none; }
#launch-form label { font-size:13px; font-weight:600; }
#launch-form input:not([type=checkbox]) { width:100%; min-height:44px; border:1px solid #bba59c; border-radius:8px; padding:9px 12px; font:16px 'Segoe UI',sans-serif; }
#launch-form input:focus-visible { outline:3px solid #ad3d5170; outline-offset:2px; }
.launch-consent { display:flex; align-items:flex-start; gap:8px; margin:8px 0; line-height:1.4; }
.launch-consent input { flex-shrink:0; margin-top:3px; }
#launch-form .button { font-size:14px; cursor:pointer; }
#launch-form .button:disabled { opacity:.65; cursor:wait; }
.launch-detail { color:#75645d; font-size:12px !important; margin-top:10px; }
#launch-feedback:not(:empty) { margin-top:14px; padding:12px; background:#e6eddf; border-radius:8px; }
.launch-reopen { display:block; margin:24px auto; max-width:calc(100% - 32px); padding:14px 22px; background:#f2ded8; color:#722438; border:1px solid #d6a4ab; border-radius:12px; font:600 14px/1.5 'Segoe UI',sans-serif; cursor:pointer; }
@media(max-width:680px) {
  #launch-dialog { width:min(390px,calc(100% - 28px)); max-height:85dvh; padding:20px 18px 16px; border-radius:16px; }
  .launch-layout { display:block; }
  .launch-cover { float:left; width:64px; height:96px; max-height:none; object-fit:contain; margin:0 12px 10px 0; border-radius:4px; }
  .launch-copy h2 { font-size:20px; line-height:1.15; margin:5px 22px 8px 0; }
  .launch-copy .eyebrow { display:block; font-size:9px; letter-spacing:.05em; padding-right:20px; }
  .launch-copy .eyebrow::before { display:none; }
  #launch-description { clear:both; font-size:13px; line-height:1.4; }
  #launch-form { margin-top:12px; gap:4px; }
  #launch-form label { font-size:12px; }
  #launch-form input:not([type=checkbox]) { min-height:42px; padding:8px 10px; }
  .launch-consent { margin:6px 0; font-size:11px !important; line-height:1.35; }
  #launch-form .button { min-height:44px; padding:9px 10px; font-size:13px; }
  .launch-detail { font-size:10px !important; line-height:1.35 !important; margin-top:8px; }
  .launch-close { right:2px; top:2px; background:transparent; }
}
