/* v64 reviewer-only home refinement. Original photographs and clinical copy retained. */
.home-page .hero-visual{position:relative}
.hero-caption-v64{position:absolute;right:24px;bottom:18px;z-index:3;display:flex;flex-direction:column;align-items:flex-end;gap:3px;color:#fff;text-shadow:0 1px 5px #2b2622;pointer-events:none}
.hero-caption-en-v64{font:500 17px/1.4 "Cormorant Garamond",serif;letter-spacing:.08em}
.hero-caption-ja-v64{font-size:14px;line-height:1.5}
.hero-caption-v64 a{pointer-events:auto;min-height:44px;display:inline-flex;align-items:center;color:#fff;text-decoration:underline;text-underline-offset:4px;font-size:14px}
.hero-caption-v64 a[hidden]{display:none!important}
.home-page .hero-slide{transition:opacity 1.2s ease-in-out!important}
.pickup-year-v64{display:block;font-size:14px;color:#7a716a;margin:8px 0 0}
.home-page #strengths .strength-tabs{min-width:0}
.home-page #strengths [role=tabpanel][hidden]{display:none!important}
.home-page #strengths .strength-detail .floor-card-catch{font-size:19px;line-height:1.8;color:#2b2622}
.home-page #strengths .strength-detail .floor-card-catch .beauty-catch-line{display:inline}
@media(min-width:1001px){
 .home-page .hero-visual{position:absolute!important}
 .home-page .today-care{bottom:112px!important}
 .home-page #strengths .strength-tabs button{min-height:70px;padding-block:16px}
}
@media(max-width:600px){
 .hero-caption-v64{right:16px;bottom:12px;gap:0;max-width:calc(100% - 32px)}
 .hero-caption-en-v64{font-size:14px}.hero-caption-ja-v64{font-size:13px}
 .hero-caption-v64 a{font-size:13px;min-height:44px}
 .home-page #strengths .strength-browser{display:block!important;min-width:0}
 .home-page #strengths .strength-tabs{display:flex!important;overflow-x:auto!important;overflow-y:hidden;gap:6px!important;grid-template-columns:none!important;scroll-snap-type:x proximity;padding:0 0 8px;max-width:100%;scrollbar-width:thin;touch-action:pan-x}
 .home-page #strengths .strength-tabs button{flex:0 0 136px;min-width:136px!important;min-height:58px;padding:9px 12px!important;display:flex!important;align-items:center;justify-content:flex-start;gap:9px;scroll-snap-align:start}
 .home-page #strengths .strength-tabs .strength-number{display:inline!important;font-size:14px}
 .home-page #strengths .strength-tabs button>span:not(.strength-number),.home-page #strengths .strength-tabs i{display:none!important}
 .home-page #strengths .strength-tabs .strength-mobile-label{display:inline!important;font-size:14px!important;line-height:1.5!important;white-space:normal;font-weight:500;color:inherit}
 .home-page #strengths .strength-pictures{margin-top:14px;min-width:0}
 .home-page #strengths .strength-detail{padding:20px 18px!important}
 .home-page #strengths .strength-detail .floor-card-catch{font-size:18px}
 .home-page #strengths .strength-detail .floor-card-catch .beauty-catch-line{display:block}
}
@media(prefers-reduced-motion:reduce){.home-page .hero-slide{transition:none!important}}

/* Latest 15:35 owner decision: visible lists, superseding tabs and slide panels. */
.pickup-card-grid-v64{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px;min-width:0}
.pickup-list-card-v64{display:flex;flex-direction:column;min-width:0;border:1px solid #d9d0c4;background:#f8f6f1;border-radius:8px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.pickup-list-card-v64.pickup-sleep-v64{background:#f3e5dc;border-color:#d7b7a2}
.pickup-list-photo-v64{position:relative;aspect-ratio:1.8;overflow:hidden;background:#eee8df}
.pickup-list-photo-v64 img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.pickup-list-number-v64,.strength-list-number-v64{font:600 17px/1.3 "Zen Kaku Gothic New",sans-serif;font-variant-numeric:tabular-nums;letter-spacing:0;color:#694832}
.pickup-list-number-v64{position:absolute;left:12px;top:12px;border-radius:4px;padding:6px 9px;background:#f8f6f1}
.pickup-list-image-label-v64{position:absolute;bottom:8px;right:10px;background:rgba(248,246,241,.92);padding:3px 6px;font-size:12px;color:#7a716a;border-radius:3px}
.pickup-list-copy-v64{display:flex;flex-direction:column;align-items:flex-start;padding:20px;min-width:0;flex:1}
.pickup-list-copy-v64 h3{font-size:21px;line-height:1.65;font-weight:500;margin:0 0 10px;overflow-wrap:anywhere}
.pickup-list-copy-v64 p{font-size:16px;line-height:1.85;margin:0 0 12px}
.pickup-list-copy-v64 .pickup-description{display:block!important;max-height:none!important;overflow:visible!important;-webkit-line-clamp:unset!important;line-clamp:unset!important}
.pickup-list-copy-v64 .sleep-pickup-note-v51{font-size:14px;color:#7a716a;margin-bottom:8px}
.pickup-list-copy-v64 a.button{margin-top:auto;align-self:stretch;min-height:44px;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;font-size:14px;background:transparent!important;border:1px solid #c9b7a8;color:#694832}
.pickup-list-copy-v64 .pickup-year-v64{margin-bottom:12px}
.strength-card-grid-v64{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px;min-width:0}
.strength-list-card-v64{position:relative;display:grid;grid-template-columns:134px minmax(0,1fr);gap:20px;align-items:start;padding:22px;background:#f8f6f1;border:1px solid #d9d0c4;border-radius:8px;min-width:0;transition:transform .2s ease,box-shadow .2s ease}
.strength-list-number-v64{position:absolute;left:31px;top:30px;z-index:1;padding:4px 7px;border-radius:4px;background:rgba(248,246,241,.96)}
.strength-list-photo-v64{aspect-ratio:1.15;overflow:hidden;border-radius:6px}
.strength-list-photo-v64 img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.strength-list-copy-v64{min-width:0}.strength-list-copy-v64 h3{font-size:20px;line-height:1.65;font-weight:500;margin:0 0 10px}
.strength-list-copy-v64 p{font-size:16px;line-height:1.85;margin:0 0 12px}
.strength-list-copy-v64 .floor-card-catch{font-size:16px;color:#694832}.strength-list-copy-v64 .beauty-catch-line{display:inline}
.strength-list-details-v64{margin:0 0 10px;border-top:1px solid #d9d0c4}
.strength-list-details-v64 summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;font-size:14px;cursor:pointer;list-style:none;color:#694832}
.strength-list-details-v64 summary::-webkit-details-marker{display:none}.strength-list-details-v64 summary::after{content:"＋"}.strength-list-details-v64[open] summary::after{content:"−"}
.strength-list-copy-v64 .strength-related{margin:4px 0 0;display:flex;flex-wrap:wrap;gap:4px 14px}
.strength-list-copy-v64 .strength-related a{min-height:44px;display:inline-flex;align-items:center;font-size:14px;text-decoration:underline;text-underline-offset:4px}
@media(hover:hover) and (pointer:fine){.pickup-list-card-v64:hover,.strength-list-card-v64:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2f262210}.pickup-list-card-v64:hover img,.strength-list-card-v64:hover img{transform:scale(1.02)}}
@media(max-width:900px){.pickup-card-grid-v64{grid-template-columns:repeat(2,minmax(0,1fr))}.strength-list-card-v64{grid-template-columns:98px minmax(0,1fr);padding:18px;gap:14px}.strength-list-number-v64{left:24px;top:24px}}
@media(max-width:600px){
 .pickup-card-grid-v64,.strength-card-grid-v64{grid-template-columns:1fr;gap:14px;margin-top:22px}
 .pickup-list-card-v64{display:grid;grid-template-columns:30% minmax(0,1fr);align-items:stretch}
 .pickup-list-photo-v64{aspect-ratio:auto;min-height:144px;height:100%;max-height:100%;border-radius:0}
 .pickup-list-photo-v64 img{object-fit:cover;object-position:center;max-height:100%;height:100%}
 .pickup-list-number-v64{font-size:15px;left:7px;top:8px;padding:4px 6px}
 .pickup-list-image-label-v64{right:4px;bottom:5px;font-size:10px;white-space:normal;padding:2px 4px;max-width:calc(100% - 8px)}
 .pickup-list-copy-v64{padding:16px 13px}.pickup-list-copy-v64 h3{font-size:18px;line-height:1.6;margin-bottom:9px}
 .pickup-list-copy-v64 p,.strength-list-copy-v64 p{font-size:15px;line-height:1.85}
 .pickup-list-copy-v64 .sleep-pickup-note-v51{font-size:13px}.pickup-list-copy-v64 a.button{padding:9px 10px;font-size:14px;margin-top:4px}
 .strength-list-card-v64{grid-template-columns:86px minmax(0,1fr);padding:16px;gap:13px}
 .strength-list-number-v64{font-size:15px;left:22px;top:22px}
 .strength-list-copy-v64 h3{font-size:18px;line-height:1.65}.strength-list-copy-v64 .beauty-catch-line{display:inline}
 .strength-list-copy-v64 .floor-card-catch{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.pickup-list-card-v64,.strength-list-card-v64,.pickup-list-card-v64 img,.strength-list-card-v64 img{transition:none!important;transform:none!important}}

.pickup-list-photo-v64 img{object-fit:contain;background:#eee8df}
@media(max-width:600px){
 .pickup-list-photo-v64{height:auto!important;min-height:0;align-self:start;aspect-ratio:auto;padding-top:34px;background:transparent}
 .pickup-list-photo-v64 img{height:auto!important;max-height:none;object-fit:contain}
 .pickup-list-image-label-v64{position:static;display:block;max-width:100%;font-size:12px;line-height:1.5;background:transparent;padding:6px 5px;color:#7a716a}
}

/* Final readability: exact original lead and full remainder, never truncated. */
.pickup-list-details-v64{width:100%;border-top:1px solid #d9d0c4;margin:0 0 12px}
.pickup-list-details-v64 summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;cursor:pointer;list-style:none;font-size:14px;color:#694832}
.pickup-list-details-v64 summary::-webkit-details-marker{display:none}.pickup-list-details-v64 summary::after{content:"＋"}.pickup-list-details-v64[open] summary::after{content:"−"}
.pickup-list-photo-v64.is-photo-v64 img{object-fit:cover!important}.pickup-list-photo-v64.is-diagram-v64 img{object-fit:contain!important}
@media(max-width:600px){
 .strength-list-card-v64{grid-template-columns:86px minmax(0,1fr);column-gap:14px;row-gap:10px}
 .strength-list-card-v64 .strength-list-photo-v64{grid-column:1;grid-row:1;align-self:start}
 .strength-list-copy-v64{display:contents}
 .strength-list-copy-v64>h3{grid-column:2;grid-row:1;align-self:center;margin:0}
 .strength-list-copy-v64>p,.strength-list-copy-v64>details{grid-column:1/-1;margin:0}
 .strength-list-copy-v64 .strength-related{grid-column:1/-1;margin-top:0;gap:2px 14px}
 .pickup-list-photo-v64.is-photo-v64 img{height:110px!important;object-fit:cover!important}
}

/* Owner-reported contrast defect: explicit colors on every light-card text layer. */
#strengths .strength-list-card-v64{background:#f8f6f1!important;color:#2b2622!important}
#strengths .strength-list-card-v64 h3,#strengths .strength-list-card-v64 p,#strengths .strength-list-card-v64 strong,#strengths .strength-list-card-v64 li,#strengths .strength-list-card-v64 .floor-card-catch,#strengths .strength-list-card-v64 .beauty-catch-line,#strengths .strength-list-details-v64 p{color:#2b2622!important;opacity:1!important}
#strengths .strength-list-card-v64 a,#strengths .strength-list-card-v64 a span,#strengths .strength-list-card-v64 summary,#strengths .strength-list-card-v64 summary::after{color:#8a4c2e!important;opacity:1!important}
#strengths .strength-list-number-v64{color:#8a4c2e!important;opacity:1!important;font-family:"Zen Kaku Gothic New",sans-serif!important}

/* Owner-approved home-only WEB booking palette; dimensions and destinations unchanged. */
body.editorial-home.home-page a.cta-booking,
body.editorial-home.home-page a.button.primary.cta-booking,
body.editorial-home.home-page #guide .service-priority>a.booking-banner.cta-booking{
 background:#94674F!important;color:#FFFFFF!important;border-color:#94674F!important;
}
body.editorial-home.home-page a.cta-booking:is(:hover,:focus,:focus-visible),
body.editorial-home.home-page a.button.primary.cta-booking:is(:hover,:focus,:focus-visible),
body.editorial-home.home-page #guide .service-priority>a.booking-banner.cta-booking:is(:hover,:focus,:focus-visible){
 background:#80573F!important;color:#FFFFFF!important;border-color:#80573F!important;
}
body.editorial-home.home-page a.cta-booking :is(span,h3,p,small,svg),
body.editorial-home.home-page #guide .service-priority>a.booking-banner.cta-booking :is(span,h3,p,small,svg){color:#FFFFFF!important;}

/* Owner-reproduced medical-card overlap: restore SVG and destination to explicit grid areas. */
body.home-page #medical .medical-card>.icon{
 position:static!important;inset:auto!important;transform:none!important;grid-area:icon!important;align-self:center!important;justify-self:center!important;
}
body.home-page #medical .medical-card>.floor-destination{
 position:static!important;inset:auto!important;transform:none!important;grid-area:destination!important;justify-self:start;align-self:center;min-width:0;max-width:100%;white-space:nowrap!important;margin:0!important;
}
body.home-page #medical .medical-card:has(>.floor-destination)>.card-arrow{display:none!important;}
@media(min-width:601px){
 body.home-page #medical .medical-card:has(>.floor-destination){grid-template-areas:"icon title arrow" "description description description" "destination destination destination"!important;}
}
@media(max-width:600px){
 body.home-page #medical .medical-card:has(>.floor-destination){grid-template-areas:"icon title" "destination destination"!important;}
}
@media(min-width:601px){
 body.home-page #medical .medical-card>.card-arrow{line-height:1!important;display:flex;align-items:center;justify-content:center;}
}

/* v68: only the reservation illustration; the white text and mocha button remain. */
body.home-page #guide .booking-banner svg.service-art g{color:#80573F!important;stroke:#80573F!important;}
body.home-page #guide .booking-banner svg.service-art g :is(rect,circle)[fill]{fill:#F8F6F1!important;}
body.home-page .consultation-image-note-v68{display:block;position:relative;font-size:14px;line-height:1.6;margin-top:8px;color:#7a716a;}
