/*
Theme Name: Domus Clínica
Description: Tema leve e mobile-first para a plataforma Domus Clínica (SaaS). Páginas editáveis pelo WordPress (editor de blocos). Sem page builders pesados.
Version: 0.1.0
Author: Gutenberg Rubens
License: Proprietary
Text Domain: domus-clinica
*/

:root{
  --navy:#1F3B5B; --navy-dk:#162c44; --teal:#159C8C; --teal-dk:#0f857a;
  --ink:#1f2937; --muted:#6b7280; --line:#e3e8ef; --bg:#f4f6f9; --white:#fff;
  --radius:14px; --shadow:0 1px 3px rgba(16,24,40,.06),0 10px 30px rgba(16,24,40,.06);
  --wrap:1100px;
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--white);font-size:16px;line-height:1.6}
img{max-width:100%;height:auto}
a{color:var(--teal);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.2;color:var(--navy);margin:0 0 .5em}
h1{font-size:clamp(28px,5vw,44px)}
h2{font-size:clamp(22px,4vw,32px)}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:var(--navy);color:#fff}
.site-header .wrap{display:flex;align-items:center;gap:16px;height:62px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:18px}
.brand:hover{text-decoration:none}
.brand .mark{width:34px;height:34px;border-radius:9px;background:#fff;color:var(--navy);display:grid;place-items:center;font-weight:800}
.nav{margin-left:auto;display:flex;align-items:center;gap:6px}
.nav a{color:#cfdaea;padding:8px 12px;border-radius:9px;font-size:14.5px;font-weight:600}
.nav a:hover{background:var(--navy-dk);color:#fff;text-decoration:none}
.nav .btn{margin-left:6px}
.nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px}
.nav ul li{margin:0}

/* Botões */
.btn{display:inline-block;background:var(--teal);color:#fff;border:none;border-radius:10px;
  padding:12px 20px;font-weight:700;font-size:15px;cursor:pointer;transition:.15s}
.btn:hover{background:var(--teal-dk);color:#fff;text-decoration:none}
.btn.outline{background:transparent;border:1.5px solid #fff;color:#fff}
.btn.navy{background:var(--navy)}.btn.navy:hover{background:var(--navy-dk)}
.btn-lg{padding:15px 28px;font-size:17px}

/* Hero */
.hero{background:linear-gradient(135deg,var(--navy),#2c4f78);color:#fff;padding:64px 0}
.hero p.lead{font-size:clamp(16px,2.4vw,20px);color:#dbe6f3;max-width:620px;margin:0 0 26px}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap}

/* Seções */
section.bloco{padding:56px 0}
.bloco.alt{background:var(--bg)}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
.card .ic{font-size:28px}
.center{text-align:center}

/* Planos */
.card.plano{display:flex;flex-direction:column;gap:10px}
.card.plano h3{margin:0;color:var(--navy)}
.card.plano .preco{font-size:30px;font-weight:800;color:var(--navy);line-height:1}
.card.plano .preco span{font-size:14px;font-weight:600;color:var(--muted)}
.card.plano p{margin:0;color:var(--muted);flex:1}
.card.plano .btn{align-self:flex-start;margin-top:6px}
.card.plano.destaque{border-color:var(--teal);box-shadow:0 10px 30px rgba(21,156,140,.18);position:relative}
.card.plano.destaque::before{content:"Mais popular";position:absolute;top:-11px;left:22px;background:var(--teal);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px}

/* Conteúdo de página (editor de blocos) */
.entry{padding:48px 0}
.entry .wrap>*{max-width:760px;margin-left:auto;margin-right:auto}
.entry .alignwide{max-width:1000px}
.entry .alignfull{max-width:none}

/* Footer */
.site-footer{background:var(--navy-dk);color:#aebfd4;padding:28px 0;font-size:14px}
.site-footer a{color:#cfdaea}
.footer-links{margin-bottom:10px;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.footer-links .sep{opacity:.5}
.footer-copy{opacity:.85}

/* Mobile */
@media(max-width:768px){
  .nav{position:fixed;inset:62px 0 auto 0;background:var(--navy);flex-direction:column;align-items:stretch;
    padding:10px;gap:2px;display:none;box-shadow:0 10px 20px rgba(0,0,0,.25)}
  .nav.open{display:flex}
  .nav ul{flex-direction:column;align-items:stretch;width:100%;gap:2px}
  .nav a{padding:12px}
  .menu-toggle{margin-left:auto;background:transparent;border:none;color:#fff;font-size:24px;cursor:pointer}
  .hero{padding:44px 0}
}
@media(min-width:769px){.menu-toggle{display:none}}
