.salon-exterior img {width:100%;height:auto;display:block}
.salon-exterior figcaption {margin-top:12px;font-size:9px;letter-spacing:1px;color:var(--muted)}
footer {position:relative;isolation:isolate;overflow:hidden;min-height:300px}
.footer-portrait {position:absolute;z-index:-1;right:18%;bottom:-170px;height:610px;width:auto;max-width:none;filter:grayscale(1);opacity:.12;pointer-events:none;mix-blend-mode:multiply}
.footer-top,.footer-bottom {position:relative;z-index:1}
.video-error {position:absolute;inset:auto 15px 20px;background:var(--cream);padding:10px;font-size:10px}
@media(max-width:800px) {.footer-portrait {right:-90px;height:580px;bottom:-100px;opacity:.1}}
.hero-visual.has-video {aspect-ratio:9/16;min-height:0;max-height:810px;background:#28261f;justify-self:center;width:min(100% - 20px,456px);align-self:center;position:relative}
.hero-visual.has-video:after {display:none}
.hero-video {width:100%;height:100%;display:block;object-fit:contain;position:relative;background:#28261f}
.hero:has(.hero-video) {min-height:0}
.hero:has(.hero-video) .hero-copy {justify-content:center;padding-top:35px;padding-bottom:30px}
.hero:has(.hero-video) .hero-foot {margin-top:10px;padding-top:20px}
.service-photo-grid {display:grid;grid-template-columns:1fr 1fr;gap:45px 32px}
.service-photo {aspect-ratio:4/3;position:relative;overflow:hidden;background:#e7e0d4}
.service-photo img {width:100%;height:100%;object-fit:cover;filter:saturate(.65);transition:transform .65s,filter .65s}
.service-photo-card:hover img {transform:scale(1.04);filter:saturate(.9)}
.service-photo>span {position:absolute;bottom:18px;left:18px;color:white;font-size:9px;letter-spacing:1.7px;background:#302d2699;padding:7px 12px}
.service-photo-title {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:19px}
.service-photo-title h3 {font-size:34px}
.service-photo-card>p {color:var(--muted);font-size:11px;margin-top:12px}
.photo-note {font-size:9px;line-height:1.7;color:var(--muted);margin-top:30px;max-width:660px}
.photo-note a {border-bottom:1px solid var(--line);white-space:nowrap}
.review-heading {display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding:22px 0 30px}
.review-heading p {font-size:11px;color:var(--muted)}
.review-gallery {columns:2;column-gap:32px;max-width:1000px;margin:0 auto}
.review-card {break-inside:avoid;margin-bottom:35px;display:inline-block;width:100%}
.review-shot {display:block;width:100%;padding:20px;border:1px solid var(--line);background:#fff;text-align:left;transition:box-shadow .3s,border-color .3s}
.review-shot:hover {border-color:var(--gold);box-shadow:0 12px 35px #302d2610}
.review-shot img {width:100%;height:auto;max-width:440px;margin:auto}
.review-shot>span {display:block;text-align:right;font-size:9px;color:var(--gold);margin-top:15px}
.review-card figcaption {padding:16px 0 0;display:flex;justify-content:space-between;align-items:center;font-size:10px;gap:15px}
.review-card figcaption strong {font-weight:500}
.review-card figcaption>span {color:var(--muted);font-size:9px;white-space:nowrap}
.review-dialog-image {width:100%;height:auto;margin-bottom:25px;background:#fff}
.review-dialog-name {font-size:34px!important}
.master-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.portrait-placeholder {aspect-ratio:4/5;background:#e6dfd1;border:1px solid #d8cdb9;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.portrait-placeholder:before {content:'';position:absolute;border:1px solid #bfaa826b;inset:14px}
.portrait-placeholder>span {font:120px/1 var(--serif);color:#bda77d}
.portrait-placeholder>small {position:absolute;bottom:33px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:1.7px;color:#8c7752}
.master-card:nth-child(2) .portrait-placeholder {background:#e1e2d9}
.master-card:nth-child(3) .portrait-placeholder {background:#e9dfd5}
.master-card-text {padding-top:23px}
.master-card h2 {font-size:43px;margin:15px 0}
.master-card p {font-size:11px;color:var(--muted);margin-bottom:22px;min-height:40px}
.master-profile {display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}
.master-about>h2 {font-size:59px;margin:22px 0}
.master-about>p {font-size:12px;margin:15px 0;color:var(--muted)}
.master-facts {display:grid;grid-template-columns:150px 1fr;gap:15px;margin:28px 0;font-size:11px}
.master-facts dt {color:var(--muted)}
.master-facts dd {margin:0}
.portfolio-head {margin-top:75px}
.portfolio-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.work-placeholder {aspect-ratio:4/5;border:1px solid var(--line);background:#ede9df;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px}
.work-placeholder>span {font:65px var(--serif);color:#c5b38d}
.work-placeholder strong {font-size:11px;font-weight:400}
.work-placeholder small {font-size:9px;color:var(--muted)}
@media(min-width:801px) {
 .hero-visual.has-video {height:min(740px,calc(100svh - 190px));width:auto;max-height:none;aspect-ratio:9/16;min-width:240px}
}
@media(max-width:800px) {
 .hero-visual.has-video {width:100%;height:auto;max-width:440px;max-height:none;aspect-ratio:9/16;margin:0 auto 25px}
 .hero:has(.hero-video) .hero-foot {margin-top:0}
 .service-photo-grid {gap:30px 18px}
 .service-photo-title h3 {font-size:27px}
 .service-photo-title .arrow {font-size:20px}
 .service-photo-title {gap:10px}
 .review-gallery {column-gap:20px}
 .review-shot {padding:12px}
 .review-card figcaption {display:block}
 .review-card figcaption>span {display:block;margin-top:4px}
 .review-heading {flex-direction:column;gap:10px}
 .master-grid {gap:35px;grid-template-columns:1fr}
 .master-card {display:grid;grid-template-columns:135px 1fr;gap:22px}
 .master-card .portrait-placeholder {height:215px;aspect-ratio:auto}
 .portrait-placeholder>span {font-size:85px}
 .portrait-placeholder>small {font-size:6px;bottom:25px;letter-spacing:1px}
 .master-card-text {padding-top:8px}
 .master-card h2 {font-size:35px;margin:12px 0}
 .master-card p {margin-bottom:15px;min-height:0}
 .master-profile {grid-template-columns:1fr;gap:35px}
 .master-profile>div:first-child {max-width:380px;width:100%;margin:auto}
 .master-facts {grid-template-columns:135px 1fr}
 .portfolio-grid {gap:15px}
 .work-placeholder strong {font-size:9px}
 .work-placeholder small {font-size:7px}
 .work-placeholder>span {font-size:40px}
 .work-placeholder {gap:8px}
 .portfolio-head {margin-top:55px}
}
@media(max-width:520px) {
 .service-photo-grid,.review-gallery {display:block;columns:auto}
 .service-photo-card {display:block;margin-bottom:30px}
 .service-photo-title h3 {font-size:31px}
 .review-card {margin-bottom:30px}
 .review-shot {padding:16px}
 .review-card figcaption {display:flex}
 .review-card figcaption>span {margin:0}
 .portfolio-grid {grid-template-columns:1fr}
 .work-placeholder {aspect-ratio:5/4}
 .work-placeholder strong {font-size:12px}
 .work-placeholder small {font-size:10px}
}
