/* Solake — folha de estilo única */

:root{
  --paper:#f1f2f0;
  --paper-2:#e3e5e2;
  --paper-3:#d7dad6;
  --ink:#171917;
  --ink-2:#6a6e6a;
  --dark:#141614;
  --green:#2a6b3c;
  --ochre:#8a6a20;
  --sans:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --serif:Georgia,"Times New Roman",serif;
  --gut:24px;
  --pad-y:88px;
  --pad-x:52px;
}

*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%}

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--serif);
  font-size:18px;
  line-height:1.7;
  overflow-x:hidden;
}

img{max-width:100%;height:auto;display:block}

a{color:var(--green);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}

:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.tone-dark :focus-visible,.site-footer :focus-visible{outline-color:#9ec9a8}

/* ---------- estrutura ---------- */

.wrap{max-width:1280px;margin:0 auto;padding-left:var(--pad-x);padding-right:var(--pad-x)}

.grid{display:grid;grid-template-columns:repeat(12,1fr);column-gap:var(--gut)}

.layer{padding-top:var(--pad-y);padding-bottom:var(--pad-y)}

.tone-a{background:var(--paper)}
.tone-b{background:var(--paper-2)}
.tone-c{background:var(--paper-3)}
.tone-dark{background:var(--dark);color:var(--paper)}
.tone-dark h2,.tone-dark h3{color:var(--paper)}
.tone-dark .lead,.tone-dark .caption{color:#b6bbb6}
.tone-dark a{color:#9ec9a8}

/* degraus: cada secção entra mais uma coluna */
.s0 .text{grid-column:1 / span 6}
.s1 .text{grid-column:2 / span 6}
.s2 .text{grid-column:3 / span 6}
.s3 .text{grid-column:4 / span 6}

/* ---------- navegação ---------- */

.nav-layer{background:var(--paper);padding-top:22px;padding-bottom:22px}
.nav-inner{display:flex;flex-wrap:wrap;align-items:baseline;gap:18px 32px;justify-content:space-between}

.brand{
  font-family:var(--sans);
  font-weight:800;
  font-size:20px;
  letter-spacing:-.02em;
  color:var(--ink);
  text-decoration:none;
}
.brand:hover{color:var(--green)}

.nav-list{list-style:none;display:flex;flex-wrap:wrap;gap:14px 26px;margin:0;padding:0}
.nav-list a{
  font-family:var(--sans);
  font-size:15px;
  font-weight:600;
  color:var(--ink);
  text-decoration:none;
  padding-bottom:3px;
  border-bottom:2px solid transparent;
}
.nav-list a:hover{border-bottom-color:var(--green);color:var(--green)}
.nav-list a[aria-current="page"]{border-bottom-color:var(--ochre)}

/* ---------- hero em camadas ---------- */

.hero-mid{background:var(--paper-2);padding-top:132px;padding-bottom:40px}
.hero-mid .grid{align-items:end}

h1{
  font-family:var(--sans);
  font-weight:800;
  letter-spacing:-.035em;
  line-height:.98;
  margin:0;
  font-size:clamp(2.3rem,5.4vw,4.4rem);
  grid-column:1 / span 9;
}

.hero-low{background:var(--paper-3);padding-top:64px;padding-bottom:72px}
.hero-low .lead{grid-column:1 / span 6;margin:0}
.hero-low .topics{grid-column:8 / span 5;margin:0}

.lead{font-size:20px;line-height:1.65}

.eyebrow{
  font-family:var(--sans);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  color:var(--ochre);
  margin:0 0 14px;
}

.topics{list-style:none;padding:0;margin:0}
.topics li{
  font-family:var(--sans);
  font-size:15.5px;
  line-height:1.45;
  padding:10px 0 10px 20px;
  border-top:1px solid rgba(138,106,32,.35);
  position:relative;
}
.topics li:last-child{border-bottom:1px solid rgba(138,106,32,.35)}
.topics li::before{
  content:"";
  position:absolute;
  left:0;top:18px;
  width:8px;height:2px;
  background:var(--green);
}

/* ---------- títulos e texto ---------- */

h2{
  font-family:var(--sans);
  font-weight:800;
  letter-spacing:-.022em;
  line-height:1.06;
  font-size:clamp(1.55rem,2.9vw,2.3rem);
  margin:0 0 22px;
}

h3{
  font-family:var(--sans);
  font-weight:700;
  letter-spacing:-.012em;
  font-size:1.12rem;
  line-height:1.25;
  margin:34px 0 10px;
}

p{margin:0 0 18px}
p:last-child{margin-bottom:0}

.num{
  font-family:var(--sans);
  font-size:13px;
  font-weight:700;
  color:var(--ochre);
  display:block;
  margin-bottom:10px;
}

.list{padding-left:0;list-style:none;margin:0 0 18px}
.list li{position:relative;padding-left:22px;margin-bottom:9px}
.list li::before{
  content:"";
  position:absolute;
  left:0;top:12px;
  width:9px;height:2px;
  background:var(--green);
}

.list-num{padding-left:22px;margin:0 0 18px}
.list-num li{margin-bottom:9px;padding-left:6px}
.list-num li::marker{color:var(--ochre);font-family:var(--sans);font-weight:700;font-size:15px}

.note{font-size:16.5px;color:var(--ink-2)}

/* ---------- imagens ---------- */

.figure-main{grid-column:4 / span 9;margin:0}
.figure-main img{width:100%}

.caption{
  font-family:var(--sans);
  font-size:13.5px;
  line-height:1.5;
  color:var(--ink-2);
  margin-top:12px;
  max-width:52ch;
}

.dark-block .figure-detail{grid-column:1 / span 4;margin:0}
.dark-block .dark-text{grid-column:6 / span 6}
.figure-detail img{width:100%}

/* ---------- contacto ---------- */

.contact-line{
  font-family:var(--sans);
  font-size:clamp(1.1rem,2.2vw,1.5rem);
  font-weight:700;
  letter-spacing:-.01em;
  margin:0 0 10px;
}

/* ---------- rodapé ---------- */

.site-footer{background:var(--dark);color:var(--paper);padding-top:76px;padding-bottom:56px;margin:0}

.footer-name{
  font-family:var(--sans);
  font-weight:800;
  letter-spacing:-.045em;
  line-height:.86;
  font-size:clamp(3.4rem,15vw,10.5rem);
  margin:0 0 56px;
}

.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);column-gap:var(--gut);row-gap:38px}
.footer-col::before{
  content:"";
  display:block;
  width:44px;height:2px;
  background:var(--ochre);
  margin-bottom:16px;
}
.footer-col h2{
  font-family:var(--sans);
  font-size:13px;
  font-weight:700;
  letter-spacing:.03em;
  color:#b6bbb6;
  margin:0 0 12px;
}
.footer-col ul{list-style:none;margin:0;padding:0}
.footer-col li{margin-bottom:7px}
.footer-col a{color:var(--paper);text-decoration:none;border-bottom:1px solid rgba(158,201,168,.5);font-family:var(--sans);font-size:15.5px}
.footer-col a:hover{color:#9ec9a8;border-bottom-color:#9ec9a8}
.footer-col p{font-size:15.5px;line-height:1.6;color:#b6bbb6}
.footer-mail{font-family:var(--sans);font-size:16px}

/* ---------- responsivo ---------- */

@media (max-width:1000px){
  :root{--pad-x:32px;--pad-y:64px}
  .s0 .text,.s1 .text,.s2 .text,.s3 .text{grid-column:1 / span 8}
  .figure-main{grid-column:2 / span 11}
  .dark-block .figure-detail{grid-column:1 / span 5}
  .dark-block .dark-text{grid-column:7 / span 6}
  .hero-mid{padding-top:96px}
  h1{grid-column:1 / span 11}
  .hero-low .lead{grid-column:1 / span 7}
  .hero-low .topics{grid-column:8 / span 5}
}

@media (max-width:760px){
  :root{--pad-x:20px;--pad-y:52px;--gut:0px}
  body{font-size:17px}
  .grid{grid-template-columns:1fr}
  .s0 .text,.s1 .text,.s2 .text,.s3 .text,
  h1,.hero-low .lead,.hero-low .topics,
  .figure-main,.dark-block .figure-detail,.dark-block .dark-text{grid-column:1}
  .hero-mid{padding-top:60px;padding-bottom:32px}
  .hero-low .topics{margin-top:34px}
  .dark-block .dark-text{margin-top:30px}
  .lead{font-size:18.5px}
  .nav-inner{gap:14px 20px}
  .nav-list{gap:10px 18px}
  .footer-cols{grid-template-columns:1fr;row-gap:32px}
  .footer-name{margin-bottom:44px}
}
