/* Client-approved editorial direction. Shared typography, rhythm and surfaces. */
:root{--cream:#f1ece3;--paper:#faf8f3;--wine:#4f1929;--gold:#92723f;--ink:#36302b;--muted:#70675d;--sand:#d9cebf}
body{font-weight:400;line-height:1.75;color:var(--ink);text-rendering:optimizeLegibility}h1,h2,h3{font-weight:400}p{max-width:65ch}.wrap{max-width:1320px;padding-inline:6vw}.label{font-size:11px;letter-spacing:.25em;color:var(--gold);font-weight:500;margin-bottom:28px}section:not(.journey):not(.film-section){padding:110px 0}.brand small{font-size:9px;letter-spacing:.25em}.navigation{border-bottom:1px solid #65533d24}.navcta{border-radius:2px}.hero-copy{top:30%;left:6vw;width:49%;bottom:auto}.hero-copy h1{font-size:clamp(43px,4.6vw,73px);line-height:1.13;letter-spacing:-.03em;margin:20px 0 28px}.hero-copy h1 span,.hero-copy h1 em{display:block}.hero-copy h1 em{font-weight:400}.hero-copy>p:not(.label){font-size:17px;line-height:1.7;max-width:34ch;margin:0 0 32px}.hero-copy .label{font-size:10px}.founder{left:45%;background:#d3b78f}.founder>img{object-position:64% 43%;height:100%;width:100%;object-fit:cover}.founder:after{background:linear-gradient(90deg,#eee8de,transparent 26%),linear-gradient(0deg,#eee8de77,transparent 24%)}.journey-foot{font-size:10px;gap:20px}.journey-foot>span:last-child{max-width:30ch;text-align:right;background:transparent;backdrop-filter:none;padding:0}.journey-foot>span:first-child{background:transparent;backdrop-filter:none}.hero-copy .pill{font-size:13px;padding:15px 25px}.pill{min-height:46px;border-radius:2px}.ipn-intro .label:before{content:none!important}.editorial-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:7vw;align-items:start}.editorial-grid>h2{font-size:clamp(36px,3.5vw,53px);line-height:1.18;letter-spacing:-.025em;max-width:17ch;margin:0}.prose p{font-size:16px;line-height:1.85;margin:0 0 21px;max-width:57ch}.prose p:last-child{margin-bottom:0}.prose .lead{color:var(--wine);font-size:20px;line-height:1.6;margin-bottom:28px}.philosophy{border-top:1px solid #ded4c533;border-bottom:1px solid #ded4c533}.signature-values{display:flex;align-items:center;gap:28px;margin-top:55px;padding-top:30px;border-top:1px solid var(--sand);font-size:12px;letter-spacing:.12em;color:var(--wine)}.signature-values i{width:3px;height:3px;background:var(--gold);border-radius:50%}.section-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:7vw;align-items:end;margin-bottom:46px}.section-heading h2{font-size:clamp(36px,4vw,60px);line-height:1.12;margin:0;letter-spacing:-.025em}.section-heading>p{font-size:16px;color:var(--muted);max-width:35ch;margin:0 0 5px}.space-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:40px;align-items:start}.space-photo{margin:0;background:#e4dccf;position:relative;aspect-ratio:4/3;border:1px solid #c9bca755;overflow:hidden}.space-photo .space-image{width:100%;height:100%;object-fit:contain;display:block}.space-photo figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:15px;padding:35px 22px 17px;background:linear-gradient(transparent,#211710b8);color:#fff;font-size:12px;pointer-events:none}.space-count{white-space:nowrap;letter-spacing:.12em}.space-controls{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:20px}.space-controls>button{width:40px;height:40px;flex-shrink:0;background:transparent;border:1px solid var(--sand);font-size:20px;color:var(--wine);cursor:pointer}.space-controls>button:hover{background:var(--wine);color:#fff}.space-selectors{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.space-selectors button{font:12px var(--sans);background:transparent;border:1px solid transparent;padding:9px 10px;cursor:pointer;color:var(--muted);min-height:38px}.space-selectors button[aria-pressed=true]{color:var(--wine);border-bottom-color:var(--wine)}.space-selectors button:hover{background:#fff7}.space-description{font-size:11px;color:var(--muted);margin-top:14px}.space-directory{border-top:1px solid var(--sand)}.floor{padding-top:23px}.floor+.floor{margin-top:25px;border-top:1px solid var(--sand)}.floor-heading{display:flex;gap:15px;align-items:baseline}.floor-heading>span{font-size:11px;color:var(--gold)}.floor-heading h3{font:400 23px var(--serif);margin:0 0 18px}.floor ul{list-style:none;padding:0;margin:0}.floor li{font-size:13px;line-height:1.6;padding:6px 0;color:var(--muted)}.services{background:var(--paper)}.service-categories{border-top:1px solid var(--sand)}.service-category{border-bottom:1px solid var(--sand)}.service-category summary{display:grid;grid-template-columns:50px 1fr 32px;gap:20px;align-items:center;padding:30px 0;cursor:pointer;list-style:none}.service-category summary::-webkit-details-marker{display:none}.category-number{color:var(--gold);font-size:11px;letter-spacing:.14em}.service-category summary h3{font:400 clamp(25px,2.6vw,37px)/1.15 var(--serif);margin:0 0 7px}.service-category summary p{font-size:13px;color:var(--muted);margin:0}.category-toggle{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--sand);font-size:22px;font-weight:300;color:var(--wine);transition:transform .25s}.service-category[open] .category-toggle{transform:rotate(45deg)}.category-content{padding:0 0 38px 70px}.category-content ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.category-content li{padding:19px 0;border-top:1px solid #ddd3c477}.category-content h4{font:500 15px/1.45 var(--sans);color:var(--wine);margin:0 0 6px}.category-content p{font-size:13px;color:var(--muted);line-height:1.65;margin:0}.text-link{font-size:13px;color:var(--wine);display:inline-block;margin-top:20px;text-underline-offset:5px}summary:hover h3{color:#875269}summary:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.team{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}.team .ph{aspect-ratio:1/1;background:#e9e2d7;border-radius:2px;border:1px solid #d3c7b633}.team .ph img{object-fit:cover;object-position:50% 36%!important;width:100%;height:100%;filter:none}.team .person:last-child .ph img{object-position:50% 27%!important}.team .person h3{font-size:26px;line-height:1.2}.team .person small{font-size:12px;margin-top:10px;color:var(--gold)}.team .person p{font-size:14px;line-height:1.7}.team .person:hover img{transform:none}.portrait-pending{position:relative;display:flex!important;flex-direction:column;justify-content:center;gap:20px;background:radial-gradient(circle at 45% 35%,#f4eee5,#dfd5c6)!important}.portrait-pending .ini{border:1px solid #bca88966;background:transparent;font-size:52px;font-weight:400;width:110px;height:110px;color:#9c8167}.portrait-label{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#857361}.brand-statement{text-align:center;background:linear-gradient(120deg,#e8dfd0,#f3eee6);border-top:1px solid var(--sand)}.brand-statement h2{font-size:clamp(35px,4.8vw,64px);line-height:1.15;margin:0 auto 28px}.brand-statement p:not(.label){font-size:16px;line-height:1.8;max-width:65ch;margin:0 auto 18px}.brand-statement .pill{margin-top:17px}.cta{padding:65px 30px}.cta h2{font-size:clamp(37px,4vw,55px)}.facade{max-height:760px;height:auto;aspect-ratio:3/4;object-fit:contain;background:#ded5c9;width:100%;max-width:650px;margin:35px auto 0;display:block}.wa{width:49px;height:49px;right:14px;bottom:14px}.film-mode{min-height:38px}.film-chapters{letter-spacing:.025em}.film-copy h2{line-height:1.08}.film-skip{min-height:38px}.film-section .label{font-size:10px}
@media(max-width:1000px) and (min-width:761px){.hero-copy h1{font-size:44px}.hero-copy>p:not(.label){font-size:15px}.space-layout{grid-template-columns:1fr}.space-directory{display:grid;grid-template-columns:1fr 1fr;gap:30px}.floor+.floor{margin-top:0;border-top:0}.team{gap:20px}.team .person h3{font-size:23px}.editorial-grid{gap:35px}.editorial-grid>h2{font-size:36px}}
@media(max-width:760px){.wrap{padding-inline:7vw}.label{font-size:10px;letter-spacing:.22em;margin-bottom:23px}section:not(.journey):not(.film-section){padding:74px 0}.navigation{height:78px;background:linear-gradient(#f5eee4d9,transparent);padding:0 7vw}.brand small{font-size:8px}.navcta{font-size:11px;padding:10px 12px;min-height:40px}.journey,.stage{height:100svh;min-height:740px}.founder{inset:0;background:#6e4f35}.founder>img{object-position:66% 36%;object-fit:cover}.founder:after{background:linear-gradient(0deg,#160e09ed 0%,#21150a9c 26%,transparent 61%),linear-gradient(180deg,#e9dfcc44,transparent 17%)}.hero-copy{inset:auto 7vw 13%;width:auto;color:#fff}.hero-copy h1{font-size:clamp(35px,9.15vw,53px);line-height:1.14;letter-spacing:-.025em;margin:14px 0 20px;color:#fff}.hero-copy .label{font-size:8px;letter-spacing:.15em;margin-bottom:14px;color:#f2d9b2}.hero-copy>p:not(.label){font-size:14px;line-height:1.6;max-width:34ch;margin:0 0 24px;color:#f2e7d9}.hero-copy .pill{font-size:12px;padding:13px 20px;color:var(--wine);background:#f7efe1}.journey-foot{bottom:24px;left:7vw;right:7vw;font-size:8px;gap:10px;color:#f5e8d3}.journey-foot a{background:#f5eee7d9;color:var(--wine);padding:8px}.journey-foot>span:first-child{color:#f5e8d3}.editorial-grid{grid-template-columns:1fr;gap:30px}.editorial-grid>h2{font-size:clamp(34px,8.9vw,43px);line-height:1.19;max-width:19ch;margin:0}.prose p{font-size:15px;line-height:1.85;margin-bottom:20px}.prose .lead{font-size:18px;line-height:1.6;margin-bottom:23px}.signature-values{margin-top:33px;padding-top:24px;gap:18px;font-size:10px;letter-spacing:.06em}.section-heading{grid-template-columns:1fr;gap:23px;margin-bottom:30px}.section-heading h2{font-size:36px;line-height:1.15}.section-heading>p{font-size:15px;max-width:37ch}.space-layout{grid-template-columns:1fr;gap:28px}.space-photo{aspect-ratio:4/3}.space-photo figcaption{font-size:10px;padding:28px 13px 12px}.space-controls{gap:8px;margin-top:14px}.space-controls>button{width:35px;height:42px;font-size:18px}.space-selectors{gap:0}.space-selectors button{font-size:10px;padding:7px 6px;min-height:33px}.space-description{font-size:10px}.space-directory{display:grid;grid-template-columns:1fr 1fr;gap:20px}.floor+.floor{border:0;margin-top:0}.floor-heading{gap:10px}.floor-heading h3{font-size:20px}.floor li{font-size:12px;padding:5px 0}.service-category summary{grid-template-columns:22px 1fr 26px;gap:12px;padding:24px 0}.service-category summary h3{font-size:25px;line-height:1.15}.service-category summary p{font-size:12px;line-height:1.55;max-width:28ch}.category-number{font-size:10px}.category-toggle{width:26px;height:26px;font-size:20px}.category-content{padding:0 0 28px 34px}.category-content ul{grid-template-columns:1fr;gap:0}.category-content li{padding:16px 0}.category-content h4{font-size:14px}.category-content p{font-size:13px}.text-link{font-size:12px;margin-top:12px}.team{grid-template-columns:1fr;gap:36px}.team .person{display:grid;grid-template-columns:115px minmax(0,1fr);gap:20px;align-items:start}.team .ph{aspect-ratio:4/5}.person div.t{padding:0}.team .person h3{font-size:23px;margin:0}.team .person small{font-size:10px;margin:8px 0 12px}.team .person p{font-size:13px}.portrait-pending .ini{font-size:33px;width:65px;height:65px}.portrait-label{display:none}.brand-statement h2{font-size:34px;line-height:1.2}.brand-statement p:not(.label){font-size:15px;line-height:1.8}.cta{padding:50px 22px}.cta h2{font-size:37px}.cta p{font-size:15px}.facade{max-height:none;aspect-ratio:3/4}.film-section .label{font-size:8px}.film-copy h2{font-size:31px}.film-mode{font-size:9px;min-height:37px}.film-status{font-size:7px}.film-playback{padding-right:3px}.film-wrap{max-width:100%}.wa{width:45px;height:45px;bottom:12px;right:12px}.wa svg{width:24px;height:24px}footer{font-size:12px}footer p{line-height:1.8}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
.result-heading{display:flex;align-items:baseline;justify-content:space-between;gap:25px;margin-bottom:20px}.result-heading h3{margin:0}.result-heading p{font-size:13px;color:var(--muted)}.result-views{display:grid;grid-template-columns:1fr 1fr;gap:22px}.result-views figure{margin:0;background:#e6ded2;border:1px solid #d5c9b8}.result-views img{width:100%;height:400px;object-fit:contain;display:block}.result-views figcaption{font-size:11px;letter-spacing:.09em;color:var(--muted);padding:13px 17px;border-top:1px solid #d5c9b8;background:#f9f5ee}.lip-result{margin-top:5px}@media(max-width:760px){.result-heading{display:block}.result-heading p{font-size:12px;margin-top:9px}.result-views{grid-template-columns:1fr;gap:20px}.result-views img{height:360px}}
.result-tabs{display:flex;gap:8px;border-bottom:1px solid var(--sand);margin-bottom:35px}.result-tabs button{appearance:none;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font:400 14px var(--sans);padding:16px 24px;cursor:pointer}.result-tabs button[aria-selected=true]{color:var(--wine);border-color:var(--wine)}.result-tabs button:hover{background:#e7ded14d}.results-section [hidden]{display:none!important}.oral-case+.oral-case{margin-top:48px}.oral-pair,.facial-views{display:grid;grid-template-columns:1fr 1fr;gap:25px}.oral-pair figure,.facial-views figure{margin:0;border:1px solid var(--sand);background:#e6ded2}.oral-pair img{display:block;width:100%;height:480px;object-fit:contain;background:#292b29}.facial-views img{width:100%;height:auto;display:block;object-fit:contain}.oral-pair figcaption,.facial-views figcaption{padding:13px 18px;font-size:11px;letter-spacing:.1em;color:var(--wine);background:#f9f5ee;border-top:1px solid var(--sand)}.results-note{font-size:12px;color:var(--muted);margin-top:30px}.additional-case{margin-top:40px;border-block:1px solid var(--sand)}.additional-case summary{display:flex;justify-content:space-between;cursor:pointer;padding:20px 0;font-size:13px;color:var(--wine);list-style:none}.additional-case summary::-webkit-details-marker{display:none}.additional-content{max-width:780px;padding-bottom:30px}.additional-content h3{font-size:24px;margin:15px 0}.additional-content .note{margin-top:15px;text-align:left;font-size:12px}.additional-content .cmp{width:100%}@media(max-width:760px){.result-tabs{gap:0;margin-bottom:26px}.result-tabs button{font-size:11px;padding:14px 9px;flex:1;line-height:1.45}.oral-pair{gap:12px}.oral-pair img{height:250px;object-fit:contain}.oral-pair figcaption{font-size:10px;padding:10px 13px}.oral-case+.oral-case{margin-top:35px}.facial-views{grid-template-columns:1fr;gap:22px}.results-note{font-size:11px;line-height:1.7}.result-heading h3{font-size:27px}.result-heading p{margin-top:8px}}
.care-video{background:#eee7dc}.care-film{margin:0;border:1px solid var(--sand);background:#302921}.care-film video{display:block;width:100%;max-height:680px;aspect-ratio:1280/718;object-fit:contain;background:#1b1815}.care-film figcaption{display:flex;gap:20px;justify-content:space-between;padding:16px 20px;background:#f8f4ec;color:var(--muted);font-size:11px;letter-spacing:.05em}@media(max-width:760px){.care-film figcaption{padding:13px;font-size:9px;gap:12px}.care-video .section-heading h2{font-size:34px}}
/* Keep the floating contact control clear of the opening navigation. */
.journey-foot{padding-right:56px}
/* Photographs occupy the section after removing the floor directory. */
.space-layout{grid-template-columns:minmax(0,1fr)}
/* Refined typography and a consistent editorial spacing scale. */
:root{--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}
body{font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.75;letter-spacing:0}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.025em;text-wrap:balance}
h1 em,h2 em,h3 em{font-weight:500}
p,li{overflow-wrap:break-word}
section:not(.journey):not(.film-section){padding-block:96px}
.label{font-family:var(--sans);font-size:10px;line-height:1.5;letter-spacing:.18em;margin-bottom:22px}
.brand span{font-size:34px;font-weight:500;letter-spacing:.015em}.brand small{font-family:var(--sans);font-size:8px;letter-spacing:.22em}
.navlinks{font-size:12px;gap:28px}.navcta{font-size:12px;padding:13px 19px}
.hero-copy h1{font-size:clamp(47px,5.1vw,78px);font-weight:500;line-height:1.07;letter-spacing:-.03em;margin:20px 0 32px}
.hero-copy h1 em{font-weight:500}.hero-copy .label{font-size:9px;letter-spacing:.18em;margin-bottom:20px}
.hero-copy .pill{font-size:12px;letter-spacing:.015em;padding:15px 24px}
.editorial-grid{gap:6vw}.editorial-grid>h2{font-size:clamp(38px,3.9vw,58px);line-height:1.11;max-width:20ch}
.prose p{font-size:15px;line-height:1.85;margin-bottom:20px}.prose .lead{font-size:18px;line-height:1.7;margin-bottom:25px}
.section-heading{gap:6vw;margin-bottom:38px}.section-heading h2{font-size:clamp(40px,4.4vw,64px);line-height:1.08}.section-heading>p{font-size:14px;line-height:1.8;max-width:36ch}
.signature-values{margin-top:40px;padding-top:26px;font-size:11px;letter-spacing:.1em}
.service-category summary{padding-block:27px}.service-category summary h3{font-family:var(--serif);font-size:clamp(29px,3vw,42px);font-weight:500;line-height:1.12;margin-bottom:10px}.service-category summary p{font-size:12px;line-height:1.7}
.category-content li{padding-block:19px}.category-content h4{font-family:var(--sans);font-size:14px;line-height:1.55;letter-spacing:0;margin-bottom:7px}.category-content p{font-size:12px;line-height:1.8}.category-content{padding-bottom:34px}
.team{gap:32px;margin-top:36px}.team .person div.t{padding:24px 0 0}.team .person h3{font-family:var(--sans);font-size:19px;font-weight:600;line-height:1.45;letter-spacing:-.035em;min-height:56px;max-width:26ch;text-wrap:balance;margin:0}
.team .person small{font-family:var(--sans);font-size:10px;line-height:1.6;letter-spacing:.04em;margin:10px 0 14px}.team .person p{font-family:var(--sans);font-size:13px;line-height:1.85;margin:0;max-width:35ch}
.team .ph{border-radius:3px}.portrait-label{font-family:var(--sans);letter-spacing:.06em;font-size:8px}.portrait-pending .ini{font-family:var(--serif);font-size:50px}
.result-heading{margin-bottom:22px}.result-heading h3{font-size:32px;font-weight:500;line-height:1.15}.result-heading p{font-size:12px;line-height:1.7}.result-tabs{margin-bottom:32px}.result-tabs button{font-size:12px;padding:16px 20px;line-height:1.6}.results-note{line-height:1.8}
.space-photo figcaption{font-size:11px;line-height:1.6}.space-selectors button{font-size:11px;padding:10px 12px}.space-controls{margin-top:18px}.space-description{font-size:10px;line-height:1.7;margin-top:12px}
.film-copy h2{font-weight:500;line-height:1.05}.film-copy>p:not(.label){font-size:14px;line-height:1.8}.film-chapters{font-size:11px;line-height:1.75;gap:14px}.film-copy .label{font-size:9px}.film-mode{font-family:var(--sans);font-size:10px;line-height:1.5}.film-status{font-size:8px;line-height:1.5}
.brand-statement h2{font-size:clamp(40px,5vw,68px);line-height:1.1;margin-bottom:28px}.brand-statement p:not(.label){font-size:14px;line-height:1.9;max-width:66ch;margin-bottom:18px}.cta h2{font-size:clamp(42px,4.6vw,62px);line-height:1.1}.cta p{font-size:14px;line-height:1.8}.cta{padding:64px 30px}footer{font-size:12px;line-height:1.8}
@media(max-width:1000px) and (min-width:761px){.hero-copy h1{font-size:45px}.team{gap:23px}.team .person h3{font-size:17px;min-height:52px}.editorial-grid>h2{font-size:41px}}
@media(max-width:760px){
body{font-size:15px;line-height:1.75}.wrap{padding-inline:7vw}section:not(.journey):not(.film-section){padding-block:66px}.label{font-size:9px;letter-spacing:.16em;margin-bottom:20px}
.brand span{font-size:28px}.brand small{font-size:7px;letter-spacing:.18em}.navcta{font-size:10px;padding:12px}.navigation{height:78px}
.hero-copy h1{font-size:clamp(36px,9.4vw,47px);line-height:1.1;letter-spacing:-.025em;margin:16px 0 29px}.hero-copy .label{font-size:8px;letter-spacing:.13em;margin-bottom:16px}.hero-copy .pill{font-size:11px;line-height:1.6;padding:14px 20px}.journey-foot{font-size:7px;line-height:1.7}
.editorial-grid{gap:26px}.editorial-grid>h2{font-size:36px;line-height:1.13;max-width:21ch}.prose p{font-size:14px;line-height:1.85;margin-bottom:19px}.prose .lead{font-size:16px;line-height:1.75;margin-bottom:23px}.signature-values{margin-top:30px;padding-top:23px;gap:17px;font-size:9px;letter-spacing:.06em}
.section-heading{gap:20px;margin-bottom:28px}.section-heading h2{font-size:38px;line-height:1.1}.section-heading>p{font-size:13px;line-height:1.8;max-width:39ch}
.service-category summary{padding-block:23px;gap:12px}.service-category summary h3{font-size:29px;line-height:1.12;margin-bottom:8px}.service-category summary p{font-size:11px;line-height:1.7}.category-content{padding-bottom:27px}.category-content li{padding-block:16px}.category-content h4{font-size:13px;line-height:1.55;margin-bottom:7px}.category-content p{font-size:12px;line-height:1.8}
.team{gap:30px;margin-top:29px}.team .person{grid-template-columns:108px minmax(0,1fr);gap:18px;padding-bottom:27px;border-bottom:1px solid #d9cebf99}.team .person:last-child{padding-bottom:0;border-bottom:0}.team .person div.t{padding:0}.team .person h3{font-family:var(--sans);font-size:17px;font-weight:600;line-height:1.45;letter-spacing:-.035em;min-height:0;text-wrap:balance}.team .person small{font-size:9px;line-height:1.65;margin:8px 0 11px;letter-spacing:.01em}.team .person p{font-size:12px;line-height:1.8}.team .ph{aspect-ratio:4/5}.portrait-pending .ini{font-size:34px}
.result-heading h3{font-size:30px;line-height:1.15}.result-heading p{font-size:11px;margin-top:9px}.result-tabs{margin-bottom:25px}.result-tabs button{font-size:10px;line-height:1.6;padding:13px 8px}.results-note{font-size:10px;line-height:1.85}.oral-case+.oral-case{margin-top:32px}
.space-photo figcaption{font-size:9px;line-height:1.6}.space-selectors button{font-size:10px;line-height:1.5;padding:8px 6px}.space-controls{margin-top:14px}.space-description{font-size:9px;line-height:1.7}
.film-copy .label{font-size:7px;letter-spacing:.12em;margin-bottom:8px}.film-copy h2{font-size:33px;line-height:1.02;margin:8px 0 10px}.film-copy>p:not(.label){font-size:11px;line-height:1.65;max-width:44ch}.film-chapters{font-size:7px;line-height:1.6;gap:8px 13px;margin-top:10px}.film-mode{font-size:8px;line-height:1.5}.film-status{font-size:7px}.film-skip{font-size:9px;line-height:1.7;margin-top:9px}
.brand-statement h2{font-size:37px;line-height:1.13}.brand-statement p:not(.label){font-size:13px;line-height:1.85}.cta{padding:47px 23px}.cta h2{font-size:40px;line-height:1.1}.cta p{font-size:13px;line-height:1.85}.care-video .section-heading h2{font-size:37px}footer{font-size:11px;line-height:1.9}
}
@media(max-width:760px){.prose p{font-size:15px;line-height:1.8}.section-heading>p{font-size:14px;line-height:1.8}.team .person p{font-size:13px;line-height:1.75}.team .person small{font-size:10px}.brand-statement p:not(.label){font-size:14px;line-height:1.8}}
/* Passeio: conteúdo e controles sempre dentro da área visível. */
.film-section .film-sticky{min-height:0;box-sizing:border-box}
.film-section .film-layout{height:100%;box-sizing:border-box;min-height:0;padding-block:32px}
.film-section .film-wrap{height:100%;max-height:850px;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto auto;align-self:center;justify-items:stretch}
.film-section .clinic-film,.film-section.frame-scroll:not(.manual-playback) .film-scroll-frames{height:100%;max-height:100%;width:auto;max-width:100%;min-height:0;justify-self:center;object-fit:contain}
.film-section .film-playback{flex-shrink:0;flex-wrap:wrap;min-height:40px;margin:12px 0;gap:8px 14px}
.film-section .film-mode{min-height:40px;font-size:11px;padding:10px 12px}
.film-section .film-track{width:100%;align-self:end}
section.ipn-intro{background:linear-gradient(180deg,#29221e 0%,#66564a 36px,#b4a696 85px,#e4dcd0 135px,var(--cream) 190px);padding-top:250px}
@media(max-width:760px){
.film-section .film-layout{gap:16px;padding:22px 6vw 24px}
.film-section .film-copy{flex:0 0 auto}
.film-section .film-wrap{flex:1 1 0;height:auto;width:100%;min-height:0;margin:0 auto;max-height:none}
.film-section .film-copy h2{font-size:clamp(25px,4.6svh,33px)}
.film-section .film-playback{margin:10px 0;min-height:40px}
.film-section .film-status{font-size:8px}
.film-section .film-mode{font-size:10px}
section.ipn-intro{padding-top:205px;background:linear-gradient(180deg,#29221e 0%,#66564a 30px,#b4a696 65px,#e4dcd0 110px,var(--cream) 155px)}
}
@media(prefers-reduced-motion:reduce){
.film-section .film-layout{height:auto}
.film-section .film-wrap{height:620px;max-height:75svh;flex:auto}
}

/* Refined controls: consistent hierarchy, quiet borders and accessible targets. */
.pill,.navcta,.space-controls>button,.space-selectors button,.result-tabs button,.film-section .film-mode{
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.pill,.hero-copy .pill,.navcta{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  min-height:50px;padding:14px 25px;border:1px solid #b6a18a;border-radius:6px;
  font-family:var(--sans);font-size:12px;font-weight:600;line-height:1.5;letter-spacing:.025em;
  text-align:center;text-decoration:none;background:var(--paper);color:var(--wine);
  box-shadow:0 2px 5px #36221b06;
}
.pill.main,.hero-copy .pill.main{background:var(--wine);border-color:var(--wine);color:#fff9f1;box-shadow:0 4px 12px #4f192914}
.navcta{min-height:46px;padding:12px 20px;background:#faf8f3ed;border-color:#8f6d76;color:var(--wine);white-space:nowrap}
.cta .pill{background:#faf3e7;border-color:#faf3e7;color:var(--wine)}
.pills{gap:12px}
.text-link,.film-skip{display:inline-flex;align-items:center;min-height:44px;font-weight:500;text-decoration-thickness:1px;text-underline-offset:6px}
.journey-foot a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #b6a18a80;border-radius:6px;font-weight:500;letter-spacing:.025em}
.space-controls>button{width:46px;height:46px;min-width:46px;border-radius:50%;border-color:#b6a18a;background:var(--paper);font-size:22px}
.space-selectors{gap:6px}
.space-selectors button{min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:5px;font-weight:500}
.space-selectors button[aria-pressed=true]{background:#e7ddd0;border-color:#b6a18a;color:var(--wine)}
.result-tabs{gap:8px;padding-bottom:10px;flex-wrap:wrap}
.result-tabs button{min-height:46px;padding:12px 20px;border:1px solid transparent;border-radius:5px;font-weight:500}
.result-tabs button[aria-selected=true]{background:var(--wine);border-color:var(--wine);color:#fff9f1;box-shadow:0 3px 9px #4f192910}
.film-section .film-mode{min-height:44px;padding:11px 16px;border-radius:5px;border-color:#bba78c;color:#f7eddf;background:#ffffff08;font-weight:500}
.category-toggle{border-radius:50%;border-color:#b6a18a;background:#faf8f380}
.wa{width:54px;height:54px;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));border:1px solid #ffffff52;background:var(--wine);box-shadow:0 5px 18px #32101b29;transition:background-color .2s,transform .2s,box-shadow .2s}
.wa svg{width:25px;height:25px}
@media(hover:hover){
  .pill:hover,.navcta:hover{background:#eee4d6;border-color:#92723f;transform:translateY(-1px);box-shadow:0 5px 14px #36221b0d}
  .pill.main:hover,.hero-copy .pill.main:hover{background:#65283c;border-color:#65283c;color:#fff9f1}
  .cta .pill:hover{background:#fffaf2;border-color:#fffaf2}
  .space-controls>button:hover{background:var(--wine);border-color:var(--wine);color:#fff9f1}
  .space-selectors button:hover{background:#e7ddd0;border-color:#b6a18a}
  .result-tabs button:hover{background:#e7ddd0;color:var(--wine)}
  .result-tabs button[aria-selected=true]:hover{background:#65283c;color:#fff9f1}
  .film-section .film-mode:hover{background:#ffffff14;border-color:#e7d3b6}
  .wa:hover{background:#65283c;transform:translateY(-2px);box-shadow:0 7px 20px #32101b38}
  .text-link:hover{color:#794154}.film-skip:hover{color:#fff}
}
.pill:active,.navcta:active,.wa:active{transform:translateY(0);box-shadow:none}
:is(.pill,.navcta,.wa,.text-link,.journey-foot a,.space-controls button,.result-tabs button,summary):focus-visible{outline:2px solid var(--wine);outline-offset:4px;box-shadow:0 0 0 4px var(--paper)}
.film-section :is(.film-mode,.film-skip):focus-visible,.cta .pill:focus-visible{outline:2px solid #f5dfbb;outline-offset:4px;box-shadow:0 0 0 2px #29221e}
@media(max-width:760px){
  .pill,.hero-copy .pill{min-height:48px;padding:13px 20px;font-size:12px}
  .hero-copy .pill.main{background:#f7efe1;border-color:#f7efe1;color:var(--wine);box-shadow:0 4px 16px #160e0920}
  .navcta{min-height:44px;padding:11px 13px;font-size:10px}
  .space-selectors{gap:3px}.space-selectors button{padding:10px 8px;font-size:10px}
  .space-controls>button{width:44px;height:44px;min-width:44px}
  .result-tabs{gap:5px}.result-tabs button{padding:11px 8px;flex:1 1 90px;font-size:11px;line-height:1.5}
  .film-section .film-mode{min-height:44px;font-size:10px;padding:10px 12px}
  .journey-foot a{padding:10px 12px}.wa{width:50px;height:50px}
  #mapa .pills .pill{flex:1 1 190px}
}
@media(prefers-reduced-motion:reduce){
  .pill,.navcta,.wa,.space-controls>button,.space-selectors button,.result-tabs button,.film-section .film-mode{transition:none;transform:none}
}


/* Navigation and editorial polish. Original page content is preserved. */
.navigation{gap:18px}
.navlinks{gap:20px;align-items:center}
.navlinks a{display:inline-flex;align-items:center;min-height:44px;font-size:11px;white-space:nowrap;text-underline-offset:6px}
.navlinks a:hover{text-decoration:underline;text-decoration-thickness:1px}
.menu-toggle{display:none}
.navlinks[hidden],.menu-toggle[hidden]{display:none!important}
/* Shorter scroll journey, with the same content and playback modes. */
.film-section,.film-section.manual-playback{height:240svh}
.film-section .film-mode{background:#f0e4d2;color:#4f1929;border-color:#f0e4d2;box-shadow:0 3px 12px #0002}
.film-section .film-mode:hover{background:#fff6e8;color:#4f1929;border-color:#fff6e8}
.film-skip{color:#f0e4d2}
/* Consistent result frames without cropping the clinical photographs. */
.oral-pair,.result-views,.facial-views{gap:20px;align-items:start}
.oral-pair figure,.result-views figure,.facial-views figure{overflow:hidden;border-radius:6px;background:#e6ded2}
.oral-pair img,.result-views img,.facial-views img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#e6ded2}
.oral-pair figcaption,.result-views figcaption,.facial-views figcaption{padding:14px 18px;min-height:46px;font-size:11px;line-height:1.6;letter-spacing:.06em;color:var(--wine);background:var(--paper);border-top:1px solid var(--sand)}
.result-heading{align-items:center}.oral-case+.oral-case{margin-top:38px}
.additional-case summary{min-height:52px;gap:16px;align-items:center}
.cmp:focus-within{outline:2px solid var(--wine);outline-offset:4px}
/* Unified team cards retain all existing credentials and descriptions. */
.team .person{height:100%;padding-bottom:24px;border-bottom:1px solid var(--sand)}
.team .person .ph{border-radius:6px;aspect-ratio:1/1}
.team .person div.t{padding-top:22px}
.portrait-pending{background:linear-gradient(145deg,#eee7db,#e1d5c3)!important}
.portrait-pending .ini{border-color:#a58b6966;color:#92723f}
/* Keep the closing copy, but reduce the repeated visual emphasis. */
section.brand-statement{padding-block:56px;background:var(--paper)}
.brand-statement .wrap{max-width:1000px}
.brand-statement h2{font-size:clamp(32px,3.3vw,46px)}
.brand-statement p:not(.label){font-size:13px;line-height:1.8}
.brand-statement .pill{background:transparent;color:var(--wine);border-color:#b6a18a;box-shadow:none}
.brand-statement+.brand-statement{margin-top:0}
.brand-statement+section{padding-block:56px}
.cta{border-radius:8px}
@media(min-width:761px) and (max-width:1000px){
 .navigation{padding-inline:4vw;gap:12px}.navlinks{gap:10px}.navlinks a{font-size:10px}.navcta{padding-inline:12px;font-size:10px}.brand{gap:8px}.brand img{width:36px;height:36px}
}
@media(max-width:760px){
 .navigation{gap:10px;padding-inline:5vw}
 .navigation .brand{margin-right:auto;gap:8px}.navigation .brand img{width:32px;height:32px}
 .navigation .navcta{font-size:10px;padding-inline:10px;order:1}
 .menu-toggle{order:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:0 0 44px;width:44px;height:44px;padding:7px;border:1px solid #8f6d7680;border-radius:6px;background:#faf8f3;color:var(--wine);cursor:pointer}
 .menu-toggle>span:not(.menu-label){display:block;width:17px;height:1px;background:currentColor;transition:transform .2s}
 .menu-toggle .menu-label{font:500 8px/1 var(--sans);margin-top:3px}
 .menu-open .menu-toggle>span:first-child{transform:translateY(2.5px) rotate(45deg)}
 .menu-open .menu-toggle>span:nth-child(2){transform:translateY(-2.5px) rotate(-45deg)}
 .navigation .navlinks{position:absolute;top:calc(100% - 1px);left:5vw;right:5vw;display:grid;gap:0;padding:10px 20px;background:var(--paper);border:1px solid var(--sand);border-radius:8px;box-shadow:0 16px 36px #36221b24}
 .navigation .navlinks a{min-height:48px;font-size:13px;border-bottom:1px solid #d9cebf66}
 .navigation .navlinks a:last-child{border-bottom:0}
 .menu-toggle:focus-visible{outline:2px solid var(--wine);outline-offset:4px}
 .film-section,.film-section.manual-playback{height:210svh}
 .film-section .film-playback{gap:8px}.film-section .film-mode{font-size:10px}
 .oral-pair,.result-views,.facial-views{gap:12px}
 .oral-pair img{aspect-ratio:3/4}.result-views img,.facial-views img{aspect-ratio:4/3}
 .oral-pair figcaption,.result-views figcaption,.facial-views figcaption{padding:11px 12px;font-size:10px}
 .team .person{padding-bottom:24px}.team .person .ph{aspect-ratio:4/5}.team .person div.t{padding-top:0}
 section.brand-statement{padding-block:38px}.brand-statement h2{font-size:32px}.brand-statement+section{padding-block:38px}
}
@media(prefers-reduced-motion:reduce){
 .film-section,.film-section.manual-playback{height:auto}
 .menu-toggle>span{transition:none}
}

/* Shared photographic format across content sections, on every screen size. */
:root{--photo-ratio:4/3;--photo-surface:#e6ded2;--photo-radius:6px}
.space-photo,.team .person .ph{aspect-ratio:var(--photo-ratio);border-radius:var(--photo-radius);overflow:hidden;background:var(--photo-surface)}
.space-photo .space-image,.team .person .ph img{display:block;width:100%;height:100%;object-fit:contain;object-position:center!important;background:var(--photo-surface)}
.oral-pair img,.result-views img,.facial-views img,.facade{display:block;width:100%;height:auto;max-height:none;aspect-ratio:var(--photo-ratio);object-fit:contain;object-position:center;background:var(--photo-surface);border-radius:var(--photo-radius)}
.facade{max-width:100%;margin:30px auto 0}
.additional-content{max-width:100%}
.additional-content .cmp{aspect-ratio:var(--photo-ratio)!important;border-radius:var(--photo-radius);background:var(--photo-surface)}
.additional-content .cmp img{width:100%;height:100%;object-fit:contain;object-position:center;background:var(--photo-surface)}
@media(max-width:760px){
 .team .person{display:block}
 .team .person .ph{width:100%;aspect-ratio:var(--photo-ratio)}
 .team .person div.t{padding-top:20px}
 .team .person h3{min-height:0;max-width:none}
 .team .person p{max-width:none}
 .team .portrait-pending .ini{width:86px;height:86px;font-size:42px}
 .oral-pair{grid-template-columns:1fr}
 .oral-pair img,.result-views img,.facial-views img,.facade{aspect-ratio:var(--photo-ratio)}
}

/* Client results: transparent frames and letterboxing, without beige borders. */
.oral-pair figure,.result-views figure,.facial-views figure{border:0;background:transparent}
.oral-pair img,.result-views img,.facial-views img{background:transparent;border-radius:0}
.oral-pair figcaption,.result-views figcaption,.facial-views figcaption{background:transparent;border-top:0}
.additional-content .cmp,.additional-content .cmp img{background:transparent;border:0;box-shadow:none}

/* Ivory palette with wine accents and restrained gold details. */
:root{--cream:#FAF8F3;--paper:#FAF8F3;--wine:#4F1929;--gold:#92723F;--sand:#E2D9CC;--photo-surface:#FAF8F3}
body,.alt,.services,.results-section,.brand-statement{background:#FAF8F3}
.care-video{background:#FAF8F3}
section.ipn-intro{background:linear-gradient(180deg,#29221e 0%,#66564a 36px,#b4a696 85px,#e4dcd0 135px,#FAF8F3 190px)}
@media(max-width:760px){section.ipn-intro{background:linear-gradient(180deg,#29221e 0%,#66564a 30px,#b4a696 65px,#e4dcd0 110px,#FAF8F3 155px)}}

/* Slightly stronger typography while retaining the existing font families. */
body{font-weight:500}
h1,h2,h3,h1 em,h2 em,h3 em{font-weight:600}
.hero-copy h1,.hero-copy h1 em,.film-copy h2,.result-heading h3,.service-category summary h3{font-weight:600}
.label,.navlinks a,.pill,.hero-copy .pill,.navcta,.text-link,.film-skip{font-weight:600}
.category-content h4,.team .person h3{font-weight:600}
.result-tabs button,.space-selectors button,.film-section .film-mode{font-weight:600}
.prose p,.section-heading>p,.category-content p,.team .person p,.brand-statement p:not(.label),.cta p,footer{font-weight:500}

/* Contemporary navigation: translucent surface, pill CTA and clear mobile menu. */
.navigation{top:18px;left:4vw;width:92%;height:76px;padding:0 24px;border:1px solid #ffffffb3;border-radius:18px;background:#faf8f3ed;box-shadow:0 8px 30px #3b263010;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.navlinks{gap:4px}
.navlinks a{padding:10px 12px;min-height:42px;border-radius:9px;font-size:11px;font-weight:600;transition:background-color .2s,color .2s}
.navlinks a:hover{background:#4f19290a;color:var(--wine);text-decoration:none}
.navigation .navcta{min-height:46px;padding:13px 21px;border:1px solid var(--wine);border-radius:999px;background:var(--wine);color:#FAF8F3;font-size:12px;font-weight:600;letter-spacing:0;box-shadow:0 4px 12px #4f192919;transition:background-color .2s,box-shadow .2s,transform .2s}
.navigation .navcta:hover{background:#65283c;border-color:#65283c;color:#FAF8F3;box-shadow:0 6px 18px #4f192925;transform:translateY(-1px)}
.navigation .navcta:active{transform:none}
.navigation .navlinks a:focus-visible,.navigation .menu-toggle:focus-visible{outline:2px solid var(--wine);outline-offset:3px}
@media(min-width:761px) and (max-width:1100px){
 .navigation{left:3vw;width:94%;padding-inline:16px;gap:10px}
 .navlinks a{padding-inline:8px;font-size:10px}
 .navigation .navcta{padding-inline:15px;font-size:11px}
 .navigation .brand{gap:8px}.navigation .brand img{width:36px;height:36px}
}
@media(max-width:760px){
 .navigation{top:12px;left:4vw;width:92%;height:68px;padding:0 12px;gap:8px;border-radius:16px;background:#faf8f3f2}
 .navigation .brand{gap:6px}.navigation .brand img{width:30px;height:30px}.navigation .brand span{font-size:25px}.navigation .brand small{font-size:6px}
 .navigation .navcta{min-height:44px;padding:11px 14px;font-size:10px;line-height:1.4}
 .navigation .menu-toggle{flex-basis:44px;width:44px;height:44px;border:1px solid #4f19291a;border-radius:12px;background:#4f192907;gap:5px;padding:8px;color:var(--wine)}
 .menu-toggle>span:not(.menu-label){width:18px;height:1.5px;border-radius:2px}
 .menu-toggle .menu-label{font-size:7px;font-weight:600;letter-spacing:.02em;margin-top:1px}
 .menu-open .menu-toggle{background:#4f192912;border-color:#4f192933}
 .menu-open .menu-toggle>span:first-child{transform:translateY(3.25px) rotate(45deg)}
 .menu-open .menu-toggle>span:nth-child(2){transform:translateY(-3.25px) rotate(-45deg)}
 .navigation .navlinks{top:calc(100% + 10px);left:0;right:0;padding:10px;border:1px solid #e2d9cc;border-radius:16px;background:#faf8f3;box-shadow:0 16px 36px #36221b1a}
 .navigation .navlinks a{display:flex;justify-content:space-between;padding:14px 16px;min-height:50px;border:0;border-radius:10px;font-size:13px}
 .navigation .navlinks a::after{content:'';font-size:15px;color:#92723f;font-weight:500}
 .navigation .navlinks a:hover,.navigation .navlinks a:focus-visible{background:#4f192908}
}
@media(max-width:360px){
 .navigation{padding-inline:9px;gap:6px}.navigation .brand img{display:none}.navigation .navcta{padding-inline:11px}
}
@media(prefers-reduced-motion:reduce){.navigation .navcta,.navlinks a{transition:none}.navigation .navcta:hover{transform:none}}

/* Keep the mobile header aligned and the appointment label centered. */
.navigation .navcta{white-space:nowrap;text-align:center;line-height:1.4;flex-shrink:0}
@media(max-width:760px){
 .navigation{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;align-items:center;column-gap:8px;box-sizing:border-box}
 .navigation .brand{margin:0;min-width:0;align-items:center;justify-self:start}
 .navigation .navcta{order:initial;justify-self:end;align-self:center;display:flex;align-items:center;justify-content:center;min-height:44px;height:44px;padding:0 14px;font-size:11px;line-height:1.4;letter-spacing:0;transform:none}
 .navigation .menu-toggle{order:initial;justify-self:end;align-self:center;margin:0;height:44px;width:44px}
 .navigation .navlinks{grid-column:1/-1}
}
@media(max-width:380px){
 .navigation{padding-inline:10px;column-gap:6px}
 .navigation .brand img{display:none}
 .navigation .navcta{padding-inline:12px;font-size:10px}
}

/* Matching before/after sliders with keyboard and touch support. */
.result-comparison{width:100%;max-width:820px;margin-inline:auto;aspect-ratio:4/3;border:0;border-radius:6px;background:transparent;box-shadow:none}
.result-comparison img{width:100%;height:100%;object-fit:contain;object-position:center;background:transparent}
.result-comparison:focus-within{outline:2px solid var(--wine);outline-offset:4px}
.cmp .bar{background:var(--wine);box-shadow:0 0 0 1px #fff8}
.cmp .bar:after{width:44px;height:44px;border:2px solid #faf8f3;box-shadow:0 3px 12px #32101b33}
.cmp .tag{background:#faf8f3ed;font-weight:600;font-size:11px;letter-spacing:.03em}
.comparison-help{max-width:none;margin:12px 0 0;text-align:center;font-size:12px;color:var(--muted)}
footer{padding-top:30px}
@media(max-width:760px){
 .navigation>.brand{grid-column:1;grid-row:1}
 .navigation>.navcta{grid-column:2;grid-row:1}
 .navigation>.menu-toggle{grid-column:3;grid-row:1}
}

/* The photo gallery replaces the office tour; retain the care video. */
section.ipn-intro{background:var(--cream);padding-top:96px}
@media(max-width:760px){section.ipn-intro{padding-top:66px}}

/* Clear section boundaries and consistent editorial hierarchy. */
main>section:not(.journey){position:relative;border-top:1px solid #d7c8b7;padding-block:100px}
section.ipn-intro{background:#FAF8F3;padding-top:100px}
section.philosophy{background:#EEE7DD}
section.spaces{background:#FAF8F3}
section.services{background:#F0EAE1}
section.results-section{background:#FAF8F3}
section#equipe{background:#EEE7DD}
section.care-video{background:#FAF8F3}
section#mapa{background:#F0EAE1}
main>section:last-child{background:#FAF8F3;padding-block:80px}
main>section:not(.journey)>.wrap>.label,
main>section:not(.journey)>.wrap>.section-heading>div>.label{
 display:flex;align-items:center;gap:14px;color:var(--wine);font-size:11px;font-weight:600;letter-spacing:.19em;margin-bottom:24px;
}
main>section:not(.journey)>.wrap>.label::before,
main>section:not(.journey)>.wrap>.section-heading>div>.label::before{
 content:''!important;display:block;width:32px;height:2px;flex:0 0 32px;background:var(--gold);
}
main>section .section-heading{margin-bottom:44px;padding-bottom:28px;border-bottom:1px solid #92723f40}
section#equipe>.wrap>h2,section#mapa>.wrap>h2{padding-bottom:28px;margin-bottom:34px;border-bottom:1px solid #92723f40}
section#mapa .card{background:#FAF8F3;border-color:#d7c8b7;padding:32px;border-radius:8px}
section#mapa .facade{margin-top:0}
section#equipe .person{border-bottom-color:#bfae98}
section#equipe .person .ph{background:#e5dbcc}
section#resultados .result-tabs{margin-top:8px;margin-bottom:36px}
main>section{scroll-margin-top:24px}
footer{background:#F0EAE1;border-top:1px solid #d7c8b7}
@media(max-width:760px){
 main>section:not(.journey){padding-block:64px}
 section.ipn-intro{padding-top:64px}
 main>section:last-child{padding-block:56px}
 main>section .section-heading{gap:18px;margin-bottom:30px;padding-bottom:24px}
 main>section:not(.journey)>.wrap>.label,
 main>section:not(.journey)>.wrap>.section-heading>div>.label{font-size:10px;letter-spacing:.16em;gap:12px;margin-bottom:20px}
 main>section:not(.journey)>.wrap>.label::before,
 main>section:not(.journey)>.wrap>.section-heading>div>.label::before{width:26px;flex-basis:26px}
 section#equipe>.wrap>h2,section#mapa>.wrap>h2{padding-bottom:24px;margin-bottom:28px}
 section#mapa .card{padding:26px 20px}
}

/* Text-only navigation and a neutral drag handle replace decorative arrows. */
.navigation .navlinks a::after{content:none}
.space-controls>button{width:auto;min-width:74px;height:44px;padding:0 12px;border-radius:6px;font:600 11px/1.4 var(--sans)}
.cmp .bar:after{content:"";background:linear-gradient(#fff,#fff) calc(50% - 3px) center / 2px 14px no-repeat,linear-gradient(#fff,#fff) calc(50% + 3px) center / 2px 14px no-repeat,var(--wine)}
@media(max-width:760px){.space-controls{flex-wrap:wrap}.space-selectors{order:3;flex-basis:100%;margin-top:6px}.space-controls>button{min-width:80px}.space-next{margin-left:auto}}

/* Six consistent professional profiles, using the supplied portraits and biographies. */
#equipe .team{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}
#equipe .team .person{background:var(--paper);border:1px solid #d7c8b7;border-radius:8px;padding:0;overflow:hidden}
#equipe .team .person .ph{border:0;border-radius:0;aspect-ratio:4/3;background:transparent}
#equipe .team .person .ph img{object-fit:contain;object-position:center!important;background:transparent}
#equipe .team .person div.t{padding:24px}
#equipe .team .person h3{font-size:18px;line-height:1.45;min-height:0;max-width:none;letter-spacing:-.02em}
#equipe .team .person small{font-size:12px;line-height:1.65;color:var(--wine);letter-spacing:0;margin:10px 0 14px}
#equipe .team .person p{font-size:13px;line-height:1.8}
.team-registration{display:block;font-size:10px;letter-spacing:.04em;color:var(--muted);margin-top:16px}
@media(min-width:761px) and (max-width:1050px){#equipe .team{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){#equipe .team{grid-template-columns:1fr;gap:24px}#equipe .team .person div.t{padding:22px}}

/* Full, consistent portrait frames: no head clipping on any screen. */
#equipe .team .person .ph{position:relative;aspect-ratio:4/3;height:auto;background:#FAF8F3}
#equipe .team .person .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center!important;background:#FAF8F3}

/* Contrasting introduction directly below the opening photograph. */
section#clinica.ipn-intro{background:#4F1929;color:#FAF8F3;border-top:3px solid #B79865}
#clinica.ipn-intro h2,#clinica.ipn-intro h2 em{color:#FAF8F3}
#clinica.ipn-intro .prose p{color:#F0E5D9}
main>section#clinica.ipn-intro>.wrap>.label{color:#E6C997}
main>section#clinica.ipn-intro>.wrap>.label::before{background:#E6C997}
#clinica.ipn-intro .editorial-grid{align-items:start}

/* Fixed environment gallery frame; all photographs fit the same dimensions. */
#ambientes .space-photo{position:relative;width:100%;height:auto;aspect-ratio:4/3;overflow:hidden;background:#FAF8F3;border-radius:6px}
#ambientes .space-photo .space-image{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;background:#FAF8F3}
#ambientes .space-photo figcaption{z-index:1}

/* Gallery: fixed frame, with room for controls on desktop. */
#ambientes .space-visual {
  width: min(100%, 780px);
  margin-inline: auto;
}
#ambientes .space-photo .space-image {
  object-fit: cover;
}
#ambientes .space-image[src$="/entrada.webp"] {
  object-position: 50% 60%;
}
@media (min-width: 761px) {
  #ambientes .space-photo {
    aspect-ratio: 16 / 9;
    max-height: 55svh;
  }
  #ambientes .space-image[src$="/entrada.webp"] {
    object-position: 50% 60%;
  }
}

/* Portrait framing: bring faces into a consistent visual line. */
#equipe .team .person .ph img {
  transform-origin: 50% 0;
}
#equipe .team .person .ph img[src$="isabela-marfim.png"],
#equipe .team .person .ph img[src$="lauren-marfim.png"] {
  transform: translateY(-3%) scale(1.08);
}
#equipe .team .person .ph img[src$="danielle-marfim.png"] {
  transform: translateY(-1%) scale(1.05);
}

/* Keep the contact control above the hosting badge. */
.wa {
  bottom: calc(64px + env(safe-area-inset-bottom, 0px));
}

#equipe .team .person .ph img[src$="equipe-isabela-0586.jpg"] {
  object-fit: cover;
  object-position: center 35% !important;
}


/* Ivory navigation with a restrained wine accent. */
.navigation {
  background: #faf8f3;
  border: 0;
  border-bottom: 1px solid #d8c8bc;
  box-shadow: none;
  color: var(--wine);
}
.navigation .brand,
.navigation .navlinks a {
  color: var(--wine);
}
.navigation .navlinks a {
  text-underline-offset: 5px;
  text-decoration-thickness: 1px;
}
.navigation .navlinks a[aria-current="location"] {
  text-decoration-line: underline;
}
.navigation .navcta {
  border-radius: 8px;
  background: var(--wine);
  color: #faf8f3;
}
@media (max-width: 760px) {
  .navigation { height: 60px; }
  .navigation .menu-toggle {
    background: transparent;
    border-color: #d8c8bc;
    border-radius: 8px;
  }
  .navigation .navlinks {
    background: #faf8f3;
    border-radius: 10px;
    max-height: calc(100dvh - 92px);
    overflow-y: auto;
  }
  .navigation .navlinks a { min-height: 50px; }
}

/* Keep section headings clear of the fixed navigation. */
.navigation {
  position: fixed;
}
section[id] {
  scroll-margin-top: 110px;
}
@media (max-width: 760px) {
  section[id] {
    scroll-margin-top: 88px;
  }
}
