#app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.icon{width:1.18em;height:1.18em;flex:0 0 auto}

/* Estrutura institucional */
.independence-bar{background:#071d41;color:#fff;font-size:.75rem;letter-spacing:.005em}.independence-inner{min-height:32px;display:flex;align-items:center;justify-content:center;gap:1rem}.independence-inner a{color:#fff;font-weight:800;white-space:nowrap}
.national-ribbon,.footer-flagline{display:grid;grid-template-columns:1.45fr .5fr 1fr;height:4px;overflow:hidden}.national-ribbon i,.footer-flagline span{display:block}.national-ribbon i:nth-child(1),.footer-flagline span:nth-child(1){background:var(--flag-green)}.national-ribbon i:nth-child(2),.footer-flagline span:nth-child(2){background:var(--flag-yellow)}.national-ribbon i:nth-child(3),.footer-flagline span:nth-child(3){background:var(--flag-blue)}.national-ribbon i{transform-origin:left;animation:flagBarIn .72s var(--ease-emph) both}.national-ribbon i:nth-child(2){animation-delay:.08s}.national-ribbon i:nth-child(3){animation-delay:.16s}@keyframes flagBarIn{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.scroll-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:10001;pointer-events:none}.scroll-progress span{display:block;height:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--flag-green) 0 37%,var(--flag-yellow) 37% 56%,var(--flag-blue) 56%);box-shadow:0 1px 6px rgba(0,0,0,.16)}
.site-header{background:#fff;border-bottom:1px solid #d6dfeb;position:sticky;top:0;z-index:50;transition:box-shadow .2s var(--ease)}.site-header.is-scrolled{box-shadow:0 4px 14px rgba(7,29,65,.08)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:1.15rem}.brand{display:inline-flex;align-items:center;gap:.72rem;color:var(--color-heading);text-decoration:none;min-width:max-content}.brand:hover{text-decoration:none}
.brand-flag{width:44px;height:44px;display:grid;place-items:center;transition:translate .22s var(--ease-emph)}.brand:hover .brand-flag{translate:0 -2px}.brand-flag svg{width:100%;height:100%}.brand-copy strong{display:block;font-size:1.06rem;line-height:1;color:#071d41;letter-spacing:-.02em}.brand-copy small{display:block;color:#4f5d75;font-size:.69rem;margin-top:.25rem;font-weight:700}
.main-nav{display:flex;align-items:center;gap:.12rem}.main-nav>a{color:#1b1b1b;font-weight:700;text-decoration:none;font-size:.86rem;white-space:nowrap;padding:.7rem .65rem;position:relative}.main-nav>a:hover{color:var(--color-blue-700);text-decoration:none}.main-nav>a:after{content:"";position:absolute;left:.65rem;right:.65rem;bottom:.3rem;height:2px;background:var(--color-blue-700);transform:scaleX(0);transform-origin:left;transition:transform .2s var(--ease)}.main-nav>a:hover:after{transform:scaleX(1)}
.header-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;border:1px solid #98afd2;border-radius:.28rem;background:#fff;min-width:18rem;margin-left:.4rem;overflow:hidden}.header-search>.icon{margin-left:.75rem;color:#4a77b4}.header-search input{border:0;background:transparent;min-width:0;width:100%;padding:.62rem .55rem;outline:none;color:#1b1b1b}.header-search button{border:0;border-left:1px solid #c5d4eb;background:#f5f7fa;color:#1351b4;min-height:42px;padding:0 .85rem;font-weight:800;cursor:pointer;transition:background .18s var(--ease)}.header-search button:hover{background:#eaf1fb}.header-search:focus-within{border-color:#1351b4;box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(19,81,180,.32)}
.menu-button{display:none;border:1px solid #98afd2;background:#fff;border-radius:.28rem;min-height:44px;padding:.55rem .8rem;align-items:center;gap:.45rem;color:#071d41;font-weight:800}

/* Elementos */
.button{appearance:none;border:1px solid transparent;border-radius:.28rem;min-height:46px;padding:.72rem 1.05rem;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;transition:background .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease)}.button:active{box-shadow:none}.button-primary{background:#1351b4;color:white}.button-primary:hover{background:#0e4290;box-shadow:0 2px 8px rgba(7,29,65,.14);text-decoration:none}.button-secondary{background:#fff;color:#1351b4;border-color:#98afd2}.button-secondary:hover{border-color:#1351b4;background:#edf4ff;text-decoration:none}.button-light{background:#fff;color:#071d41;border-color:#fff}.button-light:hover{background:#fffbea;text-decoration:none}.button-row{display:flex;gap:.75rem;flex-wrap:wrap}
.card{background:var(--color-surface);border:1px solid #c5d4eb;border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:.7rem;font-weight:900;color:#006b2d}.eyebrow.light{color:#c8f2d3}.muted{color:var(--color-muted)}.text-link{display:inline-flex;align-items:center;gap:.4rem;font-weight:800;text-decoration:none;color:#1351b4}.text-link .icon{transition:translate .2s var(--ease)}.text-link:hover .icon{translate:4px 0}.light-link{color:white}.tag{display:inline-flex;align-items:center;border-radius:.25rem;background:#e7efff;color:#0c326f;padding:.28rem .5rem;font-size:.7rem;font-weight:850}.tag.prominent{padding:.43rem .7rem;background:#fff7bf;color:#5f4b00;border:1px solid #ffdf00}
.section{padding:clamp(4.2rem,7vw,6.6rem) 0;position:relative}.section-white{background:#fff;border-block:1px solid #e1e7ef}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2.25rem}.section-heading h2{margin:.45rem 0 0;max-width:24ch}.section-heading .section-intro{max-width:48rem;color:#4f5d75;margin:.7rem 0 0;font-size:1.02rem}

/* Hero: Brasil institucional, sem estética de dashboard de IA */
.hero{position:relative;overflow:hidden}.hero-brazil{background:#fff;border-bottom:1px solid #c5d4eb;isolation:isolate}.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(23rem,.9fr);gap:clamp(2.8rem,5vw,5.8rem);align-items:center;padding-block:clamp(4.9rem,8vw,7.2rem) clamp(3.5rem,6vw,4.8rem)}.hero-copy{position:relative;z-index:2;min-width:0}.hero-kicker{display:inline-flex;align-items:center;gap:.7rem;color:#006b2d;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:900;margin-bottom:1rem}.mini-flag{width:44px;height:7px;display:grid;grid-template-columns:1.45fr .5fr 1fr;overflow:hidden}.mini-flag i:nth-child(1){background:var(--flag-green)}.mini-flag i:nth-child(2){background:var(--flag-yellow)}.mini-flag i:nth-child(3){background:var(--flag-blue)}
.hero-copy h1{max-width:12ch;margin:0 0 1.2rem;color:#071d41;text-wrap:balance}.hero-emphasis{position:relative;display:inline;color:#1351b4}.hero-emphasis:after{content:"";position:absolute;left:0;right:0;bottom:.02em;height:.13em;background:var(--flag-yellow);z-index:-1;transform-origin:left;animation:nationalSweep .9s .32s var(--ease-emph) both}@keyframes nationalSweep{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hero-lead{font-size:clamp(1.04rem,1.45vw,1.2rem);max-width:48rem;color:#44546a;margin:0 0 1.8rem}.hero-search{max-width:55rem}.hero-search>label{font-weight:850;display:block;margin-bottom:.55rem;color:#071d41}.hero-search-box{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;background:#fff;border:2px solid #1351b4;border-radius:.35rem;padding:.3rem .3rem .3rem .9rem;box-shadow:0 10px 28px rgba(7,29,65,.11);position:relative}.hero-search-box:after{content:"";position:absolute;height:3px;left:0;right:0;bottom:-3px;background:linear-gradient(90deg,var(--flag-green) 0 37%,var(--flag-yellow) 37% 56%,var(--flag-blue) 56%);transform-origin:left;animation:nationalSweep 1s .5s var(--ease-emph) both}.hero-search-box>.icon{color:#1351b4;font-size:1.26rem}.hero-search-box input{border:0;outline:0;background:transparent;min-width:0;padding:.9rem .85rem;font-size:1rem;color:#1b1b1b}.form-hint{font-size:.8rem;color:#5f6f82;margin:.78rem 0 0}.hero-trust-line{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;margin-top:1.35rem;padding-top:1.15rem;border-top:1px solid #d7e0ee;color:#3f536b;font-size:.79rem;font-weight:750}.hero-trust-line span{display:flex;align-items:center;gap:.38rem}.hero-trust-line .icon{color:#006b2d}
.hero-brazil-panel{position:relative;background:#fff;border:1px solid #9eb2cf;box-shadow:0 4px 14px rgba(7,29,65,.07);min-height:440px;overflow:hidden}.panel-national-rule{display:grid;grid-template-columns:1.45fr .5fr 1fr;height:6px}.panel-national-rule i{transform-origin:left;animation:flagBarIn .72s .18s var(--ease-emph) both}.panel-national-rule i:nth-child(2){animation-delay:.26s}.panel-national-rule i:nth-child(3){animation-delay:.34s}.panel-national-rule i:nth-child(1){background:var(--flag-green)}.panel-national-rule i:nth-child(2){background:var(--flag-yellow)}.panel-national-rule i:nth-child(3){background:var(--flag-blue)}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.45rem 1.45rem 1.05rem;border-bottom:1px solid #d7e0ee}.panel-overline{display:block;color:#5b6b7c;text-transform:uppercase;letter-spacing:.11em;font-size:.67rem;font-weight:900}.panel-heading h2{font-size:1.4rem;margin:.32rem 0 0}.panel-index{font-size:2.2rem;line-height:1;font-weight:800;color:#dce5f1;letter-spacing:-.05em}
.service-directory{display:grid}.directory-row{display:grid;grid-template-columns:2rem 2.25rem minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.92rem 1.45rem;border-bottom:1px solid #e2e8f0;color:#1b1b1b;text-decoration:none;position:relative;isolation:isolate;transition:background .18s var(--ease),padding-left .2s var(--ease)}.directory-row:hover{background:#f7faff;box-shadow:inset 4px 0 0 var(--flag-green);text-decoration:none}.directory-number{font-size:.7rem;color:#6f7e90;font-weight:800}.directory-icon{width:34px;height:34px;display:grid;place-items:center;background:#edf4ff;color:#1351b4;border:1px solid #d4dfef}.directory-copy strong{display:block;color:#071d41;font-size:.9rem}.directory-copy small{display:block;color:#5f6f82;font-size:.72rem;margin-top:.08rem}.directory-arrow{color:#1351b4;transition:translate .18s var(--ease)}.directory-row:hover .directory-arrow{translate:4px 0}.directory-all{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:1rem 1.45rem;color:#1351b4;font-weight:850;font-size:.8rem;text-decoration:none;background:#fbfcfe}.directory-all:hover{background:#f0f5fc;text-decoration:none}.directory-all .icon{transition:translate .18s var(--ease)}.directory-all:hover .icon{translate:4px 0}
.hero-service-strip{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #c5d4eb;border-bottom:0;background:#fff;overflow:hidden;box-shadow:0 -5px 18px rgba(7,29,65,.035)}.hero-service-strip>div{display:grid;grid-template-columns:auto 1fr;column-gap:.8rem;row-gap:.1rem;padding:1.05rem 1.25rem;border-right:1px solid #d7e0ee}.hero-service-strip>div:last-child{border-right:0}.hero-service-strip span{grid-row:1/3;width:30px;height:30px;display:grid;place-items:center;border:1px solid #b8c9df;color:#1351b4;font-weight:900;font-size:.72rem}.hero-service-strip strong{color:#071d41;font-size:.88rem}.hero-service-strip small{color:#5f6f82;font-size:.74rem}

/* Categorias e soluções */
.national-section:before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,var(--flag-green) 0 37%,var(--flag-yellow) 37% 56%,var(--flag-blue) 56%);opacity:.78}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.category-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;background:#fff;border:1px solid #d7e0ee;align-items:center;gap:.9rem;padding:1.02rem 1rem;text-decoration:none;color:#1b1b1b;position:relative;overflow:hidden;isolation:isolate;transition:translate .2s var(--ease-emph),border-color .2s var(--ease),box-shadow .22s var(--ease),background .2s var(--ease)}.category-card:hover{border-color:#7797c4;background:#f7faff;box-shadow:inset 4px 0 0 var(--flag-green);text-decoration:none}.category-accent{position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--flag-green) 0 37%,var(--flag-yellow) 37% 56%,var(--flag-blue) 56%);transform:scaleY(.25);transform-origin:center;transition:transform .28s var(--ease-emph)}.category-card:hover .category-accent{transform:scaleY(1)}.category-icon{width:42px;height:42px;border:1px solid #d3dfef;background:#edf4ff;color:#1351b4;display:grid;place-items:center;font-size:1.08rem;transition:translate .2s var(--ease)}.category-card:hover .category-icon{background:#dfe9f7}.category-copy strong{display:block;color:#071d41}.category-copy small{display:block;color:#5f6f82;margin-top:.18rem;font-size:.76rem;line-height:1.38}.category-arrow{color:#1351b4;transition:translate .18s var(--ease)}.category-card:hover .category-arrow{translate:4px 0}
.process-section{background:#f4f6f8;border-block:1px solid #dce3ec}.process-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #cbd6e5;background:#fff}.process-list>li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;padding:1.55rem 1.45rem;position:relative;border-right:1px solid #d7e0ee}.process-list>li:last-child{border-right:0}.process-list>li:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--flag-green)}.process-list>li:nth-child(2):before{background:var(--flag-yellow)}.process-list>li:nth-child(3):before{background:var(--flag-blue)}.process-list>li>span{width:44px;height:44px;display:grid;place-items:center;border:1px solid #9eb2cf;background:#f7f9fc;color:#1351b4;font:900 .85rem/1 Rawline,"Segoe UI",sans-serif}.process-list small{display:block;color:#5f6f82;font-weight:900;letter-spacing:.1em;font-size:.66rem;margin-bottom:.28rem}.process-list h3{font-size:1.15rem;margin:0 0 .45rem}.process-list p{color:#52677f;margin:0;font-size:.88rem}
.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.solution-card{min-height:218px;padding:1.12rem;background:#fff;border:1px solid #d7e0ee;display:flex;flex-direction:column;text-decoration:none;color:#1b1b1b;position:relative;overflow:hidden;isolation:isolate;transition:translate .2s var(--ease-emph),box-shadow .22s var(--ease),border-color .2s var(--ease)}.solution-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--flag-green),var(--flag-yellow),var(--flag-blue));transform:scaleX(.22);transform-origin:left;transition:transform .3s var(--ease-emph)}.solution-card:hover{border-color:#7797c4;box-shadow:0 4px 12px rgba(7,29,65,.06);text-decoration:none}.solution-card:hover:before{transform:scaleX(1)}.solution-card-top{display:flex;justify-content:space-between;align-items:center;gap:.7rem}.solution-card-icon{width:40px;height:40px;border:1px solid #d3dfef;background:#edf4ff;color:#1351b4;display:grid;place-items:center}.solution-card h3{font-size:1.15rem;margin:1rem 0 .55rem}.solution-card p{color:#52677f;margin:0 0 1.2rem;font-size:.88rem}.solution-card>.text-link{margin-top:auto}.solution-card.compact{min-height:188px}.featured-grid{grid-template-columns:repeat(3,1fr)}.featured-grid .solution-card:first-child{grid-column:span 2;min-height:246px;background:#f8fafc}.featured-grid .solution-card:first-child h3{font-size:1.5rem;max-width:19ch}.featured-grid .solution-card:first-child p{max-width:50rem;font-size:.98rem}

/* Confiança e acessibilidade */
.national-callout{position:relative;background:#071d41;color:#fff;overflow:hidden;padding:clamp(4.8rem,8vw,7rem) 0}.national-callout h2{color:#fff;max-width:21ch;margin:.55rem 0 1rem;font-size:clamp(2rem,4vw,3.25rem)}.national-callout p{max-width:48rem;color:#d8e4f5;font-size:1.03rem;margin-bottom:1.6rem}.national-callout-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(20rem,.65fr);gap:clamp(2rem,5vw,5rem);align-items:center;position:relative;z-index:2}.national-callout-list{display:grid;border:1px solid #35577f;background:#0b2d61}.national-callout-list>div{display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.85rem;align-items:center;padding:1rem 1.15rem;border-bottom:1px solid #35577f}.national-callout-list>div:last-child{border-bottom:0}.national-callout-list span{color:#ffdf00;font-weight:900;font-size:.72rem}.national-callout-list strong{color:#fff;font-size:.88rem;line-height:1.4}
.safety-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.15rem;align-items:center;padding:1.4rem 1.5rem;border-color:#e1d16f;background:linear-gradient(90deg,#fffdf1,#fff)}.safety-icon{width:52px;height:52px;border:1px solid #ead46c;background:#fff7bf;color:#745b00;display:grid;place-items:center;font-size:1.22rem}.safety-banner h2{font-size:1.26rem;margin:.3rem 0 .35rem}.safety-banner p{color:#5f6f82;margin:0}
.accessibility-block{background:#071d41;color:white;overflow:hidden}.accessibility-block:before{content:"";position:absolute;width:420px;height:420px;border:78px solid rgba(19,81,180,.26);border-radius:50%;right:-180px;top:-180px}.accessibility-block h2{color:#fff;max-width:20ch}.accessibility-block p{color:#d4deec;max-width:48rem}.split-block{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(2rem,5vw,5rem);align-items:center;position:relative;z-index:2}.accessibility-demo{padding:1.5rem;background:linear-gradient(145deg,#1351b4,#0c326f);border:1px solid #4f97d1;border-radius:.4rem;display:flex;align-items:center;gap:1.2rem;box-shadow:0 22px 50px rgba(0,0,0,.24)}.big-a{font:900 3.1rem/1 Rawline,"Segoe UI",sans-serif;color:white}.accessibility-demo strong{display:block;color:white;font-size:1.05rem}.accessibility-demo p{font-size:.86rem;margin:.3rem 0 0}.final-cta{background:#fff}.final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-left:4px solid var(--flag-green);padding:1.4rem 0 1.4rem 1.45rem}.final-cta h2{margin:.35rem 0}.final-cta p{color:#5f6f82;margin:0}
.accessibility-toolbar{position:fixed;right:1rem;bottom:1rem;z-index:60;background:#fff;border:1px solid #98afd2;border-radius:.35rem;box-shadow:0 12px 30px rgba(7,29,65,.14);padding:.3rem;display:flex;gap:.2rem}.accessibility-toolbar button{border:0;background:transparent;min-width:44px;height:44px;border-radius:.22rem;font-weight:900;color:#071d41;display:flex;align-items:center;justify-content:center;gap:.35rem;cursor:pointer}.accessibility-toolbar button:hover{background:#edf4ff}.toolbar-label{font-size:.72rem}

/* Páginas internas */
.page-hero{background:#f4f7fb;border-top:4px solid var(--flag-blue);border-bottom:1px solid #c5d4eb;position:relative;overflow:hidden}.page-hero .container{padding-block:4rem;position:relative;z-index:1}.page-hero.compact .container{padding-block:3.3rem}.page-hero h1{max-width:19ch;margin:.5rem 0 .75rem}.page-hero p{max-width:52rem;color:#52677f;font-size:1.05rem}.prose{max-width:60rem}.prose h2{font-size:1.55rem;margin:2rem 0 .6rem}.prose p,.prose li{color:#52677f}.prose li+li{margin-top:.35rem}
.breadcrumb-wrap{background:#fff;border-bottom:1px solid #e2e8f0}.breadcrumbs{min-height:46px;display:flex;align-items:center;gap:.55rem;font-size:.82rem;color:#5f6f82;overflow-x:auto;white-space:nowrap}.breadcrumbs a{font-weight:750;text-decoration:none}.solution-hero{background:#f4f7fb;border-top:4px solid var(--flag-green);border-bottom:1px solid #c5d4eb;position:relative;overflow:hidden}.solution-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding-block:3.8rem;position:relative}.solution-hero h1{font-size:clamp(2.25rem,4vw,3.8rem);margin:.75rem 0 .85rem}.solution-hero p{max-width:54rem;color:#52677f;font-size:1.08rem}.solution-hero-symbol{width:94px;height:94px;border-radius:.4rem;background:#fff;border:1px solid #c5d4eb;display:grid;place-items:center;color:#1351b4;font-size:2.25rem;box-shadow:0 14px 34px rgba(7,29,65,.11);position:relative;overflow:hidden}.solution-hero-symbol:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--flag-green),var(--flag-yellow),var(--flag-blue))}.privacy-inline{display:flex;gap:.55rem;align-items:flex-start;color:#075b45;font-size:.83rem;font-weight:750;margin-top:1.1rem}.solution-layout{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:2rem;align-items:start}.solution-content{min-width:0}.solution-side{position:sticky;top:108px;padding:1.25rem;border-top:4px solid #1351b4}.solution-side h2{font-size:1.15rem;margin:.4rem 0 .65rem}.solution-side p{font-size:.9rem;color:#52677f}.solution-side .button{width:100%;font-size:.83rem}.demo-panel{padding:clamp(1.2rem,3vw,2rem);margin-bottom:2.5rem;box-shadow:0 11px 30px rgba(7,29,65,.075);border-top:4px solid #1351b4}.demo-panel-head{margin-bottom:1.3rem}.demo-panel-head h2{font-size:1.65rem;margin:.45rem 0 .55rem}.demo-panel-head p{color:#52677f;margin:0;max-width:48rem}.demo-status,.future-badge{display:inline-flex;border-radius:.25rem;padding:.3rem .55rem;font-size:.7rem;font-weight:900;letter-spacing:.03em}.demo-status.local{background:#e9f5eb;color:#075b45}.future-badge{background:#fff7bf;color:#5f4b00}.demo-form{display:grid;gap:1rem}.demo-form label{font-weight:800;font-size:.88rem;display:grid;gap:.4rem}.demo-form input,.demo-form select,.demo-form textarea,.filters input{border:1px solid #98afd2;background:#fff;color:#1b1b1b;border-radius:.28rem;padding:.72rem .78rem;min-height:46px;width:100%}.demo-form textarea{resize:vertical;min-height:90px}.demo-form input:focus,.demo-form select:focus,.demo-form textarea:focus,.filters input:focus{border-color:#1351b4;box-shadow:0 0 0 2px rgba(19,81,180,.14)}.input-prefix{display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid #98afd2;border-radius:.28rem;overflow:hidden;background:#fff}.input-prefix span{padding-left:.75rem;color:#52677f;font-weight:700}.input-prefix input{border:0;border-radius:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.scenario-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.scenario-grid fieldset{border:1px solid #c5d4eb;border-radius:.35rem;padding:1rem;display:grid;gap:.7rem}.scenario-grid legend{font-weight:900;padding:0 .35rem}.demo-form>.button{justify-self:start}.demo-result{display:none;border-radius:.35rem;padding:1rem 1.1rem;border:1px solid #c5d4eb;background:#f7f8fa;margin-top:.25rem}.demo-result.visible{display:block}.demo-result.good{background:#e9f5eb;border-color:#8fd19e}.demo-result.warn{background:#fff7bf;border-color:#e8ce45}.demo-result h3{font-size:1rem;margin:0 0 .6rem}.demo-result ul{padding-left:1.15rem;margin:0;display:grid;gap:.35rem}.checklist{display:grid;gap:.6rem}.check-row{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:.7rem!important;padding:.75rem;border:1px solid #c5d4eb;border-radius:.3rem;background:#fff;font-weight:650!important}.check-row input{width:20px!important;height:20px;min-height:0!important;margin:.1rem 0 0!important;flex:0 0 auto}.check-progress{margin-top:1rem;font-weight:800;color:#075b45}.flags{margin-bottom:.5rem}.future-panel{background:#fffdf2;border-top-color:#ffcd07}.future-panel h2{font-size:1.55rem;margin:.8rem 0 .6rem}.future-panel>p{color:#52677f}.prep-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.2rem 0}.prep-grid>div{padding:1rem;background:#fff;border:1px solid #c5d4eb;border-radius:.35rem}.prep-grid ul{padding-left:1.1rem;color:#52677f}.content-section{padding:1rem 0 2rem}.content-section h2{font-size:1.45rem}.content-section p{color:#52677f}.two-col-info{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.info-list{padding:1.2rem}.info-list h2{font-size:1.1rem}.info-list ul{padding-left:1.1rem;color:#52677f}.notice{border-radius:.35rem;padding:1rem 1.1rem;display:flex;gap:.8rem;align-items:flex-start;margin:1.5rem 0}.notice.warning{background:#fff7bf;border:1px solid #e7cd45;color:#4d3c00}.notice.info{background:#e7efff;border:1px solid #aacdec;color:#071d41}.notice .icon{font-size:1.15rem;margin-top:.15rem}.notice p{margin:.25rem 0 0}.methodology-inline{border-top:1px solid #c5d4eb;margin-top:2rem}.related{grid-template-columns:repeat(3,1fr)}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.info-card{padding:1.25rem;border-top:4px solid #1351b4}.info-card>.icon{font-size:1.5rem;color:#1351b4}.info-card h2{margin:.8rem 0 .5rem}.method-list{display:grid;gap:1rem}.method-list article{position:relative;padding:1rem 0 1rem 2rem;border-bottom:1px solid #c5d4eb}.method-list h2{margin:0 0 .4rem}.status-dot{position:absolute;left:.25rem;top:1.25rem;width:12px;height:12px;border-radius:50%}.status-dot.local{background:#168821}.status-dot.guide{background:#1351b4}.status-dot.future{background:#ffcd07}

/* Explorar e resultados */
.explore-layout{display:grid;grid-template-columns:17rem minmax(0,1fr);gap:2rem;align-items:start}.filters{padding:1.15rem;position:sticky;top:108px;max-height:calc(100dvh - 132px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.filters h2{font-size:1.2rem;margin-bottom:1rem}.filters form{display:grid;gap:.8rem}.filters>form>label{font-weight:800;font-size:.85rem}.filters fieldset{border:0;padding:0;margin:.4rem 0}.filters legend{font-weight:900;margin-bottom:.45rem}.category-filter-options{max-height:clamp(14rem,46dvh,25rem);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;padding-right:.35rem}.category-filter-options:focus-visible{outline:2px solid var(--color-blue-700);outline-offset:2px}.filters::-webkit-scrollbar,.category-filter-options::-webkit-scrollbar{width:8px}.filters::-webkit-scrollbar-thumb,.category-filter-options::-webkit-scrollbar-thumb{background:#9aacc3;border-radius:999px;border:2px solid #fff}.filters::-webkit-scrollbar-track,.category-filter-options::-webkit-scrollbar-track{background:transparent}.radio-row{display:flex;gap:.6rem;align-items:center;min-height:44px;font-size:.86rem;padding:.1rem .1rem}.radio-row input{width:20px;height:20px;flex:0 0 auto}.clear-filter{text-align:center;font-weight:800;font-size:.82rem}.results-heading{margin-bottom:1.2rem}.results-heading h2{font-size:1.55rem;margin:.35rem 0}.solution-list{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.empty-state{padding:2rem;text-align:center}.empty-state h2{font-size:1.4rem}.search-explanation{padding:1rem 1.1rem;margin-bottom:1.4rem;background:#edf4ff;border:1px solid #aacdec;border-radius:.35rem;color:#274863}.match-reason{color:#52677f;font-size:.82rem;margin-top:.6rem}.center-action{text-align:center;margin-top:2rem}

/* Rodapé */
.site-footer{background:#071d41;color:#fff;margin-top:auto}.footer-flagline{height:5px}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:3rem;padding-block:3.4rem 2.5rem}.site-footer .brand{color:#fff}.site-footer .brand-copy strong{color:#fff}.site-footer .brand-copy small{color:#c8d7ea}.footer-brand p{color:#c8d7ea;max-width:31rem;font-size:.86rem;margin-top:1.1rem}.footer-badges{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:1rem}.footer-badges span{border:1px solid #345d96;border-radius:.2rem;padding:.32rem .55rem;font-size:.7rem;color:#dbe8fb;font-weight:800}.footer-title{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;color:#dbe8fb;margin-bottom:.85rem}.site-footer a:not(.brand){display:block;color:#fff;text-decoration:none;font-size:.84rem;padding:.35rem 0}.site-footer a:not(.brand):hover{text-decoration:underline}.footer-bottom{border-top:1px solid #2f4668;display:flex;justify-content:space-between;gap:1rem;padding-block:1rem 1.3rem;color:#aebed0;font-size:.72rem}

/* Modal e 404 */
.notfound{min-height:55vh;display:grid;align-items:center}.notfound h1{font-size:clamp(2.4rem,5vw,4rem);margin:.6rem 0}.notfound p{color:#52677f;font-size:1.05rem}.modal-backdrop{position:fixed;inset:0;background:rgba(3,15,32,.7);z-index:100;display:grid;place-items:center;padding:1rem;backdrop-filter:blur(4px)}.modal{width:min(100%,36rem);padding:1.5rem;position:relative;box-shadow:0 24px 80px rgba(0,0,0,.3);border-top:4px solid #1351b4}.modal h2{font-size:1.45rem;margin:.75rem 2rem .6rem 0}.modal p{color:#52677f}.modal-close{position:absolute;right:.75rem;top:.65rem;width:42px;height:42px;border:0;background:#edf2f7;border-radius:.25rem;font-size:1.4rem;cursor:pointer}

:root[data-contrast="high"] .accessibility-block:before{display:none}:root[data-contrast="high"] .card,:root[data-contrast="high"] .hero-brazil-panel{border:2px solid #000;box-shadow:none}

.reveal.is-visible{opacity:1;translate:0 0}

/* Motion refinado: transições de estado, sem estética chamativa de template */
main > :first-child{animation:routeIn .24s var(--ease-emph) both}
.demo-result.visible{animation:resultIn .28s var(--ease-emph) both}
.modal-backdrop{animation:backdropIn .18s ease-out both}
.modal{animation:modalIn .24s var(--ease-emph) both}
.button:hover{translate:0 -1px}.button:active{translate:0 0}
@keyframes routeIn{from{opacity:.01;translate:0 8px}to{opacity:1;translate:0 0}}
@keyframes resultIn{from{opacity:.01;translate:0 8px}to{opacity:1;translate:0 0}}
@keyframes backdropIn{from{opacity:.01}to{opacity:1}}
@keyframes modalIn{from{opacity:.01;translate:0 10px;scale:.985}to{opacity:1;translate:0 0;scale:1}}

/* === V3.1 institutional refinement === */
.brand-mark{position:relative;width:42px;height:42px;display:grid;place-items:center;background:#fff;border:1px solid var(--color-border);border-radius:.38rem;overflow:hidden;flex:0 0 auto}
.brand-mark-green{position:absolute;inset:0 auto 0 0;width:8px;background:var(--flag-green)}
.brand-mark-diamond{width:22px;height:15px;background:var(--flag-yellow);transform:rotate(45deg) skew(-8deg,-8deg);border-radius:1px}
.brand-mark-blue{position:absolute;width:9px;height:9px;background:var(--flag-blue-bright);border-radius:50%}
.site-header{transition:transform .22s var(--ease),box-shadow .22s var(--ease),background .22s var(--ease)}
.site-header.is-hidden{transform:translateY(-110%)}
.header-search,.hero-search-box{position:relative}
.search-suggestions{position:absolute;z-index:75;left:0;right:0;top:calc(100% + .5rem);background:#fff;border:1px solid var(--color-border-strong);box-shadow:var(--shadow-md);max-height:min(24rem,55vh);overflow:auto;padding:.3rem;border-radius:.45rem}
.search-suggestions.compact{top:calc(100% + .3rem);min-width:22rem;left:auto}
.search-suggestions button{width:100%;display:grid;gap:.12rem;text-align:left;border:0;border-bottom:1px solid var(--color-soft);background:#fff;padding:.72rem .8rem;cursor:pointer;color:var(--color-heading)}
.search-suggestions button:last-child{border-bottom:0}.search-suggestions button:hover,.search-suggestions button:focus-visible{background:var(--color-blue-50)}
.search-suggestions button span{display:flex;gap:.45rem;align-items:center;font-weight:800}.search-suggestions button small{color:var(--color-muted);font-size:.75rem}
.hero-quick-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.hero-quick-actions a{font-size:.78rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--color-border);padding:.35rem .1rem;color:var(--color-blue-900)}
.hero-quick-actions a:hover{border-bottom-color:var(--color-blue-700)}
.situations-section{border-bottom:1px solid var(--color-border)}
.common-situations{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--color-border);border-left:1px solid var(--color-border)}
.common-situations a{display:grid;grid-template-columns:2rem 1fr auto;align-items:center;gap:.7rem;min-height:76px;padding:1rem;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);text-decoration:none;background:#fff;color:var(--color-heading);transition:background .18s var(--ease),padding .18s var(--ease)}
.common-situations a:hover{background:var(--color-blue-50);padding-left:1.18rem}.common-situations a>span{font-variant-numeric:tabular-nums;color:var(--color-blue-700);font-size:.72rem;font-weight:800}.common-situations .icon{width:18px}
.personal-section[hidden]{display:none}.personal-section{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:#f8fafc}
.category-copy em{display:block;margin-top:.35rem;font-style:normal;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-blue-700);font-weight:800}
.solution-card{position:relative;display:flex;flex-direction:column}.solution-card-link{display:flex;flex-direction:column;flex:1;color:inherit;text-decoration:none}.solution-card-link h3{margin-top:.75rem}.solution-card-link .text-link{margin-top:auto;padding-top:1rem}
.favorite-button{position:relative;z-index:2}.favorite-button.is-favorite{color:#8a6a00;background:var(--color-yellow-100);border-color:#d9bb00}.favorite-button.is-favorite svg{fill:currentColor}
.icon-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--color-border);background:#fff;border-radius:.35rem;cursor:pointer}.icon-button .icon{width:18px;height:18px}.icon-button:hover{background:var(--color-blue-50);border-color:var(--color-blue-700)}
.explore-mobile-tools{display:none}.filters-mobile-head{display:none}.filter-search{position:relative}.filter-search>.icon{position:absolute;width:18px;left:.8rem;top:50%;translate:0 -50%;color:var(--color-muted)}.filter-search input{padding-left:2.25rem!important}
.radio-row{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem}.radio-row small{font-size:.7rem;color:var(--color-muted);font-variant-numeric:tabular-nums}
.filter-actions{display:grid;gap:.55rem}.view-switcher{display:flex;border:1px solid var(--color-border);background:#fff;padding:.15rem}.view-switcher button{min-height:40px;border:0;background:transparent;display:flex;align-items:center;gap:.35rem;padding:.4rem .65rem;cursor:pointer;color:var(--color-muted);font-size:.78rem;font-weight:800}.view-switcher button[aria-pressed="true"]{background:var(--color-blue-900);color:#fff}.view-switcher .icon{width:16px}
.solution-list[data-view="grid"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.solution-list[data-view="list"]{display:grid;grid-template-columns:1fr;gap:.65rem}.solution-list[data-view="list"] .solution-card{min-height:0}.solution-list[data-view="list"] .solution-card-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:1rem;align-items:center}.solution-list[data-view="list"] .solution-card-link .solution-card-icon{grid-row:1/4}.solution-list[data-view="list"] .solution-card-link h3{grid-column:2;margin:.1rem 0}.solution-list[data-view="list"] .solution-card-link p{grid-column:2;margin:.2rem 0}.solution-list[data-view="list"] .solution-card-link .text-link{grid-column:3;grid-row:1/4;padding:0;align-self:center}.solution-list[data-view="list"] .solution-card-top{position:absolute;right:.8rem;top:.55rem}.solution-list[data-view="list"] .solution-card-top .tag{display:none}
.results-query{margin:.3rem 0 0;color:var(--color-muted)}
.drawer-backdrop{position:fixed;inset:0;background:rgba(7,29,65,.42);z-index:68}.drawer-backdrop[hidden]{display:none}
.breadcrumb-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.back-link{border:0;background:transparent;color:var(--color-blue-700);font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:.2em}
.solution-hero-meta{align-self:stretch;border-left:1px solid rgba(255,255,255,.22);padding-left:1.5rem;display:flex;gap:1rem;align-items:flex-start}.solution-hero-meta dl{margin:0;display:grid;gap:.8rem}.solution-hero-meta dt{font-size:.67rem;text-transform:uppercase;letter-spacing:.06em;opacity:.78;font-weight:800}.solution-hero-meta dd{margin:.1rem 0 0;font-size:.85rem;font-weight:700}.solution-hero-meta .solution-hero-symbol{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08)}
.solution-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin:1.1rem 0}.button-quiet{background:transparent;border:1px solid currentColor}.solution-hero .button-quiet,.solution-hero .button-secondary{color:#fff;border-color:rgba(255,255,255,.55);background:transparent}.solution-hero .button-quiet:hover,.solution-hero .button-secondary:hover{background:rgba(255,255,255,.1)}
.domain-guide{margin-bottom:1.5rem;padding:1.4rem;border-top:3px solid var(--color-blue-700);background:#fff;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.domain-guide h2{font-size:1.35rem;margin-bottom:.7rem}.domain-guide p:last-child{margin-bottom:0}
.legal-timeline ol{list-style:none;padding:0;margin:1rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--color-border);border-left:1px solid var(--color-border)}.legal-timeline li{padding:1rem;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.legal-timeline li>span{display:inline-grid;place-items:center;width:26px;height:26px;background:var(--color-blue-900);color:#fff;font-size:.7rem;font-weight:900}.legal-timeline strong{display:block;margin:.7rem 0 .2rem}.legal-timeline p{font-size:.85rem;color:var(--color-muted)}
.health-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.health-guide-grid>div{padding:1rem;background:var(--color-blue-50)}.health-guide-grid .icon{width:22px;color:var(--color-blue-700)}.health-guide-grid strong{display:block;margin:.6rem 0 .2rem}.health-guide-grid p{font-size:.84rem;color:var(--color-muted)}
.finance-guide{display:grid;grid-template-columns:1.1fr .9fr;gap:1.5rem;align-items:center;border-top-color:var(--color-green-700)}.finance-points{display:grid;border-left:1px solid var(--color-border)}.finance-points span{padding:.65rem 1rem;border-bottom:1px solid var(--color-border)}.finance-points span:last-child{border-bottom:0}
.security-guide{display:grid;grid-template-columns:auto 1fr;gap:1rem;border-top-color:var(--color-red-700);background:#fffafa}.security-shield{display:grid;place-items:center;width:54px;height:54px;background:var(--color-red-100);color:var(--color-red-700)}.security-shield .icon{width:28px}.security-guide ul{padding-left:1.1rem;margin-bottom:0}
.travel-steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:1rem}.travel-steps span{padding:.75rem;border-top:2px solid var(--color-blue-700);border-right:1px solid var(--color-border);font-weight:800}.travel-steps span:last-child{border-right:0}
.section-number{display:inline-block;font-variant-numeric:tabular-nums;color:var(--color-blue-700);font-size:.7rem;font-weight:900;letter-spacing:.08em;margin-bottom:.3rem}.source-type{padding:.8rem 1rem;border-left:3px solid var(--flag-yellow);background:var(--color-yellow-100);font-size:.85rem}.side-sticky{position:sticky;top:8rem;padding:1rem;border-left:3px solid var(--color-blue-700);background:#fff}.side-sticky .button{width:100%;margin-top:.65rem}
.search-explanation{display:grid;grid-template-columns:auto 1fr;gap:.75rem;padding:1rem;border-left:3px solid var(--color-blue-700);background:var(--color-blue-50);margin-bottom:1.5rem}.search-explanation .icon{width:22px}.search-explanation p{margin:0}.search-result-list{display:grid;gap:1.2rem}.search-result-item{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:1rem;align-items:start}.match-context{padding-top:.8rem;display:flex;gap:.6rem;color:var(--color-muted)}.match-context>span{font-size:.7rem;font-weight:900;color:var(--color-blue-700)}.match-context strong{color:var(--color-heading);font-size:.82rem}.match-context p{font-size:.75rem;margin:.2rem 0 0}.search-privacy-settings{margin-top:2rem;padding:1rem;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center}.search-privacy-settings p{margin:.2rem 0 0;font-size:.8rem;color:var(--color-muted)}.switch-row{display:flex;gap:.45rem;align-items:center;font-size:.8rem;font-weight:800}.text-button{border:0;background:transparent;color:var(--color-blue-700);text-decoration:underline;cursor:pointer;font-weight:800}
.accessibility-toolbar{display:flex;flex-direction:column;align-items:flex-end}.accessibility-trigger{width:auto!important;padding-inline:.65rem!important}.accessibility-actions{display:grid;gap:.25rem;margin-top:.3rem;padding:.25rem;background:#fff;border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.accessibility-actions[hidden]{display:none}.accessibility-actions button{width:auto!important;min-width:46px;padding-inline:.55rem!important}
.toast-root{position:fixed;left:50%;bottom:1rem;translate:-50% 1rem;z-index:1000;background:var(--color-blue-950);color:#fff;padding:.7rem 1rem;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity .2s var(--ease),translate .2s var(--ease);max-width:min(90vw,34rem);text-align:center;font-size:.85rem;font-weight:700}.toast-root.show{opacity:1;translate:-50% 0}
.empty-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:1rem;background:var(--color-blue-50);color:var(--color-blue-700)}.empty-icon .icon{width:24px}
.demo-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1rem}.demo-actions .button-quiet{color:var(--color-blue-700);border-color:var(--color-border-strong)}
@media(max-width:600px){.demo-actions{display:grid;grid-template-columns:1fr 1fr}.demo-actions .button:first-child{grid-column:1/-1}.demo-actions .button{width:100%}}
