/* Keep the complete source photographs, including every face, at all sizes. */
.hero-photo{background:#151214;display:flex;align-items:center;justify-content:center}.hero-photo img{object-fit:contain;object-position:center;width:100%;height:100%}.hero-photo:after{background:linear-gradient(0deg,#17141645,transparent 22%)}.intro-picture{height:auto;aspect-ratio:1120/1084;max-height:620px;background:#151214}.intro-picture img{object-fit:contain;object-position:center}.professional-photo{height:auto;aspect-ratio:738/644;max-height:580px;background:#151214}.professional-photo img,.professional-photo:hover img{object-fit:contain;object-position:center;transform:none}#universo .editorial-img,#universo .editorial-img.event{height:auto;aspect-ratio:4/5;background:#151214}#universo .editorial-img img,#universo .editorial-img:hover img,#universo .editorial-img.event img,#universo .editorial-img.event:hover img{position:static;inset:auto;top:auto;transform:none;width:100%;height:100%;object-fit:contain;object-position:center;max-width:100%}.instagram-button{display:inline-flex;gap:18px;align-items:center;margin-top:32px;padding:19px 24px;border:1px solid #ccb58b65;border-radius:100px;background:#ccb58b08;color:var(--gold);transition:background .25s,border-color .25s,box-shadow .25s}.instagram-icon{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.3;flex-shrink:0}.instagram-dot{fill:currentColor;stroke:none}.instagram-button strong{display:block;font-size:12px;letter-spacing:.5px;font-weight:500;color:var(--paper)}.instagram-button small{display:block;font-size:10px;letter-spacing:.3px;color:#b9adab;margin-top:5px}.instagram-arrow{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--edge);border-radius:50%;margin-left:20px;font-size:20px;transition:transform .25s,background .25s}.instagram-button:hover{background:#ccb58b15;border-color:var(--gold);box-shadow:0 10px 24px #0002}.instagram-button:hover .instagram-arrow{transform:translate(2px,-2px);background:#ccb58b18}.instagram-button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}@media(max-width:700px){.hero-photo{height:auto;aspect-ratio:463/685;max-height:590px}.intro-picture{height:auto;max-height:none;aspect-ratio:1120/1084}.professional-photo{height:auto;max-height:none;aspect-ratio:738/644}#universo .editorial-img,#universo .editorial-img.event{height:auto;aspect-ratio:4/5}.instagram-button{padding:16px 20px;gap:14px}.instagram-arrow{margin-left:12px}.instagram-button strong{font-size:11px}.instagram-button small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.instagram-button,.instagram-arrow{transition:none}.instagram-button:hover .instagram-arrow{transform:none}}

/* One stable, generous viewport across the doctor's seven original photos. */
.photo-dialog{width:calc(100% - 32px);max-width:1100px;padding:46px 20px 16px;max-height:96svh;overflow:auto}
.doctor-photo-stage{position:relative;height:min(78svh,calc(100svh - 150px),900px);width:100%;background:#151214;overflow:hidden}
.photo-dialog .doctor-photo-stage img{position:absolute;inset:0;transform:none;min-height:0;max-height:100%;max-width:100%;width:100%;height:100%;object-fit:contain;object-position:center;animation:doctor-photo-fade .22s ease-out}
.photo-dialog .gallery-controls{margin:12px 0 0;min-height:44px}
.photo-dialog .doctor-photo-note{margin:6px 0 0;min-height:32px;font-size:11px;line-height:1.5;text-align:center}
@keyframes doctor-photo-fade{from{opacity:.55}to{opacity:1}}
@media(max-width:700px){.photo-dialog{width:calc(100% - 16px);padding:44px 8px 12px}.doctor-photo-stage{height:calc(100svh - 200px)}.photo-dialog .gallery-controls{gap:8px}.photo-dialog .gallery-controls p{font-size:11px}.photo-dialog .doctor-photo-note{min-height:34px}}
@media(prefers-reduced-motion:reduce){.photo-dialog .doctor-photo-stage img{animation:none}}
.still .photo-dialog .doctor-photo-stage img{animation:none}

.photo-dialog>.close{position:absolute;right:12px;top:7px;margin:0;width:32px;height:32px;z-index:2}

.atelier-hero .hero-copy .hero-specialty{font-family:'Avenir Next','Helvetica Neue',Arial,sans-serif;color:var(--gold);font-size:14px;line-height:1.5;letter-spacing:2px;text-transform:uppercase;margin:0 0 24px;max-width:100%}
.intro .doctor-specialty{color:var(--gold);font-size:13px;line-height:1.6;letter-spacing:1.1px;margin:12px 0 0}
@media(max-width:700px){.atelier-hero .hero-copy .hero-specialty{font-size:11px;letter-spacing:1.3px;margin-bottom:17px}}

@media(max-width:700px){.atelier-hero.hero{height:900px;min-height:900px}}

/* The cover introduces the doctor with one clear specialty and two actions. */
.atelier-hero .hero-copy .hero-specialty{margin-bottom:32px}
.atelier-hero .actions{align-items:center;gap:28px}
@media(max-width:700px){.atelier-hero.hero{height:850px;min-height:850px}.atelier-hero .hero-copy .hero-specialty{margin-bottom:25px}.atelier-hero .actions{gap:20px;flex-wrap:wrap}}

.social-gallery-additions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}
.social-gallery-photo{position:relative;display:block;aspect-ratio:4/5;background:#151214;padding:0;border:0;overflow:hidden;cursor:zoom-in}
.social-gallery-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.social-gallery-expand{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #d3bc9555;border-radius:50%;color:var(--gold);background:#171416cc;font-size:20px;transition:background .2s}
.social-gallery-photo:hover .social-gallery-expand{background:#332a22}
.social-gallery-photo:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
@media(max-width:700px){.social-gallery-additions{gap:12px;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:5px 2px 14px;margin-top:28px}.social-gallery-photo{flex:0 0 82%;scroll-snap-align:start}.social-gallery-additions::-webkit-scrollbar{height:2px}.social-gallery-additions::-webkit-scrollbar-thumb{background:var(--gold)}}
@media(prefers-reduced-motion:reduce){.social-gallery-expand{transition:none}}

/* A single horizontal collection keeps the social portfolio compact. */
.social-carousel-shell{margin-top:32px}
.social-gallery-additions.social-carousel{display:flex;position:relative;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;margin:0;padding:4px 2px 20px;scrollbar-width:thin;scrollbar-color:var(--gold) #ffffff09}
.social-carousel .social-gallery-photo{flex:0 0 36%;aspect-ratio:4/5;scroll-snap-align:start}
.social-carousel::-webkit-scrollbar{height:2px}
.social-carousel::-webkit-scrollbar-thumb{background:var(--gold)}
.social-carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px}
.social-carousel-controls .label{margin:0;font-size:9px;letter-spacing:1.6px;color:var(--gold)}
.social-carousel-controls>div{display:flex;gap:10px}
.social-carousel-controls button{width:42px;height:42px;border:1px solid var(--edge);border-radius:50%;color:var(--gold);background:transparent;cursor:pointer;font-size:20px}
.social-carousel-controls button:hover:not(:disabled){background:#d3bc9512;border-color:var(--gold)}
.social-carousel-controls button:disabled{opacity:.25;cursor:default}
.social-carousel-controls button:focus-visible,.social-carousel:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
@media(max-width:700px){.social-gallery-additions.social-carousel{gap:14px;padding-bottom:16px}.social-carousel .social-gallery-photo{flex-basis:88%}.social-carousel-controls{margin-top:16px}.social-carousel-controls .label{font-size:8px;letter-spacing:1px}.social-carousel-controls button{width:38px;height:38px}}
