:root{--paper:#fffcfa;--blush:#f6e8e5;--ink:#412f31;--rose:#935761;--rule:#dfcaca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 "Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3,.identity,figcaption{font-family:Georgia,serif;font-weight:400}header{border-bottom:1px solid var(--rule)}.bar,.hero,.section,footer{width:min(1080px,88%);margin:auto}.bar,.identity,nav,footer{display:flex;align-items:center}.bar,footer{justify-content:space-between}.bar{min-height:82px}.identity{gap:12px;font-size:21px}.identity img{width:62px;height:62px;object-fit:contain}.identity span{letter-spacing:-.6px}nav{gap:30px;font-size:14px}a:hover{color:var(--rose)}.intro{background:var(--blush)}.hero{display:grid;grid-template-columns:1.05fr .85fr;align-items:center;gap:9%;padding-block:clamp(45px,6vw,84px)}.specialty{font-weight:600;color:#79434e;font-size:16px}.welcome h1{font-size:clamp(54px,6vw,85px);line-height:1.02;letter-spacing:-.055em;margin:16px 0 20px}.welcome h1 i{color:var(--rose)}.welcome p{max-width:460px}.welcome .lead{font:23px/1.4 Georgia,serif;margin-bottom:16px}.jump,.line{display:inline-block;border-bottom:1px solid var(--rose);padding-bottom:3px;font-size:14px;color:#754450}.jump{margin-top:22px}.jump span{margin-left:12px}.hero figure svg{display:block;width:100%;border-radius:42% 42% 3px 3px}.hero figcaption{text-align:right;font-size:16px;font-style:italic;margin-top:10px;color:#765958}.section{display:grid;grid-template-columns:.8fr 1.3fr;gap:7%;padding-block:76px}.heading small,.visit small{font-size:10px;font-weight:650;letter-spacing:2px;color:var(--rose)}h2{font-size:clamp(33px,3.6vw,48px);line-height:1.12;letter-spacing:-.045em;margin-top:12px}.services{border-top:1px solid var(--rule)}details{border-bottom:1px solid var(--rule)}summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:17px 0;font:22px/1.35 Georgia,serif;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';font:22px/1 Arial;color:var(--rose)}details[open] summary:after{content:'−'}details p{padding:0 28px 20px 0}.profile{background:#f9eeeb}.profile h3{font-size:23px}.profile p{margin-top:13px}.profile .line{margin-top:18px}.registration{font-size:12px;color:#755d5f}.visit{text-align:center;padding:65px 8%;max-width:760px;margin:auto}.visit h2{font-size:35px}.visit p{margin-top:15px}footer{border-top:1px solid var(--rule);padding:24px 70px 28px 0;font-size:13px}.floating{position:fixed;bottom:20px;right:20px;border-radius:50%;width:54px;height:54px;display:grid;place-items:center;color:#fff;background:var(--rose);box-shadow:0 3px 13px #63333c22}.floating:hover{background:#77424d;color:white}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;background:white;padding:10px;z-index:3}@media(max-width:700px){.bar{min-height:69px}.identity{font-size:16px;gap:5px}.identity img{width:44px;height:44px}nav{gap:12px;font-size:12px}.hero{grid-template-columns:1fr;gap:26px}.hero figure{width:min(78%,320px);margin:auto}.section{grid-template-columns:1fr;gap:26px;padding-block:48px}.welcome .lead{font-size:21px}.hero{padding-block:36px}.visit{padding:48px 7%}footer{align-items:flex-start;flex-direction:column;gap:4px}.hero figcaption{font-size:14px}}@media(max-width:410px){.bar{width:94%}.identity{font-size:15px}nav{gap:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.identity img {border-radius:24%;border:1px solid #ead6d3;}
.journal {border-block:1px solid var(--rule);background:#fff9f7;}
.journal-inner {width:min(900px,88%);margin:auto;display:grid;grid-template-columns:minmax(0,340px) 1fr;align-items:center;gap:9%;padding:60px 0;}
.journal-photo {aspect-ratio:4/5;background:var(--blush);border-radius:18px;overflow:hidden;}
.journal-photo img {width:100%;height:100%;object-fit:contain;display:block;}
.journal small {font-size:10px;font-weight:650;letter-spacing:2px;color:var(--rose);}
.journal h3 {font-size:23px;margin:24px 0 6px;}
.journal-copy .line {margin-top:12px;}
.thumbnails {display:flex;gap:12px;margin-top:24px;}
.thumbnails button {width:60px;height:68px;padding:3px;background:transparent;border:1px solid transparent;border-radius:10px;cursor:pointer;}
.thumbnails img {width:100%;height:100%;object-fit:cover;border-radius:6px;}
.thumbnails [aria-pressed=true] {border-color:var(--rose);}
.thumbnails button:focus-visible {outline:2px solid var(--rose);outline-offset:3px;}
@media(max-width:700px){.journal-inner{grid-template-columns:1fr;gap:20px;padding:40px 0;}.journal-photo{width:min(100%,330px);margin:auto;}.journal-copy{max-width:420px;margin:auto;width:100%;}}
@keyframes arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){
  .welcome,.hero figure,details[open] p,.enter-view{animation:arrive .46s ease-out both;}
  .hero figure{animation-delay:.11s;}
  .thumbnails button,.floating,.jump span{transition:transform .22s ease,background-color .22s;}
  .jump:hover span{display:inline-block;transform:translateY(3px);}
  .thumbnails button:hover,.floating:hover{transform:translateY(-3px);}
}

/* Retrato em formato de fotografia e leitura mais contínua entre as seções. */
.intro {background:linear-gradient(110deg,#fbf2ef 12%,#f5e4e1);}
.hero {grid-template-columns:1fr 1.08fr;gap:6%;}
.hero figure svg {border-radius:3px;}
.hero figcaption {font:13px/1.6 "Segoe UI",Arial,sans-serif;text-align:left;margin-top:9px;}
.hero .specialty {font-weight:500;}
.side-note {margin-top:16px;color:#74585d;max-width:22ch;}
.profile {background:#fbf4f1;}
.profile .registration {max-width:24ch;}
@media(max-width:700px){
  .hero {grid-template-columns:1fr;}
  .hero figure {width:100%;max-width:460px;margin:0;}
}

@font-face {
  font-family: Newsreader;
  src: url("assets/newsreader.ttf") format("truetype");
  font-weight: 200 800;
  font-display: swap;
}
h1,h2,h3,.identity,summary {font-family:Newsreader,Georgia,serif;}
h1,h2 {text-wrap:balance;letter-spacing:-.035em;}
::selection {background:#edc5cc;color:#492e35;}
.opening {
  display:grid;
  align-items:end;
  min-height:clamp(370px,38vw,550px);
  padding:44px max(6%,calc((100vw - 1080px)/2));
  color:white;
  background:linear-gradient(90deg,#452732ed,#69434bd9 42%,#b880891c 83%),url("assets/maternidade-7484772.jpg") center 52% / cover;
}
.opening-text {max-width:550px;}
.opening h1 {font-size:clamp(52px,6.2vw,90px);line-height:1.02;}
.qualification {font-size:clamp(18px,2vw,25px);margin:10px 0 16px;}
.opening-lead {max-width:38ch;}
.opening a {display:inline-block;color:white;margin-top:18px;text-decoration:underline;text-underline-offset:5px;}
.letter {background:#f5e5e6;text-align:center;padding:44px 7%;}
.letter h2 {margin:0 0 12px;}
.letter p {max-width:58ch;margin:auto;}
.profile figure {margin-top:18px;}
.profile figure svg {width:100%;display:block;border-radius:4px;}
.profile figcaption {font:14px/1.7 "Segoe UI",sans-serif;text-align:left;}
@media(max-width:700px) {
  .opening {min-height:380px;background-position:60% center;padding:32px 6%;}
  .bar {flex-wrap:wrap;padding-block:8px;gap:3px;}
  .bar nav {flex-wrap:wrap;gap:15px;}
  .bar nav a {padding-block:8px;}
  .profile figure {max-width:390px;}
}
.footer-reg{display:block;margin-top:.45em;font:normal .84rem/1.5 system-ui;color:inherit}.section.parto-note{display:grid;grid-template-columns:minmax(180px,300px) minmax(0,1fr);gap:clamp(28px,6vw,90px);align-items:center}.parto-note img{width:100%;height:auto;border-radius:8px}.parto-note p{max-width:44ch}.relatos{text-align:center;background:#f7e8e6;padding:clamp(50px,8vw,108px) 6%;scroll-margin-top:7rem}.relatos>div{max-width:700px;margin:auto}.relatos img{object-fit:cover;border-radius:100%;margin-bottom:14px}.relatos figure{margin:22px 0}.relatos blockquote{font:italic clamp(25px,3.4vw,40px)/1.25 Newsreader,Georgia,serif;margin:0 auto 16px;max-width:29ch;color:#693f46}.relatos figcaption{font-size:.88rem}.thumbnails{flex-wrap:wrap}@media(max-width:650px){.section.parto-note{grid-template-columns:1fr}.parto-note img{max-width:255px;margin:auto}.parto-note h2{max-width:18ch}}
.bar .identity img{object-fit:contain;background:transparent;border:0;box-shadow:none;}
.consultorio-footer{display:block;width:100%;background:#f8e5e8;color:#512f39;border-top:4px solid #d6a5aa;padding:clamp(40px,6vw,76px) 6%}.footer-grid{margin:auto;max-width:1080px;display:grid;grid-template-columns:1.1fr 1.2fr .8fr;gap:32px;font-size:15px}.footer-name{font:1.65rem/1.16 Georgia,serif}.footer-grid h2{font:600 1rem/1.35 system-ui;letter-spacing:0;margin:0 0 8px}.footer-grid address{font-style:normal}.footer-grid a{display:inline-block;text-decoration:underline;text-underline-offset:4px;padding:6px 0}.footer-grid a:hover{color:#743e50;text-decoration-thickness:2px}.footer-grid a:focus-visible{outline-color:#743e50}@media(max-width:800px){.footer-grid{grid-template-columns:1fr;gap:24px}.footer-grid>div+div{border-top:1px solid #ad8790;padding-top:18px}.consultorio-footer{padding-bottom:76px}}
.outros-cuidados {
  margin: 0 0 1.5rem;
  padding-left: 1.4rem;
}
.outros-cuidados li { margin-block: .45rem; }
.outros-cuidados li::marker { color: var(--rose); }
.outros-cuidados a { text-decoration: underline; text-underline-offset: .2em; }
.footer-grid, .footer-name, .footer-reg, .footer-grid h2 { font-weight: 700; }
.footer-grid .instagram-perfil { display: inline-flex; align-items: center; gap: .55rem; }
.instagram-perfil svg { flex-shrink: 0; }
.letter-inner { max-width: 850px; margin: auto; display: grid; grid-template-columns: minmax(150px,230px) 1fr; align-items: center; gap: clamp(24px,5vw,70px); text-align: left; }
.letter-portrait { aspect-ratio: 1.65; overflow: hidden; border-radius: 10px; }
.letter-portrait img { width: 130%; max-width: none; height: auto; display: block; margin-left: -15%; }
.letter-inner .line { margin-top: 12px; }
@media (max-width: 650px) {
  .letter-inner { grid-template-columns: 1fr; }
  .letter-portrait { width: min(215px,80%); }
  .opening { background-image: linear-gradient(0deg,#432632f2,#67414bc7 55%,#80566238),url("assets/maternidade-7484772.jpg"); }
}
.acompanhamento { background: #f8efeb; padding: clamp(44px,6vw,76px) 6%; }
.acompanhamento-inner { max-width: 1080px; margin: auto; }
.acompanhamento-lead { max-width: 58ch; margin-top: 16px; }
.etapas { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; list-style: none; padding: 0; margin: 32px 0 0; counter-reset: etapa; }
.etapas li { counter-increment: etapa; border-top: 1px solid var(--rule); padding-top: 18px; }
.etapas li::before { content: "0" counter(etapa); color: var(--rose); font-size: 14px; }
.etapas h3 { font-size: 25px; margin: 10px 0; }
.duvidas .heading p { margin-top: 18px; }
@media(max-width:700px) { .etapas { grid-template-columns: 1fr; gap: 24px; } }
.relatos-carousel { overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-top: 22px; }
.relatos-carousel::-webkit-scrollbar { display: none; }
.relatos-track { display: flex; }
.relatos-track figure { flex: 0 0 100%; min-width: 0; scroll-snap-align: start; padding: 8px 14px; margin: 0; }
.relatos-controls { display: flex; justify-content: center; align-items: center; gap: 22px; margin: 24px 0; }
.relatos-controls button { border: 1px solid var(--rose); border-radius: 50%; width: 44px; height: 44px; background: transparent; color: var(--ink); font-size: 22px; cursor: pointer; }
.relatos-controls button:hover { background: #edcdd2; }
.relatos-controls button:focus-visible { outline: 3px solid var(--rose); outline-offset: 3px; }
.footer-grid { grid-template-columns: 1.1fr 1.2fr 1fr; }
.footer-playlist { grid-column: 2 / -1; border-top: 1px solid #d6a5aa; padding-top: 20px; }
.footer-grid .spotify-playlist { display: inline-flex; align-items: center; gap: .6rem; }
.spotify-playlist svg { flex-shrink: 0; }
@media(max-width:800px) {
  .footer-grid { grid-template-columns: 1fr; }
  .footer-playlist { grid-column: auto; }
}
.parcerias .heading p { margin-top: 18px; }
.parceira-card { background: #f8e5e8; padding: clamp(24px,4vw,44px); border-radius: 12px; }
.parceira-card img { display: block; width: min(180px,70%); height: auto; margin-bottom: 24px; }
.parceira-label { font-size: 13px; color: var(--rose); }
.parceira-card h3 { font-size: 30px; margin: 4px 0 12px; }
.parceira-card .line { margin-top: 18px; }
.bar { gap: 16px; flex-wrap: wrap; }
.bar nav { flex-wrap: wrap; gap: clamp(12px,2vw,26px); }
.parcerias .parceira-card { grid-column: 2; }
.lubs-name { font: italic 700 56px/1.1 Georgia,serif; letter-spacing: -3px; color: #935761; margin-bottom: 24px; }
.cupom-lubs { margin-top: 20px; padding: 16px 0; border-block: 1px solid #d6a5aa; }
.cupom-lubs strong { font-size: 21px; }
.cupom-lubs code { font: 700 17px/1.8 system-ui,sans-serif; letter-spacing: .03em; }
@media(max-width:700px) { .parcerias .parceira-card { grid-column: 1; } }
.opening h2.opening-lead {
  font: 400 clamp(17px,1.7vw,21px)/1.5 "Segoe UI",Arial,sans-serif;
  letter-spacing: normal;
  max-width: 46ch;
  margin-top: 18px;
}
.parcerias {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 20px;
}
.parcerias .heading { grid-column: 1 / -1; }
.parcerias .parceira-card { grid-column: auto; padding: 22px; }
.parceira-card img { width: min(100px,55%); margin-bottom: 12px; }
.parceira-card h3 { font-size: 25px; margin-bottom: 8px; }
.parceira-card .line { margin-top: 12px; }
.lubs-name { font-size: 38px; margin-bottom: 12px; }
.cupom-lubs { margin-top: 12px; padding: 10px 0; }
@media(max-width:600px) {
  .parcerias { grid-template-columns: 1fr; }
  .parcerias .parceira-card { grid-column: 1; }
}
