:root{
  --petrol:#0f5571; --petrol-dark:#083d52; --petrol-deep:#062f40;
  --rose:#b77a67; --rose-light:#d7aea0; --paper:#eee8de; --ivory:#fbf8f3;
  --ink:#14303a; --white:#fff; --line:rgba(15,85,113,.14);
  --serif:'Playfair Display',serif; --sans:'DM Sans',sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--ivory);line-height:1.6} img{display:block;width:100%} a{text-decoration:none;color:inherit}
.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:88px;display:flex;align-items:center;justify-content:space-between;padding:12px 5vw;background:rgba(251,248,243,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(15,85,113,.08);transition:.3s}
.brand{width:128px;height:64px;overflow:hidden;border-radius:4px}.brand img{height:100%;object-fit:cover;object-position:center 58%}.nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.nav a{position:relative}.nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--rose);transition:.25s}.nav a:hover:after{right:0}.nav-cta{padding:12px 20px;border:1px solid var(--petrol);border-radius:999px}.nav-cta:hover{background:var(--petrol);color:white}.menu-toggle{display:none;background:none;border:0;width:42px;height:42px}.menu-toggle span{display:block;width:24px;height:1px;background:var(--petrol);margin:6px auto}
.hero{min-height:92vh;position:relative;display:flex;align-items:center;overflow:hidden;margin-top:88px;background:var(--petrol-dark)}.hero-image{position:absolute;inset:0;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,41,55,.88) 0%,rgba(4,41,55,.64) 42%,rgba(4,41,55,.12) 74%,rgba(4,41,55,0) 100%);z-index:1}.hero-content{position:relative;z-index:2;color:white;max-width:720px;margin-left:7vw;padding:70px 0}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700}.eyebrow{color:#e8c8bc}.hero h1,.section h2{font-family:var(--serif);font-weight:500;line-height:1.03}.hero h1{font-size:clamp(54px,7vw,98px);margin:16px 0 20px}.hero h1 em,.section h2 em{font-weight:500;color:var(--rose-light)}.hero p{max-width:600px;font-size:18px;color:rgba(255,255,255,.82)}.hero-actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 24px;font-size:14px;font-weight:700;border:1px solid transparent;transition:.25s;cursor:pointer}.btn-primary{background:var(--rose);color:white}.btn-primary:hover{transform:translateY(-2px);background:#a76c5b}.btn-ghost{border-color:rgba(255,255,255,.55);color:white}.btn-ghost:hover{background:white;color:var(--petrol)}.btn-dark{background:var(--petrol);color:white}.hero-card{position:absolute;z-index:3;right:5vw;bottom:34px;width:320px;background:rgba(251,248,243,.94);padding:22px 24px;border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.18)}.hero-card strong{display:block;font-family:var(--serif);font-size:20px;color:var(--petrol-dark)}.hero-card span{display:block;font-size:13px;margin-top:5px;color:#55707a}
.section{padding:110px 7vw}.section-kicker{color:var(--rose)}.intro{background:var(--paper);padding-top:74px;padding-bottom:74px}.intro-compact{max-width:1120px;margin:0 auto;text-align:center}.section h2{font-size:clamp(40px,4.7vw,68px);margin:0}.intro-compact h2{font-size:clamp(44px,5.2vw,72px);max-width:980px;margin:10px auto 18px}.intro-compact>p{max-width:820px;margin:0 auto;color:#52676f;font-size:21px;line-height:1.55}.intro-highlights{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}.intro-highlights span{padding:11px 17px;border:1px solid rgba(15,85,113,.16);border-radius:999px;background:rgba(255,255,255,.4);color:var(--petrol-dark);font-size:14px;font-weight:600}
.treatments{background:#fff}.section-heading{display:grid;grid-template-columns:1.2fr .6fr;gap:8vw;align-items:end;margin-bottom:52px}.section-heading p{color:#657a82}.treatment-grid{display:grid;grid-template-columns:1.45fr .55fr;grid-template-rows:360px 360px;gap:20px}.treatment-grid-rebalanced .treatment-card.feature{grid-row:span 2}.treatment-grid-rebalanced .treatment-card.compact .card-copy h3{font-size:28px}.treatment-grid-rebalanced .treatment-card.compact .card-copy{left:24px;right:24px;bottom:22px}.treatment-grid-rebalanced .treatment-card.compact .card-copy p{font-size:14px}.treatment-card{position:relative;overflow:hidden;border-radius:24px;background:var(--paper)}.treatment-card img{height:100%;object-fit:cover;transition:transform .6s}.treatment-card:hover img{transform:scale(1.035)}.treatment-card.feature{grid-row:span 2}.card-gradient{position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,41,55,.78),rgba(4,41,55,0) 58%)}.card-copy{position:absolute;left:30px;right:30px;bottom:28px;color:white}.card-copy span,.text-card span{text-transform:uppercase;font-size:11px;letter-spacing:.14em;font-weight:700}.card-copy h3,.text-card h3{font-family:var(--serif);font-size:34px;margin:4px 0}.card-copy p{margin:0;color:rgba(255,255,255,.78)}.text-card{padding:34px;display:flex;flex-direction:column;justify-content:flex-end;background:var(--petrol);color:white}.text-card.warm{background:#c99c8b}.text-card p{color:rgba(255,255,255,.78);max-width:520px}.text-card a{font-weight:700;margin-top:16px}.icon{font-size:38px;margin-bottom:auto}


.orthodontics{display:grid;grid-template-columns:1.08fr .92fr;gap:7vw;align-items:center;background:linear-gradient(135deg,#f8f5ef 0%,#ffffff 58%,#eef4f5 100%);position:relative;overflow:hidden}.orthodontics:after{content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:rgba(15,85,113,.07);right:-160px;top:-170px}.orthodontics-copy{position:relative;z-index:1}.orthodontics-copy>p{font-size:18px;color:#61757d;max-width:620px}.orthodontics-services{display:grid;gap:0;margin:30px 0 34px;border-top:1px solid var(--line)}.orthodontics-services div{display:grid;grid-template-columns:190px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.orthodontics-services strong{font-family:var(--serif);font-size:19px;color:var(--petrol-dark);font-weight:600}.orthodontics-services span{font-size:14px;color:#697d84}.orthodontics-image-wrap{position:relative;border-radius:24px 180px 24px 24px;overflow:hidden;box-shadow:0 30px 80px rgba(8,61,82,.16);background:#ddd}.orthodontics-image-wrap img{height:720px;object-fit:cover;object-position:center}.orthodontics-image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,47,64,.3),transparent 42%);pointer-events:none}.orthodontics-badge{position:absolute;z-index:2;left:26px;bottom:26px;background:rgba(251,248,243,.95);padding:18px 22px;border-radius:16px;box-shadow:0 12px 30px rgba(0,0,0,.12);max-width:310px}.orthodontics-badge span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:var(--rose);font-weight:700}.orthodontics-badge strong{display:block;font-family:var(--serif);font-size:22px;color:var(--petrol-dark);margin-top:2px;line-height:1.15}

.aesthetics{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center;background:linear-gradient(135deg,#f6f0e8 0%,#fbf8f3 58%,#eef3f4 100%);position:relative;overflow:hidden}.aesthetics:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(183,122,103,.08);left:-180px;bottom:-220px}.aesthetics-copy{position:relative;z-index:1}.aesthetics-copy>p{font-size:18px;color:#61757d;max-width:620px}.aesthetics-services{display:grid;gap:0;margin:30px 0 34px;border-top:1px solid var(--line)}.aesthetics-services div{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.aesthetics-services strong{font-family:var(--serif);font-size:19px;color:var(--petrol-dark);font-weight:600}.aesthetics-services span{font-size:14px;color:#697d84}.aesthetics-image-wrap{position:relative;border-radius:180px 24px 24px 24px;overflow:hidden;box-shadow:0 30px 80px rgba(8,61,82,.15);background:#ddd}.aesthetics-image-wrap img{height:720px;object-fit:cover;object-position:center}.aesthetics-image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,47,64,.28),transparent 42%);pointer-events:none}.aesthetics-badge{position:absolute;z-index:2;left:26px;bottom:26px;background:rgba(251,248,243,.94);padding:18px 22px;border-radius:16px;box-shadow:0 12px 30px rgba(0,0,0,.12)}.aesthetics-badge span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:var(--rose);font-weight:700}.aesthetics-badge strong{display:block;font-family:var(--serif);font-size:22px;color:var(--petrol-dark);margin-top:2px}
.experience{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;background:var(--paper)}.experience-photo img{height:720px;object-fit:cover;border-radius:180px 180px 24px 24px}.experience-copy p{font-size:18px;color:#61757d}.experience-copy ul{list-style:none;padding:0;margin:28px 0}.experience-copy li{padding:10px 0;border-bottom:1px solid var(--line)}.experience-copy li span{color:var(--rose);margin-right:10px}
.family{display:grid;grid-template-columns:.72fr 1.28fr;gap:6vw;align-items:center;background:white}.family-copy p{color:#61757d;font-size:18px}.family-image img{height:660px;object-fit:cover;border-radius:24px}.text-link{display:inline-block;margin-top:14px;color:var(--petrol);font-weight:700}
.technology{padding:0;position:relative;height:780px;background:var(--petrol-dark);overflow:hidden}.technology>img{height:100%;object-fit:cover;object-position:center}.technology:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,47,64,.12),rgba(6,47,64,.68))}.technology-panel{position:absolute;z-index:2;right:6vw;top:50%;transform:translateY(-50%);max-width:540px;background:rgba(251,248,243,.94);padding:48px;border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.16)}.technology-panel p{color:#61757d}
.cta{background:var(--petrol-deep);color:white}.cta-inner{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.cta .section-kicker{color:#e9c0b3}.cta p{color:rgba(255,255,255,.7)}.cta-action{align-self:center;padding:34px;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:rgba(255,255,255,.07);box-shadow:0 20px 60px rgba(0,0,0,.12)}.cta-action-label{display:block;color:#e9c0b3;font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}.cta-action strong{display:block;font-family:var(--serif);font-size:32px;font-weight:500;margin-bottom:10px}.cta-action p{margin:0 0 22px;max-width:460px}.cta-action .btn{width:100%;text-align:center}.contact-form{display:grid;gap:14px}.contact-form label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#c8d8de}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:7px;padding:14px 15px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:white;font:inherit;outline:none}.contact-form select option{color:#14303a}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#aac0c9}.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:70px;padding-top:34px;border-top:1px solid rgba(255,255,255,.15)}.contact-details span{display:block;color:#91aab4;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.contact-details strong{display:block;margin-top:6px;font-family:var(--serif);font-size:18px;font-weight:500}
footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 6vw;background:#052a39;color:#9fb2ba;font-size:12px}footer img{width:90px;height:52px;object-fit:cover;object-position:center 58%;border-radius:4px}.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:45;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--rose);color:white;font-size:24px;box-shadow:0 10px 30px rgba(0,0,0,.22);transition:.2s}.whatsapp-float:hover{transform:translateY(-3px) scale(1.03)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:72px;padding:8px 4vw}.brand{width:105px;height:52px}.menu-toggle{display:block}.nav{position:absolute;top:72px;left:0;right:0;background:var(--ivory);padding:24px 6vw;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.nav.open{display:flex}.hero{margin-top:72px;min-height:780px}.hero-overlay{background:linear-gradient(0deg,rgba(4,41,55,.9),rgba(4,41,55,.28) 80%)}.hero-content{margin:0;padding:300px 6vw 130px;align-self:flex-end}.hero h1{font-size:58px}.hero-card{left:6vw;right:6vw;bottom:24px;width:auto}.section-heading,.orthodontics,.aesthetics,.experience,.family,.cta-inner{grid-template-columns:1fr}.section{padding:78px 6vw}.intro{padding-top:56px;padding-bottom:56px}.intro-compact>p{font-size:18px}.treatment-grid{grid-template-columns:1fr;grid-template-rows:none}.treatment-card,.treatment-card.feature{height:500px;grid-row:auto}.text-card{height:310px}.orthodontics-image-wrap img,.aesthetics-image-wrap img,.experience-photo img,.family-image img{height:520px}.orthodontics-copy{order:2}.orthodontics-image-wrap{border-radius:24px 120px 24px 24px}.orthodontics-services div{grid-template-columns:1fr;gap:5px}.aesthetics-copy{order:2}.aesthetics-image-wrap{border-radius:120px 24px 24px 24px}.aesthetics-services div{grid-template-columns:1fr;gap:5px}.family-copy{order:2}.technology{height:850px}.technology-panel{left:6vw;right:6vw;top:auto;bottom:34px;transform:none;padding:30px}.contact-details{grid-template-columns:1fr}.section h2{font-size:44px}footer{flex-direction:column;text-align:center}}
@media(max-width:520px){.hero h1{font-size:48px}.hero p{font-size:16px}.hero-actions{display:grid}.btn{width:100%}.section h2{font-size:38px}.treatment-card,.treatment-card.feature{height:440px}.orthodontics-image-wrap img,.aesthetics-image-wrap img,.experience-photo img,.family-image img{height:430px}.technology{height:760px}.technology-panel{padding:24px}.technology-panel h2{font-size:34px}.hero-card{font-size:12px}}


/* Footer — responsável técnica */
.footer-copy { text-align: center; }
.technical-responsible { margin-top: .35rem; font-size: .9rem; opacity: .82; }
@media (max-width: 720px) {
  .footer-copy { text-align: center; }
  .technical-responsible { font-size: .82rem; line-height: 1.4; }
}

/* Performance and mobile refinements — v9 */
img{height:auto}
.hero-image{height:100%}
.treatment-card img,.orthodontics-image-wrap img,.aesthetics-image-wrap img,.experience-photo img,.family-image img,.technology>img{height:100%}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.treatment-card img,.whatsapp-float{transition:none}}
@media(max-width:900px){
  body{overflow-x:hidden}
  .nav{max-height:calc(100dvh - 72px);overflow:auto;gap:18px}
  .nav a{font-size:16px;padding:5px 0}
  .nav-cta{width:100%;text-align:center;padding:13px 18px}
  .hero{min-height:690px}
  .hero-image{object-position:62% center}
  .hero-content{padding:245px 6vw 128px}
  .hero h1{font-size:clamp(46px,12vw,58px)}
  .hero-card{padding:16px 18px}
  .section{padding:68px 5vw}
  .section-heading{gap:18px;margin-bottom:34px}
  .intro{padding:48px 5vw}
  .intro-compact h2{font-size:clamp(38px,10vw,52px)}
  .intro-highlights span{width:100%;text-align:center}
  .orthodontics,.aesthetics,.experience,.family{gap:38px}
  .orthodontics-image-wrap img,.aesthetics-image-wrap img,.experience-photo img,.family-image img{height:auto;aspect-ratio:4/5;object-fit:cover}
  .technology>img{height:100%;object-fit:cover}
  .cta-action{padding:26px}
}
@media(max-width:520px){
  .site-header{padding-left:16px;padding-right:16px}
  .brand{width:94px;height:48px}
  .hero{margin-top:72px;min-height:640px}
  .hero-image{object-position:64% center}
  .hero-overlay{background:linear-gradient(0deg,rgba(4,41,55,.92) 0%,rgba(4,41,55,.68) 43%,rgba(4,41,55,.12) 88%)}
  .hero-content{padding:210px 20px 118px}
  .hero h1{font-size:45px;line-height:1}
  .hero p{font-size:16px;line-height:1.55}
  .hero-card{left:20px;right:20px;bottom:18px;padding:14px 16px}
  .hero-card strong{font-size:17px}
  .section{padding:58px 20px}
  .section h2{font-size:36px;line-height:1.08}
  .section-heading p,.aesthetics-copy>p,.orthodontics-copy>p,.experience-copy p,.family-copy p{font-size:16px}
  .treatment-card,.treatment-card.feature{height:auto;aspect-ratio:4/5}
  .text-card{height:auto;min-height:280px;aspect-ratio:auto}
  .card-copy{left:22px;right:22px;bottom:20px}
  .card-copy h3,.text-card h3{font-size:29px}
  .orthodontics-badge,.aesthetics-badge{left:16px;right:16px;bottom:16px;max-width:none;padding:14px 16px}
  .orthodontics-badge strong,.aesthetics-badge strong{font-size:19px}
  .orthodontics-services,.aesthetics-services{margin:22px 0 28px}
  .technology{height:650px}
  .technology-panel{left:16px;right:16px;bottom:18px;padding:22px}
  .technology-panel h2{font-size:31px}
  .cta-action strong{font-size:28px}
  .contact-details{margin-top:46px}
  .whatsapp-float{right:16px;bottom:16px;width:52px;height:52px}
  footer{padding:26px 20px 90px}
}
