*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --rose:#B5827A;--rose-2:#C49991;--rose-pale:#EDD8D5;--rose-faint:#F8F1F0;
  --sand:#E8E0D8;--sand-2:#F2EDE8;--cream:#FAFAF9;
  --ink:#1E1008;--ink-2:#3D1E18;--muted:#6B6560;--muted-2:#9A9590;
  --border:rgba(26,25,23,0.07);--border-2:rgba(26,25,23,0.12);
  --glass:rgba(255,255,255,0.78);--max-w:1100px;--ease:cubic-bezier(0.16,1,0.3,1);
}
html{overflow-x:hidden;scroll-behavior:smooth}body{font-family:'Geist',-apple-system,BlinkMacSystemFont,sans-serif;background:var(--cream);color:var(--ink);font-weight:400;line-height:1.6;overflow-x:hidden;font-size:105%;-webkit-text-size-adjust:100%}
body::before{content:'';position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:64px 64px}

/* CONTAINER */
.container{max-width:var(--max-w);margin:0 auto;padding:0 clamp(1rem,2vw,1.5rem)}
img{max-width:100%;height:auto}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;height:76px;background:#fff;border-bottom:1px solid var(--border);transition:box-shadow 0.3s}
.nav-inner{max-width:var(--max-w);margin:0 auto;padding:0 clamp(1rem,2vw,1.5rem);height:100%;display:flex;align-items:center;justify-content:space-between}
.nav-logo{text-decoration:none;display:flex;align-items:center}
.nav-logo img{height:60px;width:auto;display:block}
.nav-logo-fallback{font-size:0.95rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em}
.nav-links{display:flex;gap:0;list-style:none;align-items:center}
.nav-links a{font-size:0.78rem;color:var(--muted);text-decoration:none;padding:7px 12px;border-radius:7px;transition:all 0.2s;font-weight:400;letter-spacing:-0.01em}
.nav-links a:hover{color:var(--ink);background:var(--sand-2)}
.nav-links a.active{color:var(--ink);font-weight:500}
.nav-cta{margin-left:6px;background:var(--ink)!important;color:var(--cream)!important;padding:9px 18px!important;border-radius:8px!important;font-size:0.77rem!important;font-weight:500!important}
.nav-cta:hover{background:var(--rose)!important}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px}
.hamburger span{display:block;width:22px;height:1.5px;background:var(--ink);border-radius:2px;transition:all 0.3s}

/* PAGE TOP */
.page-top{padding-top:76px}

/* PAGE HERO BANNER */
.page-banner{background:var(--sand-2);border-bottom:1px solid var(--border);padding:clamp(2.5rem,5vw,4rem) 0;position:relative;z-index:1}
.page-banner .tag{margin-bottom:0.75rem}
.page-banner h1{font-size:clamp(2rem,4vw,3.5rem);font-weight:700;line-height:1.1;letter-spacing:-0.04em;color:var(--ink)}
.page-banner h1 .dim{color:var(--muted-2)}
.page-banner p{font-size:0.91rem;color:var(--muted);line-height:1.75;max-width:520px;margin-top:0.85rem;letter-spacing:-0.01em}

/* SECTIONS */
.section{padding:clamp(3.5rem,6vw,6rem) 0;position:relative;z-index:1}
.section-white{background:#fff}
.section-sand{background:var(--sand-2)}
.section-cream{background:var(--cream)}
.section-dark{background:var(--ink-2)}

/* TYPOGRAPHY */
.tag{display:inline-flex;align-items:center;gap:7px;font-size:0.67rem;font-weight:600;color:var(--rose);letter-spacing:0.08em;text-transform:uppercase;margin-bottom:0.85rem}
.tag::before{content:'';display:block;width:18px;height:1.5px;background:var(--rose);border-radius:2px;flex-shrink:0}
.tag-dark{color:rgba(255,255,255,0.35)}
.tag-dark::before{background:rgba(255,255,255,0.2)}
.s-title{font-size:clamp(1.75rem,2.8vw,2.75rem);font-weight:700;line-height:1.1;letter-spacing:-0.035em;color:var(--ink)}
.s-title .dim{color:var(--muted-2)}
.s-title-white{color:#fff}
.s-lead{font-size:0.91rem;color:var(--muted);line-height:1.78;letter-spacing:-0.01em;max-width:520px}
.s-lead-dark{color:rgba(255,255,255,0.42)}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:7px;font-family:'Geist',sans-serif;font-size:0.82rem;font-weight:500;padding:11px 20px;border-radius:9px;text-decoration:none;border:none;cursor:pointer;transition:all 0.2s var(--ease);letter-spacing:-0.01em;white-space:nowrap}
.btn svg{transition:transform 0.2s var(--ease)}
.btn:hover svg{transform:translate(2px,-2px)}
.btn-dark{background:var(--ink);color:var(--cream)}
.btn-dark:hover{background:var(--rose);transform:translateY(-1px)}
.btn-outline{background:transparent;color:var(--ink);border:1px solid var(--border-2)}
.btn-outline:hover{background:var(--sand-2)}
.btn-light{background:#fff;color:var(--ink)}
.btn-light:hover{background:var(--rose);color:#fff;transform:translateY(-1px)}
.btn-rose{background:var(--rose);color:#fff}
.btn-rose:hover{background:var(--rose-2);transform:translateY(-1px)}

/* HERO */
.hero{min-height:calc(100vh - 76px);display:grid;grid-template-columns:1fr 1fr;position:relative;z-index:1;overflow:hidden}
.glow-a{position:absolute;top:-15%;left:-8%;pointer-events:none;z-index:0;width:55vw;height:55vw;background:radial-gradient(ellipse at center,rgba(181,130,122,0.15) 0%,transparent 65%)}
.glow-b{position:absolute;bottom:-5%;right:-5%;pointer-events:none;z-index:0;width:40vw;height:40vw;background:radial-gradient(ellipse at center,rgba(232,224,216,0.35) 0%,transparent 65%)}
.hero-left{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem,5vw,6rem) clamp(2rem,4vw,4rem) clamp(3rem,5vw,6rem) clamp(2rem,4vw,5rem);position:relative;z-index:2}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--glass);border:1px solid var(--border-2);border-radius:100px;padding:5px 14px 5px 7px;font-size:0.7rem;font-weight:500;color:var(--muted);width:fit-content;margin-bottom:1.75rem;backdrop-filter:blur(8px);letter-spacing:-0.01em}
.badge-pip{width:20px;height:20px;border-radius:50%;background:var(--rose-faint);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.badge-pip::after{content:'';width:7px;height:7px;border-radius:50%;background:var(--rose)}
.hero-h1{font-size:clamp(2.4rem,4.5vw,4.5rem);font-weight:700;line-height:1.04;letter-spacing:-0.045em;color:var(--ink);margin-bottom:1.25rem}
.hero-h1 .accent{color:var(--rose)}
.hero-sub{font-size:clamp(0.87rem,1.1vw,1rem);color:var(--muted);line-height:1.75;max-width:440px;margin-bottom:2rem;letter-spacing:-0.01em}
.hero-bullets{list-style:none;display:flex;flex-direction:column;gap:0.55rem;margin-bottom:2.25rem}
.hero-bullets li{display:flex;align-items:center;gap:10px;font-size:0.81rem;color:var(--ink-2);letter-spacing:-0.01em}
.hero-bullets li svg{width:15px;height:15px;flex-shrink:0;color:var(--rose)}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.hero-meta{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border);display:flex;gap:2rem;flex-wrap:wrap}
.hm-item{display:flex;flex-direction:column;gap:2px}
.hm-num{font-size:1.05rem;font-weight:700;color:var(--ink);letter-spacing:-0.04em;font-family:'Geist Mono',monospace}
.hm-label{font-size:0.67rem;color:var(--muted);letter-spacing:-0.01em}
.hero-right{position:relative;overflow:hidden;z-index:2}
.hero-right::before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,var(--sand-2) 0%,var(--rose-faint) 50%,var(--sand) 100%)}
.hero-right img{width:100%;height:100%;object-fit:cover;object-position:center 15%;position:relative;z-index:1;mix-blend-mode:multiply;opacity:0.92;transform:scale(1.08);transform-origin:top center}
.hero-float{position:absolute;bottom:36px;left:-1px;z-index:10;background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--border-2);border-radius:12px;padding:16px 20px;max-width:230px;box-shadow:0 4px 24px rgba(0,0,0,0.07)}
.hf-label{font-size:0.61rem;color:var(--muted);font-weight:500;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:5px}
.hf-title{font-size:0.84rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;line-height:1.3;margin-bottom:3px}
.hf-sub{font-size:0.69rem;color:var(--muted);line-height:1.5}

/* SIT-CARDS */
.sit-cards{display:flex;flex-direction:column;gap:10px}
.sit-card{background:var(--cream);border:1px solid var(--border);border-radius:12px;padding:19px;transition:all 0.25s var(--ease);cursor:default}
.sit-card:hover{background:#fff;border-color:var(--rose-pale);box-shadow:0 4px 20px rgba(181,130,122,0.1);transform:translateY(-2px)}
.sc-icon{width:33px;height:33px;border-radius:9px;background:var(--rose-faint);display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.sc-icon svg{width:16px;height:16px;color:var(--rose)}
.sit-card h3{font-size:0.86rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;margin-bottom:5px;line-height:1.3}
.sit-card p{font-size:0.79rem;color:var(--muted);line-height:1.72;letter-spacing:-0.01em}
.otoscope-banner{background:var(--ink);border-radius:12px;padding:18px 22px;display:flex;gap:13px;align-items:flex-start}
.oto-icon{width:36px;height:36px;flex-shrink:0;border-radius:9px;background:rgba(181,130,122,0.2);display:flex;align-items:center;justify-content:center}
.oto-icon svg{width:18px;height:18px;color:var(--rose-2)}
.oto-text h4{font-size:0.8rem;font-weight:600;color:#fff;letter-spacing:-0.02em;margin-bottom:4px}
.oto-text p{font-size:0.76rem;color:rgba(255,255,255,0.42);line-height:1.65;letter-spacing:-0.01em}

/* CHIPS */
.chip-grid{display:flex;flex-wrap:wrap;gap:7px}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:0.75rem;color:var(--ink-2);background:var(--sand-2);border:1px solid var(--border);border-radius:100px;padding:6px 12px;letter-spacing:-0.01em;transition:all 0.2s;cursor:default}
.chip:hover{background:var(--rose-faint);border-color:var(--rose-pale);color:var(--rose)}
.chip::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--rose-2);flex-shrink:0}

/* COND GRID */
.cond-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:1.5rem}
.cond-cat{background:var(--rose-faint);border:1px solid var(--rose-pale);border-radius:10px;padding:15px}
.cond-cat h4{font-size:0.69rem;font-weight:600;color:var(--rose);letter-spacing:0.06em;text-transform:uppercase;margin-bottom:0.55rem}
.cond-cat ul{list-style:none}
.cond-cat li{font-size:0.77rem;color:var(--ink-2);padding:3px 0;letter-spacing:-0.01em;border-bottom:1px solid var(--rose-pale)}
.cond-cat li:last-child{border:none}
.cond-cat li::before{content:'— ';color:var(--rose-2)}

/* COMO FUNCIONA */
.funciona-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:640px}
.funciona-content{padding:clamp(3rem,5vw,5rem) clamp(2rem,4vw,4rem) clamp(3rem,5vw,5rem) clamp(2rem,4vw,4rem);display:flex;flex-direction:column;justify-content:center;background:var(--cream)}
.funciona-steps{display:flex;flex-direction:column;margin:1.75rem 0}
.f-step{display:grid;grid-template-columns:38px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--border)}
.f-step:last-child{border:none}
.f-step-num{font-family:'Geist Mono',monospace;font-size:0.66rem;font-weight:500;color:var(--muted-2);letter-spacing:0.04em;padding-top:3px}
.f-step h4{font-size:0.86rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;margin-bottom:4px}
.f-step p{font-size:0.79rem;color:var(--muted);line-height:1.7;letter-spacing:-0.01em}
.funciona-img{position:relative;overflow:hidden}
.funciona-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.fi-badge{position:absolute;bottom:22px;left:22px;background:var(--glass);backdrop-filter:blur(12px);border:1px solid var(--border-2);border-radius:10px;padding:13px 17px;box-shadow:0 4px 20px rgba(0,0,0,0.08)}
.fi-badge p{font-size:0.72rem;color:var(--muted);letter-spacing:-0.01em;line-height:1.55}
.fi-badge strong{color:var(--ink);font-weight:600}

/* SOBRE */
.sobre-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,6vw,7rem);align-items:center}
.sobre-img-wrap{border-radius:16px;overflow:hidden;height:680px}
.sobre-img-wrap img{width:100%;height:100%;object-fit:cover;object-position:top}
.philosophy{background:var(--rose-faint);border:1px solid var(--rose-pale);border-radius:12px;padding:17px 21px;margin-bottom:1.5rem}
.philosophy h4{font-size:0.77rem;font-weight:600;color:var(--rose);letter-spacing:-0.01em;margin-bottom:5px}
.philosophy p{font-size:0.8rem;color:var(--ink-2);line-height:1.75;letter-spacing:-0.01em}
.timeline-compact{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:2rem}
.tl-item{background:var(--sand-2);border:1px solid var(--border);border-radius:10px;padding:12px 14px}
.tl-yr{font-family:'Geist Mono',monospace;font-size:0.62rem;font-weight:500;color:var(--rose);letter-spacing:0.04em;margin-bottom:3px}
.tl-title{font-size:0.82rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;line-height:1.3;margin-bottom:2px}
.tl-sub{font-size:0.71rem;color:var(--muted);letter-spacing:-0.01em;line-height:1.4}

