/* ===================== */
/* Main Portal (Split)  */
/* ===================== */
.main-portal { display:flex; width:100%; text-decoration:none; margin:0; padding:120px 0 0 0; gap:24px; background:#fff; }
.main-portal .portal-half { flex:1; display:block; overflow:hidden; cursor:pointer; text-decoration:none; }
.main-portal .portal-half:hover { opacity:.92; }
.main-portal .portal-img { width:100%; height:100%; display:block; object-fit:cover; object-position:center top; transition:transform .5s ease; }
.main-portal .portal-half:hover .portal-img { transform:scale(1.04); }

@media (max-width:750px){
    .main-portal { flex-direction:column; padding-top:56px; gap:12vw; }
    .main-portal .portal-half { flex:none; width:100%; }
    .main-portal .portal-img { height:auto; object-fit:contain; }
}

/* ===================== */
/* Brand Intro           */
/* ===================== */
.brand-page { padding-top:120px; }
.brand-page .brand-section-img { width:100%; display:block; }

@media (max-width:750px){
    .brand-page { padding-top:56px; }
}

/* ===================== */
/* Dal.Komm.N Story      */
/* ===================== */
.dalkommn-story-page { padding-top:120px; }
.dalkommn-story-page .story-section-img { width:100%; display:block; }

@media (max-width:750px){
    .dalkommn-story-page { padding-top:56px; }
}

/* ===================== */
/* Main Popup (3-up)     */
/* ===================== */
.main-popup-overlay { padding:20px; }
.main-popup-row { width:100%; max-width:1200px; position:relative; }
.main-popup-track { display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; gap:20px; }
.main-popup-slide { width:auto; }
.main-popup-card { position:relative; width:360px; max-width:calc(100vw - 40px); background:#fff; box-shadow:0 10px 30px rgba(0,0,0,.2); display:flex; flex-direction:column; }
.main-popup-link { display:block; }
.main-popup-img { width:100%; height:auto; display:block; }
.main-popup-close { position:absolute; top:8px; right:8px; width:30px; height:30px; padding:0; border:0; background:transparent; cursor:pointer; z-index:2; }
.main-popup-close img { width:100%; height:100%; display:block; }
.main-popup-bottom { display:flex; background:#000; }
.main-popup-btn { flex:1; height:44px; line-height:44px; color:#fff; font-size:14px; background:#000; border:0; cursor:pointer; padding:0; text-align:center; text-decoration:none; display:block; }
.main-popup-btn + .main-popup-btn { border-left:1px solid rgba(255,255,255,.15); }
.main-popup-btn:hover { background:#222; color:#fff; text-decoration:none; }
.main-popup-btn-cta { background:#ff592e; }
.main-popup-btn-cta:hover { background:#e04b24; }
.main-popup-pagination { display:none; }

@media (max-width:1200px){
    .main-popup-row { max-width:780px; }
}

@media (max-width:750px){
    .main-popup-overlay { padding:24px 0; justify-content:flex-start; }
    .main-popup-row { max-width:100%; width:100%; overflow:hidden; padding-bottom:32px; }
    .main-popup-track { flex-wrap:nowrap; gap:0; justify-content:flex-start; align-items:stretch; }
    .main-popup-slide { flex-shrink:0; box-sizing:border-box; padding:0 20px; display:flex; justify-content:center; height:auto; }
    .main-popup-card { width:100%; max-width:360px; }
    .main-popup-pagination { display:block; position:absolute; left:0; right:0; bottom:8px; text-align:center; z-index:2; pointer-events:none; }
    .main-popup-pagination .swiper-pagination-bullet { background:rgba(255,255,255,.5); opacity:1; width:8px; height:8px; margin:0 4px; pointer-events:auto; }
    .main-popup-pagination .swiper-pagination-bullet-active { background:#ff592e; }
}
