/* =============================================================
   glo Summer Festa — Switch to Cool
============================================================= */
:root {
    /* --- Primary Blue & Gradient --- */
    --c-primary-blue: #006ac6;          /* 그라데이션 시작 */
    --c-primary-blue-light: #00acd0;    /* 그라데이션 끝 */
    --grad-primary: linear-gradient(90deg, var(--c-primary-blue) 0%, var(--c-primary-blue-light) 100%);

    /* --- Accent Blues --- */
    --c-deep-blue: #0856ae;             /* 날짜 카드(20·21·22) 배경 */
    --c-teal: #018aa0;                  /* 날짜 숫자·OPEN DAY·뱃지 */
    --c-cyan: #008ec9;                  /* 빛 효과(글로우) */
    --c-mint: #00b890;                  /* 배경 셰이프 글로우 */

    /* --- CTA --- */
    --c-cta: #fe5000;                   /* 이벤트 참여 버튼 / 선착순 딱지 */

    /* --- Neutral --- */
    --c-white: #ffffff;
    --c-black: #2a2c2c;                 /* glo/primary_black */
    --c-notice-header-bg: #262626;      /* 유의사항 바 배경 */
    --c-notice-body-bg: #333333;        /* 유의사항 본문 배경 / Gray */

    /* --- Semantic Text --- */
    --c-text: var(--c-white);
    --c-text-dark: var(--c-black);
    --c-text-accent: var(--c-teal);

    /* --- Font Family --- */
    --font-mont: 'Mont', 'Gotham', sans-serif;          /* SWITCH / TO COOL */
    --font-one-mobile: 'ONE Mobile OTF', 'Noto Sans KR', sans-serif;
    --font-noto: 'Noto Sans KR', sans-serif;

    /* --- Layout --- */
    --design-width: 1920;               /* 데스크탑 기준 폭(px) */
    --inner-max: 120rem;                /* 1920px 기준 콘텐츠 최대폭 */
}

/* ---------------------------------------------------------------
   RESPONSIVE SCALING FOUNDATION
   · 데스크탑 기준 1920px, 모바일 기준 750px(피그마 375 × 2배)
   · 모든 컴포넌트는 rem 단위 → 뷰포트에 따라 비율 그대로 확대/축소
--------------------------------------------------------------- */
html {
    font-size: 16px;
}

/* 데스크탑: 1920 기준 비율 스케일링 (2250px 이상도 동일 비율 확대) */
@media (min-width: 751px) {
    html {
        /* 1920 / 120 = 16px @1920, 2250 → 18.75px 로 비율 유지 */
        font-size: calc(100vw / 120);
    }
}

/* 모바일: 피그마 375 시안을 2배(750) 기준으로 적용 */
@media (max-width: 750px) {
    html {
        /* 750 / 46.875 = 16px @750 */
        font-size: calc(100vw / 46.875);
    }
}

/* 세로 스크롤바가 거터(우측 여백)를 예약하면서 그 자리에 루트 캔버스의 흰색이
   비치는 문제 해결. 색으로 칠하는 대신 네이티브 스크롤바 예약 영역 자체를 없애
   콘텐츠가 뷰포트 전체 폭을 꽉 채우도록 함(스크롤 기능은 그대로 동작). */
html, body { margin: 0; padding: 0; }
html { scrollbar-width: none; -ms-overflow-style: none; }   /* Firefox / 구 Edge */
html::-webkit-scrollbar { width: 0; height: 0; display: none; }  /* Chrome / Safari */

/* ---------------------------------------------------------------
   RESET — #glo-summer-promo-wrap 내부로 캡슐화 (glo_base.css 간섭 방지)
--------------------------------------------------------------- */
#glo-summer-promo-wrap,
#glo-summer-promo-wrap *,
#glo-summer-promo-wrap *::before,
#glo-summer-promo-wrap *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

#glo-summer-promo-wrap {
    width: 100%;
    overflow-x: hidden;
    font-family: var(--font-noto);
    color: var(--c-text);
    /* Figma "background" 레이어 — 전체 페이지 배경(폴백 컬러) */
    background-color: var(--c-primary-blue);
}

/* 데스크탑: background 레이어 이미지를 페이지 폭(100%)에 맞춰 상단 정렬 */
@media (min-width: 751px) {
    #glo-summer-promo-wrap {
        background: url('/content/dam/glo-kr/mcs/images/event/switchtocool/page_bg_full.jpg') top center / 100% auto no-repeat
            var(--c-primary-blue);
    }
}

#glo-summer-promo-wrap img {
    display: block;
    max-width: 100%;
    height: auto;
}

#glo-summer-promo-wrap a {
    text-decoration: none;
    color: inherit;
}

#glo-summer-promo-wrap ul {
    list-style: none;
}

#glo-summer-promo-wrap button {
    border: 0;
    background: none;
    cursor: pointer;
    color: inherit;
    font: inherit;
}

/* glo_base.css 간섭 차단 — 사용 태그의 상속/타이포 속성을 래퍼 기준으로 복원.
   (element 선택자(0,0,1)보다 우선하며, 우리의 .class 규칙(1,1,0)에는 양보) */
#glo-summer-promo-wrap h1,
#glo-summer-promo-wrap h2,
#glo-summer-promo-wrap h3,
#glo-summer-promo-wrap p,
#glo-summer-promo-wrap span,
#glo-summer-promo-wrap a,
#glo-summer-promo-wrap em,
#glo-summer-promo-wrap strong,
#glo-summer-promo-wrap ul,
#glo-summer-promo-wrap li,
#glo-summer-promo-wrap article,
#glo-summer-promo-wrap header,
#glo-summer-promo-wrap footer,
#glo-summer-promo-wrap section,
#glo-summer-promo-wrap details,
#glo-summer-promo-wrap summary {
    font-family: inherit;
    line-height: inherit;
    color: inherit;
    letter-spacing: inherit;
    text-align: inherit;
    text-decoration: none;
    background: transparent;
    border: 0;
    vertical-align: baseline;
    list-style: none;
}

/* ---------------------------------------------------------------
   LAYOUT BACKBONE
   · .section : 풀폭 배경 영역
   · .inner-container : 1920 기준 중앙 정렬 콘텐츠 컬럼
--------------------------------------------------------------- */
#glo-summer-promo-wrap .section {
    position: relative;
    width: 100%;
}

#glo-summer-promo-wrap .inner-container {
    position: relative;
    width: 100%;
    max-width: var(--inner-max);
    margin: 0 auto;
}