/* DIFERENCIAIS */
.dif-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:3.5rem}
.dif-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,0.05);border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,0.06)}
.dif-card{background:rgba(255,255,255,0.03);padding:1.75rem;transition:background 0.25s}
.dif-card:hover{background:rgba(255,255,255,0.07)}
.dc-num{font-family:'Geist Mono',monospace;font-size:0.64rem;font-weight:500;color:rgba(255,240,232,0.22);letter-spacing:0.04em;margin-bottom:1.2rem}
.dc-icon{width:37px;height:37px;border-radius:9px;background:rgba(181,130,122,0.15);border:1px solid rgba(181,130,122,0.22);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.dc-icon svg{width:18px;height:18px;color:var(--rose-2)}
.dif-card h3{font-size:0.88rem;font-weight:500;color:#FFF4EE;letter-spacing:-0.02em;margin-bottom:0.6rem;line-height:1.3}
.dif-card p{font-size:0.77rem;color:rgba(255,240,232,0.42);line-height:1.75;letter-spacing:-0.01em}
.dif-cta-bar{margin-top:2.75rem;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-radius:14px;padding:2rem 2.25rem;display:flex;align-items:center;justify-content:space-between;gap:2.5rem;flex-wrap:wrap}
.dcb-quote{font-size:clamp(0.95rem,1.7vw,1.45rem);font-weight:600;color:#FFF4EE;letter-spacing:-0.03em;line-height:1.3}
.dcb-quote span{color:rgba(181,130,122,0.85)}

/* ESPECIALIDADES */
.espec-layout{display:grid;grid-template-columns:210px 1fr;gap:2.5rem;margin-top:2.5rem}
.espec-nav{display:flex;flex-direction:column;gap:3px;border-right:1px solid var(--border);padding-right:1.5rem}
.etab{background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:9px;font-family:'Geist',sans-serif;font-size:0.79rem;font-weight:400;color:var(--muted);padding:9px 11px;border-radius:8px;text-align:left;width:100%;letter-spacing:-0.01em;transition:all 0.2s}
.etab:hover{background:var(--sand-2);color:var(--ink)}
.etab.active{background:var(--rose-faint);color:var(--rose);font-weight:500}
.etab-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:0.4;flex-shrink:0}
.etab.active .etab-dot{opacity:1}
.epanel{display:none}
.epanel.active{display:block}
.epanel h3{font-size:clamp(1.2rem,2vw,1.75rem);font-weight:700;color:var(--ink);letter-spacing:-0.035em;line-height:1.2;margin-bottom:0.85rem}
.epanel p{font-size:0.83rem;color:var(--muted);line-height:1.8;letter-spacing:-0.01em;margin-bottom:0.8rem}
.elist{list-style:none;margin:1.2rem 0 1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:0}
.elist li{display:flex;align-items:center;gap:10px;font-size:0.8rem;color:var(--ink-2);padding:9px 12px 9px 0;border-bottom:1px solid var(--border);letter-spacing:-0.01em}
.elist li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--rose-pale);border:1.5px solid var(--rose-2);flex-shrink:0}

/* DEPOIMENTOS */
.depo-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;height:520px;overflow:hidden;position:relative}
.depo-columns::before,.depo-columns::after{content:'';position:absolute;left:0;right:0;height:80px;z-index:2;pointer-events:none}
.depo-columns::before{top:0;background:linear-gradient(to bottom,var(--sand-2),transparent)}
.depo-columns::after{bottom:0;background:linear-gradient(to top,var(--sand-2),transparent)}
.depo-col{display:flex;flex-direction:column;gap:12px;overflow:hidden}
.depo-track{display:flex;flex-direction:column;gap:12px;animation:scrollUp var(--dur,20s) linear infinite}
.depo-col:nth-child(2) .depo-track{animation-direction:reverse;animation-duration:25s}
.depo-col:nth-child(3) .depo-track{animation-duration:17s}
@keyframes scrollUp{0%{transform:translateY(0)}100%{transform:translateY(-50%)}}
.depo{background:#fff;border:1px solid var(--border);border-radius:12px;padding:20px;flex-shrink:0}
.depo-stars{display:flex;gap:3px;margin-bottom:10px}
.depo-stars svg{width:11px;height:11px;fill:var(--rose-2)}
.depo-text{font-size:0.81rem;color:var(--ink-2);line-height:1.75;letter-spacing:-0.01em;margin-bottom:13px}
.depo-author{border-top:1px solid var(--border);padding-top:10px}
.depo-author strong{display:block;font-size:0.76rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em}
.depo-author span{font-size:0.68rem;color:var(--muted);letter-spacing:-0.01em}

/* CONTATO */
.contato-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,6vw,7rem);align-items:center}
.ci-list{display:flex;flex-direction:column;gap:11px;margin-bottom:2rem}
.ci{display:flex;align-items:center;gap:12px;padding:13px;background:#fff;border:1px solid var(--border);border-radius:10px;transition:border-color 0.2s}
.ci:hover{border-color:var(--rose-pale)}
.ci-icon{width:35px;height:35px;border-radius:9px;background:var(--rose-faint);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ci-icon svg{width:16px;height:16px;color:var(--rose)}
.ci-label{font-size:0.62rem;color:var(--muted);font-weight:500;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:2px}
.ci-value{font-size:0.82rem;color:var(--ink);letter-spacing:-0.01em}
.form-box{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.75rem}
.form-box h3{font-size:0.98rem;font-weight:700;color:var(--ink);letter-spacing:-0.03em;margin-bottom:3px}
.form-box p{font-size:0.77rem;color:var(--muted);letter-spacing:-0.01em;margin-bottom:1.5rem}
.fg{margin-bottom:11px}
.fg label{display:block;font-size:0.65rem;font-weight:500;color:var(--muted);letter-spacing:0.03em;text-transform:uppercase;margin-bottom:5px}
.fg input,.fg select,.fg textarea{width:100%;padding:10px 13px;background:var(--cream);border:1px solid var(--border-2);border-radius:7px;font-family:'Geist',sans-serif;font-size:0.82rem;color:var(--ink);outline:none;transition:border-color 0.2s;appearance:none;letter-spacing:-0.01em}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--rose)}
.fg textarea{resize:vertical;min-height:78px}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}

/* HOME PREVIEW CARDS */
.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.preview-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.5rem;text-decoration:none;transition:all 0.25s var(--ease);display:flex;flex-direction:column;gap:0.75rem}
.preview-card:hover{border-color:var(--rose-pale);box-shadow:0 6px 24px rgba(181,130,122,0.1);transform:translateY(-3px)}
.pc-tag{font-size:0.65rem;font-weight:600;color:var(--rose);letter-spacing:0.06em;text-transform:uppercase}
.pc-title{font-size:1.05rem;font-weight:700;color:var(--ink);letter-spacing:-0.03em;line-height:1.2}
.pc-desc{font-size:0.79rem;color:var(--muted);line-height:1.72;letter-spacing:-0.01em}
.pc-link{font-size:0.75rem;font-weight:500;color:var(--rose);letter-spacing:-0.01em;margin-top:auto;display:flex;align-items:center;gap:5px}

/* HOME STEPS CONDENSED */
.steps-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border-radius:14px;overflow:hidden;margin-top:2rem}
.step-item{background:var(--cream);padding:1.5rem;position:relative}
.step-num{font-family:'Geist Mono',monospace;font-size:0.62rem;color:var(--muted-2);letter-spacing:0.04em;margin-bottom:0.75rem}
.step-item h4{font-size:0.86rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;margin-bottom:0.4rem}
.step-item p{font-size:0.78rem;color:var(--muted);line-height:1.7;letter-spacing:-0.01em}

/* CTA SECTION */
.cta-section{text-align:center;padding:clamp(3rem,6vw,5rem) 0}
.cta-section h2{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;letter-spacing:-0.04em;color:var(--ink);margin-bottom:0.75rem}
.cta-section p{font-size:0.91rem;color:var(--muted);margin-bottom:2rem;letter-spacing:-0.01em}
.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* FOOTER */
footer{background:var(--ink-2);padding:2.5rem 0;position:relative;z-index:1}
.footer-inner{max-width:var(--max-w);margin:0 auto;padding:0 clamp(1rem,2vw,1.5rem);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem}
.footer-logo img{height:40px;width:auto}
.footer-logo-fallback{font-size:0.8rem;font-weight:500;color:rgba(255,255,255,0.5)}
.footer-nav{display:flex;gap:0;list-style:none;flex-wrap:wrap}
.footer-nav a{font-size:0.74rem;color:rgba(255,255,255,0.28);text-decoration:none;padding:5px 10px;border-radius:6px;transition:all 0.2s}
.footer-nav a:hover{color:rgba(255,255,255,0.7)}
.footer-crm{font-size:0.65rem;color:var(--muted-2);letter-spacing:-0.01em}

/* WA FLOAT */
.wa{position:fixed;bottom:26px;right:26px;z-index:200;width:50px;height:50px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(37,211,102,0.35);text-decoration:none;transition:all 0.25s var(--ease)}
.wa:hover{transform:scale(1.1)}
.wa svg{width:24px;height:24px;fill:#fff}

/* REVEAL */
.rv{opacity:0;transform:translateY(18px);transition:opacity 0.6s var(--ease),transform 0.6s var(--ease)}
.rv.vis{opacity:1;transform:none}
.d1{transition-delay:0.07s}.d2{transition-delay:0.14s}.d3{transition-delay:0.21s}.d4{transition-delay:0.28s}

/* SECTION HEADER COM LINK */
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin-bottom:2.5rem}

/* ════ TABLET ≤1024px ════ */
@media(max-width:1024px){
  .nav-links a:not(.nav-cta){display:none}
  .hamburger{display:flex}
  .hero{grid-template-columns:1fr}
  .hero-right{height:55vw;min-height:300px;order:-1}
  .hero-left{padding:2.5rem clamp(1.5rem,4vw,3rem) 3rem}
  .hero-float{display:none}
  .sobre-grid{grid-template-columns:1fr;gap:2.5rem}
  .sobre-img-wrap{height:420px}
  .timeline-compact{grid-template-columns:1fr 1fr}
  .funciona-wrap{grid-template-columns:1fr}
  .funciona-img{height:300px;position:relative}
  .funciona-img img{position:static;width:100%;height:300px;object-fit:cover;object-position:top}
  .dif-header{grid-template-columns:1fr;gap:1.5rem}
  .dif-cards{grid-template-columns:1fr 1fr}
  .dif-cta-bar{flex-direction:column;align-items:flex-start;gap:1.5rem}
  .espec-layout{grid-template-columns:1fr}
  .espec-nav{flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:1px solid var(--border);padding-right:0;padding-bottom:1rem}
  .elist{grid-template-columns:1fr}
  .depo-columns{grid-template-columns:1fr 1fr}
  .depo-col:nth-child(3){display:none}
  .contato-grid{grid-template-columns:1fr;gap:2.5rem}
  .preview-grid{grid-template-columns:1fr 1fr}
  .steps-row{grid-template-columns:1fr}
  .cond-grid{grid-template-columns:1fr 1fr}
}

