:root{
  --royal:#201d7f;--royal-deep:#17155a;--gold:#FCDF7C;--gold-ink:#8a5a12;
  --terra:#b0734c;--terra-ink:#9b6543;--marrom:#4F3B25;--ink:#1d1b3a;
  --papel:#fbfaf6;--linha:#e6e7f2;--suave:#5b5a78;
}
*{box-sizing:border-box}
html,body{overflow-x:clip}
body{margin:0;background:var(--papel);color:var(--ink);font:400 19px/1.6 "Karla",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--royal)}
a:focus-visible,button:focus-visible{outline:3px solid var(--royal);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:"Young Serif",Georgia,serif;font-weight:400;color:var(--royal);line-height:1.15;margin:0}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}

/* topo */
.topo{background:#fff;border-bottom:2px solid var(--gold)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:84px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
.topo .logo img{height:56px;width:auto}
.topo nav{display:flex;gap:6px;flex-wrap:wrap}
.topo nav a{font-size:16px;font-weight:700;text-decoration:none;padding:8px 12px;border-radius:8px}
.topo nav a:hover{background:#eceef7}

.tarja{height:44px;background:url(assets/ladrilho-royal-white.webp) center/auto 132px repeat-x;border-block:1px solid var(--linha)}

/* hero */
.hero{padding:64px 0 56px}
.hero .grid{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center}
.olho{display:inline-block;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--terra-ink);margin-bottom:14px}
.hero h1{font-size:clamp(38px,5.4vw,62px)}
.hero p.lead{font-size:21px;color:var(--suave);max-width:36ch;margin:20px 0 28px}
.botoes{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:17px;text-decoration:none;padding:14px 22px;border-radius:10px;border:2px solid var(--royal)}
.btn.pri{background:var(--royal);color:#fff;box-shadow:6px 6px 0 var(--gold)}
.btn.pri:hover{transform:translate(-1px,-1px);box-shadow:8px 8px 0 var(--gold)}
.btn.sec{background:#fff;color:var(--royal)}
.btn svg{width:20px;height:20px}
@media (prefers-reduced-motion:no-preference){.btn{transition:transform .15s ease,box-shadow .15s ease}}

.cartao-selo{background:#fff;border:2px solid var(--royal);border-radius:14px;padding:28px;box-shadow:8px 8px 0 var(--gold);text-align:left}
.cartao-selo img{height:120px;width:auto;margin-bottom:18px}
.cartao-selo dl{margin:0;display:grid;gap:10px}
.cartao-selo dt{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--terra-ink)}
.cartao-selo dd{margin:0;font-size:17px}

/* secoes */
section{padding:64px 0}
.titulo-secao{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--royal);margin-bottom:12px}
.titulo-secao::before{content:"";width:14px;height:2px;background:var(--gold-ink)}
section h2{font-size:clamp(30px,3.6vw,42px);max-width:22ch;margin-bottom:28px}

.passos{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--linha)}
.passos li{display:grid;grid-template-columns:72px 1fr;gap:20px;padding:26px 0;border-bottom:1px solid var(--linha)}
.passos .n{font-family:"Young Serif",serif;font-size:40px;color:var(--royal);line-height:1}
.passos h3{font-size:24px;margin-bottom:6px}
.passos p{margin:0;color:var(--suave)}

.origem{background:#fff;border-block:1px solid var(--linha)}
.origem .grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.origem .numero{font-family:"Young Serif",serif;font-size:clamp(72px,10vw,120px);color:var(--royal);line-height:.9}
.origem .numero small{display:block;font-family:"Karla",sans-serif;font-size:17px;color:var(--terra-ink);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-top:12px}
.origem p{margin:0 0 16px}

.dados{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.bloco{background:#fff;border:1px solid var(--linha);border-radius:14px;padding:28px}
.bloco.forte{border:2px solid var(--royal)}
.bloco h3{font-size:22px;margin-bottom:12px}
.bloco ul{margin:0;padding-left:20px}
.bloco li{margin-bottom:8px}

.empresa table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--linha);border-radius:14px;overflow:hidden}
.empresa th,.empresa td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--linha);vertical-align:top}
.empresa th{width:34%;font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--terra-ink)}
.empresa tr:last-child th,.empresa tr:last-child td{border-bottom:0}

footer{background:var(--royal);color:#fff;padding:40px 0 48px}
footer .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center}
footer a{color:#fff}
footer small{font-size:15px;opacity:.9}

/* texto longo (privacidade) */
.texto{max-width:760px;padding:56px 20px 72px;margin:0 auto}
.texto h1{font-size:clamp(34px,4.6vw,48px);margin-bottom:8px}
.texto h2{font-size:26px;margin:40px 0 12px}
.texto p,.texto li{color:var(--ink)}
.texto .data{color:var(--suave);font-size:16px}

@media (max-width:820px){
  .hero .grid,.origem .grid,.dados{grid-template-columns:1fr}
  .hero{padding:40px 0}
  section{padding:48px 0}
  .passos li{grid-template-columns:48px 1fr;gap:14px}
  .passos .n{font-size:32px}
  .empresa th{width:40%}
  .topo .logo img{height:48px}
}
@media (max-width:420px){
  .empresa th,.empresa td{display:block;width:100%}
  .empresa th{border-bottom:0;padding-bottom:0}
}