/* =============================================================
   TYPOGRAPHY 기준값 메모 (Figma BAT_PUBLISH 실측)
   · 행간(line-height): Figma 정의 %를 그대로 사용 → 무단위 배수로
     하드코딩(예: 124% → 1.24). 무단위 배수는 fontSize × 배수 = 정확한
     px 행간이며, 비율 스케일링(요구사항 1) 시에도 픽셀 정합이 유지됨.
   · 자간(letter-spacing): Figma -2% = -0.02em(한글 쫀쫀), MON 뱃지 +5%=0.05em.
   · 모든 치수는 rem(=px/16 @1920) → 뷰포트 비율로 확대/축소.
   ============================================================= */

/* =============================================================
   SECTION: main (Hero / SWITCH TO COOL)
   ============================================================= */
#glo-summer-promo-wrap .section--main {
    min-height: 67.5rem;                 /* 1080px */
    background: transparent;             /* 전체 페이지 background 레이어 사용 */
    overflow: hidden;
}

#glo-summer-promo-wrap .section--main .inner-container {
    display: flex;
    flex-direction: column;
    min-height: 67.5rem;
    /* top 56.38 / right 76 / bottom 60 / left 60 (px) */
    padding: 3.524rem 4.75rem 3.75rem 3.75rem;
}

/* 상단 바: 로고(좌) + 현명한 선택(우) */
#glo-summer-promo-wrap .main__topbar {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

/* 로고 — Figma 8:45 실측 222.26×156.28 (SVG, 투명) */
#glo-summer-promo-wrap .main__logo {
    margin-left: 1.75rem;                /* x88 - 좌패딩60 = 28px */
    width: 13.8906rem;                   /* 222.26px */
}
#glo-summer-promo-wrap .main__logo a { display: block; }
#glo-summer-promo-wrap .main__logo img { width: 100%; height: auto; }

/* 현명한 선택 뱃지 — Figma 8:56 실측 346.16×76 (SVG, 투명) */
#glo-summer-promo-wrap .main__badge {
    margin-top: 1.351rem;                /* y78 - y56.38 = 21.6px */
    width: 21.6349rem;                   /* 346.16px */
}
#glo-summer-promo-wrap .main__badge img { width: 100%; height: auto; }

/* 카피 블록: 얼음글씨 + 타이틀 (Flexbox) */
#glo-summer-promo-wrap .main__copy {
    display: flex;
    flex-direction: column;
    margin-top: 8.475rem;                /* 로고하단(212.38) → 얼음글씨(348) */
    padding-left: 3.23rem;               /* title frame x111.7 - 좌패딩60 */
}

/* SUMMER FESTA 얼음글씨 — Figma 8:66 (고해상도 투명 PNG 2023×251)
   실제 텍스트는 두 조각(8:67 x366~645 + 8:68 x845~1040) 합산 폭 674px,
   높이 ≈84px (PNG 비율 8.06과 일치) → 폭 674px 로 배치.
   그림자: Figma drop shadow 0 12.252px 10.134px rgba(51,74,93,0.5)
   (투명 PNG라 box-shadow가 아닌 filter: drop-shadow 로 글자 모양대로 적용) */
#glo-summer-promo-wrap .main__eyebrow {
    margin-left: 16.77rem;               /* 글자 시작 x≈380 (원본 실측) */
    margin-top: 0.625rem;                /* 글자 상단 ≈ y358 (원본 실측) */
    width: 28.625rem;                    /* 458px (원본 실측 폭 454 매칭) */
    height: auto;
    filter: drop-shadow(0 0.7658rem 0.6334rem rgba(51, 74, 93, 0.5));
}

#glo-summer-promo-wrap .main__title {
    display: flex;
    flex-direction: column;
    margin-top: -0.5rem;                 /* 얼음글씨와 약간 겹침(y420 vs 435) */
    font-family: var(--font-mont);
    font-weight: 900;
    font-size: 11.178rem;                /* 178.85px */
    line-height: 1.24;                   /* 124% = 221.78px @base */
    letter-spacing: -0.02em;
    font-style: italic;
    color: var(--c-white);
    text-shadow: 0 0.415rem 0.85rem rgba(12, 61, 103, 0.6);
    padding-top:7px;
}
#glo-summer-promo-wrap .main__title-line { display: block; }
#glo-summer-promo-wrap .main__title-line {
    margin-left: 2.416rem;               /* SWITCH x150.36 - title x111.7 */
}
#glo-summer-promo-wrap .main__title-line--tagline {
    margin-left: 10.87rem;               /* TO COOL x285.6 - title x111.7 */
    margin-top: -3.05rem;                /* y593 vs y420 행간 보정 겹침 */
}

#glo-summer-promo-wrap .section--main .disclaimer {
    margin-top: auto;
    align-self: flex-start;
    margin-left: 0;                      /* x60 = 좌패딩과 동일 */
}

/* 3D 제품 이미지 — 규칙상 absolute + transform 허용
   (각도는 투명 PNG에 반영됨 / transform 은 위치·스케일·모션 훅) */
#glo-summer-promo-wrap .main__product {
    position: absolute;
    top: 15.6875rem;                     /* y251 */
    right: 2.6875rem;                    /* 기존 3rem에서 5px 우측 이동 */
    width: 57rem;                        /* 912px */
    height: 51rem;                       /* 816px */
    background: url('/content/dam/glo-kr/mcs/images/event/switchtocool/device_hero.png') center / contain no-repeat;
    transform: scale(1) rotate(0deg);    /* 애니메이션 여지(부유 모션 등) */
    transform-origin: center center;
    will-change: transform;
    pointer-events: none;
}

/* =============================================================
   SECTION: sub (Promotion Details)
   ============================================================= */
#glo-summer-promo-wrap .section--sub {
    min-height: 63rem;                   /* 1008px */
    background: transparent;             /* 전체 페이지 background 레이어 사용 */
    overflow: hidden;
}

#glo-summer-promo-wrap .section--sub .inner-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 63rem;
    padding: 16rem 3.75rem 2.375rem;     /* top y256 / bottom 38px */
    text-align: center;
}

#glo-summer-promo-wrap .sub__eyebrow {
    font-family: var(--font-one-mobile);
    font-weight: 700;
    font-size: 2.375rem;                 /* 38px */
    line-height: 1.2;                    /* 120% = 45.6px */
    letter-spacing: -0.02em;
    color: var(--c-white);
}

/* SUMMER FESTA 얼음글씨 — main과 동일 PNG (원본 실측 폭673·중앙·상단 y329) */
#glo-summer-promo-wrap .sub__title {
    display: block;
    margin: 1.7125rem auto 0;            /* eyebrow하단(≈302) → 글자상단 y329 */
    width: 42.0625rem;                   /* 673px (원본 실측) */
    height: auto;
    filter: drop-shadow(0 0.4375rem 0.5rem rgba(0, 70, 90, 0.45));
}
/* 모바일 전용 2줄 타이틀 — 데스크탑에서는 숨김 */
#glo-summer-promo-wrap .sub__title-m { display: none; }