/* ════ MOBILE ≤640px ════ */
@media(max-width:640px){
  nav{height:68px}
  .page-top{padding-top:68px}
  .nav-logo img{height:52px}
  .nav-links{display:none;position:fixed;top:68px;left:0;right:0;background:rgba(250,250,249,0.98);backdrop-filter:blur(20px);flex-direction:column;padding:1rem 1.25rem 1.5rem;border-bottom:1px solid var(--border);gap:4px;z-index:99;box-shadow:0 8px 24px rgba(0,0,0,0.08)}
  .nav-links.open{display:flex}
  .nav-links a{display:flex!important;width:100%;padding:12px 14px;font-size:0.88rem;border-radius:10px;color:var(--ink)}
  .nav-cta{margin-left:0!important;margin-top:4px;justify-content:center;background:var(--ink)!important;color:#fff!important}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-right{height:88vw;min-height:260px;order:-1}
  .hero-left{padding:2rem 1.25rem 2.5rem;align-items:center;text-align:center}
  .hero-h1{font-size:clamp(1.9rem,7vw,2.8rem);text-align:center}
  .hero-badge{margin:0 auto 1.75rem}
  .hero-sub{text-align:center;max-width:100%}
  .hero-bullets{align-items:center}
  .hero-actions{flex-direction:column;align-items:center;width:100%}
  .hero-actions .btn{justify-content:center;width:100%}
  .hero-meta{justify-content:center}
  .sobre-img-wrap{height:300px}
  .timeline-compact{grid-template-columns:1fr}
  .funciona-img{display:none}
  .funciona-wrap{grid-template-columns:1fr}
  .funciona-content{padding:2.5rem 1.25rem}
  .dif-cards{grid-template-columns:1fr}
  .dif-cta-bar{padding:1.5rem}
  .etab{font-size:0.75rem;padding:8px 10px}
  .elist{grid-template-columns:1fr}
  .depo-columns{grid-template-columns:1fr;height:440px}
  .depo-col:nth-child(2),.depo-col:nth-child(3){display:none}
  .fg-row{grid-template-columns:1fr}
  .preview-grid{grid-template-columns:1fr}
  .steps-row{grid-template-columns:1fr}
  .cond-grid{grid-template-columns:1fr}
  .cta-btns{flex-direction:column;align-items:center}
  .footer-inner{flex-direction:column;align-items:flex-start;gap:1rem}
  .footer-nav{flex-wrap:wrap}
  .section-head{flex-direction:column;align-items:flex-start}
  .tag{margin-left:auto;margin-right:auto}
  .s-title,.s-lead,.page-banner h1,.page-banner p{text-align:center}
  .section-head{align-items:center}
  .chip-grid{justify-content:center}
  .cta-section h2,.cta-section p{text-align:center}
  .page-banner{text-align:center}
  .page-banner .tag{margin:0 auto 0.75rem}
}

/* ── ADIÇÕES v3 (brief Dra Giu) ── */
:root{
  --wa:#25D366;--wa-dark:#128C7E;
}
.btn-wa{background:var(--wa);color:#fff;gap:8px}
.btn-wa:hover{background:var(--wa-dark);transform:translateY(-1px)}
.btn-wa svg{width:17px;height:17px;fill:#fff;flex-shrink:0}
.nav-wa{background:var(--wa)!important;color:#fff!important;display:flex!important;align-items:center;gap:7px}
.nav-wa:hover{background:var(--wa-dark)!important}
.nav-wa svg{width:15px;height:15px;fill:#fff;flex-shrink:0}

/* SPECIALTY BAR */
.spec-bar{background:var(--ink-2);position:relative;z-index:1}
.spec-bar-inner{max-width:var(--max-w);margin:0 auto;padding:0 clamp(1rem,2vw,1.5rem);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0;overflow-x:auto;scrollbar-width:none}
.spec-bar-inner::-webkit-scrollbar{display:none}
.spec-item{font-size:0.68rem;font-weight:500;color:rgba(255,240,232,0.55);padding:13px 16px;white-space:nowrap;letter-spacing:0.06em;text-transform:uppercase;flex-shrink:0}
.spec-sep{color:rgba(255,240,232,0.25);font-size:0.7rem;flex-shrink:0;user-select:none}

/* RONCO SECTION */
.ronco-section{position:relative;z-index:1;overflow:hidden}
.ronco-inner{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:600px}
.ronco-content{padding:clamp(3rem,5vw,5.5rem) clamp(2rem,4vw,4.5rem) clamp(3rem,5vw,5.5rem) clamp(2rem,4vw,5rem);display:flex;flex-direction:column;justify-content:center;background:var(--ink-2)}
.ronco-tag{font-size:0.65rem;font-weight:700;color:var(--rose-2);letter-spacing:0.12em;text-transform:uppercase;margin-bottom:1rem;display:flex;align-items:center;gap:8px}
.ronco-tag::before{content:'';width:18px;height:1.5px;background:var(--rose-2);display:block}
.ronco-h2{font-size:clamp(1.9rem,3.2vw,3rem);font-weight:700;color:#FFF8F4;letter-spacing:-0.04em;line-height:1.08;margin-bottom:1rem}
.ronco-h2 span{color:var(--rose-pale)}
.ronco-sub{font-size:0.91rem;color:rgba(255,240,232,0.5);line-height:1.78;letter-spacing:-0.01em;margin-bottom:1.5rem;max-width:480px}
.ronco-quote{background:rgba(255,255,255,0.05);border-left:3px solid var(--rose-2);border-radius:0 10px 10px 0;padding:16px 20px;margin:1.5rem 0;font-size:0.84rem;color:rgba(255,240,232,0.7);font-style:italic;line-height:1.75;letter-spacing:-0.01em}
.ronco-exams{display:flex;flex-wrap:wrap;gap:8px;margin:1.25rem 0}
.exam-chip{display:inline-flex;align-items:center;gap:6px;font-size:0.72rem;color:rgba(255,240,232,0.6);background:rgba(255,240,232,0.06);border:1px solid rgba(255,240,232,0.1);border-radius:100px;padding:6px 12px;letter-spacing:-0.01em}
.exam-chip::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--rose-2);flex-shrink:0}
.ronco-img{position:relative;overflow:hidden}
.ronco-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.ronco-img-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(46,44,42,0.4) 0%,transparent 50%)}

/* QUOTE SECTION */
.quote-section{background:var(--ink);padding:clamp(3rem,5vw,4.5rem) 0;position:relative;z-index:1}
.quote-section blockquote{font-size:clamp(1.1rem,2vw,1.6rem);font-weight:600;color:#FFF4EE;letter-spacing:-0.03em;line-height:1.4;max-width:760px;margin:0 auto;text-align:center;padding:0 1rem}
.quote-section blockquote em{color:var(--rose-2);font-style:normal}
.quote-author{text-align:center;margin-top:1.25rem;font-size:0.75rem;color:rgba(255,240,232,0.35);letter-spacing:0.04em;text-transform:uppercase}

/* SERVICES GRID */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:2.5rem}
.svc-card{background:var(--sand-2);border:1px solid var(--border);border-radius:14px;overflow:hidden;transition:all 0.25s var(--ease)}
.svc-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(181,130,122,0.12);border-color:var(--rose-pale)}
.svc-img{height:160px;background:var(--sand);overflow:hidden}
.svc-img img{width:100%;height:100%;object-fit:cover}
.svc-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--rose-faint),var(--sand))}
.svc-img-placeholder svg{width:40px;height:40px;color:var(--rose-2);opacity:0.5}
.svc-body{padding:1.25rem}
.svc-tag{font-size:0.62rem;font-weight:600;color:var(--rose);letter-spacing:0.07em;text-transform:uppercase;margin-bottom:0.5rem}
.svc-title{font-size:0.95rem;font-weight:700;color:var(--ink);letter-spacing:-0.025em;margin-bottom:0.5rem;line-height:1.25}
.svc-desc{font-size:0.78rem;color:var(--muted);line-height:1.72;letter-spacing:-0.01em}

/* CRED LIST */
.cred-list{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:1.5rem}
.cred-list li{display:flex;align-items:flex-start;gap:12px;font-size:0.84rem;color:var(--ink-2);line-height:1.6;letter-spacing:-0.01em}
.cred-list li::before{content:'✦';color:var(--rose);flex-shrink:0;font-size:0.75rem;margin-top:3px}
.cred-list li strong{color:var(--ink);font-weight:600}

/* CLINIC BANNER */
.clinic-banner{display:grid;grid-template-columns:1fr 1fr;gap:0;position:relative;z-index:1;overflow:hidden;min-height:480px}
.clinic-text{padding:clamp(3rem,5vw,5rem) clamp(2rem,4vw,4.5rem);display:flex;flex-direction:column;justify-content:center;background:var(--sand-2)}
.clinic-img{position:relative;overflow:hidden}
.clinic-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}

/* DEPO HEADER */
.depo-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin-bottom:2.5rem}
.depo-head .s-lead{margin-top:0.5rem}

/* WA ICON */
.wa-icon{display:inline-flex;flex-shrink:0}

/* responsive additions */
@media(max-width:1024px){
  .ronco-inner{grid-template-columns:1fr}
  .ronco-img{height:340px;position:relative}
  .ronco-img img{position:static;width:100%;height:340px;object-fit:cover;object-position:top}
  .services-grid{grid-template-columns:1fr 1fr}
  .clinic-banner{grid-template-columns:1fr}
  .clinic-img{height:300px;position:relative}
  .clinic-img img{position:static;width:100%;height:300px;object-fit:cover;object-position:top}
  .spec-link{padding:11px 14px;font-size:0.65rem}
}
@media(max-width:640px){
  .ronco-content{padding:2.5rem 1.25rem}
  .services-grid{grid-template-columns:1fr}
  .spec-link{padding:10px 12px;font-size:0.62rem}
  .depo-head{flex-direction:column;align-items:center;text-align:center}
  .quote-section blockquote{font-size:clamp(1rem,4.5vw,1.3rem)}
}

/* ── HERO NEW (foto centralizada + texto enorme atrás) ── */
.hero-new{
  position:relative;
  min-height:calc(100vh - 76px);
  background:var(--ink-2);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  z-index:1;
}
/* glow ambiental */
.hero-new::before{
  content:'';
  position:absolute;
  top:30%;left:50%;
  transform:translate(-50%,-50%);
  width:70vw;height:70vw;
  background:radial-gradient(ellipse at center,rgba(181,130,122,0.18) 0%,transparent 65%);
  pointer-events:none;
  z-index:0;
}
/* texto enorme atrás */
.hero-new-bg-text{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-54%);
  width:100%;
  text-align:center;
  z-index:1;
  pointer-events:none;
  white-space:nowrap;
  line-height:0.88;
}
.hero-new-bg-text span{
  display:block;
  font-size:clamp(5rem,12.5vw,16rem);
  font-weight:800;
  letter-spacing:-0.04em;
  color:rgba(255,255,255,0.055);
  line-height:0.92;
}
/* foto centralizada */
.hero-new-photo{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  align-items:flex-end;
  width:100%;
  max-width:560px;
  margin-bottom:-2px;
}
.hero-new-photo img{
  width:100%;
  max-width:560px;
  height:auto;
  display:block;
  mix-blend-mode:screen;
  object-fit:contain;
}
/* bottom bar com badge e CTA */
.hero-new-bottom{
  position:relative;
  z-index:3;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:1.5rem clamp(1.5rem,4vw,4rem) 2rem;
  background:linear-gradient(to top,rgba(46,44,42,0.95) 0%,transparent 100%);
  gap:1.5rem;
  flex-wrap:wrap;
}
.hero-new-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:100px;
  padding:6px 16px 6px 8px;
  font-size:0.72rem;
  font-weight:500;
  color:rgba(255,255,255,0.55);
  letter-spacing:-0.01em;
  backdrop-filter:blur(8px);
}
.hero-new-badge .badge-pip{
  background:rgba(181,130,122,0.25);
}
.hero-new-badge .badge-pip::after{
  background:var(--rose-2);
}
.hero-new-cta{
  flex-shrink:0;
}
/* mobile */
@media(max-width:1024px){
  .hero-new-bg-text span{font-size:clamp(4rem,11vw,10rem)}
  .hero-new-photo{max-width:420px}
}
@media(max-width:640px){
  .hero-new{min-height:calc(100svh - 68px)}
  .hero-new-bg-text span{font-size:clamp(2.8rem,9vw,6rem)}
  .hero-new-photo{max-width:320px}
  .hero-new-bottom{flex-direction:column;align-items:center;text-align:center;padding:1.25rem 1.25rem 1.75rem}
}

/* ── HERO NEW — fundo claro + marquee em movimento ── */
.hero-new{
  position:relative;
  min-height:calc(100vh - 76px);
  background:var(--cream);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  z-index:1;
}
/* glows */
.hero-new-glow-a{
  position:absolute;top:-10%;left:-5%;width:60vw;height:60vw;
  background:radial-gradient(ellipse at center,rgba(181,130,122,0.12) 0%,transparent 65%);
  pointer-events:none;z-index:0;
}
.hero-new-glow-b{
  position:absolute;bottom:-5%;right:-5%;width:45vw;height:45vw;
  background:radial-gradient(ellipse at center,rgba(232,224,216,0.5) 0%,transparent 65%);
  pointer-events:none;z-index:0;
}
/* grid de fundo (já tem no body::before mas reforçar) */

/* MARQUEE */
.hero-marquee-wrap{
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  display:flex;flex-direction:column;
  justify-content:center;
  gap:0;
  pointer-events:none;
  z-index:1;
  overflow:hidden;
}
.hero-marquee-track{
  display:flex;
  gap:2rem;
  white-space:nowrap;
  animation:marqueeLeft 22s linear infinite;
  margin:0;
  line-height:1;
  padding:0.25rem 0;
}
.hero-marquee-track-2{
  animation:marqueeRight 28s linear infinite;
  opacity:0.6;
}
.hero-marquee-track span{
  font-size:clamp(3.5rem,9vw,12rem);
  font-weight:800;
  letter-spacing:-0.04em;
  color:rgba(26,25,23,0.13);
  flex-shrink:0;
  line-height:1;
  padding-right:2rem;
}
@keyframes marqueeLeft{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}
@keyframes marqueeRight{
  0%{transform:translateX(-50%)}
  100%{transform:translateX(0)}
}

/* foto */
.hero-new-photo{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  align-items:flex-end;
  width:100%;
  max-width:680px;
  margin-bottom:-2px;
}
.hero-new-photo img{
  width:100%;
  max-width:680px;
  height:auto;
  display:block;
  object-fit:contain;
  /* PNG com fundo transparente agora */
}
/* drop shadow sutil para destacar do fundo claro */
.hero-new-photo img{
  filter:drop-shadow(0 8px 40px rgba(26,25,23,0.12));
}

/* bottom bar */
.hero-new-bottom{
  position:relative;
  z-index:3;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:1.5rem clamp(1.5rem,4vw,4rem) 2rem;
  background:linear-gradient(to top,rgba(250,250,249,0.97) 0%,transparent 100%);
  gap:1.5rem;
  flex-wrap:wrap;
}
.hero-new-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,0.85);
  border:1px solid var(--border-2);
  border-radius:100px;
  padding:6px 16px 6px 8px;
  font-size:0.72rem;font-weight:500;
  color:var(--muted);letter-spacing:-0.01em;
  backdrop-filter:blur(8px);
}

/* tablet */
@media(max-width:1024px){
  .hero-marquee-track span{font-size:clamp(3rem,9vw,8rem)}
  .hero-new-photo{max-width:520px}
}
/* mobile */
@media(max-width:640px){
  .hero-new{min-height:calc(100svh - 68px)}
  .hero-marquee-track span{font-size:clamp(2.2rem,8vw,5rem)}
  .hero-new-photo{max-width:95vw}
  .hero-new-bottom{flex-direction:column;align-items:center;text-align:center;padding:1.25rem 1.25rem 1.75rem}
  .hero-new-badge{font-size:0.67rem}
}

