/* Copyright 2026 KUMITATE. GPL-2.0-or-later.
 * Editorial salon presentation. Core blocks remain editable. */
.siteframe-salon-page { --salon-gap:clamp(80px,12vw,168px); max-width:1440px; margin-inline:auto; padding:0 clamp(24px,7vw,100px) var(--salon-gap); color:var(--wp--preset--color--contrast); }
.siteframe-salon-page *, .siteframe-salon-header *, .siteframe-salon-footer * { box-sizing:border-box; }
.siteframe-salon-page,.siteframe-salon-footer { font-family:var(--wp--preset--font-family--sans,sans-serif); }
.siteframe-salon-page :is(.siteframe-salon-hero,.siteframe-salon-style-grid,.siteframe-salon-flow,.siteframe-salon-staff,.siteframe-salon-visit-grid) > * { margin-block:0; }
.siteframe-salon-page h1,.siteframe-salon-page h2,.siteframe-salon-page h3 { white-space:pre-line; text-wrap:pretty; font-weight:400; }
.siteframe-salon-page p { line-height:2.1; font-size:14px; }
.siteframe-salon-page .siteframe-salon-eyebrow { font-family:Arial,sans-serif; font-size:11px; font-weight:400; letter-spacing:.08em; line-height:1.5; margin:0 0 30px; }
.siteframe-salon-page .siteframe-salon-small { font-size:11px; line-height:1.9; color:#62645e; }
.siteframe-salon-page .wp-block-image { margin:0; overflow:hidden; border-radius:var(--wp--custom--siteframe--radius--card,2px); }
.siteframe-salon-page .wp-block-image img { display:block; width:100%; height:100%; object-fit:cover; }
.siteframe-salon-page .wp-block-buttons { margin-top:32px; }
.siteframe-salon-page .wp-block-button__link,.siteframe-salon-footer .wp-block-button__link { border:0; border-radius:4px; background:transparent; color:var(--wp--preset--color--contrast); padding:13px 18px; font-size:12px; font-weight:400; min-height:44px; width:auto; min-width:0; text-decoration:none; box-shadow:none; transition:background .25s,transform .25s; }
.siteframe-salon-page .wp-block-button__link:hover,.siteframe-salon-footer .wp-block-button__link:hover { background:var(--wp--preset--color--surface); color:var(--wp--preset--color--contrast); transform:translateX(4px); text-decoration:none; }
.siteframe-salon-page .wp-block-button__link::after,.siteframe-salon-footer .wp-block-button__link::after { content:none; }
.siteframe-salon-section { margin-block:var(--salon-gap); }
.siteframe-salon-page > .siteframe-salon-section:first-child { padding-top:70px; max-width:1020px; }
.siteframe-salon-page > .siteframe-salon-section:first-child > h1 { max-width:19em; }
.siteframe-salon-hero { display:grid; grid-template-columns:.7fr 1.45fr .55fr; column-gap:40px; row-gap:72px; padding-top:12px; }
.siteframe-salon-hero .siteframe-salon-hero-image { grid-column:2; grid-row:1; width:100%; height:min(72vw,650px); border-radius:2px; box-shadow:0 18px 42px #2222220a; }
.siteframe-salon-hero-copy { grid-column:2/4; grid-row:2; max-width:620px; padding-left:12%; }
.siteframe-salon-hero-copy h1 { font-size:clamp(28px,3vw,42px); line-height:1.8; letter-spacing:.08em; margin:0 0 28px; max-width:15em; }
.siteframe-salon-hero-copy > p:not(.siteframe-salon-eyebrow):not(.siteframe-salon-small) { max-width:29em; }
.siteframe-salon-hero .siteframe-salon-small { margin-top:26px; }
.siteframe-salon-style-grid { display:grid; grid-template-columns:1fr 1.2fr .95fr; gap:clamp(24px,5vw,72px); align-items:start; }
.siteframe-salon-style-intro { padding-top:80px; }
.siteframe-salon-style-intro h2 { font-size:clamp(25px,2.5vw,34px); line-height:1.8; }
.siteframe-salon-style-card .wp-block-image { aspect-ratio:3/4; box-shadow:0 12px 30px #2222220a; }
.siteframe-salon-style-grid > .siteframe-salon-style-card:last-child { padding-top:140px; }
.siteframe-salon-style-card img { transition:transform .6s; }
.siteframe-salon-style-card:hover img { transform:scale(1.025); }
.siteframe-salon-style-card h3 { font-family:Georgia,serif; font-size:24px; margin:22px 0 10px; }
.siteframe-salon-style-card p { font-size:12px; margin:0; }
.siteframe-salon-menu { max-width:850px; margin-left:auto; padding:0; background:transparent; }
.siteframe-salon-menu-row { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-block:12px; padding:24px 28px; background:var(--wp--preset--color--surface); border-radius:2px; }
.siteframe-salon-menu-row .siteframe-salon-eyebrow { margin:0 0 10px; }
.siteframe-salon-menu-row h3 { font-size:20px; margin:0; }
.siteframe-salon-menu-price { text-align:right; }
.siteframe-salon-menu-price .siteframe-salon-price { font-family:Georgia,serif; font-size:26px; font-weight:400; line-height:1.2; margin:0; }
.siteframe-salon-menu-price .siteframe-salon-small { margin:10px 0 0; }
.siteframe-salon-staff { display:grid; grid-template-columns:.8fr 1fr; gap:clamp(40px,10vw,160px); align-items:center; max-width:1030px; }
.siteframe-salon-staff-image { aspect-ratio:3/4; }
.siteframe-salon-staff-copy h2 { line-height:1.8; }
.siteframe-salon-staff-copy p:not(.siteframe-salon-eyebrow) { max-width:28em; }
.siteframe-salon-staff-name { margin-top:36px; font-size:12px!important; }
.siteframe-salon-flow { display:grid; grid-template-columns:repeat(3,1fr); gap:48px; margin-top:52px; }
.siteframe-salon-step { background:transparent; padding:0; }
.siteframe-salon-step-number { font-family:Georgia,serif; font-size:16px!important; font-style:italic; margin:0 0 30px; }
.siteframe-salon-step h3 { font-size:22px; }
.siteframe-salon-step p:not(.siteframe-salon-step-number) { font-size:13px; }
.siteframe-salon-cta { display:flex; align-items:center; justify-content:space-between; gap:50px; padding:70px 0; background:transparent; margin-top:var(--salon-gap); }
.siteframe-salon-cta h2 { font-size:clamp(32px,4.5vw,58px); line-height:1.7; margin-block:0 24px; }
.siteframe-salon-cta-copy p:last-child { max-width:32em; font-size:13px; margin-bottom:0; }
.siteframe-salon-cta .wp-block-buttons { flex-shrink:0; margin:0; }
.siteframe-salon-cta .wp-block-button__link { padding:22px 30px; border-radius:4px; background:var(--wp--preset--color--surface); }
.siteframe-salon-visit-grid { display:grid; grid-template-columns:1fr .9fr; gap:clamp(32px,8vw,120px); align-items:center; }
.siteframe-salon-visit-photo .wp-block-image { aspect-ratio:4/5; }
.siteframe-salon-page .wp-block-details { background:var(--wp--preset--color--surface); padding:20px 24px; border:0; border-radius:2px; margin-block:12px; }
.siteframe-salon-page .wp-block-details summary { cursor:pointer; font-weight:400; padding:8px; }
.siteframe-salon-page .wp-block-details summary:hover { background:#e8e7e2; }
.siteframe-salon-header { max-width:1440px; padding:32px clamp(24px,5vw,72px); margin:auto; display:flex; align-items:flex-start; justify-content:space-between; gap:30px; min-height:112px; }
.siteframe-salon-header .wp-block-site-title { margin:0; flex-shrink:0; font-family:Georgia,serif; font-size:54px; font-weight:400; letter-spacing:-.055em; line-height:1; }
.siteframe-salon-header .wp-block-site-title a { text-decoration:none; }
.siteframe-salon-header .wp-block-navigation { margin:0; font-family:Arial,sans-serif; font-size:12px; font-weight:400; position:relative; z-index:20; }
.siteframe-salon-header .wp-block-navigation__container { gap:6px; }
.siteframe-salon-header .wp-block-navigation-item__content { padding:12px 14px; border-radius:4px; text-decoration:none; transition:background .25s; }
.siteframe-salon-header .wp-block-navigation-item__content:hover { background:var(--wp--preset--color--surface); text-decoration:none; }
.siteframe-salon-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open { background:var(--wp--preset--color--base)!important; padding:24px; }
.siteframe-salon-header .is-menu-open .wp-block-navigation__responsive-container-content { padding-top:80px; align-items:stretch; }
.siteframe-salon-header .is-menu-open .wp-block-navigation__container { align-items:stretch; width:100%; gap:16px; }
.siteframe-salon-header .is-menu-open .wp-block-navigation-item { width:100%; }
.siteframe-salon-header .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item .wp-block-navigation-item__content { box-sizing:border-box; display:flex; align-items:center; width:100%; min-height:56px; padding:16px 24px; font-size:18px; }
.siteframe-salon-header .wp-block-navigation__responsive-container-open,.siteframe-salon-header .wp-block-navigation__responsive-container-close { min-width:44px; min-height:44px; }
.siteframe-salon-footer { background:var(--wp--preset--color--base); color:var(--wp--preset--color--contrast); padding:50px clamp(24px,7vw,100px) 32px; }
.siteframe-salon-footer-grid { display:flex; justify-content:space-between; gap:60px; margin-bottom:90px; }
.siteframe-salon-footer-brand h2 { font-family:Georgia,serif; font-size:clamp(64px,14vw,180px); font-weight:400; letter-spacing:-.055em; margin:0; color:inherit; line-height:1; }
.siteframe-salon-footer p { font-size:12px; line-height:2; }
.siteframe-salon-footer h3 { font-family:Georgia,serif; font-weight:400; font-size:24px; color:inherit; }
.siteframe-salon-footer .siteframe-salon-small { font-size:10px; color:#62645e; }
.siteframe-salon-copyright { text-align:right; margin-top:24px; }
.siteframe-salon-main { margin-block-start:0; }
.wp-site-blocks > header:has(.siteframe-salon-header) { position:relative; box-shadow:none; border:0; }
@media(min-width:1100px) {
 .siteframe-salon-header .wp-block-navigation__container { flex-direction:column; align-items:flex-start; }
 .siteframe-salon-header .wp-block-navigation { position:absolute; right:5vw; top:28px; width:170px; }
 .siteframe-salon-header .wp-block-navigation-item__content { white-space:nowrap; }
 .siteframe-salon-header { min-height:108px; }
}
@media(max-width:900px) {
 .siteframe-salon-header { min-height:90px; padding-block:24px; }
 .siteframe-salon-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none; }
 .siteframe-salon-header .wp-block-navigation__responsive-container-open { display:flex; }
 .siteframe-salon-style-grid { grid-template-columns:1fr 1fr; }
 .siteframe-salon-style-intro { grid-column:1/-1; padding:0; max-width:420px; }
 .siteframe-salon-style-grid > .siteframe-salon-style-card:last-child { padding-top:90px; }
 .siteframe-salon-hero { grid-template-columns:.3fr 1.45fr .15fr; }
 .siteframe-salon-hero-copy { padding:0; grid-column:2/4; }
 .siteframe-salon-cta { display:block; }
 .siteframe-salon-cta .wp-block-buttons { margin-top:35px; }
}
@media(max-width:600px) {
 .siteframe-salon-page { padding-inline:24px; }
 .siteframe-salon-header .wp-block-site-title { font-size:43px; }
 .siteframe-salon-header { padding-inline:24px; min-height:98px; }
 .siteframe-salon-hero { grid-template-columns:1fr; gap:58px; padding-top:42px; }
 .siteframe-salon-hero .siteframe-salon-hero-image { grid-column:1; width:82%; justify-self:end; height:auto; aspect-ratio:3/4; }
 .siteframe-salon-hero-copy { grid-column:1; max-width:100%; padding:0 6px; }
 .siteframe-salon-hero-copy h1 { font-size:26px; line-height:1.8; max-width:11em; text-wrap:balance; }
 .siteframe-salon-style-grid { gap:22px; }
 .siteframe-salon-style-grid > .siteframe-salon-style-card:last-child { padding-top:70px; }
 .siteframe-salon-style-card h3 { font-size:21px; }
 .siteframe-salon-style-card p { font-size:11px; }
 .siteframe-salon-menu-row { display:block; padding:26px 20px; }
 .siteframe-salon-menu-price { text-align:right; margin-top:16px; }
 .siteframe-salon-staff,.siteframe-salon-visit-grid { grid-template-columns:1fr; gap:48px; }
 .siteframe-salon-staff-image { width:82%; }
 .siteframe-salon-flow { grid-template-columns:1fr; gap:40px; }
 .siteframe-salon-step { padding:0 4px; }
 .siteframe-salon-step-number { margin-bottom:12px; }
 .siteframe-salon-cta { padding:25px 0; }
 .siteframe-salon-footer-grid { display:block; margin-bottom:60px; }
 .siteframe-salon-footer-visit { margin-top:50px; }
 .siteframe-salon-footer { padding-block:45px 24px; }
 .siteframe-salon-copyright { text-align:left; }
 .siteframe-salon-page > .siteframe-salon-section:first-child { padding-top:45px; }
}
@media(prefers-reduced-motion:reduce) {
 .siteframe-salon-page *, .siteframe-salon-header *, .siteframe-salon-footer * { transition:none!important; animation:none!important; }
 .siteframe-salon-page .wp-block-button__link:hover,.siteframe-salon-style-card:hover img { transform:none; }
}

/* The same editorial language applies to all WordPress template types. */
.siteframe-salon-editorial { padding-top:80px; }
.siteframe-salon-article { max-width:1000px; }
.siteframe-salon-editorial > h1 { margin:0 0 40px; font-size:clamp(30px,3.8vw,48px); line-height:1.75; overflow-wrap:anywhere; }
.siteframe-salon-post-meta { gap:20px; margin-block:24px 40px; color:#62645e; font-size:12px; }
.siteframe-salon-post-meta a { color:inherit; }
.siteframe-salon-article > .wp-block-post-featured-image { margin-block:50px 70px; }
.siteframe-salon-editorial .wp-block-post-featured-image { overflow:hidden; border-radius:2px; }
.siteframe-salon-editorial .wp-block-post-featured-image img { display:block; width:100%; height:auto; }
.siteframe-salon-editorial .wp-block-post-content { margin-block:48px 70px; overflow-wrap:anywhere; }
.siteframe-salon-editorial .wp-block-post-content :is(h2,h3,h4) { margin-top:2.5em; margin-bottom:1em; }
.siteframe-salon-editorial .wp-block-post-content :is(p,li) { font-size:15px; line-height:2.15; }
.siteframe-salon-editorial .wp-block-post-content :is(.alignwide,.alignfull) { max-width:100%; margin-inline:0; }
.siteframe-salon-editorial a { color:var(--wp--preset--color--contrast); text-decoration:none; transition:background-color .2s,color .2s; }
.siteframe-salon-editorial a:hover { color:var(--wp--preset--color--accent); background:var(--wp--preset--color--surface); text-decoration:none; }
.siteframe-salon-editorial .wp-block-post-content p a { background:var(--wp--preset--color--surface); padding:2px 4px; border-radius:2px; }
.siteframe-salon-editorial .wp-block-post-content p a:hover { background:var(--wp--preset--color--contrast); color:var(--wp--preset--color--base); }
.siteframe-salon-editorial :is(.wp-block-quote,.wp-block-pullquote) { border:0; background:var(--wp--preset--color--surface); padding:32px; margin-inline:0; }
.siteframe-salon-editorial :is(pre,code) { overflow-wrap:anywhere; }
.siteframe-salon-editorial pre { overflow:auto; padding:24px; background:var(--wp--preset--color--surface); }
.siteframe-salon-editorial .wp-block-table { overflow:auto; }
.siteframe-salon-editorial .wp-block-table :is(td,th) { padding:16px; }
.siteframe-salon-post-navigation { gap:24px; margin-block:60px; font-size:13px; }
.siteframe-salon-post-navigation > div { flex:1 1 240px; }
.siteframe-salon-post-navigation a { display:inline-block; padding:16px; }
.siteframe-salon-editorial .wp-block-comments { margin-top:80px; }
.siteframe-salon-editorial .wp-block-comments :is(h2,h3) { font-size:24px; }
.siteframe-salon-editorial .wp-block-comment-template > li { padding-block:24px; }
.siteframe-salon-editorial :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea) { box-sizing:border-box; max-width:100%; border:0; border-radius:3px; background:var(--wp--preset--color--surface); color:var(--wp--preset--color--contrast); padding:14px 16px; min-height:48px; font:inherit; }
.siteframe-salon-editorial :is(input[type=submit],.wp-block-search__button) { border:0; border-radius:4px; background:var(--wp--preset--color--contrast); color:var(--wp--preset--color--base); padding:14px 22px; min-height:48px; cursor:pointer; }
.siteframe-salon-editorial :is(input,textarea,button,a):focus-visible { outline:2px solid var(--wp--preset--color--contrast); outline-offset:4px; }
.siteframe-salon-journal { margin-top:70px; }
.siteframe-salon-journal .wp-block-post-template { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:70px 60px; }
.siteframe-salon-journal .wp-block-post-template > li { margin:0; min-width:0; }
.siteframe-salon-post-card { padding:0; background:transparent; box-shadow:none; }
.siteframe-salon-post-card:not(:has(.wp-block-post-featured-image))::before { content:""; display:block; aspect-ratio:4/3; background:var(--wp--preset--color--surface); border-radius:2px; margin-bottom:26px; }
.siteframe-salon-post-card .wp-block-post-featured-image { aspect-ratio:4/3; margin:0 0 26px; box-shadow:0 12px 30px #2222220a; }
.siteframe-salon-post-card .wp-block-post-featured-image img { height:100%; object-fit:cover; transition:transform .6s; }
.siteframe-salon-post-card .wp-block-post-featured-image:hover img { transform:scale(1.025); }
.siteframe-salon-post-card .wp-block-post-title { font-size:clamp(22px,2.3vw,29px); line-height:1.8; margin-block:16px; overflow-wrap:anywhere; }
.siteframe-salon-post-card .wp-block-post-title a { display:block; padding:8px; margin:-8px; border-radius:3px; }
.siteframe-salon-post-card .siteframe-salon-post-meta { margin-block:22px; font-size:11px; }
.siteframe-salon-post-card .wp-block-post-excerpt p { font-size:13px; line-height:2; }
.siteframe-salon-editorial :is(.wp-block-query-pagination,.wp-block-comments-pagination) { margin-top:60px; gap:16px; }
.siteframe-salon-editorial :is(.wp-block-query-pagination,.wp-block-comments-pagination) a,.siteframe-salon-editorial .page-numbers { display:inline-flex; padding:12px 16px; min-height:44px; }
.siteframe-salon-editorial .page-numbers.current { background:var(--wp--preset--color--surface); border-radius:4px; }
@media(max-width:700px) {
 .siteframe-salon-editorial { padding-top:45px; }
 .siteframe-salon-journal .wp-block-post-template { grid-template-columns:1fr; gap:60px; }
 .siteframe-salon-editorial > h1 { font-size:29px; }
 .siteframe-salon-article > .wp-block-post-featured-image { margin-block:35px 45px; }
 .siteframe-salon-editorial .wp-block-post-content :is(p,li) { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) {
 .siteframe-salon-post-card .wp-block-post-featured-image:hover img { transform:none; }
}

/* Longer service content follows the same photographic editorial rhythm. */
.siteframe-salon-lookbook { display:grid; gap:clamp(80px,12vw,150px); }
.siteframe-salon-look { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(32px,8vw,110px); }
.siteframe-salon-look:nth-child(even) .siteframe-salon-look-photo { order:2; }
.siteframe-salon-look-photo .wp-block-image { aspect-ratio:3/4; }
.siteframe-salon-look-copy h2 { font-size:clamp(26px,3vw,38px); line-height:1.8; }
.siteframe-salon-look-copy h3 { font-size:18px; margin-top:32px; }
.siteframe-salon-lookbook + .siteframe-salon-small { margin-top:40px; }
.siteframe-salon-guide-photo .wp-block-image { aspect-ratio:21/9; }
.siteframe-salon-faq { max-width:850px; margin-inline:auto; }
.siteframe-salon-cta:has(> h2) { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px 50px; }
.siteframe-salon-cta > h2 { grid-column:1; margin:0; }
.siteframe-salon-cta > p { grid-column:1; margin:0; max-width:36em; }
.siteframe-salon-cta:has(> h2) > .wp-block-buttons { grid-column:2; grid-row:1 / 3; }
@media(max-width:700px) {
 .siteframe-salon-look { grid-template-columns:1fr; gap:32px; }
 .siteframe-salon-look:nth-child(even) .siteframe-salon-look-photo { order:0; }
 .siteframe-salon-look-photo { width:90%; }
 .siteframe-salon-guide-photo .wp-block-image { aspect-ratio:4/3; }
 .siteframe-salon-cta:has(> h2) { display:block; }
 .siteframe-salon-cta > p { margin-top:24px; }
}

/* Space and hospitality are part of the salon story, alongside hairstyles. */
.siteframe-salon-space-image { aspect-ratio:16/9; }
.siteframe-salon-space-copy { max-width:650px; margin:60px 0 0 auto; }
.siteframe-salon-space-copy h2 { font-size:clamp(28px,3.4vw,42px); line-height:1.8; }
.siteframe-salon-space-copy > p:not(.siteframe-salon-eyebrow) { max-width:34em; }
@media(min-width:1100px) {
 /* The home photo has a dedicated navigation rail. Inner pages need room for long titles. */
 .wp-site-blocks:not(:has(.siteframe-salon-hero)) .siteframe-salon-header { align-items:center; }
 .wp-site-blocks:not(:has(.siteframe-salon-hero)) .siteframe-salon-header .wp-block-navigation { position:static; width:auto; }
 .wp-site-blocks:not(:has(.siteframe-salon-hero)) .siteframe-salon-header .wp-block-navigation__container { flex-direction:row; align-items:center; }
}
@media(max-width:600px) {
 .siteframe-salon-space-image { aspect-ratio:4/3; }
 .siteframe-salon-space-copy { margin-top:40px; }
}

/* COLLECTION ART DIRECTION 2026-09 */
/* Keep the editorial opening while making booking discoverable. */
.siteframe-salon-header .wp-block-navigation-item:last-child>.wp-block-navigation-item__content{background:#eeeae4;padding:13px 17px;border-radius:3px}.siteframe-salon-header .wp-block-navigation-item:last-child>.wp-block-navigation-item__content:hover{background:#e1dacf}.siteframe-salon-hero-copy{max-width:650px}.siteframe-salon-hero-copy>p{font-size:15px;line-height:2}

@font-face{font-family:"LINE Seed JP";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/line-seed-jp/LINESeedJP-Regular.woff2") format("woff2")}
@font-face{font-family:"LINE Seed JP";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/line-seed-jp/LINESeedJP-Bold.woff2") format("woff2")}
@font-face{font-family:"Noto Serif JP";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/noto-serif-jp-regular.woff2") format("woff2")}

/* MOBILE READING QUALITY 2026-09-14 */
.siteframe-salon-main .wp-block-post-content{overflow-wrap:break-word}
.siteframe-salon-page .siteframe-salon-small,.siteframe-salon-footer .siteframe-salon-small{font-size:14px;line-height:1.9}
.siteframe-salon-cta-copy>p:not(.siteframe-salon-eyebrow){font-size:15px}

/* Small screens: shrink layout items rather than clip their content. */
.siteframe-salon-hero>*,.siteframe-salon-staff>*,.siteframe-salon-lookbook>*{min-width:0}.siteframe-salon-page .wp-block-button{max-width:100%;min-width:0}.siteframe-salon-page .wp-block-button__link{max-width:100%;box-sizing:border-box}

.siteframe-salon-look>*{min-width:0}

/* Homepage photographic direction: stable crops and optional desktop reading anchors. */
body.home .siteframe-salon-hero-image,body.home .siteframe-salon-space-image{overflow:hidden}
@media(min-width:1100px) and (min-height:700px) and (prefers-reduced-motion:no-preference){body.home .siteframe-salon-style-intro{position:sticky;top:140px;padding-top:0}body.home .siteframe-salon-style-grid{min-height:85svh}}

/* Article rhythm: readable measure, grouped metadata, deliberate heading spacing. */
.siteframe-salon-article > .wp-block-post-title { text-wrap:balance; word-break:auto-phrase; overflow-wrap:break-word; }
.siteframe-salon-article .siteframe-salon-post-meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px 18px; }
.siteframe-salon-article .siteframe-salon-post-meta > * { margin:0!important; }
.siteframe-salon-article .wp-block-post-content { box-sizing:border-box; padding-inline:0; max-width:720px; margin-inline:auto; }
.siteframe-salon-article .wp-block-post-content > :where(p,ul,ol) { font-size:16px; line-height:2; }
.siteframe-salon-article .wp-block-post-content > :where(h2,h3,h4) { margin-block:48px 18px; line-height:1.65; text-wrap:balance; word-break:auto-phrase; }
.siteframe-salon-article .wp-block-post-content > h2 { font-size:clamp(24px,2.2vw,30px); }
.siteframe-salon-article .wp-block-post-content > h3 { font-size:clamp(21px,1.8vw,25px); }
.siteframe-salon-article .wp-block-post-content > .wp-block-image { margin-block:28px; }
@media(max-width:700px) {
 .siteframe-salon-article .wp-block-post-content > :where(h2,h3,h4) { margin-top:36px; }
 .siteframe-salon-article > .wp-block-post-title { letter-spacing:.04em; }
}
.siteframe-salon-article > .wp-block-post-title { font-size:clamp(27px,3vw,40px); line-height:1.65; }
.siteframe-salon-article > .wp-block-post-featured-image { margin:32px auto 40px; }
.siteframe-salon-article > .wp-block-post-featured-image img { max-height:560px; width:auto; max-width:100%; margin-inline:auto; object-fit:contain; }

.siteframe-salon-article > .wp-block-post-title { text-wrap:pretty; }
.siteframe-salon-article .wp-block-post-content > .wp-block-image img { display:block; max-height:640px; width:auto; max-width:100%; margin-inline:auto; }

@media(max-width:380px) { .siteframe-salon-article > .wp-block-post-title { font-size:24px; letter-spacing:.02em; text-wrap:balance; } }