/* Promotion Details — ONE Mobile OTF Bold 36px, 행간 1.3, 문단 사이 추가 간격 */
#glo-summer-promo-wrap .sub__desc {
    margin-top: 4.65rem;                 /* 얼음글씨 하단 → 설명 y487 */
    font-family: var(--font-one-mobile);
    font-weight: 700;
    font-size: 2.25rem;                  /* 36px */
    line-height: 1.3;                    /* 130% = 46.8px (원본 leading 1.3) */
    letter-spacing: -0.02em;
    color: var(--c-white);
    text-shadow: 0 0 0.625rem rgba(0, 86, 107, 0.5);
}
#glo-summer-promo-wrap .sub__desc p + p {
    margin-top: 1.45rem;                 /* 원본 leading-2 문단 간격(≈23px) */
}

/* 블루 디바이스 — 3D 제품, absolute + transform 허용 */
#glo-summer-promo-wrap .sub__product {
    position: absolute;
    top: 19.6875rem;                     /* y315 */
    left: 11.8125rem;                    /* x189 */
    width: 16.25rem;                     /* 260px */
    height: 34.6875rem;                  /* 555px */
    background: url('/content/dam/glo-kr/mcs/images/event/switchtocool/device_blue.png') center / contain no-repeat;
    transform: scale(1) rotate(0deg);
    transform-origin: center center;
    will-change: transform;
    pointer-events: none;
}

#glo-summer-promo-wrap .section--sub .disclaimer {
    margin-top: auto;
    align-self: flex-start;
}

/* =============================================================
   SECTION: schedule (Open Dates)
   ============================================================= */
#glo-summer-promo-wrap .section--schedule {
    min-height: 63rem;                   /* 1008px */
    background: transparent;             /* 전체 페이지 background 레이어 사용 */
    overflow: hidden;
}

#glo-summer-promo-wrap .section--schedule .inner-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 63rem;
    padding: 7rem 3.75rem 2.375rem;      /* top y112 */
    text-align: center;
}

/* SUMMER FESTA SCHEDULE 얼음글씨 — 추출 PNG (Figma 8:133 폭≈532) */
#glo-summer-promo-wrap .schedule__title {
    display: block;
    margin: 0 auto;
    width: 34.4375rem;                   /* 551px (콘텐츠≈532, 원본 비율) */
    height: auto;
    filter: drop-shadow(0 0.4375rem 0.5rem rgba(0, 70, 90, 0.45));
}

#glo-summer-promo-wrap .schedule__desc {
    margin-top: 0.8125rem;
    font-family: var(--font-one-mobile);
    font-weight: 700;
    font-size: 2rem;                     /* 32px */
    line-height: 1.4;                    /* 140% = 44.8px */
    letter-spacing: -0.02em;
    color: var(--c-white);
}

/* 날짜 카드 — 추출 이미지(기울기 포함). 원본 카드 중심은 3열×2행 정규 그리드
   (열 중심 690/960/1230, 행 중심 545/778, 셀 214px·열간격 56px·행간격 16px) */
#glo-summer-promo-wrap .schedule__list {
    display: grid;
    grid-template-columns: repeat(3, 13.375rem);   /* 214px */
    grid-template-rows: repeat(2, 13.5625rem);      /* 217px */
    column-gap: 3.5rem;                  /* 56px → 열 중심 간격 270px */
    row-gap: 1rem;                       /* 16px → 행 중심 간격 233px */
    justify-content: center;
    place-items: center;
    position: relative;
    left: 0.4375rem;                     /* +7px 우측 보정 (원본 중심 정렬) */
    margin-top: 2.5625rem;               /* desc하단 → grid 상단(row1 중심 y545) */
}

#glo-summer-promo-wrap .sched-card {
    height: auto;
    filter: drop-shadow(0.25rem 0.3rem 0.4rem rgba(0, 60, 80, 0.18));
}
/* 흰 카드(06·08·21) 네이티브 205px, 네이비 카드(07·20·22) 네이티브 214px */
#glo-summer-promo-wrap .sched-card--d06,
#glo-summer-promo-wrap .sched-card--d08,
#glo-summer-promo-wrap .sched-card--d21 { width: 12.8125rem; }   /* 205px */
#glo-summer-promo-wrap .sched-card--d07,
#glo-summer-promo-wrap .sched-card--d20,
#glo-summer-promo-wrap .sched-card--d22 { width: 13.375rem; }    /* 214px */

/* 퍼플 디바이스 — 3D 제품, absolute + transform 허용 */
#glo-summer-promo-wrap .schedule__product {
    position: absolute;
    top: 21.75rem;                       /* y348 */
    right: 7.375rem;                     /* x1567 기준 우측여백 118px */
    width: 14.6875rem;                   /* 235px */
    height: 33.6875rem;                  /* 539px */
    background: url('/content/dam/glo-kr/mcs/images/event/switchtocool/device_purple.png') center / contain no-repeat;
    transform: scale(1) rotate(0deg);
    transform-origin: center center;
    will-change: transform;
    pointer-events: none;
}

#glo-summer-promo-wrap .section--schedule .disclaimer {
    margin-top: auto;
    align-self: flex-start;
    text-align: left;                    /* 원본과 동일 좌측정렬 (x60) */
}
/* disclaimer 텍스트 분기 — 기본(데스크탑): 이벤트 안내만 노출 */
#glo-summer-promo-wrap .dc-mobile { display: none; }

/* 팝업 */
#glo-summer-promo-wrap .schedule__popup[hidden] { display: none; }
#glo-summer-promo-wrap .schedule__popup {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
}
#glo-summer-promo-wrap .popup__dim {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
}
#glo-summer-promo-wrap .popup__panel {
    position: relative;
    width: 49.875rem;                    /* 798px */
    padding: 2.3125rem;
    border-radius: 1.25rem;
    background: var(--c-white);
    color: var(--c-text-dark);
    text-align: center;
}

/* =============================================================
   SECTION: event (CTA)
   ============================================================= */
#glo-summer-promo-wrap .section--event {
    min-height: 63rem;                   /* 1008px */
    width: 100%;
    overflow: hidden;
    /* 풀파티 사진(Figma oasis1 1: 2021×1347 @x-55 y3096)을 event 섹션 전용
       배경으로 분리 → 섹션과 1:1 정렬. 폭 2021/1920=105.263%, 상단·중앙정렬.
       사진·섹션 모두 뷰포트 폭에 비례하므로 모든 폭에서 동일 프레이밍(스케일 불변). */
    background: url('/content/dam/glo-kr/mcs/images/event/switchtocool/event_pool_bg.jpg') center top / 105.263% auto no-repeat;
    background-color: var(--c-primary-blue);
}

/* 본문과 배경 사이의 반투명 블러 레이어 (Figma Rectangle 2631:
   backdrop-blur 7px + bg rgba(0,23,50,0.4)) */
