:root{--wine:#541427;--wine-dark:#2d0913;--wine-soft:#74253b;--paper:#f4f0e9;--cream:#fbf9f5;--ink:#191716;--muted:#716966;--gold:#b58a4c;--line:#ddd4ca;--white:#fff;--serif:"Newsreader",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--shadow:0 24px 70px rgba(36,16,19,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.65 var(--sans);overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.shell{width:min(1160px,calc(100% - 48px));margin-inline:auto}.section{padding:108px 0}.skip-link{position:fixed;left:16px;top:-80px;z-index:9999;background:#fff;padding:12px 18px}.skip-link:focus{top:16px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.legal-note{min-height:34px;padding:8px 20px;background:var(--wine-dark);color:#eee2e4;text-align:center;font-size:.75rem}.site-header{position:sticky;top:0;z-index:50;background:rgba(251,249,245,.94);border-bottom:1px solid rgba(84,20,39,.12);backdrop-filter:blur(12px)}.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{width:156px;flex:none}.brand img{width:100%;height:auto}.main-nav{display:flex;align-items:center;gap:28px;font-size:.88rem;font-weight:600}.main-nav a{white-space:nowrap}.main-nav a:hover{color:var(--wine)}.nav-contact{border:1px solid var(--wine);border-radius:100px;padding:10px 16px}.menu-button{display:none;width:44px;height:44px;padding:10px;background:none;border:0}.menu-button span:not(.sr-only){display:block;width:23px;height:2px;margin:5px auto;background:var(--wine)}
.hero{background:var(--paper);padding:64px 0 88px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.78fr);align-items:center;gap:clamp(48px,7vw,104px)}.kicker{margin:0 0 17px;color:var(--wine);font-size:.75rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.hero h1,.section h2{font-family:var(--serif);font-weight:600;line-height:.97;letter-spacing:-.035em}.hero h1{max-width:760px;margin:0 0 28px;font-size:clamp(3.6rem,6.8vw,6.7rem)}.hero-lead{max-width:650px;margin:0 0 34px;color:#514a47;font-size:clamp(1.08rem,1.6vw,1.28rem)}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 22px;border:0;border-radius:2px;font-weight:700}.button-primary{background:var(--wine);color:#fff}.button-primary:hover{background:var(--wine-soft);transform:translateY(-2px)}.text-action{font-weight:700}.text-action span{color:var(--gold)}.microcopy{margin:24px 0 0;color:var(--muted);font-size:.77rem}.hero-photo{position:relative;margin:0;min-width:0}.hero-photo:before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--gold);z-index:0}.hero-photo img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 22%;filter:saturate(.9)}.hero-photo figcaption{position:absolute;right:-18px;bottom:26px;z-index:2;display:flex;flex-direction:column;min-width:215px;padding:17px 20px;background:#fff;box-shadow:var(--shadow)}.hero-photo figcaption strong{font-family:var(--serif);font-size:1.35rem}.hero-photo figcaption span{color:var(--wine);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.intro{background:#fff}.intro-grid{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.2fr);align-items:center;gap:clamp(50px,8vw,120px)}.portrait{margin:0}.portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 15%}.intro-copy h2,.section-heading h2,.contact h2{margin:0 0 27px;font-size:clamp(2.8rem,5vw,5.1rem)}.intro-copy>p:not(.kicker){color:var(--muted);max-width:690px}.large-text{font-family:var(--serif);font-size:clamp(1.4rem,2.1vw,1.9rem);line-height:1.35;color:var(--ink)!important}.values{list-style:none;margin:35px 0 0;padding:0;border-top:1px solid var(--line)}.values li{display:flex;gap:22px;padding:15px 0;border-bottom:1px solid var(--line);font-weight:600}.values span{color:var(--gold);font-size:.75rem}
.topics{background:var(--paper)}.section-heading{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);align-items:end;gap:50px;margin-bottom:50px}.section-heading h2{margin-bottom:0}.section-heading>p{margin:0;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.feature{display:flex;min-width:0;min-height:300px;flex-direction:column;padding:35px;background:#fff;border-top:3px solid transparent;transition:.25s}.feature:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:var(--shadow)}.feature-main{grid-row:span 2;min-height:618px;justify-content:flex-end;background:linear-gradient(145deg,rgba(45,9,19,.62),rgba(45,9,19,.94)),url("../images/mariana-retrato.jpg") center 20%/cover;color:#fff}.feature-tag{margin-bottom:auto;color:var(--gold);font-size:.73rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.feature h3{margin:20px 0 14px;font-family:var(--serif);font-size:clamp(1.75rem,3vw,3rem);line-height:1.05}.feature p{margin:0 0 25px;color:var(--muted)}.feature-main p{color:#e9dfe1}.read-more{margin-top:auto;font-size:.82rem;font-weight:700}
.legislative{background:var(--wine-dark);color:#fff}.section-heading.light .kicker{color:#d2a96e}.section-heading.light h2{color:#fff}.live-status{display:grid;grid-template-columns:auto 1fr;gap:0 10px;align-items:center}.live-status>span{grid-row:span 2;width:9px;height:9px;border-radius:50%;background:#71b98e;box-shadow:0 0 0 5px rgba(113,185,142,.14)}.live-status strong{font-size:.86rem}.live-status small{color:#b9a8ac}.radar-intro{max-width:700px;margin:-25px 0 38px;color:#cbbdc0}.proposal-list{border-top:1px solid rgba(255,255,255,.16)}.proposal{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:30px;align-items:center;padding:27px 0;border-bottom:1px solid rgba(255,255,255,.16)}.proposal-code{color:#d7b57e;font-family:var(--serif);font-size:1.4rem}.proposal h3{margin:0;font:500 clamp(1.12rem,1.6vw,1.4rem)/1.35 var(--serif)}.proposal a{font-size:1.2rem}.proposal-skeleton{height:88px;border-bottom:1px solid rgba(255,255,255,.16);background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);background-size:200% 100%;animation:pulse 1.5s infinite}.data-credit{display:flex;justify-content:space-between;gap:25px;margin-top:25px;color:#ad9da0;font-size:.76rem}.data-credit a{color:#fff}.api-fallback{padding:35px 0;color:#d8cdd0}.api-fallback a{text-decoration:underline}.source-list{border-top:1px solid var(--line)}.source-list a{display:grid;grid-template-columns:120px minmax(200px,.8fr) minmax(260px,1.3fr) auto;gap:25px;align-items:center;padding:27px 8px;border-bottom:1px solid var(--line)}.source-list a:hover{background:var(--paper)}.source-list span{color:var(--wine);font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.source-list strong{font:600 1.45rem var(--serif)}.source-list small{color:var(--muted)}.source-list b{color:var(--gold)}
.contact{background:var(--paper)}.contact-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:80px;align-items:center}.contact-grid>div:first-child>p:last-child{max-width:650px;color:var(--muted);font-size:1.1rem}.contact-box{display:flex;flex-direction:column;padding:40px;background:#fff;border:1px solid var(--line)}.contact-box>span{color:var(--wine);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.contact-box strong{margin:12px 0 2px;font:600 2rem var(--serif)}.contact-box small{margin-bottom:25px;color:var(--muted)}.site-footer{padding:60px 0 25px;background:var(--wine-dark);color:#fff}.footer-grid{display:grid;grid-template-columns:200px 1fr auto;align-items:start;gap:70px}.footer-grid img{width:180px}.footer-grid p{max-width:520px;margin:0;color:#cdbfc2}.footer-grid nav{display:grid;gap:8px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:45px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);color:#a89599;font-size:.75rem}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:40;display:grid;width:54px;height:54px;place-items:center;border-radius:50%;background:#276f4d;color:#fff;font-size:.72rem;font-weight:800;box-shadow:0 10px 30px rgba(0,0,0,.22)}
@keyframes pulse{to{background-position:-200% 0}}@media(max-width:900px){.section{padding:82px 0}.menu-button{display:block}.main-nav{position:absolute;left:0;right:0;top:78px;display:none;padding:24px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.hero-grid,.intro-grid{grid-template-columns:1fr}.hero-grid{gap:55px}.hero-photo{max-width:600px;margin:auto}.intro-grid{gap:45px}.portrait{max-width:500px}.section-heading,.contact-grid{grid-template-columns:1fr;gap:24px}.feature-grid{grid-template-columns:1fr}.feature-main{grid-row:auto;min-height:520px}.source-list a{grid-template-columns:95px 1fr auto}.source-list small{grid-column:2/4}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid p{grid-column:1/3}.footer-grid nav{grid-column:2;grid-row:1}}
@media(max-width:600px){.shell{width:min(100% - 30px,1160px)}.legal-note{font-size:.68rem}.hero{padding:42px 0 66px}.hero h1{font-size:clamp(3rem,15vw,4.5rem)}.hero-photo:before{inset:10px -8px -10px 8px}.hero-photo figcaption{right:-4px;bottom:14px;min-width:185px;padding:12px 15px}.section{padding:68px 0}.section-heading{margin-bottom:34px}.feature{min-height:auto;padding:28px}.feature-main{min-height:480px}.proposal{grid-template-columns:1fr auto;gap:8px 15px}.proposal-code{grid-column:1}.proposal h3{grid-column:1/3}.proposal a{grid-column:2;grid-row:1}.data-credit,.footer-bottom{flex-direction:column}.source-list a{grid-template-columns:1fr auto;gap:5px 15px}.source-list span,.source-list strong,.source-list small{grid-column:1}.source-list b{grid-column:2;grid-row:1/4}.contact-grid{gap:35px}.contact-box{padding:28px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-grid p,.footer-grid nav{grid-column:1;grid-row:auto}.whatsapp-float{right:15px;bottom:15px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.articles{background:#fff}.article-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.article-card{position:relative;display:flex;min-height:290px;flex-direction:column;padding:34px;border:1px solid var(--line);background:var(--cream);transition:.25s}.article-card:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:var(--shadow)}.article-card-featured{grid-row:span 2;min-height:598px;padding:44px;background:var(--wine);color:#fff}.article-number{position:absolute;right:28px;top:24px;color:rgba(181,138,76,.48);font:600 3.8rem/1 var(--serif)}.article-topic{position:relative;color:var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.article-card h3{position:relative;max-width:620px;margin:auto 0 16px;font:600 clamp(1.7rem,3vw,3.2rem)/1.04 var(--serif)}.article-card:not(.article-card-featured) h3{font-size:clamp(1.55rem,2.3vw,2.2rem)}.article-card p{position:relative;margin:0 0 28px;color:var(--muted)}.article-card-featured p{color:#e1d3d6}.profile-link{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:18px;padding:22px 28px;border-bottom:1px solid var(--line);font-size:.9rem}.profile-link strong{color:var(--wine)}.profile-link:hover{background:var(--paper)}
.social{background:var(--paper)}.social-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);align-items:center;gap:clamp(45px,8vw,110px)}.social-copy h2{margin:0 0 25px;font:600 clamp(2.8rem,5vw,5.1rem)/.97 var(--serif);letter-spacing:-.035em}.social-copy>p:not(.kicker){max-width:620px;color:var(--muted);font-size:1.08rem}.social-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.instagram-panel{position:relative;display:grid;min-height:520px;align-content:end;overflow:hidden;padding:34px;color:#fff}.instagram-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(45,9,19,.92) 100%)}.instagram-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%;transition:.4s}.instagram-panel:hover img{transform:scale(1.025)}.instagram-panel>*:not(img){position:relative;z-index:1}.instagram-handle{margin-bottom:9px;color:#e5bf86;font-size:.76rem;font-weight:700;letter-spacing:.08em}.instagram-panel strong{max-width:360px;font:600 2rem/1.08 var(--serif)}.instagram-panel small{margin-top:14px}.contact{background:#fff}
.developer-credit{display:flex;justify-content:center;gap:8px;margin-top:18px;color:#79696d;font-size:.65rem;letter-spacing:.035em}.developer-credit a{color:#9b898e;transition:color .2s}.developer-credit a+a:before{content:"·";margin-right:8px;color:#625358}.developer-credit a:hover{color:#fff}
@media(max-width:900px){.article-grid,.social-grid{grid-template-columns:1fr}.article-card-featured{grid-row:auto;min-height:480px}.instagram-panel{min-height:480px;max-width:580px}.social-grid{gap:45px}}
@media(max-width:600px){.article-card,.article-card-featured{min-height:360px;padding:28px}.article-number{font-size:3rem}.profile-link{align-items:flex-start;flex-direction:column}.instagram-panel{min-height:440px;padding:28px}.developer-credit{flex-wrap:wrap}}

/* Enquadramento fotográfico: mantém 4:5 sem esticar e equilibra imagem/texto. */
.hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}
.hero-photo{width:min(100%,430px);justify-self:end}
.hero-photo img{height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 18%}
.portrait{width:min(100%,420px);justify-self:center}
.portrait img{height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 16%}

@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .hero-photo{width:min(100%,420px);justify-self:center}
  .portrait{width:min(100%,400px)}
}

@media(max-width:600px){
  .hero-photo{width:min(92%,340px);margin-inline:auto}
  .hero-photo:before{inset:8px -8px -8px 8px}
  .hero-photo figcaption{position:relative;right:auto;bottom:auto;width:calc(100% - 20px);min-width:0;margin:-16px auto 0}
  .portrait{width:min(92%,340px)}
}
