/* Three used heading weights; body and English wordmarks retain their families. */
@font-face{font-family:MaruBuri;src:url("https://cdn.jsdelivr.net/gh/fonts-archive/MaruBuri@977eeff68d1d40bcef341f09c1f56cce1903bb8a/MaruBuri-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:MaruBuri;src:url("https://cdn.jsdelivr.net/gh/fonts-archive/MaruBuri@977eeff68d1d40bcef341f09c1f56cce1903bb8a/MaruBuri-SemiBold.woff2") format("woff2");font-weight:500 600;font-style:normal;font-display:swap}
@font-face{font-family:MaruBuri;src:url("https://cdn.jsdelivr.net/gh/fonts-archive/MaruBuri@977eeff68d1d40bcef341f09c1f56cce1903bb8a/MaruBuri-Bold.woff2") format("woff2");font-weight:650 900;font-style:normal;font-display:swap}
:root{--font-heading:"MaruBuri",serif;--serif:var(--font-heading)}
html[data-wistia-typography] :is(#app#app#app#app,#mediaDialog,.wrap) :is(h1,h2,h3,h4,h5,h6),
html[data-wistia-typography] :is(#app#app#app#app,#mediaDialog,.wrap) :is(h1,h2,h3,h4,h5,h6) *,
html[data-wistia-typography] #app#app#app#app :is(.we-hero-copy,.detail-one-line,.home-choice-prompt,.process-duration-line>strong,.process-duration-card>strong,.arc-key-statement,.contact-form-heading){font-family:var(--font-heading)!important}
/* Preserve single-line mobile page titles within the existing content width. */
@media(max-width:430px){
 html[data-wistia-typography] #app#app#app#app :is(.info-page-intro h1,.booking-head h1,.mas-intro h1,.picker h1){font-size:clamp(19px,5.5vw,25px)!important;white-space:nowrap!important}
}

/* MaruBuri's wider letters still fit each intended AR title line on phones. */
@media(max-width:430px){
 html[data-wistia-typography] #app#app#app#app #wistiaArTitle{font-size:clamp(18px,5vw,21px)!important}
 html[data-wistia-typography] #app#app#app#app #wistiaArTitle .solo-type-line{white-space:nowrap!important}
}

@media(max-width:430px){
 html[data-wistia-typography] #app#app#app#app #wistiaArTitle .svg-section-text{min-width:0;overflow-wrap:normal!important}
 html[data-wistia-typography] #app#app#app#app #wistiaArTitle .ar-copy-emphasis-text{white-space:nowrap!important;font-size:inherit!important}
}

/* Only these requested headings retain one line per explicit break on phones. */
@media(max-width:600px){
 html[data-wistia-typography] #app#app#app#app :is(.about-story-title,.about-specialist-title,body.is-event-inquiry #sourceTitle){white-space:nowrap!important;-webkit-text-size-adjust:none;text-size-adjust:none}
 html[data-wistia-typography] #app#app#app#app :is(.about-story-title,.about-specialist-title,body.is-event-inquiry #sourceTitle) .svg-section-text{white-space:nowrap!important;overflow-wrap:normal!important;font-size:inherit!important}
 html[data-wistia-typography] #app#app#app#app .about-story-title{font-size:clamp(16px,4.7vw,25px)!important;grid-template-columns:24px minmax(0,1fr)!important;gap:8px!important}
 html[data-wistia-typography] #app#app#app#app .about-specialist-title{font-size:clamp(13px,4vw,20px)!important;grid-template-columns:20px minmax(0,1fr)!important;gap:6px!important}
 html[data-wistia-typography] body.is-event-inquiry #app#app#app#app #sourceTitle{grid-template-columns:24px minmax(0,1fr)!important;gap:8px!important}
 html[data-wistia-typography] #app#app#app#app :is(.about-story-title,body.is-event-inquiry #sourceTitle) .svg-title-icon,
 html[data-wistia-typography] #app#app#app#app :is(.about-story-title,body.is-event-inquiry #sourceTitle) .svg-title-icon>.studio-icon{width:24px!important;height:24px!important;margin-top:2px!important}
 html[data-wistia-typography] #app#app#app#app .about-specialist-title .svg-title-icon,
 html[data-wistia-typography] #app#app#app#app .about-specialist-title .svg-title-icon>.studio-icon{width:20px!important;height:20px!important;margin-top:2px!important}
}

/* About headings share one rail, while desktop specialist columns stay intact. */
html #app#app#app#app#app .info-page-about{--about-rail:21px}
html #app#app#app#app#app .info-page-about .svg-section-heading{padding-left:var(--about-rail)!important;box-sizing:border-box}
html #app#app#app#app#app .info-page-about :is(.svg-section-title,.svg-item-title){grid-template-columns:24px minmax(0,1fr)!important;gap:8px!important}
html #app#app#app#app#app .info-page-about :is(.svg-section-title,.svg-item-title) .svg-title-icon,
html #app#app#app#app#app .info-page-about :is(.svg-section-title,.svg-item-title) .svg-title-icon>.studio-icon{width:24px!important;height:24px!important}
html #app#app#app#app#app .info-page-about .svg-item-copy>small{display:block;margin-left:var(--svg-item-indent,32px)!important}
html #app#app#app#app#app .info-page-about #specialistTitle .svg-section-text{font-size:inherit!important;line-height:inherit!important}
@media(max-width:600px){
 html #app#app#app#app#app .info-page-about{--about-rail:19px}
 html #app#app#app#app#app .info-page-about #specialistTitle{font-size:clamp(20px,5vw,26px)!important}
}
/* The icon is centered on the first text line, including multi-line titles. */
html #app#app#app#app#app#app [data-title-aligned]>.svg-title-icon{margin-top:var(--svg-icon-offset,0px)!important}
html #app#app#app#app#app#app [data-title-aligned]>.svg-title-icon>.studio-icon{margin:0!important}
html #app#app#app#app#app .consultation-step-heading.svg-section-heading>.svg-section-description{margin-left:var(--svg-title-indent,46px)!important}

/* The three specialist roles are one heading level; the section h2 stays separate. */
html #app#app#app#app#app .info-page-about .about-specialist-title{font-size:clamp(13px,4vw,16px)!important;font-weight:600!important;line-height:1.4!important;white-space:nowrap!important}
html #app#app#app#app#app .info-page-about .about-specialist-title .svg-section-text{font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;white-space:nowrap!important}
html #app#app#app#app#app .info-page-about .info-page-intro h1{font-size:clamp(18px,5vw,36px)!important;white-space:nowrap!important}
html #app#app#app#app#app .info-page-about .info-page-intro h1 .svg-section-text{font-size:inherit!important;white-space:nowrap!important}

html #app#app#app#app#app#app#app .info-page-about .about-specialist-title{font-size:clamp(13px,4vw,16px)!important;font-weight:600!important;line-height:1.4!important;white-space:nowrap!important}
html #app#app#app#app#app#app#app .info-page-about .about-specialist-title .svg-section-text{font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;white-space:nowrap!important}
html #app#app#app#app#app .info-page-about .about-fixed-lines{white-space:nowrap!important;font-size:clamp(12px,3.4vw,16px)!important;-webkit-text-size-adjust:none;text-size-adjust:none}
html #app#app#app#app#app .info-page-about .about-intro-services{font-size:clamp(11px,3.2vw,15px)!important}
html #app#app#app#app#app .info-page-about .about-long-lines{font-size:clamp(10px,2.9vw,14px)!important}
html #app#app#app#app#app .info-page-about .about-intro-services strong{display:inline!important;font-weight:650!important}

/* A postal address is body copy, with no separately styled city/street/floor. */
html[data-wistia-typography] #app#app#app#app#app#app .studio-address{display:block!important;font-family:var(--font-body,Pretendard),sans-serif!important;font-size:clamp(10px,3vw,18px)!important;font-weight:600!important;font-style:normal!important;line-height:1.5!important;color:#191919!important;white-space:nowrap!important;letter-spacing:-.03em!important}
html #app#app#app#app#app#app .info-page-location .studio-address{font-size:clamp(9px,2.6vw,18px)!important}
html #app#app#app#app#app#app .we-home .studio-address{text-align:center!important}

html #app#app#app#app#app .mas-svg-illustration{padding:16px!important}
html #app#app#app#app#app .recording-join-illustration{display:block;width:100%;height:auto;max-width:640px;margin-inline:auto}
html #app#app#app#app#app .mas-svg-illustration figcaption{display:block!important;text-align:center!important;margin:16px 0 0!important}
html #app#app#app#app#app .mas-svg-illustration .ar-line-full{display:block!important;white-space:normal!important;font-size:13px!important;line-height:1.7!important}
html #app#app#app#app#app .advantages-illustration{display:block;width:100%;margin-top:24px}
html #app#app#app#app#app .advantages-illustration img{display:block;width:100%;height:auto}

html #app#app#app#app#app#app .mas-key-caption-image{display:block;width:100%!important;max-width:none!important;height:auto;object-fit:contain;border-radius:16px;margin:24px auto 0}
html #app#app#app#app#app#app .mas-selection .mas-variant{box-sizing:border-box!important;width:100%!important;transform:none!important;scale:none!important;padding:18px 16px!important;border-width:1px!important}
html #app#app#app#app#app#app .mas-selection .mas-variant i{box-sizing:border-box!important;width:20px!important;height:20px!important;flex:0 0 20px!important}

/* Person selection retains the original full-width grid, outside POINT layouts. */
html #app#app#app#app#app .ar-commerce-detail .mas-selection{text-align:left!important;justify-items:stretch!important;align-items:stretch!important}
html #app#app#app#app#app .mas-selection h2.svg-section-title{display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;gap:14px!important;align-items:start!important;text-align:left!important;white-space:nowrap!important}
html #app#app#app#app#app .mas-selection h2 .svg-section-text{text-align:left!important;margin-inline:0!important}
html #app#app#app#app#app .mas-selection h2>.svg-title-icon{align-self:start!important}
@media(max-width:768px){html #app#app#app#app#app .mas-selection{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:20px}}
html #app#app#app#app#app .mas-selection .mas-variant+.mas-variant{margin-top:0!important}

/* 16c: preserve the illustration's intrinsic 360:300 ratio and the POINT media rail. */
html #app#app#app#app#app#app#app .recording-join-illustration{width:100%!important;max-width:560px!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;margin-inline:auto!important}
html #app#app#app#app#app#app#app .info-page-about .about-fixed-lines{font-size:clamp(13px,3.6vw,16px)!important;letter-spacing:-.025em!important}
html #app#app#app#app#app#app#app .info-page-about .about-fixed-lines.about-long-lines{letter-spacing:-.055em!important}
html[data-wistia-typography] #app#app#app#app#app#app#app .studio-address{font-size:clamp(13px,3.6vw,18px)!important}
/* H2 section headings share one typography; explicit authored line breaks remain. */
html #app#app#app#app#app#app#app .ar-commerce-detail h2{font-size:20px!important;font-weight:600!important;line-height:1.4!important;letter-spacing:-.04em!important;white-space:nowrap!important}
html #app#app#app#app#app#app#app .ar-commerce-detail h2 :is(.svg-section-text,.solo-type-line,mark,strong,b,.ar-copy-emphasis,.ar-copy-emphasis-text){font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;white-space:nowrap!important}
@media(min-width:769px){html #app#app#app#app#app#app#app .ar-commerce-detail h2{font-size:28px!important}}
@media(max-width:359px){html #app#app#app#app#app#app#app .info-page-about .about-fixed-lines.about-long-lines{white-space:normal!important}}

/* Primary home section headings share a single scale, including their SVG text wrappers. */
html #app#app#app#app#app#app#app .we-home h2{font-size:clamp(20px,6.1vw,24px)!important;font-weight:600!important;line-height:1.4!important;letter-spacing:-.04em!important;white-space:nowrap!important}
html #app#app#app#app#app#app#app .we-home h2 :is(.svg-section-text,.solo-type-line,strong,b,mark){font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;white-space:nowrap!important}
@media(min-width:769px){html #app#app#app#app#app#app#app .we-home h2{font-size:36px!important}}