#glo-summer-promo-wrap .section--event::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: rgba(0, 23, 50, 0.4);
    backdrop-filter: blur(0.4375rem);            /* 7px @1920 */
    -webkit-backdrop-filter: blur(0.4375rem);
    pointer-events: none;
}

#glo-summer-promo-wrap .section--event .inner-container {
    position: relative;
    z-index: 1;                          /* 블러 레이어 위에 본문 */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 63rem;
    padding: 3.75rem;
    text-align: center;
}

#glo-summer-promo-wrap .event__headline {
    font-family: var(--font-one-mobile);
    font-weight: 700;
    font-size: 3.25rem;                  /* 52px */
    line-height: 1.5;                    /* 150% = 78px */
    letter-spacing: -0.02em;
    color: var(--c-white);
    text-shadow: 0 0 0.625rem rgba(0, 86, 107, 0.5);
}
/* "Summer Festa" 영문은 Mont SemiBold (Figma 8:161) */
#glo-summer-promo-wrap .event__festa {
    font-family: var(--font-mont);
    font-weight: 600;
}
/* 모바일 전용 줄바꿈 / 모바일 전용 disclaimer — 기본(데스크탑) 숨김 */
#glo-summer-promo-wrap .event__headline .br-m { display: none; }
#glo-summer-promo-wrap .event__disclaimer { display: none; }

#glo-summer-promo-wrap .event__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 4.0625rem;               /* headline하단 → button(65px) */
    height: 3.5625rem;                   /* 57px */
    padding: 0 3.125rem;                 /* 좌우 50px → 폭 272px (Figma 8:159) */
    border-radius: 0;                    /* 원본은 사각형 */
    background: var(--c-cta);
    backdrop-filter: blur(0.3125rem);    /* 5px */
    -webkit-backdrop-filter: blur(0.3125rem);
    font-family: var(--font-one-mobile);
    font-weight: 700;
    font-size: 1.625rem;                 /* 26px */
    line-height: 1.2;                    /* 120% = 31.2px */
    letter-spacing: -0.02em;
    color: var(--c-white);
}

/* =============================================================
   SECTION: notice (유의사항 아코디언)
   ============================================================= */
#glo-summer-promo-wrap .section--notice { background: var(--c-notice-body-bg); }
#glo-summer-promo-wrap .notice__accordion { width: 100%; }

/* 헤더 바 = <summary> : 브라우저 기본 마커 제거 + 커스텀 화살표 */
#glo-summer-promo-wrap summary.notice__bar {
    list-style: none;
    cursor: pointer;
    background: var(--c-notice-header-bg);
}
#glo-summer-promo-wrap summary.notice__bar::-webkit-details-marker { display: none; }
#glo-summer-promo-wrap summary.notice__bar::marker { content: ""; }

#glo-summer-promo-wrap .notice__bar .inner-container {
    display: flex;
    align-items: center;
    gap: 0.9375rem;                      /* 아이콘-텍스트 15px */
    height: 7.5rem;                      /* 120px */
    padding: 0 11.0625rem 0 14.875rem;   /* 좌 238px / 우 177px */
}
#glo-summer-promo-wrap .notice__toggle-icon {
    width: 3.125rem;                     /* 50px */
    height: 3.125rem;
    flex-shrink: 0;
    /* 원 + "i" 정보 아이콘 (Figma Info Icon 8:171) */
    background: url('/content/dam/glo-kr/mcs/images/event/switchtocool/icon_info.svg') center / contain no-repeat;
}
#glo-summer-promo-wrap .notice__toggle-text {
    font-family: var(--font-noto);
    font-weight: 700;
    font-size: 1.75rem;                  /* 28px */
    line-height: 1;                      /* 100% */
    letter-spacing: -0.02em;
    color: var(--c-white);
}
#glo-summer-promo-wrap .notice__toggle-arrow {
    width: 1rem;
    height: 1rem;
    margin-left: auto;
    border-left: 2px solid var(--c-white);
    border-top: 2px solid var(--c-white);
    transform: rotate(45deg);            /* 닫힘 ▼ */
    transition: transform 0.25s ease;
}
/* 열림 ▲ */
#glo-summer-promo-wrap .notice__accordion[open] .notice__toggle-arrow {
    transform: rotate(-135deg);
}

/* 본문 */
#glo-summer-promo-wrap .notice__body .inner-container {
    padding: 3.75rem 14.21875rem 4rem;   /* top60 / 좌 227.5px */
}
#glo-summer-promo-wrap .notice__group + .notice__group { margin-top: 2.5rem; } /* 그룹 간격 40px */
#glo-summer-promo-wrap .notice__group-title {
    font-family: var(--font-noto);
    font-weight: 700;
    font-size: 1.75rem;                  /* 28px */
    line-height: 1.2;                    /* 120% = 33.6px */
    letter-spacing: -0.02em;
    color: var(--c-white);
}
#glo-summer-promo-wrap .notice__group-text {
    margin-top: 1.5rem;                  /* header하단 → text 24px */
    list-style: none;
    font-family: var(--font-noto);
    font-weight: 400;
    font-size: 1.25rem;                  /* 20px */
    line-height: 1.7;                    /* 170% = 34px */
    letter-spacing: -0.02em;
    color: var(--c-white);
}
/* 불릿: 본문은 제목과 정렬, "•" 만 좌측 21px 행잉 (원본 실측) */
#glo-summer-promo-wrap .notice__group-text li {
    position: relative;                  /* 본문 좌측 = 제목 좌측 */
}
#glo-summer-promo-wrap .notice__group-text li::before {
    content: "•";
    position: absolute;
    left: -1.3125rem;                    /* 21px 좌측 행잉 */
    color: rgba(255, 255, 255, 0.85);
}

/* =============================================================
   공통 — Disclaimer
   ============================================================= */
#glo-summer-promo-wrap .disclaimer {
    font-family: var(--font-noto);
    font-weight: 400;
    font-size: 0.875rem;                 /* 14px */
    line-height: 1.4;                    /* 140% = 19.6px */
    letter-spacing: -0.02em;
    color: rgba(255, 255, 255, 0.7);
}

/* =============================================================
   POPUP — 날짜 카드 클릭 시 혜택 팝업 (모달)
   · 데스크탑 798×446 기준(÷16 = rem), 모바일은 미디어쿼리에서 보정
   ============================================================= */
#glo-summer-promo-wrap .sched-card { cursor: pointer; }
#glo-summer-promo-wrap .sched-card:focus-visible {
    outline: 0.1875rem solid var(--c-white);
    outline-offset: 0.25rem;
}

#glo-summer-promo-wrap .popup-overlay {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2.5rem;
    background: rgba(0, 0, 0, 0.6);
    -webkit-tap-highlight-color: transparent;
}
#glo-summer-promo-wrap .popup-overlay[hidden] { display: none; }

