/* Index media and before/after — matched to the original Beautyple index. */
.home-index .media-main{
  padding:54px 80px 88px;
  overflow:hidden;
  background:#fff;
  color:#2a2a2a;
}
.home-index .media-heading,.home-index .ba-title{
  display:flex;align-items:flex-end;justify-content:space-between;gap:32px;
}
.home-index .media-heading .en{
  margin:0 0 12px;font-size:clamp(36px,3.8vw,55px);font-weight:700;line-height:1.2;
}
.home-index .media-heading h2{font-size:clamp(20px,1.5vw,22px);font-weight:400;color:#777;line-height:1.5}
.home-index .media-heading>a{position:static;margin-bottom:4px;color:#555;font-size:16px}
.home-index .media-carousel{margin-top:36px}
.home-index .media-carousel .media-cards{gap:24px;padding-bottom:10px}
.home-index .media-card{flex-basis:calc((100vw - 160px - 72px)/4)}
.home-index .media-thumb{position:relative;display:block}
.home-index .media-card img{display:block;width:100%;aspect-ratio:424/238;object-fit:cover;border-radius:10px;background:#f4f4f4}
.home-index .media-play{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:58px;height:58px;padding-left:4px;transform:translate(-50%,-50%);border-radius:50%;background:rgba(255,255,255,.92);color:#e78f98;font-size:22px;box-shadow:0 7px 24px rgba(0,0,0,.16);transition:transform .2s ease,background .2s ease}
.home-index .media-card a:hover .media-play{transform:translate(-50%,-50%) scale(1.08);background:#fff}
.home-index .media-card h3{margin:28px 0 12px;font-size:clamp(20px,1.3vw,24px);font-weight:600;line-height:1.45}
.home-index .media-card p{margin:0;color:#666;font-size:17px;line-height:1.75}
.home-index .media-card time{display:block;margin-top:12px;color:#999;font-size:17px}
.home-index .media-arrow{top:32%;width:48px;height:48px;border-color:#ddd;background:rgba(255,255,255,.94);color:#2a2a2a;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.home-index .media-prev{left:12px}.home-index .media-next{right:12px}
.youtube-modal-open{overflow:hidden}
.youtube-modal{position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;padding:28px;background:rgba(0,0,0,.68);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.youtube-modal.is-open{display:flex}
.youtube-modal-dialog{position:relative;width:min(1040px,100%);padding:18px;border:1px solid rgba(255,255,255,.2);border-radius:28px;background:rgba(255,255,255,.12);box-shadow:0 28px 90px rgba(0,0,0,.34)}
.youtube-modal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:4px 4px 16px;color:#fff}
.youtube-modal-head small{display:block;margin-bottom:5px;color:#dd8f93;font-size:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.youtube-modal-head strong{display:block;font-size:clamp(20px,2vw,30px);line-height:1.25}
.youtube-modal-frame{overflow:hidden;width:100%;aspect-ratio:16/9;border-radius:20px;background:#000}
.youtube-modal-frame iframe{display:block;width:100%;height:100%;border:0}
.youtube-modal-close{flex-shrink:0;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:#fff;color:#111;font:300 28px/1 Arial,sans-serif;cursor:pointer}

.home-index .ba-main{padding:104px 80px 88px;overflow:hidden;background:#fff4f7}
.home-index .ba-title{align-items:flex-start;border:0;padding:0}
.home-index .ba-title .en{margin:0 0 14px;color:#2a2a2a;font-size: 18px;font-weight:700;letter-spacing:.2em}
.home-index .ba-title h2{font-size:clamp(26px,2.8vw,42px);font-weight:700;line-height:1.28}
.home-index .ba-title>a{position:static;display:grid;place-items:center;width:56px;height:56px;margin-top:6px;font-size:54px;font-weight:300;line-height:1}
.home-index .ba-carousel{margin-top:36px}
.home-index .ba-carousel .ba-cards{gap:24px;padding-bottom:10px}
.home-index .ba-card{flex-basis:calc((100vw - 160px - 48px)/3);border-radius:12px;box-shadow:none;background:transparent}
.home-index .ba-card img{aspect-ratio:625/379;object-position:center top}
.home-index .ba-card figcaption{position:absolute;inset:auto 0 0;padding:55px 24px 20px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.6));pointer-events:none}
.home-index .ba-card small{margin:0 0 5px;color:#fff;font-size:13px}
.home-index .ba-card strong{font-size:18px;line-height:1.4}
.home-index .ba-arrow{top:50%;width:48px;height:48px;background:rgba(255,255,255,.94)}
.home-index .ba-prev{left:12px}.home-index .ba-next{right:12px}

@media(min-width:1920px){
  .home-index .media-card{flex-basis:calc((100vw - 160px - 96px)/5)}
  .home-index .ba-card{flex-basis:calc((100vw - 160px - 72px)/4)}
}
@media(max-width:1024px){
  .home-index .media-main{padding:72px 48px}
  .home-index .media-card{flex-basis:calc((100vw - 96px - 24px)/2)}
  .home-index .ba-main{padding:80px 48px 72px}
  .home-index .ba-card{flex-basis:calc((100vw - 96px - 24px)/2)}
}
@media(max-width:760px){
  .youtube-modal{padding:18px}.youtube-modal-dialog{width:100%;padding:12px;border-radius:20px}.youtube-modal-head{padding-bottom:12px}.youtube-modal-frame{border-radius:14px}
  .home-index .media-main{padding:56px 0 56px 24px}
  .home-index .media-heading{padding-right:24px;align-items:flex-start;flex-direction:column;gap:16px}
  .home-index .media-heading .en{font-size:38px}
  .home-index .media-heading h2{font-size:18px}
  .home-index .media-heading>a{margin:0}
  .home-index .media-carousel{margin-top:28px}
  .home-index .media-carousel .media-cards{gap:16px;padding-right:24px}
  .home-index .media-card{flex-basis:calc(100vw - 64px)}
  .home-index .media-card h3{margin-top:18px;font-size:20px}
  .home-index .media-card p,.home-index .media-card time{font-size:16px}
  .home-index .media-play{width:50px;height:50px;font-size:19px}
  .home-index .media-arrow{width:42px;height:42px}.home-index .media-prev{left:8px}.home-index .media-next{right:32px}
  .home-index .ba-main{padding:64px 0 56px 24px}
  .home-index .ba-title{padding-right:24px}
  .home-index .ba-title .en{font-size:16px}
  .home-index .ba-title h2{font-size:32px}
  .home-index .ba-title>a{width:44px;height:44px;font-size:44px}
  .home-index .ba-carousel{margin-top:28px}
  .home-index .ba-carousel .ba-cards{gap:16px;padding-right:24px}
  .home-index .ba-card{flex-basis:calc(100vw - 64px);border-radius:10px}
  .home-index .ba-card figcaption{padding:48px 20px 17px}
  .home-index .ba-arrow{width:42px;height:42px}.home-index .ba-prev{left:8px}.home-index .ba-next{right:32px}
}
