/* School information follows Villa's native Contact split and project gallery. */
.sfc-villa-heading{font-size:clamp(30px,4.4vw,72px);line-height:1.08;margin:0 0 1em;letter-spacing:-.045em;font-weight:500}
.sfc-villa-information .g-contact__text{font-size:16px;line-height:1.6;word-break:keep-all}
.sfc-villa-info-block{margin:0 0 48px}.sfc-villa-info-block h2{font-size:26px;line-height:1.2;margin:0 0 20px;font-weight:500;letter-spacing:-.04em}
.sfc-villa-lead{font-size:clamp(22px,2.4vw,38px);line-height:1.4;letter-spacing:-.04em;margin:0 0 24px}
.sfc-villa-table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.65;text-align:left;table-layout:fixed}
.sfc-villa-table th,.sfc-villa-table td{padding:15px 8px 15px 0;border-bottom:1px solid #ccc;vertical-align:top;overflow-wrap:anywhere;font-weight:400}.sfc-villa-table th:first-child{width:29%}.sfc-villa-table thead{font-size:12px;color:#666}.sfc-villa-table tbody th{font-weight:500}
.sfc-villa-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 48px}.sfc-villa-actions .o-btn{margin:0}
.sfc-villa-major{display:block;margin-bottom:36px;font-size:clamp(28px,3.4vw,54px);line-height:1.2;letter-spacing:-.04em}.sfc-villa-major img{display:block;width:100%;height:240px;object-fit:cover;margin-top:18px}
.sfc-villa-drawer{border-top:1px solid #aaa;font-size:15px;margin-bottom:18px}.sfc-villa-drawer summary{cursor:pointer;padding:18px 24px 18px 0;list-style:none;position:relative}.sfc-villa-drawer summary:after{content:'+';position:absolute;right:0}.sfc-villa-drawer[open] summary:after{content:'−'}.sfc-villa-drawer h3{font-size:14px;margin:16px 0 8px}.sfc-villa-course-list{display:flex;flex-wrap:wrap;gap:6px 16px;list-style:none;padding:0;margin:0 0 24px}.sfc-villa-note{font-size:12px;color:#555;margin-top:40px}
.sfc-villa-information figcaption{font-size:12px;line-height:1.5;padding-top:8px}.sfc-villa-information .o-image{object-fit:contain}
.sfc-villa-gallery-close{position:fixed;right:20px;bottom:20px;z-index:100;padding:12px 18px;background:#fff;color:#000;border:1px solid #ccc;border-radius:0;cursor:pointer;font:inherit;font-size:14px}.sfc-villa-detail .g-project__image img{height:auto;object-fit:contain}
@media(max-width:767px){.sfc-villa-information .g-contact__text{font-size:14px}.sfc-villa-info-block{margin-bottom:36px}.sfc-villa-info-block h2{font-size:23px}.sfc-villa-table{font-size:13px}.sfc-villa-table th:first-child{width:30%}.sfc-villa-heading{margin-bottom:32px}.sfc-villa-major img{height:210px}.sfc-villa-information .g-contact__images{position:relative;top:auto;width:100%;padding:0;margin:36px 0}.sfc-villa-information .g-contact__text{width:100%;margin:0}.sfc-villa-information .g-contact__container{display:block}.sfc-villa-information .c-contact-images{max-width:100%}}
.sfc-villa-mobile-photo{display:none}
@media(max-width:767px){.sfc-villa-mobile-photo{display:block;width:100%;max-height:480px;object-fit:cover;margin:0 0 32px}.sfc-villa-detail .js-nav-title{font-size:28px}}
/* Portrait collections retain the complete garment in the opening frame. */
.g-project__cover .o-image{object-fit:contain}.g-project__cover .o-figure{background:#111}
.sfc-villa-detail:not(.u-white) .c-nav{mix-blend-mode:normal;color:#000;background:white;padding-bottom:16px}.sfc-villa-detail:not(.u-white) .sfc-logo{filter:brightness(0)}.sfc-villa-detail:not(.u-white) .o-tiny-btn{background:#ddd}.sfc-villa-detail:not(.u-white) .c-nav svg{stroke:#000}
.sfc-unused-client-filter{display:none!important}
.sfc-villa-detail:not(.u-white) .o-tiny-btn--dots{background:#ddd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='3' fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M1 0v3M9 0v3M17 0v3'/%3E%3C/svg%3E") center/18px 3px no-repeat}

/* A compact navigation label leaves one clear page title in mobile content. */
@media(max-width:767px){
 .sfc-villa-detail:not(.u-white){font-family:"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;word-break:keep-all;overflow-wrap:break-word}
 .sfc-villa-detail:not(.u-white) .c-nav{padding-top:20px;padding-bottom:18px;border-bottom:1px solid #e5e5e5}
 .sfc-villa-detail:not(.u-white) .c-nav__logo .sfc-logo{width:112px}
 .sfc-villa-detail:not(.u-white) .js-nav-title{font-size:15px;line-height:1.4;letter-spacing:-.015em;display:flex;align-items:center;gap:10px;min-height:40px}
 .sfc-villa-detail:not(.u-white) .js-nav-title-marquee{display:none}
 .sfc-villa-detail:not(.u-white) .js-nav-title:before{content:'메뉴';font-weight:400}
 .sfc-villa-detail:not(.u-white) .js-nav-title .o-tiny-btn{margin:0;flex-shrink:0}
 .sfc-villa-information .g-contact__container{padding-top:112px;padding-bottom:48px}
 .sfc-villa-information .g-contact__text{font-size:16px;line-height:1.75;letter-spacing:-.015em}
 .sfc-villa-heading{font-size:34px;line-height:1.25;letter-spacing:-.035em;font-weight:500;margin:0 0 28px;text-wrap:balance}
 .sfc-villa-mobile-photo{max-height:440px;object-fit:contain;object-position:left center;margin-bottom:28px}
 .sfc-villa-lead{font-size:21px;line-height:1.55;letter-spacing:-.025em;text-wrap:balance}
 .sfc-villa-info-block{margin-bottom:44px}
 .sfc-villa-info-block h2{font-size:24px;line-height:1.35;letter-spacing:-.025em;margin-bottom:20px}
 .sfc-villa-table{font-size:15px;line-height:1.7;letter-spacing:-.015em}
 .sfc-villa-table th,.sfc-villa-table td{padding:18px 12px 18px 0;overflow-wrap:break-word}
 .sfc-villa-table th:first-child{width:32%}
 .sfc-villa-table td:last-child{padding-right:0}
 .sfc-villa-actions{gap:12px;margin:24px 0 40px}
 .sfc-villa-actions .o-btn{font-size:14px;line-height:1.4;padding:14px 16px;border-radius:0}
 .sfc-villa-major{font-size:28px;line-height:1.3;letter-spacing:-.025em;margin-bottom:40px}
 .sfc-villa-major img{height:auto;aspect-ratio:3/2;margin-top:20px}
 .sfc-villa-drawer{font-size:15px;line-height:1.65}
 .sfc-villa-course-list{display:block}
 .sfc-villa-course-list li{padding:10px 0;border-bottom:1px solid #eee}
 .sfc-villa-information p{text-wrap:pretty}
}
@media(max-width:767px){
 body.sfc-villa-detail:not(.u-white):not(.nav-hovered) .c-nav:not(.is-open){grid-template-columns:1fr auto;grid-template-areas:"logo wrapper";align-items:center;padding:12px 16px;min-height:68px}
 body.sfc-villa-detail:not(.u-white):not(.nav-hovered) .c-nav:not(.is-open) .c-nav__logo{margin:0;width:148px}
 body.sfc-villa-detail:not(.u-white):not(.nav-hovered) .c-nav:not(.is-open) .sfc-logo{width:148px}
 body.sfc-villa-detail:not(.u-white):not(.nav-hovered) .c-nav:not(.is-open) .c-nav__wrapper{padding:0;margin:0}
 body.sfc-villa-detail:not(.u-white):not(.nav-hovered) .c-nav:not(.is-open) .js-nav-title{display:flex;margin:0;align-items:center;gap:8px;min-height:44px}
 body.sfc-villa-detail:not(.u-white):not(.nav-hovered) .c-nav:not(.is-open) .js-nav-title .o-tiny-btn{display:inline-block;margin:0}
 .sfc-villa-information .g-contact__container{padding-top:36px}
 .sfc-villa-mobile-photo{height:auto;max-height:none;object-fit:contain}
}
/* Shared internal details: a quiet title, complete photographs, optional media. */
.sfc-project-detail{background:#f6f5f2;color:#171717;cursor:auto;padding-bottom:80px;min-height:100vh}
.sfc-project-heading{max-width:1100px;margin:auto;padding:100px 32px 36px}
.sfc-project-category{font-size:12px;letter-spacing:.04em;margin-bottom:14px;color:#666}
.sfc-project-title{font:500 clamp(28px,3.3vw,48px)/1.35 "Apple SD Gothic Neo","Noto Sans KR",sans-serif;letter-spacing:-.035em;word-break:keep-all;overflow-wrap:break-word;text-wrap:balance;max-width:900px}
.sfc-project-detail .g-project__assets{max-width:1100px;margin:auto;padding:0 32px;display:flex;flex-direction:column;gap:24px}
.sfc-project-detail .g-project__image,.sfc-project-detail .g-project__cover{height:auto;background:transparent}
.sfc-project-detail .o-figure{height:auto;background:transparent}
.sfc-project-detail .o-image{display:block;width:100%;height:auto;max-height:85svh;object-fit:contain;background:transparent}
.sfc-project-player{width:100%;max-width:900px;margin:0 auto}
.sfc-project-player button{display:block;width:100%;padding:20px;border:1px solid #aaa;background:transparent;font:inherit;cursor:pointer}
.sfc-project-player iframe{display:block;border:0;width:100%;aspect-ratio:16/9;background:#fff}
.sfc-project-player iframe[src*="instagram"]{aspect-ratio:auto;height:680px}
.sfc-project-player video{display:block;width:100%;max-height:80svh;background:#111}
.sfc-project-meta{max-width:1100px;margin:40px auto 0;padding:0 32px;font-size:15px;line-height:1.7;word-break:keep-all}
.sfc-project-meta a{display:inline-block;margin-top:20px;font-size:13px;color:#555;text-decoration:underline;text-underline-offset:4px}
.sfc-project-detail .sfc-villa-gallery-close{top:16px;bottom:auto;right:16px;min-height:44px;background:#f6f5f2;border:1px solid #bbb}
.c-project-overlay:has(.sfc-project-detail){cursor:auto}
@media(max-width:767px){
 .sfc-project-heading{padding:80px 20px 28px}
 .sfc-project-title{font-size:28px}
 .sfc-project-detail .g-project__assets{padding:0 16px;gap:16px}
 .sfc-project-detail .o-image{max-height:75svh}
 .sfc-project-meta{padding:0 20px;margin-top:28px}
 .sfc-project-player iframe[src*="instagram"]{height:600px}
}

.sfc-villa-detail.u-white:has(.sfc-project-detail) .c-nav{display:none}
.sfc-project-detail .js-project-close{display:none!important}
body:has(.c-project-overlay.is-opened .sfc-project-detail)>.c-nav{visibility:hidden;pointer-events:none}
.sfc-project-detail .sfc-project-title{font-weight:500}
.sfc-villa-detail.u-white:has(.sfc-project-detail) .c-footer{background:#f6f5f2;color:#171717}

/* Native Villa surfaces; retain guide geometry and media framing. */
@media all{
.sfc-villa-table th,.sfc-villa-table td,.sfc-villa-drawer,.sfc-villa-course-list li,
.sfc-villa-detail:not(.u-white) .c-nav,.sfc-villa-gallery-close,
.sfc-project-player button,.sfc-project-detail .sfc-villa-gallery-close{border-color:transparent}
.sfc-villa-actions .o-btn,.sfc-villa-gallery-close,.sfc-project-player button{border-radius:5px}
.sfc-villa-gallery-close,.sfc-project-player button{background:hsla(0,0%,88%,.4);color:#000}
.sfc-project-detail,.sfc-project-detail .sfc-villa-gallery-close,
.sfc-villa-detail.u-white:has(.sfc-project-detail) .c-footer{background:#fff;color:#000}
}