#glo-summer-promo-wrap .popup {
    display: none;
    position: relative;
    flex-direction: column;
    align-items: center;
    width: 49.875rem;                       /* 798px */
    max-width: calc(100vw - 5rem);
    min-height: 27.875rem;                  /* 446px */
    padding: 2.3125rem 2.5rem 2.75rem;      /* 타이틀 top 37px */
    border-radius: 1.25rem;                 /* 20px */
    background: #fff;
    font-family: var(--font-one-mobile);
    color: var(--c-teal);                   /* #018aa0 */
    text-align: center;
    box-shadow: 0 1.25rem 3.75rem rgba(0, 0, 0, 0.35);
}
#glo-summer-promo-wrap .popup.is-active {
    display: flex;
    animation: popupIn 0.22s ease;
}
@keyframes popupIn {
    from { opacity: 0; transform: translateY(1.25rem) scale(0.97); }
    to   { opacity: 1; transform: none; }
}

/* 닫기(X) */
#glo-summer-promo-wrap .popup__close {
    position: absolute;
    top: 1.25rem;
    right: 1.3125rem;
    width: 1.79375rem;                      /* 28.7px */
    height: 1.79375rem;
    border: 0;
    background: transparent;
    cursor: pointer;
}
#glo-summer-promo-wrap .popup__close::before,
#glo-summer-promo-wrap .popup__close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0.125rem;                        /* 2px */
    height: 100%;
    background: #c5c5c5;
    border-radius: 0.27rem;
}
#glo-summer-promo-wrap .popup__close::before { transform: translate(-50%, -50%) rotate(45deg); }
#glo-summer-promo-wrap .popup__close::after  { transform: translate(-50%, -50%) rotate(-45deg); }

/* 타이틀 */
#glo-summer-promo-wrap .popup__title {
    font-weight: 700;
    font-size: 2.25rem;                     /* 36px */
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--c-teal);
    white-space: nowrap;
}
#glo-summer-promo-wrap .popup__date,
#glo-summer-promo-wrap .popup__num { font-family: var(--font-mont); }

/* 미디어(이미지 + 뱃지) */
#glo-summer-promo-wrap .popup__media {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 2.5rem;                            /* duo 간격 */
    margin-top: 1.625rem;
}
#glo-summer-promo-wrap .popup__shot {
    position: relative;
    flex: none;
}
#glo-summer-promo-wrap .popup__shot img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#glo-summer-promo-wrap .popup__shot--banner  { width: 37.25rem;  height: 14.875rem; }   /* 596×238 */
#glo-summer-promo-wrap .popup__shot--banner img { border-radius: 0.625rem; }
#glo-summer-promo-wrap .popup__shot--baskin  { width: 12rem;     height: 14.3125rem; }  /* 192×229 */
#glo-summer-promo-wrap .popup__shot--hotel   { width: 13.25rem;  height: 13.25rem; }    /* 212×212 */
#glo-summer-promo-wrap .popup__shot--hotel img { border-radius: 0.625rem; }
#glo-summer-promo-wrap .popup__shot--coffee  { width: 7.3125rem; height: 12.9375rem; }  /* 117×207 */
#glo-summer-promo-wrap .popup__shot--stanley { width: 6.8125rem; height: 15.125rem; }   /* 109×242 */
#glo-summer-promo-wrap .popup__shot--gopro   { width: 13.6875rem; height: 8.8125rem; }  /* 219×141 */

/* 뱃지(딱지) */
#glo-summer-promo-wrap .popup__badge {
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 6.25rem;                         /* 100px */
    height: 6.25rem;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 30%, #ff7d1f 0%, #f44505 100%);
    color: #fff;
    line-height: 1;
    box-shadow: 0 0.3125rem 0.75rem rgba(214, 60, 0, 0.35);
}
#glo-summer-promo-wrap .popup__badge em {
    font-style: normal;
    font-weight: 700;
    font-size: 1.357rem;                    /* 21.7px */
    letter-spacing: -0.02em;
    color: #fff;
}
#glo-summer-promo-wrap .popup__badge strong {
    margin-top: 0.25rem;
    font-weight: 700;
    font-size: 1.822rem;                    /* 29px */
    letter-spacing: -0.02em;
    color: #fff;
}
/* 뱃지 위치 — 시안별 보정 */
#glo-summer-promo-wrap .popup__shot--banner  .popup__badge { right: 0.6875rem; bottom: 0.6875rem; }
#glo-summer-promo-wrap .popup__shot--baskin  .popup__badge { right: -2.75rem;  bottom: 0.25rem; }
#glo-summer-promo-wrap .popup__shot--stanley .popup__badge { right: -3rem;     bottom: 1rem; }
#glo-summer-promo-wrap .popup__shot--hotel   .popup__badge { right: -2.5rem;   bottom: 0.5rem; }
#glo-summer-promo-wrap .popup__shot--gopro   .popup__badge { right: -2.5rem;   bottom: 0.25rem; }
#glo-summer-promo-wrap .popup__shot--coffee  .popup__badge { right: -1.5rem;   bottom: 0.5rem; }

/* 설명 */
#glo-summer-promo-wrap .popup__desc {
    margin-top: 1.625rem;                   /* 이미지 → 설명 */
    font-weight: 400;
    font-size: 1.25rem;                     /* 20px */
    line-height: 1.4;
    letter-spacing: -0.02em;
    color: var(--c-teal);
    word-break: keep-all;                   /* 한글 단어 중간 줄바꿈 방지 */
}
#glo-summer-promo-wrap .popup__desc b { font-weight: 700; }