/* ── TESTIMONIALS GRID (lado a lado) ── */
.testi-layout{
  display:grid;
  grid-template-columns:1fr 1.6fr;
  gap:clamp(3rem,6vw,7rem);
  align-items:start;
}
.testi-left{
  position:sticky;
  top:calc(76px + 2rem);
}
.testi-left .s-lead{margin-top:0}
.testi-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
/* Card */
.tc-card{
  position:relative;
  overflow:hidden;
  border-radius:16px;
  border:1px solid var(--border-2);
  background:#fff;
  padding:1.5rem;
  display:flex;
  flex-direction:column;
  gap:1rem;
  transition:box-shadow 0.25s var(--ease),transform 0.25s var(--ease);
}
.tc-card:hover{
  box-shadow:0 6px 28px rgba(26,25,23,0.08);
  transform:translateY(-2px);
}
/* aspas decorativas */
.tc-quote{
  position:absolute;
  top:12px;right:16px;
  font-size:5rem;
  font-family:Georgia,serif;
  color:rgba(26,25,23,0.05);
  line-height:1;
  pointer-events:none;
  user-select:none;
}
.tc-stars{display:flex;gap:3px}
.tc-text{
  font-size:0.82rem;
  color:var(--muted);
  line-height:1.78;
  letter-spacing:-0.01em;
  flex:1;
}
.tc-author{
  display:flex;
  align-items:center;
  gap:10px;
  border-top:1px solid var(--border);
  padding-top:0.85rem;
  margin-top:auto;
}
.tc-avatar{
  width:36px;height:36px;border-radius:50%;
  background:var(--rose-faint);
  border:1px solid var(--rose-pale);
  display:flex;align-items:center;justify-content:center;
  font-size:0.7rem;font-weight:700;color:var(--rose);
  flex-shrink:0;letter-spacing:0.02em;
}
.tc-name{
  display:block;
  font-size:0.78rem;font-weight:600;
  color:var(--ink);letter-spacing:-0.02em;
  line-height:1.3;
}
.tc-role{
  display:block;
  font-size:0.69rem;color:var(--muted);
  letter-spacing:-0.01em;
}

/* responsive */
@media(max-width:1024px){
  .testi-layout{grid-template-columns:1fr;gap:2.5rem}
  .testi-left{position:static}
  .testi-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .testi-grid{grid-template-columns:1fr}
}

/* ── GOOGLE REVIEWS SECTION ── */

/* Badge estrelas Google no topo */
.gr-badge-wrap{display:flex;justify-content:center;margin-bottom:1.75rem}
.gr-badge{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--sand-2);border:1px solid var(--border-2);
  border-radius:100px;padding:8px 20px 8px 14px;
}
.gr-badge-stars{display:flex;gap:2px;align-items:center}
.gr-badge-text{
  font-size:0.7rem;font-weight:500;
  color:var(--muted-2);letter-spacing:0.06em;text-transform:uppercase;
}

/* Cabeçalho centralizado */
.gr-header{text-align:center;max-width:560px;margin:0 auto 3rem}
.gr-title{
  font-family:'Geist',-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:clamp(1.75rem,3.2vw,2.9rem);
  font-style:normal;font-weight:700;
  color:var(--ink-2);letter-spacing:-0.035em;line-height:1.1;
  margin:0.6rem 0 1rem;
}
.gr-lead{font-size:0.88rem;color:var(--muted);line-height:1.8;letter-spacing:-0.01em}

/* Grid 3 colunas */
.gr-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-bottom:2.5rem;
}

/* Card estilo Google Review */
.gr-card{
  background:#fff;
  border:1px solid rgba(0,0,0,0.08);
  border-radius:12px;
  padding:1.25rem;
  display:flex;flex-direction:column;gap:6px;
  box-shadow:0 1px 4px rgba(0,0,0,0.04);
  transition:box-shadow 0.2s;
}
.gr-card:hover{box-shadow:0 4px 16px rgba(0,0,0,0.09)}
.gr-card-top{
  display:flex;align-items:flex-start;
  justify-content:space-between;gap:8px;
  margin-bottom:4px;
}
.gr-card-user{display:flex;align-items:center;gap:10px}
.gr-avatar{
  width:38px;height:38px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:0.75rem;font-weight:700;color:#fff;
  flex-shrink:0;letter-spacing:0.02em;
}
.gr-name{
  display:block;font-size:0.82rem;font-weight:600;
  color:var(--ink);letter-spacing:-0.01em;line-height:1.3;
}
.gr-meta{
  display:block;font-size:0.68rem;color:var(--muted-2);
  letter-spacing:-0.01em;
}
.gr-stars{display:flex;gap:2px;align-items:center}
.gr-time{font-size:0.68rem;color:var(--muted-2);letter-spacing:-0.01em}
.gr-text{
  font-size:0.79rem;color:var(--muted);
  line-height:1.72;letter-spacing:-0.01em;
  flex:1;margin-top:4px;
}
.gr-actions{
  display:flex;gap:6px;margin-top:8px;
  border-top:1px solid rgba(0,0,0,0.06);
  padding-top:10px;
}
.gr-share-btn{
  display:inline-flex;align-items:center;gap:7px;
  background:var(--rose-faint);border:1px solid var(--rose-pale);
  border-radius:100px;padding:7px 14px;
  font-family:'Geist',sans-serif;font-size:0.71rem;
  font-weight:500;color:var(--rose);cursor:pointer;
  text-decoration:none;
  transition:all 0.18s;letter-spacing:-0.01em;
}
.gr-share-btn:hover{background:var(--rose-pale);color:var(--rose)}

/* CTA centralizado */
.gr-cta{display:flex;justify-content:center}

/* responsive */
@media(max-width:1024px){.gr-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){
  .gr-grid{grid-template-columns:1fr}
  .gr-title{font-size:clamp(1.75rem,7vw,2.5rem)}
}

/* ── O QUE FAZEMOS POR VOCÊ — rose + cards verticais ── */
.svc2-section{
  background:#F5E3DF;
  padding:clamp(4rem,7vw,7rem) 0 clamp(3rem,5vw,5rem);
  position:relative;z-index:1;
}
.svc2-header{
  text-align:center;
  max-width:580px;
  margin:0 auto 3rem;
}
.svc2-lead{
  font-size:0.9rem;color:var(--muted);line-height:1.8;
  letter-spacing:-0.01em;margin-top:0.5rem;
}
/* Grid 3+3 */
.svc2-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-bottom:0;
}
/* Card vertical com imagem no topo */
.svc2-card{
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  display:flex;flex-direction:column;
  transition:box-shadow 0.25s var(--ease),transform 0.25s var(--ease);
  box-shadow:0 2px 12px rgba(26,25,23,0.06);
}
.svc2-card:hover{
  box-shadow:0 8px 32px rgba(26,25,23,0.1);
  transform:translateY(-3px);
}
.svc2-img{
  height:200px;overflow:hidden;
  background:var(--sand);
}
.svc2-img img{
  width:100%;height:100%;
  object-fit:cover;object-position:center;
  transition:transform 0.4s var(--ease);
}
.svc2-card:hover .svc2-img img{transform:scale(1.04)}
.svc2-body{padding:1.25rem 1.25rem 1.5rem}
.svc2-cat{
  font-size:0.62rem;font-weight:700;
  color:var(--rose);letter-spacing:0.07em;
  text-transform:uppercase;margin-bottom:0.4rem;display:block;
}
.svc2-title{
  font-family:'Geist',-apple-system,BlinkMacSystemFont,sans-serif;
  font-style:normal;font-weight:600;
  font-size:0.92rem;color:var(--ink-2);
  letter-spacing:-0.025em;line-height:1.25;margin-bottom:0.5rem;
}
.svc2-desc{
  font-size:0.77rem;color:var(--muted);
  line-height:1.72;letter-spacing:-0.01em;
}
/* CTA */
.svc2-cta{
  display:flex;justify-content:center;
  margin-top:2.5rem;
}
/* Separador curvo */
.curve-divider{
  background:#F5E3DF;
  display:block;line-height:0;
  position:relative;z-index:2;
  margin-top:-1px;
}
.curve-divider svg{
  display:block;width:100%;
  height:clamp(40px,5vw,80px);
}

/* responsive */
@media(max-width:1024px){
  .svc2-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .svc2-grid{grid-template-columns:1fr}
  .svc2-img{height:180px}
}

/* ── O FIM DO SINTOMA — layout foto + texto ── */
.fim-section{
  padding:clamp(4rem,7vw,7rem) 0;
  position:relative;z-index:1;
  background:var(--cream);
}
.fim-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(3rem,6vw,7rem);
  align-items:center;
}

/* Foto com moldura estilo referência */
.fim-photo{position:relative}
.fim-photo-frame{
  position:relative;
  border-radius:20px;
  overflow:hidden;
  background:var(--sand-2);
  /* efeito de profundidade: sombra + offset decorativo */
  box-shadow:0 2px 40px rgba(26,25,23,0.1);
}
/* Detalhe decorativo atrás da foto */
.fim-photo-frame::before{
  content:'';
  position:absolute;
  inset:-12px -12px auto auto;
  width:60%;height:60%;
  border:2px solid var(--rose-pale);
  border-radius:16px;
  z-index:0;pointer-events:none;
}
.fim-photo-frame img{
  width:100%;
  display:block;
  object-fit:cover;
  object-position:top center;
  position:relative;z-index:1;
  max-height:600px;
}

/* Texto */
.fim-text .s-title{margin-top:0}
.fim-text .s-lead{margin-bottom:1.5rem}

/* Quote */
.fim-quote{
  background:var(--sand-2);
  border-left:3px solid var(--rose-2);
  border-radius:0 12px 12px 0;
  padding:1.1rem 1.35rem;
  margin:1.25rem 0;
}
.fim-quote p{
  font-size:0.85rem;
  color:var(--ink-2);
  font-style:italic;
  line-height:1.8;
  letter-spacing:-0.01em;
}

/* Checklist */
.fim-checks{
  list-style:none;
  display:flex;flex-direction:column;
  gap:10px;
  margin-bottom:1.75rem;
}
.fim-checks li{
  display:flex;align-items:center;gap:10px;
  font-size:0.84rem;color:var(--ink-2);
  letter-spacing:-0.01em;line-height:1.5;
}

/* Botões */
.fim-actions{display:flex;gap:10px;flex-wrap:wrap}

/* responsive */
@media(max-width:1024px){
  .fim-grid{grid-template-columns:1fr;gap:2.5rem}
  .fim-photo-frame img{max-height:420px}
}
@media(max-width:640px){
  .fim-photo-frame img{max-height:320px}
  .fim-actions{flex-direction:column}
  .fim-actions .btn{justify-content:center}
}

/* ── COMO FUNCIONA — layout texto esquerda + foto direita ── */
.cf-section{
  padding:clamp(4rem,7vw,7rem) 0;
  background:#fff;
  position:relative;z-index:1;
}
.cf-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(3rem,6vw,6rem);
  align-items:center;
}

/* Steps — 3 colunas lado a lado */
.cf-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--border);
  border:1px solid var(--border);
  border-radius:12px;
  overflow:hidden;
  margin:1.75rem 0;
}
.cf-step{
  background:#fff;
  padding:1.25rem;
}
.cf-num{
  display:block;
  font-family:'Geist Mono',monospace;
  font-size:0.62rem;color:var(--muted-2);
  letter-spacing:0.04em;margin-bottom:0.6rem;
}
.cf-step h4{
  font-size:0.82rem;font-weight:600;
  color:var(--ink);letter-spacing:-0.02em;
  margin-bottom:0.4rem;line-height:1.3;
}
.cf-step p{
  font-size:0.75rem;color:var(--muted);
  line-height:1.7;letter-spacing:-0.01em;
}

/* Foto direita */
.cf-photo-wrap{
  position:relative;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 4px 40px rgba(26,25,23,0.1);
  background:var(--sand);
}
.cf-photo-wrap img{
  width:100%;display:block;
  object-fit:cover;object-position:center;
  max-height:520px;
}
/* Badge flutuante */
.cf-photo-badge{
  position:absolute;
  bottom:18px;left:18px;right:18px;
  background:rgba(250,250,249,0.92);
  backdrop-filter:blur(12px);
  border:1px solid var(--border-2);
  border-radius:10px;
  padding:10px 15px;
  font-size:0.72rem;color:var(--muted);
  letter-spacing:-0.01em;
  display:flex;align-items:center;gap:8px;
}
.cf-badge-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--rose);flex-shrink:0;
}

/* responsive */
@media(max-width:1024px){
  .cf-grid{grid-template-columns:1fr;gap:2.5rem}
  .cf-photo-wrap img{max-height:400px}
}
@media(max-width:640px){
  .cf-steps{grid-template-columns:1fr}
  .cf-photo-wrap img{max-height:320px}
}

/* ── CTA ROSA ── */
.cta-rose-section{
  background:#F5E3DF;
  padding:clamp(3.5rem,6vw,5rem) 0;
  text-align:center;
  position:relative;z-index:1;
}
.cta-rose-title{
  font-size:clamp(1.5rem,2.8vw,2.4rem);
  font-weight:700;color:var(--ink);
  letter-spacing:-0.035em;line-height:1.2;
  max-width:680px;margin:0 auto 1rem;
}
.cta-rose-sub{
  font-size:0.9rem;color:var(--muted);
  line-height:1.75;letter-spacing:-0.01em;
  max-width:480px;margin:0 auto 2rem;
}

