/*
Theme Name: Yora — Revender Dá Certo
Theme URI: https://revenderdacerto.com.br
Author: Yora Atacado
Description: Tema editorial leve para o portal Revender Dá Certo.
Version: 1.0.0
Text Domain: yora-revender-da-certo
*/

@font-face { font-family: "Quicksand"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("assets/quicksand-latin.woff2") format("woff2"); }

:root { --blue:#3f4196; --blue-dark:#303177; --blue-soft:#e9e9f7; --orange:#f68c25; --orange-dark:#dc7314; --orange-soft:#ffead7; --green:#2fab8c; --green-dark:#248d75; --green-soft:#dff5ef; --paper:#fffefd; --cream:#fff8f1; --ink:#2d2e69; --muted:#64657d; --line:#e3e3ee; --white:#fff; --shadow-sm:0 10px 28px rgba(63,65,150,.09); --shadow-md:0 18px 54px rgba(63,65,150,.14); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Quicksand","Segoe UI",Arial,sans-serif; font-weight:500; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; height:auto; }
button,input { font:inherit; }
.screen-reader-text { position:absolute; overflow:hidden; clip:rect(1px,1px,1px,1px); width:1px; height:1px; word-wrap:normal; }
.screen-reader-text:focus { clip:auto; width:auto; height:auto; padding:8px 12px; top:8px; left:8px; z-index:100000; background:#fff; color:var(--blue); }
.section-shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }

.utility-bar { background:var(--blue-dark); color:rgba(255,255,255,.84); font-size:12px; }
.utility-content { min-height:36px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.utility-content div { display:flex; align-items:center; gap:14px; }
.utility-divider { width:1px; height:12px; background:rgba(255,255,255,.3); }
.site-header { position:sticky; top:0; z-index:50; background:rgba(255,255,255,.96); box-shadow:0 1px 0 rgba(63,65,150,.1); backdrop-filter:blur(12px); }
.nav-shell { min-height:82px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:36px; }
.brand { display:inline-flex; align-items:center; color:var(--blue); flex-shrink:0; }
.brand-yora { font-size:25px; font-weight:700; line-height:1; letter-spacing:-.08em; }
.brand-divider { width:1px; height:32px; margin:0 11px; background:var(--line); }
.brand-content { display:flex; flex-direction:column; line-height:.86; letter-spacing:-.04em; }
.brand-content strong,.brand-content em { font-size:18px; font-weight:700; }
.brand-content strong { color:var(--green); }
.brand-content em { color:var(--orange); font-style:normal; }
.main-nav { justify-self:center; display:flex; align-items:center; flex-wrap:wrap; justify-content:center; gap:28px; padding:0; margin:0; list-style:none; font-size:14px; font-weight:700; color:#555677; }
.main-nav a:hover,.main-nav .current-menu-item > a,.text-link:hover,.card-link:hover { color:var(--orange); }
.nav-cta,.button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; border-radius:999px; padding:10px 18px; border:1px solid transparent; font-size:14px; font-weight:700; transition:.18s ease; }
.mobile-menu { display:none; position:relative; }
.mobile-menu summary { cursor:pointer; list-style:none; padding:10px 13px; border:1px solid var(--line); border-radius:10px; color:var(--blue); font-size:13px; font-weight:700; }
.mobile-menu summary::-webkit-details-marker { display:none; }
.mobile-menu[open] > ul { position:absolute; top:46px; right:0; display:grid; min-width:210px; padding:10px; border:1px solid var(--line); border-radius:13px; background:#fff; box-shadow:var(--shadow-md); }
.mobile-menu[open] > ul a { display:block; padding:9px; }
.nav-cta,.button-primary { background:var(--orange); color:#fff; border-color:var(--orange); }
.nav-cta:hover,.button-primary:hover { background:var(--orange-dark); border-color:var(--orange-dark); color:#fff; transform:translateY(-1px); }
.button-secondary { color:var(--blue); border-color:var(--line); background:#fff; }
.button-secondary:hover { border-color:var(--blue); color:var(--blue); }
.button-dark { background:var(--blue); color:#fff; border-color:var(--blue); }
.button-dark:hover { background:var(--blue-dark); color:#fff; }
.button-white { background:#fff; color:var(--blue); }
.button-outline-light { border-color:rgba(255,255,255,.55); color:#fff; }

.hero { display:grid; grid-template-columns:1.02fr .98fr; gap:72px; align-items:center; padding:74px 0 78px; }
.eyebrow { display:inline-flex; align-items:center; gap:9px; color:var(--blue); font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.eyebrow:before { content:""; width:20px; height:2px; border-radius:2px; background:var(--orange); }
.eyebrow-light { color:#fff; }
.hero h1,.section-heading h2,.tool-copy h2,.cta-content h2 { margin:18px 0 22px; color:var(--blue); font-size:clamp(40px,5vw,70px); line-height:.98; letter-spacing:-.06em; }
.hero h1 em { color:var(--green); font-style:normal; }
.hero-copy > p { max-width:570px; margin:0; color:var(--muted); font-size:18px; line-height:1.65; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.hero-proof { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.hero-proof span { border-radius:999px; background:var(--green-soft); color:var(--green-dark); padding:7px 11px; font-size:12px; font-weight:700; }
.hero-visual { position:relative; }
.hero-photo { overflow:hidden; aspect-ratio:1.03; border-radius:34px; background:var(--blue-soft); box-shadow:var(--shadow-md); }
.hero-photo img { width:100%; height:100%; object-fit:cover; }
.hero-note { position:absolute; left:-30px; bottom:34px; display:flex; gap:10px; align-items:center; padding:13px 17px; border-radius:16px; background:#fff; box-shadow:var(--shadow-sm); }
.hero-note-icon { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:var(--green); color:#fff; font-weight:700; }
.hero-note strong,.hero-note span { display:block; }
.hero-note div span { margin-top:2px; color:var(--muted); font-size:12px; }

.category-band { padding:56px 0; background:var(--cream); }
.section-heading { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:30px; }
.section-heading.compact { margin-bottom:22px; }
.section-heading h2 { margin:10px 0 0; font-size:clamp(30px,3.4vw,47px); }
.section-heading > p { max-width:370px; margin:0 0 5px; color:var(--muted); line-height:1.55; }
.text-link,.card-link { color:var(--blue); font-weight:700; }
.category-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.category-card { display:flex; align-items:center; gap:14px; min-height:108px; padding:19px; border:1px solid #f0e5da; border-radius:19px; background:#fff; transition:.2s ease; }
.category-card:hover { transform:translateY(-3px); border-color:var(--orange); box-shadow:var(--shadow-sm); }
.category-icon { display:grid; place-items:center; flex:0 0 38px; width:38px; height:38px; border-radius:12px; background:var(--blue-soft); color:var(--blue); font-weight:700; }
.category-card strong,.category-card small { display:block; }
.category-card strong { font-size:16px; }
.category-card small { margin-top:4px; color:var(--muted); font-size:12px; line-height:1.35; }
.category-arrow { margin-left:auto; color:var(--orange); font-size:21px; }

.featured-section,.articles-section,.tool-section,.cta-section,.article-page { padding-top:86px; padding-bottom:86px; }
.featured-card { display:grid; grid-template-columns:.86fr 1.14fr; overflow:hidden; border-radius:28px; background:var(--blue); color:#fff; box-shadow:var(--shadow-md); }
.featured-art { display:flex; align-items:flex-end; min-height:390px; padding:34px; background:linear-gradient(145deg,var(--green) 0%,#4dc8a9 52%,var(--orange) 160%); position:relative; overflow:hidden; }
.featured-art:before,.featured-art:after { content:""; position:absolute; border-radius:50%; border:26px solid rgba(255,255,255,.17); }
.featured-art:before { width:280px; height:280px; top:-90px; right:-80px; }
.featured-art:after { width:150px; height:150px; bottom:-85px; left:60px; }
.featured-art span { position:relative; z-index:1; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.2); font-size:13px; font-weight:700; }
.featured-content { padding:52px; }
.post-meta { display:flex; flex-wrap:wrap; gap:10px; color:#c7c8e6; font-size:13px; }
.tag { color:var(--orange); font-weight:700; }
.featured-content h3 { margin:15px 0; font-size:clamp(28px,3vw,43px); line-height:1.04; letter-spacing:-.045em; }
.featured-content p { max-width:640px; color:#e6e6f4; line-height:1.65; }
.feature-points { display:grid; gap:8px; padding:0; margin:25px 0 28px; list-style:none; color:#f0f0f8; font-size:14px; }
.feature-points li:before { content:"✓"; margin-right:9px; color:#8de2cc; }

.articles-section { background:#fafafd; }
.post-explorer { scroll-margin-top:130px; }
.explorer-controls { display:flex; justify-content:space-between; gap:18px; margin-bottom:26px; }
.filter-list { display:flex; flex-wrap:wrap; gap:8px; }
.filter { cursor:pointer; padding:9px 13px; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--muted); font-size:13px; font-weight:700; }
.filter:hover,.filter.is-active { border-color:var(--blue); background:var(--blue); color:#fff; }
.search-box { display:flex; align-items:center; gap:8px; width:min(100%,310px); padding:0 12px; border:1px solid var(--line); border-radius:12px; background:#fff; color:var(--muted); }
.search-box input { min-width:0; width:100%; height:42px; border:0; outline:0; background:transparent; color:var(--ink); }
.post-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.post-card { overflow:hidden; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:0 6px 20px rgba(63,65,150,.04); }
.post-image { display:block; position:relative; aspect-ratio:1.58; overflow:hidden; background:var(--blue-soft); }
.post-image img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.post-card:hover .post-image img { transform:scale(1.04); }
.post-image-category { position:absolute; top:13px; left:13px; padding:6px 9px; border-radius:999px; background:#fff; color:var(--blue); font-size:11px; font-weight:700; }
.post-card-content { padding:19px; }
.post-card .post-meta { color:var(--muted); font-size:12px; }
.post-card h3 { margin:10px 0; font-size:21px; line-height:1.13; letter-spacing:-.035em; }
.post-card h3 a:hover { color:var(--blue); }
.post-card p { margin:0 0 17px; color:var(--muted); font-size:14px; line-height:1.55; }
.empty-state { padding:52px 24px; border:1px dashed var(--line); border-radius:16px; text-align:center; }

.tool-section { display:grid; grid-template-columns:1fr .93fr; gap:60px; align-items:center; }
.tool-section:before { content:""; position:absolute; }
.tool-copy h2 { font-size:clamp(35px,4vw,56px); }
.tool-copy > p { max-width:550px; color:var(--muted); font-size:17px; line-height:1.65; }
.tool-tip { display:flex; gap:10px; max-width:500px; padding:14px; margin-top:24px; border-radius:14px; background:var(--green-soft); color:var(--green-dark); }
.tool-tip span { display:grid; place-items:center; width:22px; height:22px; flex:0 0 22px; border-radius:50%; background:var(--green); color:#fff; font-size:12px; font-weight:700; }
.tool-tip p { margin:0; font-size:13px; line-height:1.45; }
.calculator-card { padding:28px; border-radius:24px; background:var(--blue); color:#fff; box-shadow:var(--shadow-md); }
.calculator-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.calculator-fields label > span { display:block; margin-bottom:7px; font-size:12px; font-weight:700; }
.money-input { display:flex; align-items:center; gap:8px; padding:0 12px; border-radius:11px; background:#fff; color:var(--blue); }
.money-input input { width:100%; height:46px; border:0; outline:0; color:var(--ink); font-weight:700; }
.calculator-results { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:18px; }
.calculator-results div { padding:13px; border-radius:13px; background:rgba(255,255,255,.11); }
.calculator-results span,.calculator-results strong { display:block; }
.calculator-results span { color:#ced0ef; font-size:11px; }
.calculator-results strong { margin-top:6px; font-size:21px; }
.calculator-card small { display:block; margin-top:16px; color:#cfd0e8; font-size:11px; line-height:1.45; }

.cta-section { position:relative; overflow:hidden; min-height:430px; padding:72px; border-radius:30px; background:linear-gradient(135deg,var(--orange),#f9aa41); color:#fff; }
.cta-content { position:relative; z-index:1; max-width:720px; }
.cta-content h2 { color:#fff; font-size:clamp(37px,4.5vw,61px); }
.cta-content p { max-width:620px; color:rgba(255,255,255,.93); font-size:17px; line-height:1.6; }
.cta-orbit { position:absolute; border:32px solid rgba(255,255,255,.16); border-radius:50%; }
.orbit-one { width:510px; height:510px; top:-255px; right:-100px; }
.orbit-two { width:290px; height:290px; right:85px; bottom:-190px; }
.cta-badge { position:absolute; right:74px; bottom:62px; display:grid; place-items:center; width:115px; height:115px; border:1px solid rgba(255,255,255,.45); border-radius:50%; background:rgba(255,255,255,.15); transform:rotate(12deg); }
.cta-badge span { font-size:48px; font-weight:700; letter-spacing:-.1em; }
.cta-badge small { font-size:11px; font-weight:700; }

.site-footer { padding:64px 0 24px; background:var(--blue-dark); color:#fff; }
.footer-grid { display:grid; grid-template-columns:1.6fr repeat(3,1fr); gap:36px; }
.brand-footer { color:#fff; }
.brand-footer .brand-divider { background:rgba(255,255,255,.22); }
.footer-grid p { max-width:330px; color:#cbccea; line-height:1.6; font-size:14px; }
.footer-grid strong,.footer-grid a,.footer-grid span { display:block; }
.footer-grid strong { margin-bottom:13px; font-size:14px; }
.footer-grid a,.footer-grid span { margin:8px 0; color:#cbcced; font-size:13px; }
.footer-grid a:hover { color:#fff; }
.footer-bottom { display:flex; justify-content:space-between; gap:18px; margin-top:48px; padding-top:20px; border-top:1px solid rgba(255,255,255,.15); color:#babbde; font-size:11px; }

.article-hero { padding-top:60px; padding-bottom:52px; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:35px; color:var(--muted); font-size:13px; }
.breadcrumbs a:hover { color:var(--orange); }
.article-heading { display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:60px; }
.article-heading h1 { margin:14px 0 18px; color:var(--blue); font-size:clamp(40px,5vw,68px); line-height:1; letter-spacing:-.06em; }
.article-deck { max-width:650px; color:var(--muted); font-size:18px; line-height:1.6; }
.article-author { display:flex; align-items:center; gap:9px; margin-top:23px; color:var(--muted); font-size:13px; }
.author-mark { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:var(--green); color:#fff; font-size:15px; font-weight:700; }
.article-cover { overflow:hidden; aspect-ratio:.95; border-radius:26px; background:var(--blue-soft); box-shadow:var(--shadow-sm); }
.article-cover img { width:100%; height:100%; object-fit:cover; }
.article-body-shell { display:grid; grid-template-columns:150px minmax(0,720px) 240px; gap:44px; align-items:start; }
.article-share { position:sticky; top:130px; display:grid; gap:10px; font-size:13px; }
.article-share strong { color:var(--blue); }
.share-link { color:var(--muted); }
.share-link:hover { color:var(--orange); }
.article-content { color:#4f506b; font-family:Georgia,serif; font-size:18px; line-height:1.75; }
.article-content h2 { margin:46px 0 15px; color:var(--blue); font-family:"Quicksand",sans-serif; font-size:30px; line-height:1.12; letter-spacing:-.045em; }
.article-content p { margin:0 0 19px; }
.article-content ul,.article-content ol { padding-left:24px; margin:0 0 22px; }
.article-content a { color:var(--blue); text-decoration:underline; }
.article-content figure { margin:28px 0; }
.article-content figcaption { color:var(--muted); font-family:"Quicksand",sans-serif; font-size:12px; }
.article-callout { padding:21px; margin:27px 0; border-left:4px solid var(--green); border-radius:0 14px 14px 0; background:var(--green-soft); font-family:"Quicksand",sans-serif; }
.article-callout p { margin:6px 0 0; font-size:15px; line-height:1.55; }
.article-aside { position:sticky; top:130px; padding:22px; border:1px solid var(--line); border-radius:17px; background:var(--cream); }
.article-aside span { color:var(--orange-dark); font-size:12px; font-weight:700; }
.article-aside h3 { margin:8px 0; color:var(--blue); font-size:22px; line-height:1.1; }
.article-aside p { color:var(--muted); font-size:13px; line-height:1.55; }
.related-section { padding:72px 0; background:#fafafd; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.related-card { padding:24px; border:1px solid var(--line); border-radius:18px; background:#fff; }
.related-card > span { color:var(--orange-dark); font-size:12px; font-weight:700; }
.related-card h3 { margin:10px 0; font-size:21px; line-height:1.15; }
.related-card p { color:var(--muted); font-size:14px; line-height:1.55; }

.archive-hero { padding:64px 0 38px; background:var(--cream); }
.archive-hero h1 { margin:14px 0 0; color:var(--blue); font-size:clamp(38px,4.6vw,60px); letter-spacing:-.06em; }
.archive-content { padding:65px 0 86px; }
.archive-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.pagination { display:flex; justify-content:center; gap:8px; margin-top:40px; }
.pagination .page-numbers { display:grid; place-items:center; min-width:38px; height:38px; padding:0 10px; border:1px solid var(--line); border-radius:9px; }
.pagination .current,.pagination a:hover { background:var(--blue); color:#fff; border-color:var(--blue); }
.not-found { padding:110px 0; text-align:center; }
.not-found h1 { color:var(--blue); font-size:clamp(46px,6vw,80px); }

@media (max-width:980px) { .nav-shell{gap:18px}.main-nav{gap:15px}.hero,.tool-section,.article-heading{gap:38px}.category-grid{grid-template-columns:repeat(2,1fr)}.article-body-shell{grid-template-columns:1fr}.article-share,.article-aside{position:static}.article-share{display:flex;align-items:center;flex-wrap:wrap}.article-aside{max-width:450px}.footer-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:760px) { .section-shell{width:min(100% - 30px,1180px)}.utility-content{padding:8px 0}.utility-content > span{display:none}.nav-shell{min-height:70px;grid-template-columns:1fr auto auto}.nav-shell > nav,.nav-cta{display:none}.mobile-menu{display:block}.hero,.featured-card,.tool-section,.article-heading{grid-template-columns:1fr}.hero{padding:48px 0 56px}.hero-visual{max-width:560px}.hero-note{left:12px;bottom:16px}.section-heading{align-items:start;flex-direction:column}.category-grid,.post-grid,.archive-grid,.related-grid{grid-template-columns:1fr}.featured-content{padding:31px}.featured-art{min-height:225px}.explorer-controls{flex-direction:column}.search-box{width:100%}.calculator-results{grid-template-columns:1fr}.cta-section{padding:48px 28px;min-height:0}.cta-badge{display:none}.footer-grid{grid-template-columns:1fr;gap:24px}.footer-bottom{flex-direction:column;margin-top:34px}.article-hero,.featured-section,.articles-section,.tool-section,.cta-section,.article-page{padding-top:54px;padding-bottom:54px}.article-cover{max-width:520px}.article-content{font-size:17px}.article-content h2{font-size:27px} }
