/* Site de direito à saúde (diabetes): tema verde sobre a base cível */
:root{
  --black:#0B2A22;
  --coal:#103529;
  --grey:#EEF5F1;
  --text:#10241D;
  --text-soft:#4A6158;
  --on-dark-soft:#B7D3C6;
  --olive:#1E8A5A;
  --olive-hover:#23A068;
  --olive-light:#86D6AC;
  --line-dark:rgba(150,220,185,.18);
  --line-light:rgba(16,60,40,.12);
}
.hero{background:radial-gradient(110% 85% at 72% 40%,#165040 0%,#0B2A22 62%)}
.hero .pulse{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.top{background:rgba(11,42,34,.97)}
.trust{background:#0E3127}
.trust span{color:#B7D3C6}
footer{background:#08201A}
.btn{box-shadow:0 6px 18px rgba(30,138,90,.3)}
.btn-light,.btn-ghost{box-shadow:none}
.lawyer-photo{background:#DCEDE4}
.why-item svg{color:#86D6AC}

/* Cartões, linha do tempo, passos e avisos */
.c-cards .card .ico{background:linear-gradient(145deg,#E6F4EC,#CFE9DB);color:#1E8A5A}
.c-cards .card:hover{box-shadow:0 14px 30px rgba(16,60,40,.12)}
#direitos .prose .note{background:#E6F4EC;border-left-color:var(--olive)}
.tl{border-color:#D3E8DC}
.tl b{background:linear-gradient(145deg,#23A068,#17724A);box-shadow:0 8px 18px rgba(30,138,90,.3)}
.tl:not(:last-child)::after{color:#86D6AC}
.prose ul.steps li{background:#F1F8F4;border-color:#D3E8DC}
.prose ul.steps b{background:#1E8A5A}
.prose ul.checklist li{border-color:#D3E8DC}

/* Dois advogados lado a lado */
#advogado .sec-title{margin-bottom:8px}
.duo-intro{max-width:68ch;margin:28px auto 0;color:var(--text-soft)}
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;max-width:860px;margin:48px auto 0}
.duo .lawyer-photo{width:min(300px,100%);position:relative}
.duo .lawyer-photo[data-initials]::before{content:attr(data-initials);position:absolute;inset:0;display:grid;place-items:center;font-family:var(--f-head);font-size:3rem;letter-spacing:.1em;color:#8FB8A3}
.duo .lawyer-photo img{position:relative}
.duo .lawyer-name{font-size:clamp(1.25rem,2.4vw,1.6rem);margin-top:24px}
.duo .lawyer-bio{margin-top:16px}
.duo .lawyer-bio p{text-align:center;hyphens:manual}
@media (max-width:700px){.duo{grid-template-columns:1fr;gap:56px}}

/* Calculadora */
.calc{display:grid;grid-template-columns:1.25fr 1fr;gap:28px;max-width:980px;margin:0 auto;align-items:stretch}
.calc-form{background:rgba(255,255,255,.04);border:1px solid var(--line-dark);border-radius:12px;padding:10px 22px}
.calc-head{display:flex;justify-content:space-between;font-family:var(--f-head);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--olive-light);padding:12px 0}
.calc-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--line-dark);cursor:text}
.calc-row>span:first-child{color:#E4F1EA}
.calc-in{display:flex;align-items:center;gap:6px;background:#fff;border-radius:8px;padding:0 10px;flex:none}
.calc-in i{font-style:normal;color:var(--text-soft);font-size:.9rem}
.calc-in input{width:92px;border:0;outline:0;padding:10px 0;font:600 1rem var(--f-head);color:var(--text);background:transparent;text-align:right}
.calc-in:focus-within{box-shadow:0 0 0 2px var(--olive-light)}
.calc-result{background:#fff;color:var(--text);border-radius:12px;padding:30px 26px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;border-top:4px solid var(--olive)}
.calc-label{font-family:var(--f-head);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--olive)}
.calc-year{font-family:var(--f-head);font-weight:600;font-size:clamp(2.2rem,5vw,3rem);line-height:1.1;margin:10px 0 6px;color:var(--text)}
.calc-sub{font-size:.92rem;color:var(--text-soft)}
.calc-result p{margin:20px 0 24px;color:var(--text-soft);font-size:.95rem}
@media (max-width:820px){.calc{grid-template-columns:1fr}}
@media (max-width:420px){.calc-form{padding:6px 14px}.calc-row{font-size:.92rem}.calc-in input{width:74px}}

/* Por que atuamos com diabetes */
.story{max-width:720px;margin:0 auto;padding:30px 34px;background:#fff;border-left:4px solid var(--olive);border-radius:0 12px 12px 0;box-shadow:0 10px 26px rgba(16,60,40,.08);display:grid;gap:16px}
.story p{margin:0;font-family:var(--f-head);font-weight:300;font-size:clamp(1.02rem,1.9vw,1.16rem);line-height:1.7;color:var(--text)}
@media (max-width:520px){.story{padding:22px 20px}}
.story p,.duo-intro{text-align:justify;hyphens:auto;-webkit-hyphens:auto}