/* ── SITUAÇÕES COMUNS — fundo escuro, dois lados ── */
.sint-section{
  background:var(--ink-2);
  position:relative;z-index:1;
  overflow:hidden;
}
.sint-inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:560px;
}

/* Lado esquerdo — texto grande escuro */
.sint-left{
  padding:clamp(3.5rem,7vw,6rem) clamp(2rem,4vw,4.5rem) clamp(3.5rem,7vw,6rem) clamp(1.25rem,5vw,5rem);
  display:flex;flex-direction:column;justify-content:center;
  border-right:1px solid rgba(255,255,255,0.06);
  background:var(--ink-2);
}
.sint-headline{
  font-size:clamp(1.75rem,3.2vw,3rem);
  font-weight:700;
  color:#FFF4EE;
  letter-spacing:-0.04em;
  line-height:1.1;
  margin-bottom:1.25rem;
}
.sint-body{
  font-size:0.88rem;
  color:rgba(255,240,232,0.48);
  line-height:1.8;
  letter-spacing:-0.01em;
  max-width:380px;
}

/* Lado direito — cards */
.sint-right{
  padding:clamp(2.5rem,5vw,4rem) clamp(2rem,4vw,4rem);
  display:flex;flex-direction:column;
  justify-content:center;gap:0;
  background:rgba(255,255,255,0.02);
}
.sint-card{
  display:flex;align-items:flex-start;gap:14px;
  padding:1.4rem 0;
  border-bottom:1px solid rgba(255,255,255,0.07);
}
.sint-card:last-child{border:none}
.sint-icon{
  width:36px;height:36px;flex-shrink:0;
  border-radius:9px;
  background:rgba(181,130,122,0.15);
  border:1px solid rgba(181,130,122,0.2);
  display:flex;align-items:center;justify-content:center;
  color:var(--rose-2);
  margin-top:2px;
}
.sint-title{
  font-size:0.86rem;font-weight:600;
  color:#FFF4EE;letter-spacing:-0.02em;
  line-height:1.3;margin-bottom:0.4rem;
}
.sint-desc{
  font-size:0.78rem;
  color:rgba(255,240,232,0.42);
  line-height:1.72;letter-spacing:-0.01em;
}

/* responsive */
@media(max-width:1024px){
  .sint-inner{grid-template-columns:1fr}
  .sint-left{border-right:none;border-bottom:1px solid rgba(255,255,255,0.06);padding-bottom:2.5rem}
  .sint-body{max-width:100%}
}
@media(max-width:640px){
  .sint-left{padding:2.5rem 1.25rem}
  .sint-right{padding:2rem 1.25rem}
}

/* Instagram nav */
.nav-ig{
  display:inline-flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:8px;
  color:var(--muted);text-decoration:none;
  transition:all 0.2s;border:1px solid transparent;
}
.nav-ig:hover{color:var(--ink);background:var(--sand-2);border-color:var(--border-2)}
@media(max-width:1024px){.nav-ig{display:none}}

/* ── DIFERENCIAL FUNDO CLARO ── */
.dif-light-section{
  background:var(--cream);
  padding:clamp(4rem,7vw,6rem) 0;
  position:relative;z-index:1;
}

/* Header: título esquerda + texto direita */
.dif-light-header{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3rem;
  align-items:flex-end;
  margin-bottom:2.5rem;
}

/* 3 cards em linha */
.dif-light-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--border-2);
  border:1px solid var(--border-2);
  border-radius:16px;
  overflow:hidden;
  margin-bottom:16px;
}
.dif-light-card{
  background:#fff;
  padding:1.75rem;
  transition:background 0.2s;
  display:flex;flex-direction:column;gap:0;
}
.dif-light-card:hover{background:var(--rose-faint)}
.dif-light-num{
  font-family:'Geist Mono',monospace;
  font-size:0.64rem;font-weight:500;
  color:var(--muted-2);letter-spacing:0.04em;
  margin-bottom:1.1rem;display:block;
}
.dif-light-icon{
  width:38px;height:38px;border-radius:9px;
  background:var(--rose-faint);
  border:1px solid var(--rose-pale);
  display:flex;align-items:center;justify-content:center;
  color:var(--rose);margin-bottom:1rem;
}
.dif-light-card h3{
  font-size:0.88rem;font-weight:600;
  color:var(--ink);letter-spacing:-0.025em;
  margin-bottom:0.55rem;line-height:1.3;
}
.dif-light-card p{
  font-size:0.78rem;color:var(--muted);
  line-height:1.75;letter-spacing:-0.01em;
}

/* Quote bar */
.dif-light-bar{
  background:var(--sand-2);
  border:1px solid var(--border-2);
  border-radius:14px;
  padding:1.75rem 2rem;
  display:flex;align-items:center;
  justify-content:space-between;
  gap:2rem;flex-wrap:wrap;
}
.dif-light-quote{
  font-size:clamp(0.95rem,1.6vw,1.3rem);
  font-weight:600;color:var(--ink);
  letter-spacing:-0.03em;line-height:1.3;
}
.dif-light-quote span{color:var(--rose)}
.dif-light-btn{flex-shrink:0}

/* responsive */
@media(max-width:1024px){
  .dif-light-header{grid-template-columns:1fr;gap:1.25rem}
  .dif-light-cards{grid-template-columns:1fr 1fr}
  .dif-light-bar{flex-direction:column;align-items:flex-start;gap:1.25rem}
}
@media(max-width:640px){
  .dif-light-cards{grid-template-columns:1fr}
  .dif-light-bar{padding:1.25rem}
  .dif-light-btn{width:100%;justify-content:center}
}

/* ── GALERIA CONSULTÓRIO ── */
.gallery-section{
  background:#fff;
  padding:clamp(4rem,7vw,6rem) 0 0;
  position:relative;z-index:1;
}
.gallery-header{
  text-align:center;
  max-width:600px;
  margin:0 auto clamp(2rem,4vw,3rem);
}
.gallery-title{
  font-size:clamp(1.75rem,3.2vw,2.75rem);
  font-weight:700;color:var(--ink);
  letter-spacing:-0.035em;line-height:1.1;
  margin:0.6rem 0 0.9rem;
}
.gallery-desc{
  font-size:0.88rem;color:var(--muted);
  line-height:1.8;letter-spacing:-0.01em;
}

/* Slider wrapper */
.gs-wrap{
  position:relative;
  background:#2A1410;
  overflow:hidden;
  margin-bottom:0;
}
.gs-track{
  position:relative;
  height:clamp(320px,52vw,600px);
}
.gs-slide{
  position:absolute;inset:0;
  opacity:0;transition:opacity 0.5s ease;
  display:flex;align-items:center;justify-content:center;
}
.gs-slide.active{opacity:1}
.gs-slide img{
  width:100%;height:100%;
  object-fit:cover;object-position:center;
}

/* Prev / Next */
.gs-btn{
  position:absolute;top:50%;transform:translateY(-50%);
  z-index:10;
  width:44px;height:44px;border-radius:50%;
  background:rgba(255,240,232,0.1);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,240,232,0.2);
  color:#FFF4EE;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:all 0.2s;
}
.gs-btn:hover{background:rgba(250,250,249,0.25)}
.gs-prev{left:20px}
.gs-next{right:20px}

/* Caption + contador */
.gs-overlay{
  position:absolute;bottom:0;left:0;right:0;
  padding:14px 22px;
  background:linear-gradient(to top,rgba(26,25,23,0.7) 0%,transparent 100%);
  display:flex;align-items:flex-end;justify-content:space-between;
  z-index:5;
}
.gs-caption{
  font-size:0.65rem;font-weight:600;
  color:rgba(255,240,232,0.75);
  letter-spacing:0.1em;text-transform:uppercase;
}
.gs-count{
  font-family:'Geist Mono',monospace;
  font-size:0.7rem;color:rgba(255,240,232,0.5);
  letter-spacing:0.04em;
}

/* Miniaturas */
.gs-thumbs{
  display:flex;gap:0;
  background:#2E1612;
  padding:10px 10px;
  overflow-x:auto;
  scrollbar-width:none;
  justify-content:center;
  flex-wrap:wrap;
}
.gs-thumbs::-webkit-scrollbar{display:none}
.gs-thumb{
  width:calc(100% / 12 - 8px);
  min-width:64px;
  max-width:100px;
  aspect-ratio:4/3;
  border-radius:6px;
  overflow:hidden;
  cursor:pointer;
  border:2px solid transparent;
  transition:all 0.2s;
  background:none;padding:0;flex-shrink:0;
  margin:2px;
}
.gs-thumb img{
  width:100%;height:100%;
  object-fit:cover;
  opacity:0.5;transition:opacity 0.2s;
}
.gs-thumb.active{border-color:var(--rose-2)}
.gs-thumb.active img,.gs-thumb:hover img{opacity:1}

@media(max-width:640px){
  .gs-thumb{min-width:60px}
  .gs-btn{width:36px;height:36px}
}

/* ── FORMAÇÃO & AUTORIDADE ── */
.autoridade-section{
  background:#fff;
  padding:clamp(4rem,7vw,6rem) 0 clamp(3rem,5vw,4.5rem);
  position:relative;z-index:1;
}

/* Header dois lados */
.auto-header{
  display:grid;
  grid-template-columns:1fr 1.6fr;
  gap:clamp(2.5rem,5vw,5rem);
  align-items:start;
  margin-bottom:clamp(2.5rem,5vw,4rem);
}

/* Título grande esquerda */
.auto-title{
  font-size:clamp(2.5rem,5vw,5rem);
  font-weight:700;color:var(--ink);
  letter-spacing:-0.045em;line-height:1.0;
  margin:0.6rem 0 0;
}

/* 3 fotos mesma altura */
.auto-photos{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.auto-photo{
  border-radius:14px;
  overflow:hidden;
  height:360px;
  background:var(--sand);
}
.auto-photo img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transition:transform 0.4s var(--ease);
}
.auto-photo:hover img{transform:scale(1.03)}

/* responsive */
@media(max-width:1024px){
  .auto-header{grid-template-columns:1fr;gap:1.75rem}
  .auto-title{font-size:clamp(2.2rem,6vw,3.5rem)}
  .auto-photos{grid-template-columns:1fr 1fr}
  .auto-photo:last-child{display:none}
}
@media(max-width:640px){
  .auto-photos{grid-template-columns:1fr}
  .auto-photo{height:260px}
  .auto-photo:last-child{display:block}
}

/* ── CTA DECISÃO — fundo rosa ── */
.decisao-section{
  background:#F5E3DF;
  padding:clamp(3rem,5vw,5rem) 0;
  text-align:center;
  position:relative;
  z-index:1;
  overflow:hidden;
  isolation:isolate;
}
/* Foto de fundo com efeito multiply */
.decisao-section::before{
  content:'';
  position:absolute;
  inset:0;
  background-image:url('clinic-bg.jpg');
  background-size:cover;
  background-position:center 40%;
  mix-blend-mode:multiply;
  opacity:0.28;
  z-index:0;
}
/* Conteúdo na frente */
.decisao-section .container{
  position:relative;
  z-index:2;
}
.decisao-title{
  font-size:clamp(2rem,5vw,4.5rem);
  font-weight:700;
  color:var(--ink);
  letter-spacing:-0.045em;
  line-height:1.08;
  max-width:700px;
  margin:0 auto 1.25rem;
}
.decisao-desc{
  font-size:clamp(0.88rem,1.1vw,1rem);
  color:var(--muted);
  line-height:1.8;
  letter-spacing:-0.01em;
  max-width:520px;
  margin:0 auto 2.75rem;
}
/* Botão grande pílula igual ao print */
.decisao-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:var(--wa);
  color:#fff;
  font-family:'Geist',sans-serif;
  font-size:0.82rem;
  font-weight:600;
  letter-spacing:0.06em;
  text-transform:uppercase;
  padding:18px 40px;
  border-radius:100px;
  text-decoration:none;
  border:none;cursor:pointer;
  transition:all 0.25s var(--ease);
  box-shadow:0 4px 24px rgba(37,211,102,0.25);
}
.decisao-btn:hover{
  background:var(--wa-dark);
  transform:translateY(-2px);
  box-shadow:0 8px 32px rgba(37,211,102,0.35);
}

@media(max-width:640px){
  .decisao-btn{
    width:90%;
    justify-content:center;
    padding:16px 24px;
  }
}

/* ── FOOTER NOVO ── */
.footer-new{
  background:#fff;
  border-top:1px solid var(--border-2);
  position:relative;z-index:1;
}

/* Grid 4 colunas */
.fn-main{padding:clamp(2.5rem,4vw,3.5rem) 0 clamp(1.5rem,3vw,2.5rem)}
.fn-grid{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr 1.2fr;
  gap:clamp(2rem,4vw,4rem);
  align-items:start;
}

/* Col brand */
.fn-logo{margin-bottom:1.1rem}
.fn-tagline{
  font-size:0.78rem;
  color:rgba(255,244,238,0.38);
  line-height:1.75;letter-spacing:-0.01em;
  margin-bottom:1.25rem;
  max-width:280px;
}
.fn-address{
  display:flex;align-items:flex-start;gap:8px;
  font-size:0.73rem;color:var(--muted-2);
  line-height:1.65;letter-spacing:-0.01em;
}
.fn-address svg{color:var(--muted-2)}

/* Títulos das colunas */
.fn-col-title{
  font-size:0.82rem;
  font-weight:600;
  font-style:italic;
  color:var(--ink);
  letter-spacing:-0.01em;
  margin-bottom:1rem;
}

