/* Bride Era R14.7.202 · visual novo nas páginas de conteúdo (Grátis: guias, calculadoras, ferramentas,
   recursos grátis, checklist e páginas de SEO). Mesma linguagem das páginas de recursos do R14.7.198:
   Cormorant + Jost, creme e rosé, cartões arredondados, fotos, movimento suave ao rolar. */
html.m2{--m2-ink:#221a18;--m2-text:#4a3f3b;--m2-muted:#7d706b;--m2-line:#eee4df;--m2-cream:#fffaf6;--m2-cream2:#fbf3ee;--m2-blush:#f6e6e1;--m2-rose:#b07466;--m2-rose-d:#7c4740;--m2-gold:#c9a25a;--m2-serif:"Cormorant Garamond",Georgia,serif;--m2-sans:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;--display:var(--m2-serif)}
html.m2 body{font-family:var(--m2-sans);color:var(--m2-text);background:var(--m2-cream);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.65}
html.m2 h1,html.m2 h2,html.m2 h3{font-family:var(--m2-serif);font-weight:500;color:var(--m2-ink);letter-spacing:-.01em}
html.m2 a{color:var(--m2-rose-d)}
html.m2 .c-wrap,html.m2 .seo-wrap{max-width:1192px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}

/* ---------- hero ---------- */
html.m2 .c-hero,html.m2 .seo-hero,html.m2 .m2-hero{position:relative;overflow:hidden;padding:64px 0 76px;background:radial-gradient(900px 480px at 92% -10%,rgba(232,196,170,.45),transparent 60%),radial-gradient(700px 420px at -10% 110%,rgba(246,214,206,.6),transparent 60%),linear-gradient(180deg,#fffaf6,#fbf1ec);border-bottom:1px solid var(--m2-line)}
html.m2 .m2-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:56px;align-items:center}
html.m2 .crumbs,html.m2 .breadcrumbs{font-size:.84rem;color:var(--m2-muted);margin-bottom:18px}
html.m2 .crumbs a,html.m2 .breadcrumbs a{color:var(--m2-muted);text-decoration:none}html.m2 .crumbs a:hover,html.m2 .breadcrumbs a:hover{color:var(--m2-rose-d)}
html.m2 .c-hero .kicker,html.m2 .seo-kicker,html.m2 .m2-hero .eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:var(--m2-sans);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--m2-rose-d);font-weight:500;margin-bottom:14px}
html.m2 .c-hero .kicker:before,html.m2 .seo-kicker:before,html.m2 .m2-hero .eyebrow:before{content:"";width:34px;height:1px;background:currentColor;opacity:.6}
html.m2 .c-hero h1,html.m2 .seo-hero h1,html.m2 .m2-hero h1{font-size:clamp(2.6rem,5.4vw,4.6rem);line-height:1.02;margin:0 0 18px;font-weight:500}
html.m2 h1 em.m2-acento{font-style:italic;color:var(--m2-rose);position:relative;white-space:nowrap}
html.m2 h1 em.m2-acento:after{content:"";position:absolute;left:2%;right:2%;bottom:-.06em;height:.16em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8 C 50 2, 90 12, 130 6 S 185 4, 198 7' fill='none' stroke='%23c9a25a' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;transform-origin:left;animation:m2Risco 1.2s .4s cubic-bezier(.2,.8,.2,1) both}
@keyframes m2Risco{from{transform:scaleX(0)}to{transform:scaleX(1)}}
html.m2 .c-lead,html.m2 .seo-lead,html.m2 .m2-hero .lead{font-size:1.14rem;line-height:1.7;color:var(--m2-text);max-width:620px;margin:0 0 22px}
html.m2 .c-hero .meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
html.m2 .c-hero .meta span{font-size:.8rem;color:var(--m2-muted);background:rgba(255,255,255,.7);border:1px solid var(--m2-line);border-radius:999px;padding:5px 12px}
html.m2 .c-actions,html.m2 .seo-actions{display:flex;flex-wrap:wrap;gap:10px}
html.m2 .btn,html.m2 .seo-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:999px;font-family:var(--m2-sans);font-size:.98rem;font-weight:500;text-decoration:none;border:1px solid transparent;transition:transform .2s,box-shadow .2s,background .2s;cursor:pointer}
html.m2 .btn.primary,html.m2 .btn-primary,html.m2 .seo-btn.primary,html.m2 .seo-btn-primary{background:linear-gradient(135deg,#b07466,#7c4740);color:#fff;box-shadow:0 14px 28px -16px #7c4740}
html.m2 .btn.ghost,html.m2 .btn-ghost,html.m2 .seo-btn.ghost{background:#fff;color:var(--m2-ink);border-color:var(--m2-line)}
html.m2 .btn:hover,html.m2 .seo-btn:hover{transform:translateY(-2px)}
/* palco de fotos à direita */
.m2-palco{position:relative;height:440px}
.m2-palco figure{position:absolute;margin:0;border-radius:26px;overflow:hidden;background:#f1e4dd center/cover no-repeat;box-shadow:0 30px 60px -34px rgba(60,30,20,.55);border:6px solid #fff}
.m2-palco .f1{inset:0 22% 18% 0;transform:rotate(-2deg)}
.m2-palco .f2{width:46%;height:46%;right:0;top:6%;transform:rotate(3deg)}
.m2-palco .f3{width:42%;height:40%;right:8%;bottom:0;transform:rotate(-1deg)}
.m2-palco figure img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 6s ease}
.m2-palco:hover figure img{transform:scale(1.06)}
.m2-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:16px;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 16px 34px -20px rgba(60,30,20,.55);font-size:.84rem;animation:m2Flutua 6s ease-in-out infinite}
.m2-chip i{font-style:normal;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--m2-blush)}
.m2-chip b{display:block;font-weight:500;color:var(--m2-ink)}.m2-chip small{color:var(--m2-muted);font-size:.74rem}
.m2-chip.c1{left:-18px;bottom:18%}.m2-chip.c2{right:-10px;top:-6px;animation-delay:-2s}.m2-chip.c3{left:30%;bottom:-14px;animation-delay:-4s}
@keyframes m2Flutua{50%{transform:translateY(-7px)}}
/* faixa de palavras */
.m2-tick{overflow:hidden;border-bottom:1px solid var(--m2-line);background:#fff;padding:16px 0}
.m2-tick-in{display:flex;gap:46px;width:max-content;animation:m2Tick 40s linear infinite}
.m2-tick span{font-family:var(--m2-serif);font-style:italic;font-size:1.35rem;color:var(--m2-rose-d);white-space:nowrap;display:flex;align-items:center;gap:46px}
.m2-tick span:after{content:"✦";font-style:normal;font-size:.8rem;color:var(--m2-gold)}
@keyframes m2Tick{to{transform:translateX(-50%)}}

/* ---------- busca e números dos hubs ---------- */
html.m2 .free-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:26px 0 0;max-width:620px}
html.m2 .free-stat{background:rgba(255,255,255,.75);border:1px solid var(--m2-line);border-radius:18px;padding:14px 16px}
html.m2 .free-stat b{display:block;font-family:var(--m2-serif);font-weight:500;font-size:2.2rem;line-height:1;color:var(--m2-ink)}
html.m2 .free-stat span{font-size:.8rem;color:var(--m2-muted)}
html.m2 .free-search,html.m2 input.free-search{width:100%;padding:16px 22px 16px 50px;border-radius:999px;border:1px solid var(--m2-line);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7' fill='none' stroke='%237c4740' stroke-width='2'/%3E%3Cpath d='M20 20l-3.5-3.5' stroke='%237c4740' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") 20px center/18px no-repeat;font:inherit;font-size:1rem;box-shadow:0 14px 34px -26px rgba(60,30,20,.5);outline:none}
html.m2 .free-search:focus{border-color:var(--m2-rose)}
html.m2 .free-count{color:var(--m2-muted);font-size:.86rem}
html.m2 .free-filter{display:flex;flex-wrap:wrap;gap:8px}
html.m2 .free-filter button,html.m2 .free-filter a{padding:8px 14px;border-radius:999px;border:1px solid var(--m2-line);background:#fff;color:var(--m2-ink);font:inherit;font-size:.86rem;cursor:pointer;text-decoration:none}

/* ---------- cartões de recurso ---------- */
html.m2 .resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
html.m2 .resource-card{position:relative;display:flex;flex-direction:column;overflow:hidden;padding:0 0 20px;border-radius:24px;background:#fff;border:1px solid var(--m2-line);text-decoration:none;color:var(--m2-text);box-shadow:0 18px 40px -34px rgba(60,30,20,.55);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
html.m2 .resource-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px -34px rgba(60,30,20,.6)}
html.m2 .resource-card .m2-capa{height:150px;margin:0 0 16px;background:#f1e4dd center/cover no-repeat;position:relative;overflow:hidden}
html.m2 .resource-card .m2-capa img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}
html.m2 .resource-card:hover .m2-capa img{transform:scale(1.07)}
html.m2 .resource-card .m2-capa:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(34,26,24,.35))}
html.m2 .resource-card .ricon{position:absolute;top:118px;left:20px;z-index:2;width:50px;height:50px;border-radius:16px;display:grid;place-items:center;font-size:1.5rem;background:#fff;box-shadow:0 10px 24px -14px rgba(60,30,20,.6)}
html.m2 .resource-card:not(.m2-com-capa) .ricon{position:static;margin:20px 20px 10px}
html.m2 .resource-card small{display:block;margin:12px 20px 4px;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--m2-rose)}
html.m2 .resource-card h2,html.m2 .resource-card h3{margin:0 20px 8px;font-size:1.5rem;line-height:1.15}
html.m2 .resource-card p{margin:0 20px;font-size:.92rem;color:var(--m2-muted);line-height:1.55}
html.m2 .resource-card>span:last-child,html.m2 .resource-card>b:last-child,html.m2 .resource-card .cta,html.m2 .resource-card strong{display:block;margin:auto 20px 0;padding-top:14px;font-size:.88rem;font-weight:500;color:var(--m2-rose-d)}

/* ---------- artigo ---------- */
html.m2 .article-shell{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:56px;padding-top:56px;padding-bottom:56px;align-items:start}
html.m2 .article{font-size:1.06rem;line-height:1.8;color:var(--m2-text);min-width:0}
html.m2 .article section{margin:0 0 42px}
html.m2 .article h2{font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.12;margin:0 0 14px;padding-top:6px}
html.m2 .article h3{font-size:1.45rem;margin:22px 0 8px}
html.m2 .article ul,html.m2 .article ol{padding-left:0;list-style:none;display:grid;gap:8px}
html.m2 .article ul li,html.m2 .article ol li{position:relative;padding:10px 14px 10px 42px;border-radius:14px;background:#fff;border:1px solid var(--m2-line)}
html.m2 .article ul li:before{content:"✓";position:absolute;left:13px;top:10px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:.7rem;color:#fff;background:linear-gradient(135deg,#b07466,#7c4740)}
html.m2 .article ol{counter-reset:m2}html.m2 .article ol li{counter-increment:m2}html.m2 .article ol li:before{content:counter(m2);position:absolute;left:12px;top:10px;width:22px;height:22px;border-radius:8px;display:grid;place-items:center;font-size:.78rem;color:var(--m2-rose-d);background:var(--m2-blush)}
html.m2 .article table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--m2-line);border-radius:16px;overflow:hidden;background:#fff;font-size:.94rem;display:block;overflow-x:auto}
html.m2 .article th,html.m2 .article td{padding:10px 14px;border-bottom:1px solid var(--m2-line);text-align:left}html.m2 .article th{background:var(--m2-cream2);font-weight:500}
html.m2 .callout{position:relative;margin:26px 0;padding:20px 22px 20px 64px;border-radius:20px;background:linear-gradient(135deg,#fff6ef,#fbece6);border:1px solid #f1dcd2;color:var(--m2-text);font-size:.98rem}
html.m2 .callout:before{content:"💡";position:absolute;left:20px;top:18px;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#fff}
html.m2 .toc{position:sticky;top:96px;display:grid;gap:2px;padding:20px;border-radius:22px;background:#fff;border:1px solid var(--m2-line);box-shadow:0 20px 44px -36px rgba(60,30,20,.6);font-size:.88rem;max-height:calc(100vh - 120px);overflow:auto}
html.m2 .toc b{font-family:var(--m2-serif);font-weight:500;font-size:1.3rem;color:var(--m2-ink);margin-bottom:8px}
html.m2 .toc a{display:block;padding:7px 10px;border-radius:10px;color:var(--m2-muted);text-decoration:none;border-left:2px solid transparent;line-height:1.35;transition:background .2s,color .2s,border-color .2s}
html.m2 .toc a:hover{background:var(--m2-cream)}
html.m2 .toc a.m2-on{color:var(--m2-rose-d);background:var(--m2-cream);border-left-color:var(--m2-rose)}

/* ---------- calculadoras e ferramentas ---------- */
html.m2 .calc-shell{padding:56px 0;background:linear-gradient(180deg,var(--m2-cream),#fff)}
html.m2 .calc-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px;align-items:start}
html.m2 .calc-box{padding:28px;border-radius:26px;background:#fff;border:1px solid var(--m2-line);box-shadow:0 30px 60px -44px rgba(60,30,20,.6)}
html.m2 .calc-box h2{font-size:1.9rem!important}
html.m2 .field{margin:0 0 14px}
html.m2 .field label{display:block;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--m2-muted);margin:0 0 6px;font-weight:500}
html.m2 .field input,html.m2 .field select,html.m2 .field textarea,html.m2 .calc-box input,html.m2 .calc-box select{width:100%;padding:13px 16px;border-radius:14px;border:1px solid var(--m2-line);background:var(--m2-cream);font:inherit;font-size:1rem;color:var(--m2-ink);outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
html.m2 .field input:focus,html.m2 .field select:focus,html.m2 .field textarea:focus{border-color:var(--m2-rose);background:#fff;box-shadow:0 0 0 4px rgba(176,116,102,.14)}
html.m2 .result{position:sticky;top:96px;padding:28px;border-radius:26px;color:#f6ece6;background:radial-gradient(420px 220px at 100% 0%,rgba(201,162,90,.3),transparent 60%),linear-gradient(160deg,#2a201c,#17110f);box-shadow:0 34px 70px -40px rgba(20,10,8,.9);overflow:hidden}
html.m2 .result h2,html.m2 .result h3{color:#fff}
html.m2 .result .big{display:block;font-family:var(--m2-serif);font-weight:500;font-size:clamp(2.6rem,5vw,3.6rem);line-height:1.05;color:#fff;margin:6px 0 14px;transition:transform .3s}
html.m2 .result .big.m2-pulso{animation:m2Pulso .5s ease}
@keyframes m2Pulso{40%{transform:scale(1.05);color:#f3d8a5}}
html.m2 .result p,html.m2 .result li,html.m2 .result span{color:#e8dcd5}
html.m2 .result b,html.m2 .result strong{color:#fff}
html.m2 .calc-note{font-size:.8rem;color:var(--m2-muted)}
html.m2 .tool-heading{font-size:1.9rem}html.m2 .tool-explain{color:var(--m2-muted)}
html.m2 .tool-output{padding:20px;border-radius:20px;background:var(--m2-cream2);border:1px solid var(--m2-line);white-space:pre-wrap}
html.m2 .copy-btn{border-radius:999px!important}
html.m2 .checkline{display:flex;gap:10px;align-items:flex-start;padding:10px 14px;border-radius:14px;background:#fff;border:1px solid var(--m2-line);margin-bottom:8px}
html.m2 .timeline-item{padding:12px 16px;border-left:3px solid var(--m2-rose);background:#fff;border-radius:0 14px 14px 0;margin-bottom:8px}

/* ---------- relacionados ---------- */
html.m2 .related{padding:64px 0 96px;background:linear-gradient(180deg,#fff,var(--m2-cream2))}
html.m2 .related .kicker{display:inline-flex;align-items:center;gap:12px;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--m2-rose-d)}
html.m2 .related .kicker:before{content:"";width:34px;height:1px;background:currentColor;opacity:.6}
html.m2 .section-display{font-size:clamp(2rem,4vw,3rem);margin:8px 0 22px}
html.m2 .related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
html.m2 .related-grid a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:76px;padding:18px 20px;border-radius:20px;background:#fff;border:1px solid var(--m2-line);color:var(--m2-ink);text-decoration:none;font-weight:500;transition:transform .25s,box-shadow .25s,border-color .25s}
html.m2 .related-grid a:after{content:"→";color:var(--m2-rose);transition:transform .25s}
html.m2 .related-grid a:hover{transform:translateY(-3px);border-color:#e6cfc6;box-shadow:0 20px 40px -30px rgba(60,30,20,.6)}
html.m2 .related-grid a:hover:after{transform:translateX(4px)}

/* ---------- família SEO (seo-*) ---------- */
html.m2 .seo-main{padding:56px 0}
html.m2 .seo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
html.m2 .seo-card{padding:26px;border-radius:24px;background:#fff;border:1px solid var(--m2-line);box-shadow:0 18px 40px -34px rgba(60,30,20,.55);transition:transform .3s}
html.m2 .seo-card:hover{transform:translateY(-4px)}
html.m2 .seo-card h2{font-size:1.6rem;margin:0 0 8px}
html.m2 .seo-card:before{content:"✦";display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--m2-blush);color:var(--m2-rose-d);margin-bottom:14px}
html.m2 .seo-footer,html.m2 .c-footer{display:none}

/* ---------- família "section/container" (guias antigos de SEO) ---------- */
html.m2-sec body>main.section{padding:0 0 60px}
html.m2-sec .m2-hero .container{max-width:1192px!important}
html.m2-sec main.section>.container{max-width:860px!important;margin:0 auto;padding:0 24px}
html.m2-sec main.section>.container>h2{font-size:clamp(1.8rem,3vw,2.4rem);margin:44px 0 12px}
html.m2-sec main.section>.container>p{font-size:1.06rem;line-height:1.8}
html.m2-sec main.section .panel,html.m2-sec main.section .card{border-radius:22px;border:1px solid var(--m2-line);background:#fff;padding:22px;box-shadow:0 18px 40px -34px rgba(60,30,20,.55)}

/* ---------- revelar ao rolar ---------- */
.m2-rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.m2-rv.m2-in{opacity:1;transform:none}

/* ---------- responsivo ---------- */
@media (max-width:1020px){html.m2 .m2-hero-grid{grid-template-columns:1fr;gap:34px}.m2-palco{height:300px;max-width:560px}html.m2 .article-shell{grid-template-columns:1fr;gap:24px}html.m2 .toc{position:static;order:-1;max-height:none}html.m2 .calc-grid{grid-template-columns:1fr}html.m2 .result{position:static}}
@media (max-width:640px){html.m2 body{font-size:16px}html.m2 .c-hero,html.m2 .seo-hero,html.m2 .m2-hero{padding:34px 0 46px}html.m2 .c-wrap,html.m2 .seo-wrap{padding-left:16px;padding-right:16px}.m2-palco{height:230px}.m2-chip{font-size:.76rem;padding:8px 10px}.m2-chip.c1{left:-4px}.m2-chip.c2{right:-4px}.m2-chip.c3{display:none}html.m2 .free-stats{grid-template-columns:1fr 1fr}html.m2 .resource-grid{grid-template-columns:1fr}html.m2 .calc-box,html.m2 .result{padding:20px}html.m2 .c-actions .btn{flex:1}html.m2 .m2-tick span{font-size:1.1rem}}
@media (prefers-reduced-motion:reduce){.m2-rv{opacity:1;transform:none}.m2-tick-in,.m2-chip{animation:none}}
@media print{.m2-rv{opacity:1!important;transform:none!important}}
html.m2 .result .tool-output,html.m2 .result textarea,html.m2 .result pre{background:rgba(255,255,255,.08)!important;color:#fff!important;border-color:rgba(255,255,255,.16)!important}
html.m2 .result .tool-output *{color:#fff!important}
html.m2 .result .copy-btn,html.m2 .result button{background:#fff;color:#221a18;border:0}
