/* H-24A2: MERFOIS live-site fidelity layer.
 * The supplied current-site screenshot is the visual source of truth.
 * Visual-only: Core data and reservation behavior stay untouched.
 */
:root{
    --mf-live-gold:#c89a3d;
    --mf-live-gold-deep:#aa7c29;
    --mf-live-wine:#a32342;
    --mf-live-ink:#171417;
    --mf-live-muted:#777074;
    --mf-live-line:#e8e2e3;
    --mf-live-paper:#ffffff;
    --mf-live-soft:#f6f1f2;
    --mf-live-hero:#f2ebed;
}

/* Current site is a light centered surface. Decorative supplied assets stay subtle. */
.mf-body{position:relative;background:#f4f1f2;color:var(--mf-live-ink)}
.mf-body:before,.mf-body:after{content:"";position:fixed;top:0;bottom:0;z-index:-2;pointer-events:none;background-repeat:no-repeat;background-size:cover;opacity:.055}
.mf-body:before{left:0;width:max(0px,calc((100vw - 1260px)/2));min-width:0;background-image:url('https://merfois.com/images/background2-min.webp');background-position:center top;filter:grayscale(1)}
.mf-body:after{right:0;width:max(0px,calc((100vw - 1260px)/2));min-width:0;background-image:url('https://merfois.com/images/mainvisual3-min.jpg');background-position:center top;opacity:.045}
.mf-main{background:#fff}
.mf-shell{width:min(1180px,calc(100% - 40px))}

/* Header: white, compact and quiet like the current public MERFOIS header. */
.mf-header{background:rgba(255,255,255,.985);border-bottom:1px solid #eee9ea;box-shadow:0 1px 9px rgba(30,18,22,.045);backdrop-filter:blur(12px)}
.mf-header__inner{height:72px;gap:32px}
.mf-logo{width:94px}
.mf-logo img{filter:none}
.mf-nav{gap:22px;color:#242024;font-family:"Noto Sans JP",sans-serif;font-size:10px;font-weight:400;letter-spacing:.02em}
.mf-nav a{padding-top:2px}
.mf-nav a:after{height:1px;bottom:-12px;background:var(--mf-live-wine)}
.mf-nav a:hover,.mf-nav a.is-active{color:var(--mf-live-wine)}
.mf-nav a.is-active:after{right:0}
.mf-menu-button{color:#332d30}.mf-menu-button span{background:#332d30}.mf-menu-button b{font-weight:400;letter-spacing:.03em}

/* Mobile drawer follows the same light visual language. */
.mf-drawer__backdrop{background:rgba(25,17,20,.35)}
.mf-drawer__panel{background:#fff;color:#211d1f;border-left:1px solid #eee8ea;box-shadow:-18px 0 45px rgba(50,35,40,.12)}
.mf-drawer__close{color:#443b3f}
.mf-drawer__nav a{border-bottom:1px solid #eee8ea;font-family:"Noto Sans JP",sans-serif;font-size:13px;font-weight:400;letter-spacing:0}
.mf-drawer__nav a.is-active{color:var(--mf-live-wine)}
.mf-drawer__quick{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:24px}
.mf-drawer__quick a{display:flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #ddd5d7;color:#332c2f;font-size:11px;font-weight:600}
.mf-drawer__quick a:last-child{background:#222;border-color:#222;color:#fff}

/* First view: pale blush base + actual silhouette/logo. Ruby artwork is only a faint right-side layer. */
.mf-mainvisual{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(520px,45vw,700px);background:var(--mf-live-hero);border-bottom:1px solid #eee8e9}
.mf-mainvisual__backdrop{position:absolute;inset:0;z-index:-3;background-size:cover;background-position:center;opacity:.12}
.mf-mainvisual__ruby{position:absolute;z-index:-2;top:0;right:-2%;bottom:0;width:min(43vw,650px);background-repeat:no-repeat;background-size:cover;background-position:center right;opacity:.055;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.42) 34%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.42) 34%,#000 100%)}
.mf-mainvisual__inner{position:relative;min-height:clamp(520px,45vw,700px);display:block}
.mf-mainvisual__shadow{position:absolute;left:4%;top:24px;height:69%;width:auto;max-width:34%;object-fit:contain;object-position:left top;opacity:1;filter:none}
.mf-mainvisual__brand{position:absolute;left:5.5%;bottom:42px;width:min(210px,19vw);text-align:left;filter:none}
.mf-mainvisual__brand img{display:block;width:100%;max-height:180px;object-fit:contain;object-position:left center}

/* Slider and news are light and restrained instead of dark brand panels. */
.mf-home-slider{padding:18px 0;background:#fff}
.mf-home-slider:empty{display:none}
.mf-home-slider .aic-frontend-slider{border:1px solid #eee9ea;box-shadow:none;background:#fff}
.mf-home-slider .aic-slider-main .swiper-slide img{max-height:none}
.mf-home-news{padding:0 0 28px;background:#fff}
.mf-home-news .aic-newspicker{--aic-np-bg:#fff;--aic-np-title-bg:#fff;--aic-np-title-color:#201b1d;--aic-np-text:#625a5d;--aic-np-border:#eae4e6;min-height:40px;border-width:1px 0;border-color:#eae4e6;box-shadow:none}
.mf-home-news .aic-newspicker__title{min-width:84px;padding-inline:0;font-family:"Cormorant Garamond",serif;font-size:12px;letter-spacing:.14em;border-right:0}
.mf-home-news .aic-newspicker__item{gap:8px;padding:8px 12px;font-size:10px}
.mf-home-news .aic-newspicker__text{font-weight:400}

/* Intro mirrors the white current-site information block. */
.mf-intro{padding:44px 0 52px;background:#fff;border-bottom:0}
.mf-intro__inner{grid-template-columns:minmax(0,1.65fr) minmax(240px,.65fr);gap:72px;align-items:end}
.mf-intro__eyebrow{display:block;margin:0 0 18px;color:#292326;font-family:"Cormorant Garamond",serif;font-size:10px;letter-spacing:.13em}
.mf-intro h1{margin:0 0 18px;color:#171417;font-size:clamp(22px,2.5vw,32px);font-weight:600;line-height:1.55}
.mf-intro__copy>p{max-width:720px;margin:0;color:#6c6568;font-size:11px;line-height:1.95}
.mf-intro__contact{padding-left:30px;border-left:0}
.mf-intro__contact dl>div{grid-template-columns:76px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #ece7e8}
.mf-intro__contact dt{font-size:9px;color:#948c90}.mf-intro__contact dd{font-size:11px;color:#312b2e}
.mf-line-button{min-height:38px;margin-top:13px;background:#222;color:#fff;border:1px solid #222;font-size:10px}

/* Live page alternates plain white and a very pale blush background. */
.mf-section{padding:62px 0;background:#fff}
.mf-section--soft{background:#f8f5f5}
.mf-section-head--reference{display:block;margin-bottom:26px;padding-bottom:10px;border-bottom:1px solid #e5dfe1}
.mf-section-head--reference h2{display:flex;align-items:baseline;gap:10px;margin:0;font-family:"Noto Sans JP",sans-serif;font-weight:400}
.mf-section-head--reference h2 span{font-family:"Cormorant Garamond",serif;font-size:15px;letter-spacing:.12em;color:#292326;font-weight:500}
.mf-section-head--reference h2 b{font-size:10px;color:#898185;font-weight:400}
.mf-section-more{text-align:center;margin-top:30px}
.mf-text-link{display:inline-flex;align-items:center;justify-content:center;min-width:138px;padding:9px 17px;border:1px solid #e3dcde;background:#fff;color:#51484c;font-family:"Noto Sans JP",sans-serif;font-size:9px}
.mf-text-link:hover{border-color:#b58d98;color:var(--mf-live-wine)}

/* Compact current-site therapist cards. All therapist photographs remain 3:4. */
[data-aic-ui-pattern="therapist-cards"].mf-therapist-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 16px}
.mf-therapist-card{background:transparent}
.mf-therapist-card__image{aspect-ratio:3/4;border-radius:0;background:#f1edee;overflow:hidden}
.mf-therapist-card__image img{width:100%;height:100%;object-fit:cover}
.mf-therapist-card__image:after{display:none}
.mf-therapist-card__body{padding:8px 0 0}
.mf-therapist-card__identity{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.mf-therapist-card__name{font-size:12px;font-weight:500;color:#272124}
.mf-therapist-card__profile{margin:0;font-size:8px;color:#8b8387}
.mf-therapist-card__schedule{display:flex;align-items:center;gap:6px;min-height:24px;margin-top:6px;padding-top:6px;border-top:1px solid #e9e3e5}
.mf-therapist-card__status{position:static;display:inline-flex;align-items:center;justify-content:center;min-width:38px;padding:2px 4px;border:1px solid #d8cfd2;background:#fff;color:#756e71;font-size:7px;line-height:1.2;letter-spacing:0;backdrop-filter:none}
.mf-therapist-card__status.is-open{border-color:#d9a5b1;background:#fff;color:#ad2d4b}.mf-therapist-card__status.is-full{border-color:#5c5055;background:#5c5055;color:#fff}
.mf-therapist-card__time{font-size:9px;font-weight:500;color:#4d4649}

/* Article lists: thin dividers, small type, lots of whitespace. */
.mf-articles[data-aic-ui-pattern="article-list"]{max-width:none}
.mf-article-item{grid-template-columns:118px minmax(0,1fr) 20px;padding:15px 0;border-bottom:1px solid #e8e2e4}
.mf-article-item__meta{min-width:0}.mf-article-item__meta time{font-size:9px}.mf-article-item__meta span{font-size:8px;color:var(--mf-live-wine)}
.mf-article-item h3{margin:0;font-size:11px;font-weight:400;line-height:1.75}.mf-article-item>b{font-weight:400;color:#a1999c}

/* Footer is light on the live site. */
.mf-footer{padding:0;background:#fff;border-top:1px solid #eee8ea;color:#685f63}
.mf-footer__simple{min-height:134px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center}
.mf-footer__logo{width:86px}.mf-footer__logo img{filter:none}.mf-footer__simple>span{font-size:8px;color:#948b8f}.mf-footer__simple>small{font-size:8px;color:#b0a8ab}
.mf-mobile-actions{background:#fff;border-top:1px solid #e4dde0;box-shadow:0 -6px 20px rgba(45,31,36,.06)}
.mf-mobile-actions a{color:#51494c;border-right:1px solid #eee8ea}
.mf-mobile-actions a b{color:#322b2e}
.mf-mobile-actions .is-reserve{background:#262124;color:#fff}.mf-mobile-actions .is-reserve b{color:#fff}

@media(max-width:1260px){
    .mf-body:before,.mf-body:after{display:none}
}
@media(max-width:980px){
    .mf-nav{display:none}.mf-menu-button{display:block}.mf-header__inner{height:64px}
    .mf-logo{width:82px}
    .mf-mainvisual,.mf-mainvisual__inner{min-height:560px}
    .mf-mainvisual__shadow{left:5%;top:22px;height:68%;max-width:44%}
    .mf-mainvisual__brand{left:6%;bottom:42px;width:180px}
    .mf-mainvisual__ruby{width:48%;opacity:.045}
    .mf-intro__inner{grid-template-columns:1fr;gap:28px}.mf-intro__contact{padding-left:0;padding-top:16px;border-top:1px solid #ebe5e7}
    [data-aic-ui-pattern="therapist-cards"].mf-therapist-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
    .mf-shell{width:min(100% - 28px,1180px)}
    .mf-mainvisual,.mf-mainvisual__inner{min-height:500px}
    .mf-mainvisual__ruby{right:-34%;width:74%;opacity:.035}
    .mf-mainvisual__shadow{left:7%;top:22px;height:66%;max-width:58%}
    .mf-mainvisual__brand{left:8%;bottom:36px;width:142px}
    .mf-home-slider{padding-top:10px}
    .mf-home-news{padding-bottom:18px}
    .mf-intro{padding:34px 0 40px}
    .mf-intro h1{font-size:21px}
    .mf-section{padding:46px 0}
    .mf-section-head--reference{margin-bottom:20px}
    [data-aic-ui-pattern="therapist-cards"].mf-therapist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 10px}
    .mf-article-item{grid-template-columns:88px minmax(0,1fr) 14px}
    .mf-footer{padding-bottom:58px}
}
@media(max-width:390px){
    .mf-mainvisual,.mf-mainvisual__inner{min-height:455px}
    .mf-mainvisual__shadow{height:64%;max-width:64%}
    .mf-mainvisual__brand{bottom:30px;width:128px}
}