/* Links */
.fn-links{list-style:none;display:flex;flex-direction:column;gap:8px}
.fn-links a{
  font-size:0.76rem;
  color:var(--muted);
  text-decoration:none;
  letter-spacing:-0.01em;
  transition:color 0.2s;
  line-height:1.4;
}
.fn-links a:hover{color:var(--ink)}

/* Redes sociais */
.fn-social{margin-top:1.5rem}
.fn-social-label{
  font-size:0.6rem;font-weight:600;
  color:var(--muted-2);
  letter-spacing:0.1em;text-transform:uppercase;
  margin-bottom:0.75rem;
}
.fn-social-icons{display:flex;gap:8px;flex-wrap:wrap}
.fn-social-btn{
  width:36px;height:36px;border-radius:9px;
  border:1px solid var(--border-2);
  display:flex;align-items:center;justify-content:center;
  color:var(--muted);text-decoration:none;
  transition:all 0.2s;
}
.fn-social-btn:hover{
  border-color:var(--rose-pale);
  color:var(--rose);
  background:rgba(255,255,255,0.06);
}

/* Barra inferior */
.fn-bottom{
  border-top:1px solid var(--border-2);
  padding:1.25rem 0;
}
.fn-bottom-inner{
  display:flex;align-items:center;
  justify-content:center;
  text-align:center;
  flex-wrap:wrap;gap:0.5rem;
}
.fn-bottom-inner span{
  font-size:0.68rem;color:rgba(255,244,238,0.2);letter-spacing:-0.01em;
}
.fn-bottom-links{display:flex;gap:1.25rem}
.fn-bottom-links a{
  font-size:0.68rem;color:var(--muted-2);
  text-decoration:none;letter-spacing:-0.01em;transition:color 0.2s;
}
.fn-bottom-links a:hover{color:var(--ink)}

/* responsive */
@media(max-width:1024px){
  .fn-grid{grid-template-columns:1fr 1fr;row-gap:2.5rem}
  .fn-col-brand{grid-column:1/-1}
  .fn-tagline{max-width:100%}
}
@media(max-width:640px){
  .fn-grid{grid-template-columns:1fr}
  .fn-col-brand{grid-column:auto}
  .fn-bottom-inner{flex-direction:column;align-items:flex-start}
}


/* ════════════════════════════════════════════════
   REVISÃO COMPLETA MOBILE & TABLET
   ════════════════════════════════════════════════ */

/* ── TABLET ≤1024px ── */
@media(max-width:1024px){

  /* NAV */
  nav{height:72px}
  .page-top{padding-top:72px}
  .nav-links a:not(.nav-cta){display:none!important}
  .nav-cta{display:flex!important}
  .hamburger{display:flex}

  /* HERO */
  .hero-new{min-height:auto;padding-top:0}
  .hero-marquee-wrap{top:0;transform:none;height:100%}
  .hero-marquee-track span{font-size:clamp(3.5rem,9vw,8rem)}
  .hero-new-photo{max-width:480px}

  /* SPEC BAR */
  .spec-bar-inner{justify-content:flex-start;padding:0 1rem}
  .spec-item{padding:11px 12px;font-size:0.64rem}

  /* RONCO */
  .ronco-inner{grid-template-columns:1fr}
  .ronco-img{height:320px;position:relative;overflow:hidden}
  .ronco-img img{position:static;width:100%;height:320px;object-fit:cover;object-position:top}
  .ronco-content{padding:2.5rem 1.5rem}

  /* DEPOIMENTOS */
  .testi-layout{grid-template-columns:1fr;gap:2.5rem}
  .testi-left{position:static}
  .testi-grid{grid-template-columns:1fr 1fr}

  /* O QUE FAZEMOS */
  .svc2-grid{grid-template-columns:1fr 1fr}
  .svc2-header{max-width:100%}

  /* FIM DO SINTOMA */
  .fim-grid{grid-template-columns:1fr;gap:2.5rem}
  .fim-photo-frame img{max-height:420px}

  /* COMO FUNCIONA */
  .cf-grid{grid-template-columns:1fr;gap:2.5rem}
  .cf-steps{grid-template-columns:1fr 1fr 1fr}
  .cf-photo-wrap img{max-height:340px}

  /* SITUAÇÕES ESCURO */
  .sint-inner{grid-template-columns:1fr}
  .sint-left{border-right:none;border-bottom:1px solid rgba(255,255,255,0.06);padding:2.5rem 1.5rem}
  .sint-right{padding:2rem 1.5rem}
  .sint-body{max-width:100%}

  /* DIFERENCIAL CLARO */
  .dif-light-header{grid-template-columns:1fr;gap:1.25rem;align-items:flex-start}
  .dif-light-cards{grid-template-columns:1fr 1fr}
  .dif-light-bar{flex-direction:column;align-items:flex-start;gap:1.25rem}

  /* GALERIA */
  .gs-track{height:380px}

  /* AUTORIDADE */
  .auto-header{grid-template-columns:1fr;gap:1.75rem}
  .auto-title{font-size:clamp(2.5rem,7vw,4rem)}
  .auto-photos{grid-template-columns:1fr 1fr;gap:10px}
  .auto-photo{height:280px}
  .auto-photo:last-child{display:none}

  /* FOOTER */
  .fn-grid{grid-template-columns:1fr 1fr;row-gap:2.5rem}
  .fn-col-brand{grid-column:1/-1}
}

/* ── MOBILE ≤640px ── */
@media(max-width:640px){

  /* GERAL */
  body{font-size:100%}
  .section{padding:3rem 0}
  .container{padding:0 1.25rem}

  /* NAV */
  nav{height:64px}
  .page-top{padding-top:64px}
  .nav-logo img{height:44px}
  .nav-links{
    top:64px!important;
    padding:1rem 1.25rem 1.5rem;
  }
  .nav-links a{
    display:flex!important;
    padding:13px 14px;
    font-size:0.9rem;
    color:var(--ink)!important;
  }
  .nav-cta{
    margin-left:0!important;
    margin-top:6px;
    justify-content:center;
  }

  /* HERO */
  .hero-new{min-height:calc(100svh - 64px)}
  .hero-marquee-track span{font-size:clamp(2.4rem,8.5vw,5rem);line-height:0.92}
  .hero-new-photo{max-width:100%;padding:0 1.25rem}
  .hero-new-photo img{border-radius:0}

  /* SPEC BAR */
  .spec-bar-inner{
    justify-content:center;
    flex-wrap:wrap;
    padding:4px 0.75rem;
    gap:0;
  }
  .spec-item{
    padding:9px 10px;
    font-size:0.6rem;
  }
  .spec-sep{padding:9px 4px}

  /* RONCO */
  .ronco-content{padding:2rem 1.25rem}
  .ronco-img{height:260px}
  .ronco-img img{height:260px}
  .ronco-h2{font-size:clamp(1.7rem,6.5vw,2.5rem)}
  .ronco-exams{gap:6px}
  .exam-chip{font-size:0.68rem;padding:5px 10px}

  /* DEPOIMENTOS */
  .testi-grid{grid-template-columns:1fr}
  .testi-left .s-title{text-align:center}
  .testi-left .tag{display:flex;justify-content:center}
  .testi-left .s-lead{text-align:center}
  .testi-left{text-align:center}
  .testi-left .btn{margin:0 auto}

  /* GOOGLE REVIEWS */
  .gr-grid{grid-template-columns:1fr}
  .gr-header{margin-bottom:2rem}
  .gr-title{font-size:clamp(1.6rem,7vw,2.4rem)}
  .gr-badge-text{font-size:0.65rem}

  /* O QUE FAZEMOS */
  .svc2-section{padding:3rem 0 2.5rem}
  .svc2-grid{grid-template-columns:1fr;gap:12px}
  .svc2-img{height:160px}
  .svc2-header{margin-bottom:2rem}
  .svc2-header .gr-title{font-size:clamp(1.6rem,7vw,2.4rem)}
  .curve-divider svg{height:40px}

  /* FIM DO SINTOMA */
  .fim-section{padding:3rem 0}
  .fim-grid{gap:2rem}
  .fim-photo-frame img{max-height:280px}
  .fim-photo-frame::before{display:none}
  .fim-actions{flex-direction:column;align-items:stretch}
  .fim-actions .btn{justify-content:center}
  .fim-quote p{font-size:0.82rem}

  /* COMO FUNCIONA */
  .cf-section{padding:3rem 0}
  .cf-steps{grid-template-columns:1fr}
  .cf-step{border-right:none;border-bottom:1px solid var(--border)}
  .cf-photo-wrap img{max-height:260px}
  .cf-photo-badge{font-size:0.68rem}

  /* CTA ROSA */
  .cta-rose-section{padding:3rem 0}
  .cta-rose-title{font-size:clamp(1.4rem,6vw,2rem)}

  /* SITUAÇÕES ESCURO */
  .sint-section{}
  .sint-left{padding:2rem 1.25rem}
  .sint-right{padding:1.75rem 1.25rem}
  .sint-headline{font-size:clamp(1.6rem,6.5vw,2.4rem)}
  .sint-card{padding:1.1rem 0;gap:12px}
  .sint-icon{width:32px;height:32px}

  /* DIFERENCIAL CLARO */
  .dif-light-section{padding:3rem 0}
  .dif-light-header{gap:1rem}
  .dif-light-cards{grid-template-columns:1fr}
  .dif-light-bar{padding:1.25rem;gap:1rem}
  .dif-light-bar .btn{width:100%;justify-content:center}
  .dif-light-quote{font-size:0.95rem}

  /* GALERIA */
  .gallery-section{padding:3rem 0 0}
  .gallery-header{margin-bottom:1.75rem}
  .gs-track{height:240px}
  .gs-thumb{min-width:52px}
  .gs-btn{width:34px;height:34px}
  .gs-thumbs{padding:6px}

  /* AUTORIDADE */
  .autoridade-section{padding:3rem 0 0}
  .auto-header{gap:1.5rem}
  .auto-title{font-size:clamp(2.2rem,9vw,3.5rem)}
  .auto-photos{grid-template-columns:1fr 1fr;gap:8px}
  .auto-photo{height:180px}
  .auto-photo:last-child{display:block}
  .auto-photos{grid-template-columns:1fr 1fr}

  /* DECISÃO CTA */
  .decisao-section{padding:3rem 0}
  .decisao-title{font-size:clamp(1.75rem,7vw,3rem)}
  .decisao-desc{font-size:0.88rem;padding:0 0.5rem}
  .decisao-btn{width:90%;justify-content:center;font-size:0.75rem;padding:15px 20px}

  /* FOOTER */
  .fn-grid{grid-template-columns:1fr;row-gap:2rem}
  .fn-col-brand{grid-column:auto}
  .fn-tagline{max-width:100%}
  .fn-bottom-inner{flex-direction:column;align-items:flex-start;gap:0.75rem}
  .fn-bottom-links{flex-wrap:wrap;gap:1rem}

  /* TEXTOS CENTRALIZADOS NO MOBILE */
  .tag{margin-left:auto;margin-right:auto}
  .s-title,.s-lead{text-align:center}
  .section-head,.gr-header,.gallery-header,.svc2-header,.depo-section-head{text-align:center}
  .section-head .tag,.gr-header .tag,.gallery-header .tag{justify-content:center}
  .dif-light-header .s-title,.dif-light-header .s-lead{text-align:center}

  /* excluir textos que NÃO devem ser centralizados */
  .fim-text .s-title,.fim-text .s-lead,
  .ronco-content .ronco-h2,.ronco-content .ronco-sub,
  .sint-left .sint-headline,.sint-left .sint-body,
  .cf-text .s-title,.cf-text .s-lead,
  .auto-left .auto-title,
  .fn-col h4,.fn-links,.fn-tagline,.fn-address,
  .tc-text,.tc-name,.tc-role,
  .gr-text,.gr-name,.gr-meta,
  .epanel h3,.epanel p,.elist li,
  .tl-item,.philosophy,.fim-quote p,
  .cred-list li{
    text-align:left!important;
  }
}


/* ── RONCO MOBILE — imagem completa ── */
@media(max-width:640px){
  .ronco-inner{grid-template-columns:1fr}
  .ronco-img{
    height:auto!important;
    min-height:280px;
    position:relative;
    overflow:hidden;
  }
  .ronco-img img{
    position:static!important;
    width:100%;
    height:auto!important;
    max-height:none!important;
    object-fit:cover;
    object-position:top;
    display:block;
  }
}

/* ── GOOGLE REVIEW BAR ── */
.gr-google-bar{
  display:flex;flex-direction:column;align-items:center;
  gap:8px;margin-bottom:2rem;
}
.gr-google-btn{
  display:inline-flex;align-items:center;gap:9px;
  background:#fff;border:1.5px solid rgba(66,133,244,0.3);
  border-radius:100px;padding:10px 22px;
  font-size:0.78rem;font-weight:500;color:#3C4043;
  text-decoration:none;
  transition:all 0.2s;
  box-shadow:0 1px 6px rgba(0,0,0,0.08);
}
.gr-google-btn:hover{
  border-color:rgba(66,133,244,0.6);
  box-shadow:0 2px 12px rgba(66,133,244,0.15);
  transform:translateY(-1px);
}
.gr-google-note{
  font-size:0.68rem;color:var(--muted-2);
  letter-spacing:-0.01em;text-align:center;
}

/* ── HERO MOBILE: foto colada ao menu, sem espaço ── */
@media(max-width:640px){
  .hero-new{
    min-height:0;
    height:auto;
    display:block;
    position:relative;
    overflow:hidden;
  }
  .hero-new-glow-a,
  .hero-new-glow-b{ display:none }
  .hero-marquee-wrap{
    position:absolute;
    top:0;left:0;right:0;bottom:0;
    pointer-events:none;
    z-index:3;
  }
  .hero-new-photo{
    position:relative;
    z-index:2;
    width:100%;
    max-width:100%;
    margin:0;
    display:block;
  }
  .hero-new-photo img{
    width:100%;
    height:auto;
    display:block;
    border-radius:0;
    filter:none;
  }
}