/* ----- POPUP 모바일 (375 시안 ÷8 = rem, 1rem=8px@375) ----- */
@media (max-width: 750px) {
    #glo-summer-promo-wrap .popup-overlay { padding: 2rem; }
    #glo-summer-promo-wrap .popup {
        width: 35.25rem;                    /* 282px */
        min-height: 45rem;                  /* 360px */
        max-width: calc(100vw - 4rem);
        padding: 3.625rem 2.125rem 2.5rem;  /* 타이틀 top 29px */
        border-radius: 1.25rem;             /* 10px */
    }
    #glo-summer-promo-wrap .popup__close {
        top: 0.75rem;
        right: 0.9375rem;
        width: 2rem;                        /* 16px */
        height: 2rem;
    }
    #glo-summer-promo-wrap .popup__title { font-size: 3.5rem; }       /* 28px */
    #glo-summer-promo-wrap .popup__media { gap: 1.5rem; margin-top: 1.75rem; }

    #glo-summer-promo-wrap .popup__shot--banner  { width: 29.625rem; height: 17rem; }      /* 237×136 */
    #glo-summer-promo-wrap .popup__shot--baskin  { width: 14.79rem;  height: 17.625rem; }  /* 118×141 */
    #glo-summer-promo-wrap .popup__shot--hotel   { width: 12.76rem;  height: 12.76rem; }   /* 102×102 */
    #glo-summer-promo-wrap .popup__shot--coffee  { width: 8.625rem;  height: 15.25rem; }   /* 69×122 */
    #glo-summer-promo-wrap .popup__shot--stanley { width: 8.84rem;   height: 19.625rem; }  /* 70.7×157 */
    #glo-summer-promo-wrap .popup__shot--gopro   { width: 14.14rem;  height: 9.15rem; }    /* 113×73 */

    #glo-summer-promo-wrap .popup__badge { width: 8.75rem; height: 8.75rem; }              /* 70px */
    #glo-summer-promo-wrap .popup__badge em     { font-size: 1.9rem; }                     /* 15.2px */
    #glo-summer-promo-wrap .popup__badge strong { font-size: 2.55rem; margin-top: 0.2rem; }/* 20.4px */
    #glo-summer-promo-wrap .popup__shot--banner  .popup__badge { right: 0.5rem;  bottom: 0.5rem; }
    #glo-summer-promo-wrap .popup__shot--baskin  .popup__badge { right: -1.75rem; bottom: 0.25rem; }
    #glo-summer-promo-wrap .popup__shot--stanley .popup__badge { right: -2rem;    bottom: 1rem; }
    #glo-summer-promo-wrap .popup__shot--hotel   .popup__badge { right: -1.5rem;  bottom: 0.25rem; }
    #glo-summer-promo-wrap .popup__shot--gopro   .popup__badge { right: -1.5rem;  bottom: 0.25rem; }
    #glo-summer-promo-wrap .popup__shot--coffee  .popup__badge { right: -1rem;    bottom: 0.25rem; }

    #glo-summer-promo-wrap .popup__desc {
        margin-top: 1.5rem;
        font-size: 2rem;                    /* 16px */
        letter-spacing: -0.04em;
    }
}

/* =============================================================
   MOBILE OVERRIDES (max-width: 750px) — 375×2 시안 기준
   (세부 픽셀 보정은 모바일 정밀 단계에서 진행)
   ============================================================= */
