/* Paolla Zarichta - Odontologia e Harmonização Orofacial */
:root{
  --teal:#24434B; --teal-deep:#1B3239; --beige:#B9AA98; --bronze:#A77B58;
  --cream:#F4EFE9; --cream-2:#EDE5DB; --ink:#2E3A3D; --white:#FFFFFF;
  --serif:'Playfair Display',Georgia,'Times New Roman',serif;
  --sans:'Jost','Century Gothic',Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.65;font-size:17px}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:500;color:var(--teal);line-height:1.2}
a{color:var(--bronze);text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}
section{padding:88px 0}
.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.28em;font-size:.72rem;color:var(--bronze);margin-bottom:14px}
.lead{font-size:1.18rem;color:#4a5a5e}
/* Header */
header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(244,239,233,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(167,123,88,.18)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{font-family:var(--serif);font-size:1.28rem;color:var(--teal);letter-spacing:.06em}
.brand small{display:block;font-family:var(--sans);font-size:.58rem;letter-spacing:.34em;text-transform:uppercase;color:var(--bronze);margin-top:2px}
nav a{margin-left:28px;font-size:.86rem;letter-spacing:.08em;color:var(--teal);text-transform:uppercase}
nav a:hover{color:var(--bronze)}
nav a.cta{border:1px solid var(--bronze);padding:9px 18px;border-radius:999px;color:var(--bronze);white-space:nowrap}
nav a.cta:hover{background:var(--bronze);color:var(--white)}
/* Hero */
.hero{min-height:100vh;display:flex;align-items:center;background:linear-gradient(160deg,var(--cream) 55%,var(--cream-2));padding-top:100px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.hero h1{font-size:clamp(2.4rem,5.4vw,3.9rem);margin:18px 0 22px}
.hero h1 em{color:var(--bronze);font-style:italic}
.hero p{max-width:52ch}
.btn{display:inline-block;margin-top:32px;background:var(--teal);color:var(--cream);padding:15px 34px;border-radius:999px;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;border:1px solid var(--teal)}
.btn:hover{background:var(--bronze);border-color:var(--bronze);color:var(--white)}
.btn.ghost{background:transparent;color:var(--teal);margin-left:12px}
.btn.ghost:hover{background:var(--teal);color:var(--cream)}
.hero-art{background:var(--teal);border-radius:200px 200px 24px 24px;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.hero-art .mono{font-family:var(--serif);font-size:9rem;color:var(--bronze);opacity:.9}
.hero-art::after{content:"";position:absolute;inset:14px;border:1px solid rgba(244,239,233,.35);border-radius:inherit}
/* Sections */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.alt{background:var(--teal);color:var(--cream)}
.alt h2,.alt h3{color:var(--cream)}
.alt .eyebrow{color:var(--beige)}
.alt p{color:#d8e0e2}
.dark-deep{background:var(--teal-deep);color:var(--cream)}
.dark-deep h2{color:var(--cream)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:48px}
.card{background:var(--white);border:1px solid rgba(167,123,88,.22);border-radius:18px;padding:34px 28px}
.card h3{font-size:1.25rem;margin:16px 0 10px}
.card .num{font-family:var(--serif);color:var(--bronze);font-size:1.9rem}
.alt .card{background:rgba(244,239,233,.06);border-color:rgba(185,170,152,.35)}
.alt .card h3{color:var(--cream)}
.alt .card p{color:#cfdadd}
/* steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:44px}
.step{background:var(--white);border-radius:16px;padding:28px 26px 28px 74px;position:relative;border:1px solid rgba(167,123,88,.22)}
.step::before{counter-increment:s;content:counter(s,decimal-leading-zero);position:absolute;left:24px;top:26px;font-family:var(--serif);color:var(--bronze);font-size:1.5rem}
/* faq */
.faq{margin-top:40px}
details{background:var(--white);border:1px solid rgba(167,123,88,.25);border-radius:14px;margin-bottom:12px;overflow:hidden}
summary{cursor:pointer;padding:20px 24px;font-family:var(--serif);font-size:1.08rem;color:var(--teal);list-style:none}
summary::after{content:"+";float:right;color:var(--bronze);font-size:1.3rem}
details[open] summary::after{content:"–"}
details p{padding:0 24px 22px;color:#4a5a5e}
/* about */
.about-photo{border-radius:180px 180px 20px 20px;overflow:hidden;border:1px solid rgba(167,123,88,.3)}
/* cta band */
.band{background:linear-gradient(120deg,var(--teal),var(--teal-deep));text-align:center;color:var(--cream)}
.band h2{color:var(--cream);font-size:clamp(1.8rem,3.6vw,2.6rem)}
.band p{color:#cfdadd;max-width:60ch;margin:16px auto 0}
footer{background:var(--teal-deep);color:#9fb2b6;padding:44px 0;font-size:.85rem;text-align:center}
footer .serif{color:var(--cream);font-size:1.1rem}
.notice{margin-top:18px;font-size:.75rem;color:#7e9398}
@media(max-width:900px){
  .hero-grid,.split{grid-template-columns:1fr;gap:36px}
  .cards{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  nav a{display:none}
  nav a.cta{display:inline-block}
  section{padding:64px 0}
}