/* ── FIM DO SINTOMA: foto completa no mobile ── */
@media(max-width:640px){
  .fim-photo-frame{
    border-radius:16px;
    overflow:hidden;
  }
  .fim-photo-frame img{
    max-height:none!important;
    height:auto!important;
    width:100%;
    object-fit:cover;
    object-position:top center;
    display:block;
  }
  .fim-photo-frame::before{ display:none }
}

/* ── HERO MOBILE: foto na frente do texto ── */
@media(max-width:640px){
  .hero-marquee-wrap{ z-index:1 }
  .hero-new-photo{ z-index:4 }
}

/* ── O QUE FAZEMOS — CAROUSEL HORIZONTAL NO MOBILE ── */
@media(max-width:640px){
  /* Remover o padding lateral do container para a galeria sangrar */
  .svc2-section .container{
    padding-right:0;
    overflow:hidden;
  }
  /* Header mantém padding */
  .svc2-header{
    padding-right:1.25rem;
  }
  /* Grid vira scroll horizontal */
  .svc2-grid{
    display:flex;
    flex-direction:row;
    gap:12px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    padding:0 1.25rem 1rem;
    scrollbar-width:none;
    grid-template-columns:none;
    /* peek: último card mostra que tem mais */
    padding-right:calc(1.25rem + 60px);
  }
  .svc2-grid::-webkit-scrollbar{display:none}

  /* Cada card: largura fixa pra mostrar o próximo */
  .svc2-card{
    flex:0 0 72vw;
    min-width:72vw;
    scroll-snap-align:start;
    border-radius:16px;
  }
  /* Imagem mais alta para parecer galeria */
  .svc2-img{
    height:220px;
  }

  /* CTA mantém padding normal */
  .svc2-cta{
    padding:0 1.25rem;
  }

  /* Indicador de scroll — pequenos pontos */
  .svc2-dots{
    display:flex;
    justify-content:center;
    gap:6px;
    margin:0.75rem 0 0.25rem;
  }
  .svc2-dot{
    width:5px;height:5px;border-radius:50%;
    background:var(--rose-pale);transition:background 0.2s;
  }
  .svc2-dot.active{background:var(--rose)}
}

/* Desktop/tablet — dots não aparecem */
@media(min-width:641px){
  .svc2-dots{display:none}
}

/* ── FIX NAV MOBILE: menu hamburger e cor do CTA ── */
@media(max-width:640px){
  /* Menu fechado — container oculto */
  .nav-links{
    display:none!important;
    position:fixed;
    top:68px;left:0;right:0;
    background:rgba(250,250,249,0.98);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    flex-direction:column;
    padding:1rem 1.25rem 1.5rem;
    border-bottom:1px solid var(--border-2);
    gap:4px;
    z-index:9999;
    box-shadow:0 8px 24px rgba(0,0,0,0.1);
  }
  /* Menu aberto */
  .nav-links.open{
    display:flex!important;
  }
  /* Todos os links visíveis quando menu está aberto */
  .nav-links.open a,
  .nav-links.open li a{
    display:flex!important;
    width:100%;
    padding:13px 16px;
    font-size:0.9rem;
    border-radius:10px;
    color:var(--ink)!important;
    text-decoration:none;
  }
  /* CTA WhatsApp — fundo escuro, texto branco */
  .nav-links.open .nav-wa,
  .nav-links.open a.nav-cta{
    background:var(--ink)!important;
    color:#fff!important;
    margin-top:4px;
    justify-content:center;
    gap:8px;
  }
  .nav-links.open .nav-wa:hover,
  .nav-links.open a.nav-cta:hover{
    background:var(--rose)!important;
  }
  /* Ícone do Instagram no menu */
  .nav-links.open .nav-ig{
    width:100%;
    height:auto;
    border-radius:10px;
    padding:13px 16px;
    justify-content:flex-start;
    gap:10px;
    border:none;
  }
  .nav-links.open .nav-ig::after{
    content:'Instagram';
    font-size:0.9rem;
    color:var(--muted);
  }
}

/* ── SOBRE — Hero com imagem ao lado ── */
.page-banner-hero{
  background:var(--sand-2);
  padding:clamp(3.5rem,6vw,5rem) 0;
  border-bottom:1px solid var(--border-2);
}
.pbh-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(2.5rem,5vw,5rem);
  align-items:center;
}
.pbh-photo{
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 4px 40px rgba(26,16,8,0.1);
}
.pbh-photo img{
  width:100%;display:block;
  object-fit:cover;object-position:center;
  max-height:420px;
}
@media(max-width:768px){
  .pbh-grid{grid-template-columns:1fr;gap:2rem}
  .pbh-photo img{max-height:280px}
}

/* ── SOBRE — 6 passos no cf-steps ── */
/* Quando há 6 itens, manter 3 colunas */
.cf-steps .cf-step:nth-child(4),
.cf-steps .cf-step:nth-child(5),
.cf-steps .cf-step:nth-child(6){
  border-top:1px solid var(--border);
}

/* ── TRATAMENTOS — imagens de quebra ── */
.trat-img-break{
  border-radius:18px;
  overflow:hidden;
  position:relative;
  margin:2.5rem 0;
  box-shadow:0 4px 32px rgba(26,16,8,0.08);
}
.trat-img-break img{
  width:100%;display:block;
  height:clamp(260px,38vw,480px);
  object-fit:cover;object-position:center;
}
.tib-caption{
  position:absolute;
  bottom:0;left:0;right:0;
  padding:12px 20px;
  background:linear-gradient(to top,rgba(30,16,8,0.6) 0%,transparent 100%);
  font-size:0.68rem;font-weight:500;
  color:rgba(255,244,238,0.8);
  letter-spacing:0.06em;
  text-transform:uppercase;
}
.trat-img-full-section{
  background:#fff;
  padding:0 0 2rem;
}
@media(max-width:640px){
  .trat-img-break img{height:220px}
  .trat-img-break{margin:1.5rem 0}
}

/* ── CONTATO — imagens de quebra ── */
.ct-img-hero{
  position:relative;
  overflow:hidden;
  max-height:500px;
}
.ct-img-hero img{
  width:100%;
  height:clamp(280px,35vw,500px);
  object-fit:cover;
  object-position:center 30%;
  display:block;
}
.ct-img-caption{
  position:absolute;
  bottom:0;left:0;right:0;
  padding:12px 24px;
  background:linear-gradient(to top,rgba(30,16,8,0.55) 0%,transparent 100%);
  font-size:0.65rem;font-weight:600;
  color:rgba(255,244,238,0.8);
  letter-spacing:0.1em;text-transform:uppercase;
}
.ct-img-section{
  background:#fff;
  padding:0 0 0;
}
.ct-duo{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:2rem 0;
}
.ct-duo-img{
  border-radius:16px;
  overflow:hidden;
}
.ct-duo-img img{
  width:100%;
  height:clamp(220px,28vw,380px);
  object-fit:cover;
  object-position:center 20%;
  display:block;
  transition:transform 0.4s ease;
}
.ct-duo-img:hover img{transform:scale(1.03)}

@media(max-width:640px){
  .ct-img-hero img{height:220px}
  .ct-duo{grid-template-columns:1fr;gap:10px}
  .ct-duo-img img{height:220px}
}

/* ════════════════════════════════════════
   PÁGINAS INTERNAS — sistema unificado
   ════════════════════════════════════════ */

/* ── HERO PÁGINAS INTERNAS ── */
.ip-hero{padding:clamp(3.5rem,6vw,5.5rem) 0}
.ip-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,5vw,5rem);align-items:center}
.ip-hero-h1{font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:700;color:var(--ink);letter-spacing:-0.04em;line-height:1.05;margin:0.6rem 0 1rem}
.ip-hero-sub{font-size:clamp(0.88rem,1.1vw,1rem);color:var(--muted);line-height:1.75;letter-spacing:-0.01em;max-width:440px;margin-bottom:1.75rem}
.ip-hero-photo{border-radius:20px;overflow:hidden;box-shadow:0 8px 48px rgba(26,16,8,0.12)}
.ip-hero-photo img{width:100%;display:block;object-fit:cover;object-position:center 20%;height:clamp(320px,45vw,560px)}
.ip-hero-badges{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:1.75rem}
.ip-badge{background:#fff;border:1px solid var(--border-2);border-radius:10px;padding:10px 16px;display:flex;flex-direction:column;gap:2px}
.ip-badge-num{font-size:0.78rem;font-weight:700;color:var(--ink);letter-spacing:-0.02em}
.ip-badge-label{font-size:0.62rem;color:var(--muted-2);letter-spacing:0.02em;text-transform:uppercase}

/* ── FILOSOFIA ── */
.ip-filosofia{background:var(--ink-2);padding:clamp(3rem,5vw,4rem) 0}
.ip-filosofia-inner{max-width:720px;margin:0 auto;text-align:center}
.ip-filosofia-quote{font-size:clamp(1.1rem,2vw,1.6rem);font-weight:500;color:#FFF4EE;line-height:1.5;letter-spacing:-0.025em;margin-bottom:1rem;font-style:italic}
.ip-filosofia-attr{font-size:0.7rem;color:rgba(255,240,232,0.4);letter-spacing:0.08em;text-transform:uppercase}

/* ── FORMAÇÃO ── */
.ip-formacao{padding:clamp(4rem,6vw,5.5rem) 0}
.ip-formacao-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,5vw,6rem);align-items:start}
.ip-formacao-photo{border-radius:18px;overflow:hidden;position:relative;box-shadow:0 4px 32px rgba(26,16,8,0.1);align-self:stretch;display:flex;flex-direction:column}
.ip-formacao-photo img{width:100%;display:block;object-fit:cover;object-position:center 20%;height:100%;min-height:420px}
.ip-formacao-note{position:absolute;bottom:0;left:0;right:0;padding:12px 20px;background:linear-gradient(to top,rgba(30,16,8,0.6) 0%,transparent 100%);font-size:0.65rem;font-weight:600;color:rgba(255,244,238,0.8);letter-spacing:0.08em;text-transform:uppercase}
.ip-timeline{display:flex;flex-direction:column;gap:0}
.ip-tl{display:grid;grid-template-columns:80px 1fr;gap:1.25rem;padding:1.25rem 0;border-bottom:1px solid var(--border)}
.ip-tl:last-child{border:none}
.ip-tl-yr{font-family:'Geist Mono',monospace;font-size:0.68rem;font-weight:600;color:var(--muted-2);letter-spacing:0.03em;padding-top:3px}
.ip-tl.active .ip-tl-yr{color:var(--rose)}
.ip-tl-body h4{font-size:0.88rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;margin-bottom:3px}
.ip-tl-body p{font-size:0.78rem;color:var(--muted);line-height:1.65}
.ip-tl.active .ip-tl-body h4{color:var(--rose)}

/* ── COMO FUNCIONA (sobre) ── */
.ip-cf{background:var(--sand-2);padding:clamp(4rem,6vw,5.5rem) 0}
.ip-cf-header{text-align:left;max-width:100%;margin:0 0 clamp(2.5rem,4vw,3.5rem)}
.ip-cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,4vw,4rem);align-items:start}
.ip-cf-foto{
  border-radius:18px;overflow:hidden;
  position:sticky;top:88px;
  /* Altura = viewport menos nav */
  height:calc(100vh - 110px);
  max-height:680px;
  min-height:400px;
}
.ip-cf-foto img{
  width:100%;height:100%;
  object-fit:cover;object-position:center 20%;
  display:block;
}
.ip-cf-steps{display:flex;flex-direction:column;gap:0}
.ip-step{display:grid;grid-template-columns:36px 1fr;gap:1rem;padding:1.1rem 0;border-bottom:1px solid var(--border);align-items:start}
.ip-step:last-child{border:none}
.ip-step-n{font-family:'Geist Mono',monospace;font-size:0.62rem;color:var(--rose);font-weight:600;letter-spacing:0.02em;padding-top:3px}
.ip-step h4{font-size:0.86rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;margin-bottom:3px}
.ip-step p{font-size:0.77rem;color:var(--muted);line-height:1.7}

/* ── 3 FOTOS (sobre) ── */
.ip-photos{padding:clamp(3rem,5vw,4.5rem) 0}
.ip-photos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ip-photo{border-radius:14px;overflow:hidden;position:relative}
.ip-photo img{width:100%;display:block;object-fit:cover;height:clamp(220px,28vw,360px);transition:transform 0.4s ease}
.ip-photo:hover img{transform:scale(1.03)}
.ip-photo span{position:absolute;bottom:0;left:0;right:0;padding:10px 14px;background:linear-gradient(to top,rgba(30,16,8,0.55) 0%,transparent 100%);font-size:0.6rem;font-weight:600;color:rgba(255,244,238,0.8);letter-spacing:0.08em;text-transform:uppercase}

/* ── CHIPS ── */
.ip-chips-section{padding:clamp(3rem,5vw,4rem) 0}