@media (max-width: 750px) {
    /* 모바일 연속 배경 — main·sub·schedule을 관통하는 단일 그라데이션(데스크탑과 동일 방식).
       래퍼에 한 장으로 깔고 각 섹션은 투명 처리 → 섹션 경계 seam 제거. */
    #glo-summer-promo-wrap {
        background: url('/content/dam/glo-kr/mcs/images/event/switchtocool/page_bg_mobile.jpg') top center / 100% auto no-repeat
            var(--c-primary-blue);
    }

    /* =========================================================
       MOBILE — event (Figma mobile 375×362, event top=1576)
       · 좌표 = Figma 375 시안 px ÷ 8 (1rem = 8px @375)
       ========================================================= */
    #glo-summer-promo-wrap .section--event {
        min-height: 45.25rem;            /* 362px */
        background: url('/content/dam/glo-kr/mcs/images/event/switchtocool_pool_bg.jpg') center center / cover no-repeat
            var(--c-primary-blue);
    }
    #glo-summer-promo-wrap .section--event .inner-container {
        display: block;
        position: relative;
        width: 100%;
        max-width: none;
        height: 45.25rem;
        min-height: 45.25rem;
        padding: 0;
    }

    /* 모바일 줄바꿈 노출(4줄) */
    #glo-summer-promo-wrap .event__headline .br-m { display: inline; }

    /* headline — center, y95~207, ONE Mobile 20px/lh1.4/자간-0.06em */
    #glo-summer-promo-wrap .event__headline {
        position: absolute;
        top: 11.875rem;                  /* y95 */
        left: 50%;
        transform: translateX(-50%);
        width: 42.625rem;                /* 341px */
        margin: 0;
        font-size: 2.5rem;               /* 20px */
        line-height: 1.4;                /* 140% = 28px */
        letter-spacing: -0.06em;         /* -1.2px @20px */
        text-align: center;
        text-shadow: 0 0 0.625rem rgba(0, 86, 107, 0.5);
        z-index: 1;
    }

    /* CTA 버튼 — 사각형 163×38, center, y223, ONE Mobile 14px */
    #glo-summer-promo-wrap .event__button {
        position: absolute;
        top: 27.875rem;                  /* y223 */
        left: 50%;
        transform: translateX(-50%);
        margin: 0;
        height: 4.75rem;                 /* 38px */
        padding: 0 4.375rem;             /* 좌우 35px → 폭 163px */
        border-radius: 0;
        background: var(--c-cta);
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        font-size: 1.75rem;              /* 14px */
        line-height: 1.3;
        letter-spacing: -0.02em;
        white-space: nowrap;
        z-index: 1;
    }

    /* disclaimer(모바일 전용) — 좌하단 x24 y332, Noto Sans KR 9px/lh1.3 */
    #glo-summer-promo-wrap .event__disclaimer {
        display: block;
        position: absolute;
        top: 41.5rem;                    /* y332 */
        left: 3rem;                      /* x24 */
        width: auto;
        margin: 0;
        font-family: 'Noto Sans KR', sans-serif;
        font-weight: 400;
        font-size: 1.125rem;             /* 9px */
        line-height: 1.3;
        letter-spacing: -0.02em;
        color: var(--c-white);
        text-align: left;
        z-index: 1;
    }

    /* =========================================================
       MOBILE — sub (Figma mobile 375×472, sub top=586)
       · 좌표 = Figma 375 시안 px ÷ 8 (1rem = 8px @375)
       · 중앙 정렬 스택(eyebrow → 2줄 타이틀 → 설명) + 좌하단 disclaimer
       ========================================================= */
    #glo-summer-promo-wrap .section--sub { min-height: 59rem; }   /* 472px */
    #glo-summer-promo-wrap .section--sub .inner-container {
        display: block;
        position: relative;
        width: 100%;
        max-width: none;
        height: 59rem;
        min-height: 59rem;
        padding: 0;
    }

    /* 블루 디바이스 — 모바일 sub 시안에는 제품 없음 → 숨김 */
    #glo-summer-promo-wrap .sub__product { display: none; }

    /* sub__head 컨테이너 무력화(자식 absolute) */
    #glo-summer-promo-wrap .section--sub .sub__head { margin: 0; padding: 0; }

    /* eyebrow "여름을 즐기는 쉬운 방법" — center, y66, 21.23px/lh1.2 */
    #glo-summer-promo-wrap .section--sub .sub__eyebrow {
        position: absolute;
        top: 8.25rem;                    /* y66 */
        left: 50%;
        transform: translateX(-50%);
        margin: 0;
        font-family: var(--font-one-mobile);
        font-weight: 700;
        font-size: 2.6538rem;            /* 21.23px */
        line-height: 1.2;
        letter-spacing: -0.02em;
        color: var(--c-white);
        white-space: nowrap;
        text-align: center;
    }

    /* 2줄 SUMMER FESTA 타이틀 이미지 — center, 콘텐츠폭 276 → 추출본 293 */
    #glo-summer-promo-wrap .section--sub .sub__title { display: none; }
    #glo-summer-promo-wrap .section--sub .sub__title-m {
        display: block;
        position: absolute;
        top: 10.875rem;                  /* y87 (이미지 상단 글로 패딩 보정) */
        left: 50%;
        transform: translateX(-50%);
        width: 36.625rem;                /* 293px */
        height: auto;
        margin: 0;
        filter: drop-shadow(0 0.4rem 0.5rem rgba(0, 70, 90, 0.4));
        z-index: 2;
    }

    /* 설명 텍스트 — center, y264, 16px/lh1.4 */
    #glo-summer-promo-wrap .section--sub .sub__desc {
        position: absolute;
        top: 33rem;                      /* y264 */
        left: 50%;
        transform: translateX(-50%);
        width: auto;
        margin: 0;
        font-family: var(--font-one-mobile);
        font-weight: 700;
        font-size: 2rem;                 /* 16px */
        line-height: 1.4;                /* 140% */
        letter-spacing: -0.02em;
        color: var(--c-white);
        text-align: center;
        text-shadow: 0 0 0.673rem rgba(0, 86, 107, 0.5);
        white-space: nowrap;
    }
    #glo-summer-promo-wrap .section--sub .sub__desc p { margin: 0; }
    #glo-summer-promo-wrap .section--sub .sub__desc p + p {
        margin-top: 1.78rem;             /* 원본 빈 줄(leading0.89×16≈14.2px) */
    }

    /* disclaimer — 좌하단 x24 y436, Noto Sans KR 9px/lh1.3 */
    #glo-summer-promo-wrap .section--sub .disclaimer {
        position: absolute;
        top: 54.5rem;                    /* y436 */
        left: 3rem;                      /* x24 */
        width: auto;
        margin: 0;
        font-family: 'Noto Sans KR', sans-serif;
        font-weight: 400;
        font-size: 1.125rem;             /* 9px */
        line-height: 1.3;
        letter-spacing: -0.02em;
        color: var(--c-white);
        text-align: left;
    }

    /* =========================================================
       MOBILE — main (Figma mobile 375×586) 정밀 배치
       · 모든 좌표 = Figma 375 시안 px ÷ 8 (1rem = 100vw/46.875 = 8px @375)
       · 배경/제품은 프레임 크기(750×1172) 전면 오버레이로 베이크 → inset:0 정렬
       · 제품은 별도 레이어 유지(추후 애니메이션 훅)
       ========================================================= */
    #glo-summer-promo-wrap .section--main {
        min-height: 73.25rem;                /* 586px */
        background: transparent;             /* 래퍼 연속 배경 사용 */
    }
    #glo-summer-promo-wrap .section--main .inner-container {
        display: block;
        position: relative;
        width: 100%;
        max-width: none;
        height: 73.25rem;
        min-height: 73.25rem;
        padding: 0;
    }

    /* 제품(디바이스 3종) — 프레임 전면 투명 오버레이 */
    #glo-summer-promo-wrap .main__product {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        background: url('/content/dam/glo-kr/mcs/images/event/switchtocool/device_hero_m.png') center top / 100% 100% no-repeat;
        z-index: 1;
    }

    /* 로고 — x25.65 y16.38, 64×45 */
    #glo-summer-promo-wrap .main__logo {
        position: absolute;
        top: 2.0475rem;
        left: 3.2063rem;
        width: 8rem;
        margin: 0;
        z-index: 3;
    }
    /* 현명한 선택 — 우상단 x236 y25 w114 (우측 여백 25px) */
    #glo-summer-promo-wrap .main__badge {
        position: absolute;
        top: 3.125rem;
        right: 3.125rem;
        width: 14.25rem;
        margin: 0;
        z-index: 3;
    }

    /* 카피 컨테이너 무력화(자식 absolute) */
    #glo-summer-promo-wrap .section--main .main__copy { margin: 0; padding: 0; }

    /* SUMMER FESTA 얼음글씨 — 중앙(center+4px) y88 w153 */
    #glo-summer-promo-wrap .main__eyebrow {
        position: absolute;
        top: 11rem;
        left: calc(50% + 0.51rem);
        transform: translateX(-50%);
        width: 19.145rem;
        margin: 0;
        filter: drop-shadow(0 0.49rem 0.405rem rgba(51, 74, 93, 0.5));
        z-index: 2;
    }

    /* SWITCH / TO COOL — Mont 57.19px, 두 줄 각각 절대배치 */
    #glo-summer-promo-wrap .section--main .main__title {
        position: static;
        font-size: 7.1488rem;                /* 57.19px */
        line-height: 1;
        text-shadow: 0 0.2655rem 0.543rem rgba(12, 61, 103, 0.6);
        padding-top: 0;
    }
    #glo-summer-promo-wrap .section--main .main__title-line {
        position: absolute;
        left: 6.045rem;                      /* SWITCH x48.36 */
        top: 14.1475rem;                     /* y113.18 */
        margin: 0;
        z-index: 2;
    }
    #glo-summer-promo-wrap .section--main .main__title-line--tagline {
        left: 11.45rem;                      /* TO COOL x91.6 */
        top: 20.7963rem;                     /* y166.37 */
        margin: 0;
    }

    /* Disclaimer — 좌하단 x24 y555 */
    #glo-summer-promo-wrap .section--main .disclaimer {
        position: absolute;
        left: 3rem;
        top: 69.375rem;
        width: 35rem;
        margin: 0;
        text-align: left;
        font-size: 1.3rem;
        z-index: 2;
    }

    /* =========================================================
       MOBILE — schedule (Figma mobile 375×518, schedule top=1058)
       · 좌표 = Figma 375 시안 px ÷ 8 (1rem = 8px @375)
       ========================================================= */
    #glo-summer-promo-wrap .section--schedule { min-height: 64.75rem; }   /* 518px */
    #glo-summer-promo-wrap .section--schedule .inner-container {
        display: block;
        position: relative;
        width: 100%;
        max-width: none;
        height: 64.75rem;
        min-height: 64.75rem;
        padding: 0;
        text-align: initial;
    }

    /* 퍼플 디바이스 — 모바일 schedule 시안에는 제품 없음 → 숨김 */
    #glo-summer-promo-wrap .schedule__product { display: none; }

    /* 타이틀 2줄 이미지 — center, y39, 콘텐츠폭 289 */
    #glo-summer-promo-wrap .section--schedule .schedule__head { margin: 0; padding: 0; }
    #glo-summer-promo-wrap .section--schedule .schedule__title {
        position: absolute;
        top: 4.875rem;                   /* y39 */
        left: 50%;
        transform: translateX(-50%);
        width: 36.125rem;                /* 289px */
        height: auto;
        margin: 0;
        filter: drop-shadow(0 0.4rem 0.5rem rgba(0, 70, 90, 0.4));
    }

    /* 서브타이틀 — center, y140, ONE Mobile 18px/lh1.4 */
    #glo-summer-promo-wrap .section--schedule .schedule__desc {
        position: absolute;
        top: 17.5rem;                    /* y140 */
        left: 50%;
        transform: translateX(-50%);
        width: auto;
        margin: 0;
        font-family: var(--font-one-mobile);
        font-weight: 700;
        font-size: 2.25rem;              /* 18px */
        line-height: 1.4;
        letter-spacing: -0.02em;
        color: var(--c-white);
        text-align: center;
        text-shadow: 0 0 0.679rem rgba(0, 86, 107, 0.5);
        white-space: nowrap;
    }

    /* 날짜 카드 — center, y225, 3열×2행, 흰카드 94 / 네이비카드 99 */
    #glo-summer-promo-wrap .schedule__list {
        position: absolute;
        top: 28.125rem;                  /* y225 */
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
        column-gap: 1.2rem;              /* ≈9.6px (원본 열 간격) */
        row-gap: 1.6rem;                 /* ≈13px */
        width: 39.5rem;                  /* ≈316px (네이비행 311px 수용) */
        margin: 0;
    }
    #glo-summer-promo-wrap .sched-card {
        position: static;
        left: auto; top: auto;
        height: auto;
        filter: drop-shadow(0.2rem 0.25rem 0.35rem rgba(0, 60, 80, 0.18));
    }
    /* 흰 카드(06·08·21) 94px / 네이비 카드(07·20·22) 99px */
    #glo-summer-promo-wrap .sched-card--d06,
    #glo-summer-promo-wrap .sched-card--d08,
    #glo-summer-promo-wrap .sched-card--d21 { width: 11.7475rem; }   /* 93.98px */
    #glo-summer-promo-wrap .sched-card--d07,
    #glo-summer-promo-wrap .sched-card--d20,
    #glo-summer-promo-wrap .sched-card--d22 { width: 12.355rem; }    /* 98.84px */

    /* disclaimer — 모바일은 연령 고지 텍스트, 좌하단 x20 y483 */
    #glo-summer-promo-wrap .section--schedule .disclaimer {
        position: absolute;
        top: 60.375rem;                  /* y483 */
        left: 2.5rem;                    /* x20 */
        width: auto;
        margin: 0;
        font-family: 'Noto Sans KR', sans-serif;
        font-weight: 400;
        font-size: 1.125rem;             /* 9px */
        line-height: 1.3;
        letter-spacing: -0.02em;
        color: var(--c-white);
        text-align: left;
    }
    #glo-summer-promo-wrap .section--schedule .dc-desktop { display: none; }
    #glo-summer-promo-wrap .section--schedule .dc-mobile { display: inline; }

    /* =========================================================
       MOBILE — notice (Figma mobile 375×644, notice top=1938)
       · 바: 70px / info아이콘 32px + "유의사항" 20px
       · 본문: 좌우 18px, 그룹 제목 16px / 본문 11px·lh1.7
       ========================================================= */
    #glo-summer-promo-wrap .notice__bar .inner-container {
        gap: 1.25rem;                    /* 아이콘-텍스트 10px */
        height: 8.75rem;                 /* 70px */
        padding: 0 3rem;                 /* 좌우 24px */
    }
    #glo-summer-promo-wrap .notice__toggle-icon {
        width: 4rem;                     /* 32px */
        height: 4rem;
    }
    #glo-summer-promo-wrap .notice__toggle-text {
        font-size: 2.5rem;               /* 20px */
    }
    #glo-summer-promo-wrap .notice__toggle-arrow {
        width: 1.5rem;                   /* 12px */
        height: 1.5rem;
    }

    #glo-summer-promo-wrap .notice__body .inner-container {
        padding: 3rem 2.25rem 3.75rem;   /* top24 / 좌우18 / bottom30 */
    }
    #glo-summer-promo-wrap .notice__group + .notice__group {
        margin-top: 3.125rem;            /* 그룹 간격 25px */
    }
    #glo-summer-promo-wrap .notice__group-title {
        font-size: 2rem;                 /* 16px */
        margin-left: 0.75rem;            /* 시안 title x=6 */
    }
    #glo-summer-promo-wrap .notice__group-text {
        margin-top: 1.625rem;            /* 제목→본문 13px */
        font-size: 1.375rem;             /* 11px */
        line-height: 1.7;
    }
    /* 불릿은 좌측(제목 라인)에 정렬, 본문은 행잉 인덴트 */
    #glo-summer-promo-wrap .notice__group-text li {
        padding-left: 2rem;              /* 본문 16px 들여쓰기 */
    }
    #glo-summer-promo-wrap .notice__group-text li::before {
        left: 0;                         /* 불릿 = 프레임 좌측 */
    }

    #glo-summer-promo-wrap .popup__panel { width: 90%; }
}