/* ── TRAT FULL IMG ── */
.trat-full-img{position:relative;overflow:hidden;max-height:460px}
.trat-full-img img{width:100%;display:block;height:clamp(220px,32vw,460px);object-fit:cover;object-position:center 35%}
.tfi-overlay{position:absolute;bottom:0;left:0;right:0;padding:clamp(1.5rem,3vw,2.5rem) clamp(1.25rem,4vw,4rem);background:linear-gradient(to top,rgba(30,16,8,0.65) 0%,transparent 100%)}
.tfi-overlay.left{left:0;right:auto;width:60%}
.tfi-overlay p{font-size:clamp(1rem,2.2vw,1.75rem);font-weight:700;color:#FFF4EE;letter-spacing:-0.03em;line-height:1.2}
.tfi-overlay p span{color:rgba(255,244,238,0.6)}

/* ── CONDIÇÕES ── */
.ip-cond-section{padding:clamp(3.5rem,6vw,5rem) 0}
.ip-cond-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:1.5rem}
.ip-cond-card{background:var(--sand-2);border:1px solid var(--border-2);border-radius:16px;padding:1.75rem;transition:all 0.2s}
.ip-cond-card:hover{background:var(--rose-faint);border-color:var(--rose-pale)}
.ip-cond-icon{width:42px;height:42px;border-radius:10px;background:var(--rose-faint);border:1px solid var(--rose-pale);display:flex;align-items:center;justify-content:center;color:var(--rose);margin-bottom:1rem}
.ip-cond-card h3{font-size:0.9rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;margin-bottom:0.75rem}
.ip-cond-card ul{list-style:none;display:flex;flex-direction:column;gap:5px}
.ip-cond-card ul li{font-size:0.77rem;color:var(--muted);padding-left:12px;position:relative;line-height:1.5}
.ip-cond-card ul li::before{content:'';position:absolute;left:0;top:7px;width:4px;height:4px;border-radius:50%;background:var(--rose-2)}

/* ── DESTAQUE PEDIÁTRICA ── */
.ip-destaque{background:var(--rose-faint);padding:clamp(4rem,6vw,5.5rem) 0}
.ip-destaque-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,5vw,5rem);align-items:center}
.ip-destaque-photo{border-radius:20px;overflow:hidden;box-shadow:0 4px 32px rgba(26,16,8,0.1)}
.ip-destaque-photo img{width:100%;display:block;object-fit:cover;height:clamp(320px,40vw,500px);object-position:center 20%}
.ip-destaque-text span.tag{margin-bottom:0.75rem;display:inline-flex}
.ip-destaque-text h2{font-size:clamp(1.5rem,2.6vw,2.2rem);font-weight:700;color:var(--ink);letter-spacing:-0.035em;line-height:1.15;margin:0.6rem 0 1rem}
.ip-destaque-text p{font-size:0.88rem;color:var(--muted);line-height:1.8;margin-bottom:1.5rem}

/* ── ESPECIALIDADES ── */
.ip-esp-section{padding:clamp(3.5rem,6vw,5rem) 0}
.esp-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:2.5rem}
.esp-tab{display:inline-flex;align-items:center;gap:8px;background:var(--sand-2);border:1px solid var(--border-2);border-radius:100px;padding:10px 20px;font-family:'Geist',sans-serif;font-size:0.78rem;font-weight:500;color:var(--muted);cursor:pointer;transition:all 0.2s;letter-spacing:-0.01em}
.esp-tab:hover{background:var(--rose-faint);border-color:var(--rose-pale);color:var(--rose)}
.esp-tab.active{background:var(--ink-2);border-color:transparent;color:#FFF4EE}
.esp-tab.active .etab-dot{background:var(--rose-2)}
.etab-dot{width:6px;height:6px;border-radius:50%;background:var(--border-2);flex-shrink:0;transition:background 0.2s}
.esp-panel{display:none}
.esp-panel.active{display:block}
.esp-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,5vw,5rem);align-items:start}
.esp-panel-photo{border-radius:18px;overflow:hidden;position:relative;box-shadow:0 4px 28px rgba(26,16,8,0.1)}
.esp-panel-photo img{width:100%;display:block;object-fit:cover;height:clamp(280px,38vw,480px);object-position:center 25%}
.esp-panel-label{position:absolute;bottom:0;left:0;right:0;padding:10px 16px;background:linear-gradient(to top,rgba(30,16,8,0.55) 0%,transparent 100%);font-size:0.62rem;font-weight:600;color:rgba(255,244,238,0.8);letter-spacing:0.08em;text-transform:uppercase}
.esp-panel-content h3{font-size:clamp(1.2rem,2vw,1.6rem);font-weight:700;color:var(--ink);letter-spacing:-0.035em;line-height:1.2;margin-bottom:1rem}
.esp-panel-content p{font-size:0.86rem;color:var(--muted);line-height:1.8;letter-spacing:-0.01em}

/* ── CONTATO ── */
.ct-info-cards{display:flex;flex-direction:column;gap:10px;margin-bottom:1.75rem}
.ct-ic{display:flex;align-items:flex-start;gap:10px;font-size:0.8rem;color:var(--muted);line-height:1.6}
.ct-ic svg{flex-shrink:0;color:var(--rose);margin-top:3px}
.ct-main-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(2.5rem,5vw,5rem);align-items:start}
.ct-sidebar h2{font-size:1.5rem}
.ct-map-placeholder{background:var(--sand-2);border:1px solid var(--border-2);border-radius:14px;padding:2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:0.5rem}
.ct-map-placeholder p{font-size:0.8rem;color:var(--muted);line-height:1.7;margin:0}
.ct-social-box{margin-top:1.5rem}
.ct-social-box h4{font-size:0.82rem;font-weight:600;color:var(--ink);margin-bottom:1rem;letter-spacing:-0.02em}
.ct-social-links{display:flex;flex-direction:column;gap:10px}
.ct-sl{display:flex;align-items:center;gap:10px;font-size:0.78rem;color:var(--muted);text-decoration:none;padding:10px 14px;border-radius:10px;border:1px solid var(--border-2);transition:all 0.2s}
.ct-sl:hover{background:var(--rose-faint);border-color:var(--rose-pale);color:var(--rose)}

/* ── RESPONSIVO GLOBAL PÁGINAS INTERNAS ── */
@media(max-width:1024px){
  .ip-hero-grid,.ip-formacao-grid,.ip-cf-grid,.ip-destaque-grid,.esp-panel-grid,.ct-main-grid{grid-template-columns:1fr;gap:2.5rem}
  .ip-cf-foto{position:static}
  .ip-photos-grid{grid-template-columns:1fr 1fr}
  .ip-photo:last-child{display:none}
  .ip-cond-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .ip-hero-h1{font-size:clamp(2rem,9vw,3.2rem)}
  .ip-hero-badges{gap:8px}
  .ip-badge{padding:8px 12px}
  .ip-photos-grid{grid-template-columns:1fr 1fr}
  .ip-photo:last-child{display:block}
  .ip-photo img{height:160px}
  .ip-cond-grid{grid-template-columns:1fr}
  .tfi-overlay.left{width:100%}
  .esp-tabs{gap:6px}
  .esp-tab{font-size:0.72rem;padding:8px 14px}
  .ct-main-grid{grid-template-columns:1fr}
  .ip-timeline{gap:0}
  .ip-tl{grid-template-columns:60px 1fr}
}

/* ── ESPECIALIDADES — hero quick list ── */
.ip-esp-quick{
  display:flex;flex-wrap:wrap;gap:6px;margin-bottom:1.5rem;
}
.ip-esp-quick span{
  font-size:0.7rem;font-weight:500;color:var(--muted);
  background:rgba(255,255,255,0.7);
  border:1px solid var(--border-2);
  border-radius:100px;padding:5px 12px;
  letter-spacing:-0.01em;
}

/* ── FORMAÇÃO — grid alinha altura ── */
.ip-formacao-grid{align-items:stretch}

/* ── CF-HEADER dentro da coluna ── */
.ip-cf-header{margin-bottom:1.5rem}
.ip-cf-header .tag{margin-bottom:0.5rem;display:inline-flex}
.ip-cf-header .s-title{margin:0.5rem 0 0.75rem;font-size:clamp(1.5rem,2.8vw,2.2rem)}
.ip-cf-header .s-lead{margin:0 0 0}

/* ── TRATAMENTOS hero — título ajustado ── */
.tratamentos-hero-title{font-size:clamp(1.8rem,3.2vw,2.8rem)}

@media(max-width:640px){
  .ip-esp-quick{display:none}
}

/* ── TRATAMENTOS HERO — stats e nota ── */
.trat-hero-stats{
  display:flex;gap:16px;flex-wrap:wrap;
  margin-bottom:1.25rem;
  padding:1rem 1.25rem;
  background:#fff;
  border:1px solid var(--border-2);
  border-radius:14px;
}
.th-stat{display:flex;flex-direction:column;gap:2px}
.th-n{font-size:0.88rem;font-weight:700;color:var(--ink);letter-spacing:-0.02em}
.th-l{font-size:0.62rem;color:var(--muted-2);letter-spacing:0.03em;text-transform:uppercase}
.th-stat + .th-stat{
  padding-left:16px;
  border-left:1px solid var(--border-2);
}
.trat-hero-note{
  font-size:0.82rem;color:var(--muted);
  line-height:1.75;letter-spacing:-0.01em;
  border-left:3px solid var(--rose-pale);
  padding-left:14px;
  margin-bottom:1.5rem;
}

/* ── SOBRE cf-foto mobile ── */
@media(max-width:1024px){
  .ip-cf-foto{
    position:static;
    height:clamp(260px,45vw,400px);
    min-height:0;
  }
  .ip-cf-foto img{height:100%}
}
@media(max-width:640px){
  .trat-hero-stats{gap:12px}
  .th-stat + .th-stat{padding-left:12px}
}

/* ── COMO FUNCIONA (SOBRE) — novo layout ── */
.ip-cf{background:var(--sand-2);padding:clamp(4rem,6vw,5.5rem) 0}

/* Header dois lados */
.cf-new-header{
  display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(2rem,4vw,4rem);
  align-items:end;
  margin-bottom:clamp(2rem,3.5vw,3rem);
}
.cf-new-header-right{
  font-size:0.92rem;color:var(--muted);
  line-height:1.8;letter-spacing:-0.01em;
  max-width:360px;
  justify-self:end;
  padding-bottom:4px;
}

/* Imagem full-width arredondada */
.cf-new-img{
  position:relative;
  border-radius:20px;
  overflow:hidden;
  margin-bottom:clamp(1.5rem,2.5vw,2.5rem);
  box-shadow:0 4px 32px rgba(26,16,8,0.09);
}
.cf-new-img img{
  width:100%;display:block;
  height:clamp(220px,28vw,400px);
  object-fit:cover;
  object-position:center 35%;
}
.cf-new-img-badge{
  position:absolute;bottom:16px;left:20px;
  background:rgba(250,250,249,0.9);
  backdrop-filter:blur(10px);
  border:1px solid var(--border-2);
  border-radius:100px;
  padding:8px 16px;
  font-size:0.72rem;color:var(--muted);
  letter-spacing:-0.01em;
  display:flex;align-items:center;gap:7px;
}

/* Grid 2x3 */
.cf-new-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--border-2);
  border:1px solid var(--border-2);
  border-radius:18px;
  overflow:hidden;
}
.cf-new-card{
  background:#fff;
  padding:1.75rem;
  transition:background 0.2s;
}
.cf-new-card:hover{background:var(--rose-faint)}
.cf-new-num{
  display:block;
  font-family:'Geist Mono',monospace;
  font-size:0.62rem;font-weight:600;
  color:var(--rose);letter-spacing:0.04em;
  margin-bottom:0.9rem;
}
.cf-new-card h4{
  font-size:0.87rem;font-weight:600;
  color:var(--ink);letter-spacing:-0.025em;
  margin-bottom:0.5rem;line-height:1.3;
}
.cf-new-card p{
  font-size:0.77rem;color:var(--muted);
  line-height:1.75;letter-spacing:-0.01em;
}

@media(max-width:1024px){
  .cf-new-header{grid-template-columns:1fr}
  .cf-new-header-right{max-width:100%;justify-self:start}
  .cf-new-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .cf-new-grid{grid-template-columns:1fr}
  .cf-new-img img{height:200px}
  .cf-new-img-badge{font-size:0.65rem;padding:7px 12px}
}

/* ── FIX: fotos sempre na frente do grid de fundo ── */

/* Seções das páginas internas — stacking context próprio */
.ip-hero,
.ip-filosofia,
.ip-formacao,
.ip-cf,
.ip-photos,
.ip-chips-section,
.ip-cond-section,
.ip-destaque,
.ip-esp-section,
.trat-full-img,
.ct-img-hero,
.ct-img-section{
  position:relative;
  z-index:1;
  isolation:isolate;
}

/* Foto do hero — sempre na frente */
.ip-hero-photo{
  position:relative;
  z-index:2;
}
.ip-hero-photo img{
  position:relative;
  z-index:2;
  background:var(--sand);
}

/* Foto da formação */
.ip-formacao-photo{
  position:relative;
  z-index:2;
}

/* Garante que section-sand e section-white tapam o grid */
.section-sand,.ip-hero.section-sand{
  background:var(--sand-2)!important;
}
.section-white,.ip-formacao.section-white{
  background:#fff!important;
}
.ip-cf{background:var(--sand-2)!important}
.ip-destaque{background:var(--rose-faint)!important}
.ip-esp-section{background:#fff!important}

/* ── GALERIA: mostrar mais da imagem (menos crop) ── */
.gs-slide img{
  width:100%;height:100%;
  object-fit:contain !important;
  object-position:center !important;
  background:var(--ink-2);
  display:block;
}
/* Fundo do slide também escuro para imagens portrait */
.gs-slide{background:var(--ink-2)}

/* Altura um pouco menor para não cortar tanto em landscape */
.gs-track{height:clamp(300px,50vw,560px)}