/* =============================================================
   SCROLL REVEAL — 스크롤하며 요소가 떠오르듯 나타나는 효과
   · transform(중앙정렬·회전·스케일) 충돌 방지를 위해 개별
     translate 속성 사용 → 기존 레이아웃/3D 배치 그대로 유지
   · JS 활성(html.js-reveal)일 때만 초기 숨김 → 비활성 시 그대로 노출
   ============================================================= */
html.js-reveal [data-reveal] {
    opacity: 0;
    translate: 0 2.25rem;
    transition: opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1),
                translate 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition-delay: var(--reveal-delay, 0s);
    will-change: opacity, translate;
}
html.js-reveal [data-reveal].is-revealed {
    opacity: 1;
    translate: 0 0;
}
/* 날짜 카드 순차 등장(스태거) */
html.js-reveal .schedule__list [data-reveal]:nth-child(2) { --reveal-delay: 0.07s; }
html.js-reveal .schedule__list [data-reveal]:nth-child(3) { --reveal-delay: 0.14s; }
html.js-reveal .schedule__list [data-reveal]:nth-child(4) { --reveal-delay: 0.21s; }
html.js-reveal .schedule__list [data-reveal]:nth-child(5) { --reveal-delay: 0.28s; }
html.js-reveal .schedule__list [data-reveal]:nth-child(6) { --reveal-delay: 0.35s; }

/* 모션 최소화 환경에서는 효과 비활성 */
@media (prefers-reduced-motion: reduce) {
    html.js-reveal [data-reveal] {
        opacity: 1 !important;
        translate: 0 0 !important;
        transition: none !important;
    }
}
