*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;color:#342224;font-family:Arial,'Malgun Gothic',sans-serif}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer;font:inherit}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible{outline:3px solid #b8824d;outline-offset:5px}
[hidden]{display:none!important}
header{position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px 4.5%;transition:.3s;background:linear-gradient(#ffffff25,transparent)}
header.scrolled{background:#fffef9f5;box-shadow:0 1px 0 #0001}
.brand{font-family:Georgia,serif;color:#8d1439;font-size:26px;white-space:nowrap}
.brand small{display:block;font-family:Arial,sans-serif;color:#443235;font-size:12px;margin-top:5px}
nav{display:flex;gap:clamp(15px,3.4vw,65px);font-size:14px}
.phone{color:#141414;font-weight:700;font-size:24px;white-space:nowrap}
#menu{border:0;background:none;width:35px;padding:8px}
#menu span{display:block;width:23px;height:1px;background:#111;margin:7px 0}
#menuPanel{position:fixed;inset:0;z-index:40;background:#f6eee4;padding:12vh 10vw;overflow:auto}
#menuPanel p{color:#8d1439}
#menuPanel a{display:block;font-size:clamp(25px,4vw,54px);padding:15px;border-bottom:1px solid #b6a58b}
#close{position:absolute;right:5%;top:25px;border:0;background:none;font-size:45px}
.hero{position:relative;height:100svh;min-height:650px;overflow:hidden;background:linear-gradient(120deg,#92aebe,#e9e9e8 48%,#9fb2c0)}
.hero-image{position:absolute;bottom:0;left:0;width:100%;height:57%;background-image:url('assets/hero-wide.webp');background-size:cover;background-position:center;transition:opacity .6s}
.hero-image:before{content:'';position:absolute;inset:-1px 0 auto;height:65px;background:linear-gradient(#b6c9d6,transparent)}
.hero-image[data-slide='1']{background-image:url('assets/hero-1.webp')}
.hero-image[data-slide='2']{background-image:url('assets/hero-2.webp')}
.hero-copy{position:absolute;z-index:2;top:23%;left:0;right:0;text-align:center}
.hero-copy p{font-size:16px;line-height:1.8;margin:0 0 30px}
.hero-copy h1{font-size:clamp(32px,3vw,54px);letter-spacing:-2px;margin:0 0 18px}
.hero-copy em{color:#8d123a;font-style:normal}
.hero-copy h2{font-size:26px;margin:0}
.slide-controls{position:absolute;z-index:3;bottom:9%;right:5%;display:flex;align-items:center;gap:24px;color:white}
.dot{width:8px;height:8px;border:0;border-radius:50%;background:#ffffff80;padding:0}
.dot.active{background:#fff;outline:1px solid #fff;outline-offset:12px}
.progress{height:2px;width:110px;background:#fff6}
.progress i{display:block;height:100%;width:40%;background:white}
#pause{border:0;background:none;color:white;font-weight:700;font-size:24px}
.image-note{position:absolute;bottom:14px;left:4%;color:#fff;font-size:12px}
.video{padding:55px 4%;background:linear-gradient(#16231fe0,#18201ce8),url('assets/park.jpg') center/cover;color:white}
.section-title{display:flex;align-items:center;gap:25px;margin-bottom:30px}
.section-title h2{font-size:34px;margin:0}
.section-title p{font-size:14px;color:#b7b7af}
.video-grid{display:grid;grid-template-columns:2.3fr 1fr;gap:50px}
.film{position:relative}
.film img{width:100%;height:100%;object-fit:cover;display:block}
.film>button{position:absolute;inset:calc(50% - 37px) auto auto calc(50% - 37px);width:74px;height:74px;border:1px solid #fff9;border-radius:50%;background:#0007;color:#fff;font-size:28px}
.film-list{display:grid;gap:14px}
.film-list button{background:#ffffff08;border:1px solid transparent;padding:22px;color:white;text-align:left}
.film-list button.selected{border-color:#b28a5f}
.film-list strong{display:block;margin-bottom:12px}
.film-list span{font-size:14px;color:#bdbdb7;line-height:1.7}
.lifestyle{height:95svh;min-height:650px;position:relative;background:#a5b4bb;color:white;overflow:hidden}
.life-slide{position:absolute;inset:0;background-size:cover;background-position:center}
.park{background-image:linear-gradient(90deg,#0009,transparent 70%),url('assets/park.jpg')}
.urban{background-image:linear-gradient(90deg,#91a4b140,#8d9dbb90),url('assets/urban.jpg')}
.life-copy{position:absolute;left:5.6%;top:15%;border-left:1px solid #fff8;padding-left:40px}
.life-copy small{color:#b08a5a;font-size:14px}
.life-copy h2{font-size:clamp(30px,3vw,44px);line-height:1.25;margin:18px 0 30px;letter-spacing:-1px}
.life-copy p{font-size:16px;line-height:2.4;color:#e3ded5}
.big-type{font-family:'Helvetica Neue',Arial,sans-serif;font-weight:100;font-size:clamp(60px,8vw,145px);letter-spacing:-7px;line-height:1.15;position:absolute;right:3%;bottom:17%;color:#fff9}
.big-type span{display:block;text-align:right}
.urban .big-type{left:4%;top:27%;right:auto}
.urban .life-copy{left:auto;right:4%;top:44%}
.life-controls{position:absolute;bottom:5%;left:43%;display:flex;align-items:center;gap:35px}
.life-controls button{border:0;color:white;background:none;font-size:30px}
.signature{position:relative;background:#f6eee4;padding:100px 0 65px}
.center-heading{text-align:center}
.center-heading p{font-size:28px;margin:0}
.center-heading h2{font-size:clamp(35px,4vw,68px);letter-spacing:-3px;margin:5px 0 85px}
.life-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.life-grid article{text-align:center;padding:12px 20px 50px;border-right:1px solid #b7aca2}
.life-grid article:last-child{border:0}
.life-grid h3{color:#a78054;font-family:Georgia,'Batang',serif;font-size:22px;font-weight:400;line-height:1.5;margin-bottom:30px}
.life-grid img{width:160px;height:160px;border-radius:50%}
.ornament{display:block;color:#a57a50;font-size:26px;letter-spacing:2px;margin:16px 0}
.life-grid p{font-size:14px;line-height:2.1}
.highend{display:flex;gap:5%;padding:100px 0 100px 7%;background:radial-gradient(at 10% 70%,#dfded4,#f8f8f7 65%);overflow:hidden}
.high-heading{width:38%;flex-shrink:0}
.high-heading>p{font-size:26px;margin:25px 0 0}
.high-heading h2{font-size:clamp(40px,4vw,70px);letter-spacing:-3px;margin:0;white-space:nowrap}
.high-heading .intro{font-size:14px;line-height:2;margin-top:42px}
.card-controls{display:flex;align-items:center;gap:25px;margin-top:75px;font-size:14px}
.card-controls button{background:none;border:0;font-size:30px;color:#746a60}
.card-track{display:flex;gap:45px;width:57%;overflow:auto;scrollbar-width:none;scroll-snap-type:x mandatory}
.card-track article{flex:0 0 310px;background:white;text-align:center;scroll-snap-align:start}
.card-track img{width:100%;height:210px;object-fit:cover}
.card-track article>div{padding:45px 25px}
.card-track h3{font-size:23px;color:#ad8051;margin:5px 0 30px}
.card-track p{font-size:14px;line-height:2}
.brand-section{background:linear-gradient(#28262ae8,#28262af0),url('assets/hero-wide.webp') center/cover;color:white;padding:110px 8%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center}
.brand-section h2{font-size:34px;line-height:1.4}
.brand-section p{color:#aaa;line-height:2;font-size:14px}
.brand-section>div:last-child{text-align:right}
.brand-mark{color:#ad8658;text-align:center;font:36px Georgia,serif}
footer{background:#181818;color:#9c825e;padding:55px 6%;display:flex;justify-content:space-between;gap:30px}
footer b{font-size:14px}
footer p{font-size:12px;line-height:1.8;color:#888}
footer a{color:#ddd}
#top{height:45px;padding:0 20px;border:1px solid #777;background:none;color:white}
dialog{border:0;padding:55px 40px;max-width:600px;width:90%;line-height:1.8}
dialog::backdrop{background:#0009}
#dialogClose{position:absolute;right:15px;top:8px;border:0;background:none;font-size:30px}

@media(max-width:1100px){nav{gap:15px}
.brand{font-size:21px}
.phone{font-size:20px}
.highend{display:block;padding:70px 5%}
.high-heading{width:100%}
.high-heading h2{white-space:normal}
.high-heading .intro{margin-top:20px}
.card-controls{margin:20px 0}
.card-track{width:100%}
.brand-section{padding:70px 5%;gap:20px}
.brand-section h2{font-size:26px}
}

@media(max-width:760px){header{padding:16px 5%;gap:10px}
.brand{font-size:20px}
.brand small{font-size:10px;white-space:normal;max-width:195px;line-height:1.5}
nav{display:none}
.phone{font-size:14px}
.hero{min-height:680px}
.hero-copy{top:24%;padding:0 15px}
.hero-copy p{font-size:14px;margin-bottom:25px}
.hero-copy h1{font-size:32px;letter-spacing:-1.7px;line-height:1.4}
.hero-copy h2{font-size:19px}
.hero-image{height:47%;background-position:center;background-size:auto 100%}
.slide-controls{bottom:8%;left:12%;right:auto;gap:25px}
.progress{width:45px}
.image-note{font-size:10px;max-width:90%;line-height:1.5}
.video{padding:50px 5%}
.section-title{display:block}
.section-title h2{font-size:28px}
.video-grid{display:block}
.film{aspect-ratio:16/9}
.film-list{grid-template-columns:1fr 1fr;margin-top:20px;gap:8px}
.film-list button{padding:15px 10px}
.film-list span{font-size:12px}
.lifestyle{height:750px;min-height:0}
.life-copy{top:12%;left:6%;padding-left:20px}
.life-copy h2{font-size:29px}
.life-copy p{font-size:14px}
.big-type{font-size:50px;letter-spacing:-3px;bottom:18%;right:5%}
.urban .big-type{top:16%;font-size:55px}
.urban .life-copy{left:6%;right:auto;top:40%}
.life-controls{left:32%;gap:25px}
.signature{padding:65px 0 20px}
.center-heading p{font-size:18px}
.center-heading h2{font-size:36px;letter-spacing:-1px;margin-bottom:35px}
.life-grid{grid-template-columns:1fr 1fr}
.life-grid article{padding:25px 12px;border-bottom:1px solid #b7aca2}
.life-grid article:nth-child(2){border-right:0}
.life-grid h3{font-size:17px}
.life-grid img{width:120px;height:120px}
.life-grid p{font-size:12px}
.high-heading>p{font-size:18px}
.high-heading h2{font-size:40px;letter-spacing:-2px}
.high-heading .intro{font-size:13px}
.card-track{gap:20px}
.card-track article{flex-basis:280px}
.brand-section{grid-template-columns:1fr;text-align:center;padding:55px 6%}
.brand-section>div:last-child{text-align:center}
.brand-mark{padding:20px;font-size:32px}
footer{padding:35px 5%}
footer p{font-size:12px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}
}


/* Full-frame original photography and single promotional film */
.hero-image{inset:0;height:100%;background-size:cover;background-position:center}
.hero-image:before{display:none}
.main-video{width:min(1200px,100%);margin:0 auto;aspect-ratio:16/9;background:#111}
.main-video iframe{display:block;width:100%;height:100%;border:0}
.video .section-title{justify-content:center;margin-bottom:30px}
.video{padding:65px 5% 80px}
.hero-copy{text-shadow:0 1px 10px #ffffff30}

@media(max-width:760px){.hero-image{height:100%;background-size:cover;background-position:54% center}
.hero-copy{top:22%;background:linear-gradient(transparent,#ffffff30,transparent);padding:15px}
.video{padding:45px 5% 55px}
.video .section-title{margin-bottom:22px}
}


/* Full-width drop-down navigation */
header{--nav-top:100px;--menu-height:245px;min-height:100px}

.mega-nav{gap:0;width:min(720px,52vw);align-self:stretch;align-items:center;justify-content:space-between}

.nav-group{flex:1;position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center}

.nav-trigger{background:none;border:0;white-space:nowrap;font-size:14px;color:inherit;padding:12px 10px;position:relative}

.nav-group:hover>.nav-trigger,.nav-group:focus-within>.nav-trigger{color:#8d1439}
.nav-group:hover>.nav-trigger:after,.nav-group:focus-within>.nav-trigger:after{content:'';position:absolute;bottom:-28px;left:15%;right:15%;height:3px;background:#8d1439}

header:before{content:'';position:absolute;left:0;right:0;top:100%;height:var(--menu-height);background:#fff;box-shadow:0 8px 12px #0001;opacity:0;visibility:hidden;transition:opacity .18s;pointer-events:none}

.submenu{position:absolute;top:calc(100% + 28px);left:-15px;right:-15px;z-index:2;display:flex;flex-direction:column;gap:0;padding-top:17px;opacity:0;visibility:hidden;transition:opacity .18s;text-align:center;height:var(--menu-height)}

.submenu a,.submenu button{font-size:14px;font-weight:400;line-height:1.6;padding:5px 3px;background:none;border:0;color:#171717;white-space:nowrap}
.submenu a:hover,.submenu button:hover{color:#8d1439;text-decoration:underline}

header.mega-open:before,header.mega-open .submenu{opacity:1;visibility:visible;pointer-events:auto}

#menuPanel details{border-bottom:1px solid #b6a58b;padding:16px 0}
#menuPanel summary{font-size:26px;cursor:pointer}
#menuPanel details a,#menuPanel details button{display:block;border:0;font-size:17px;background:none;padding:12px 16px;color:#342224}
#detailClose{position:absolute;right:15px;top:8px;border:0;background:none;font-size:30px}

@media(max-width:760px){header{min-height:85px}
header:before,.mega-nav,.submenu{display:none!important}
}


.mega-nav{width:min(650px,49vw)}
header{--menu-height:205px}


.card-track img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:210px;display:block;margin:0 auto}
.life-grid img{max-width:160px;max-height:160px}

/* Floating consultation shortcuts on every page. */
.quick-contact{position:fixed;z-index:30;right:max(22px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:18px}
.quick-contact a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:90px;height:90px;border-radius:50%;color:#fff;box-shadow:0 8px 25px #0002;transition:transform .25s,box-shadow .25s}
.quick-call{background:#bd587f}
.quick-book{background:#809fc7}
.quick-kakao{background:#fee500!important;color:#191919!important}
.quick-kakao svg{fill:#191919!important;stroke:#191919!important}
.quick-contact span{font-size:15px;font-weight:700;white-space:nowrap}
.quick-contact svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.quick-contact a:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0003}
.quick-contact a:focus-visible{outline:3px solid #342224;outline-offset:4px}
.hero-image{transform-origin:center center;will-change:transform}
.hero-copy{will-change:transform,opacity}
.main-video{overflow:hidden}
.slide-controls{right:140px}

@media(max-width:760px){.quick-contact{top:auto;bottom:max(18px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right));transform:none;gap:10px}
.quick-contact a{width:64px;height:64px;gap:4px}
.quick-contact svg{width:21px;height:21px}
.quick-contact span{font-size:11px}
footer{padding-bottom:175px}
.slide-controls{right:auto}
.registration-body{padding-bottom:175px}
}

@media(prefers-reduced-motion:reduce){.quick-contact a:hover{transform:none}
.hero-image,.hero-copy{will-change:auto}
}


@media(max-width:760px) and (prefers-reduced-motion:no-preference){
  .hero:after{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(112deg,transparent 28%,rgba(255,255,255,.24) 48%,transparent 68%);transform:translateX(-120%);pointer-events:none;animation:mobileHeroLight 2.1s .35s cubic-bezier(.22,.61,.36,1) both}

  .hero-frame.active{animation:mobileHeroDrift 7s cubic-bezier(.2,.65,.25,1) both}

  .hero-copy>p{animation:mobileHeroText .8s .18s cubic-bezier(.16,1,.3,1) both}

  .hero-copy>h1{animation:mobileHeroText .95s .34s cubic-bezier(.16,1,.3,1) both}

  .hero-copy>h2{animation:mobileHeroText .95s .5s cubic-bezier(.16,1,.3,1) both}

  .slide-controls{animation:mobileHeroControls .8s .82s ease-out both}

  .image-note{animation:mobileHeroControls .8s 1s ease-out both}

}

@keyframes mobileHeroDrift{0%{opacity:0;transform:scale(1.1) translate3d(1.5%,0,0)}
18%{opacity:1}
100%{opacity:1;transform:scale(1.015) translate3d(0,0,0)}
}

@keyframes mobileHeroText{0%{opacity:0;transform:translate3d(0,26px,0);filter:blur(4px)}
100%{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
}

@keyframes mobileHeroControls{0%{opacity:0;transform:translate3d(0,14px,0)}
100%{opacity:1;transform:translate3d(0,0,0)}
}

@keyframes mobileHeroLight{0%{transform:translateX(-120%)}
100%{transform:translateX(120%)}
}


/* Layered cinematic slide transitions. */
.hero-image,.hero-image[data-slide='1'],.hero-image[data-slide='2']{background-image:none}
.hero-frame{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.045);transition:opacity 1.6s cubic-bezier(.22,.61,.36,1),transform 7s linear;will-change:opacity,transform}
.hero-frame.active{opacity:1;transform:scale(1)}
@media(max-width:760px){.hero-frame{background-position:54% center}
}
@media(prefers-reduced-motion:reduce){.hero-frame{transform:none!important;transition:none!important;will-change:auto}
}


.project-footer{align-items:flex-start;gap:28px;padding:35px 4%;flex-wrap:wrap}
.footer-information{flex:1;min-width:280px}
.project-footer .project-summary{color:#ad8555;font-size:14px;margin:0 0 20px;line-height:1.7}
.project-summary strong{font-weight:700}
.project-footer .footer-information>p:not(.project-summary){font-size:12px;margin:0 0 15px}
.project-partners{display:flex;align-items:center;justify-content:flex-end;gap:28px;padding-top:7px;color:#ad8555}
.project-partners>div{display:flex;align-items:center;gap:9px}
.project-partners small{writing-mode:vertical-rl;font-size:12px;letter-spacing:3px}
.partner-kait{font-size:23px;font-weight:700;white-space:nowrap}
.partner-kait b{font-size:16px}
.partner-lotte{font-size:26px;font-weight:700;white-space:nowrap}
.partner-developer{font-size:13px;max-width:130px;line-height:1.6}
.project-footer #top{flex:0 0 auto}
@media(max-width:1100px){.project-partners{gap:20px}
.project-footer{gap:20px}
.project-partners .partner-kait{font-size:20px}
.partner-lotte{font-size:23px}
}
@media(max-width:760px){.project-footer{padding:30px 5% 175px}
.footer-information{min-width:0;flex-basis:100%}
.project-partners{flex-wrap:wrap;justify-content:flex-start;gap:20px;max-width:100%}
.partner-kait b{font-size:13px}
.project-partners .partner-kait{font-size:18px}
.partner-lotte{font-size:20px}
.partner-developer{font-size:12px}
.project-footer #top{margin-left:auto}
}

.brand{display:flex;align-items:center;width:220px;height:52px;font-size:0}
.brand img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
.campaign-popup{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px}
.campaign-backdrop{position:absolute;inset:0;background:#090507c9;backdrop-filter:blur(2px)}
.campaign-card{position:relative;width:min(462px,100%);min-height:618px;overflow:hidden;padding:54px 48px 0;text-align:center;color:#fff;background:radial-gradient(circle at 9% 16%,#ff74bf 0 3px,#ff1680 4px 7px,transparent 18px),radial-gradient(circle at 91% 73%,#ff6fc1 0 2px,#ff215f 3px 6px,transparent 16px),linear-gradient(145deg,#65152a,#8f243b 53%,#651323);box-shadow:0 26px 80px #0008}
.campaign-card:before,.campaign-card:after{content:'';position:absolute;border-radius:50%;background:#f5c878;filter:drop-shadow(0 0 18px #ffd99088)}
.campaign-card:before{width:150px;height:150px;right:-86px;top:-70px}.campaign-card:after{width:110px;height:110px;left:-72px;bottom:-60px}
.campaign-close{position:absolute;right:14px;top:10px;z-index:2;border:0;background:transparent;color:#fff;font-size:34px;line-height:1}
.campaign-kicker{margin:0 0 29px;font-size:24px;font-weight:700;letter-spacing:-1.3px}.campaign-rule{height:1px;background:#e8c5b088;margin:0 2px}
.campaign-card h2{display:grid;gap:3px;margin:31px 0;font-weight:800;letter-spacing:-2px;line-height:1.23}.campaign-card h2 span{font-size:39px}.campaign-card h2 strong{color:#e4bd86;font-size:40px}
.campaign-message{margin:37px 0 23px;font-size:21px;font-weight:700;line-height:1.65}.campaign-logo{width:190px;height:78px;object-fit:contain;filter:brightness(0) invert(86%) sepia(31%) saturate(702%) hue-rotate(347deg) brightness(95%)}
.campaign-today{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;gap:9px;height:48px;background:#171214e8;font-size:15px}.campaign-today input{width:18px;height:18px;accent-color:#a72648}
@media(max-width:760px){.brand{width:158px;height:42px}.campaign-popup{padding:15px}.campaign-card{width:min(430px,100%);min-height:min(640px,calc(100svh - 30px));padding:46px 30px 0}.campaign-kicker{font-size:20px;margin-bottom:24px}.campaign-card h2{margin:25px 0}.campaign-card h2 span,.campaign-card h2 strong{font-size:clamp(29px,8.8vw,38px)}.campaign-message{font-size:18px;margin:29px 0 15px}.campaign-logo{width:165px;height:70px}}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.campaign-popup{padding:66px 16px 20px;animation:popupLayerIn .6s ease both}
.campaign-backdrop{background:#0d1115d9;backdrop-filter:none;animation:popupShadeIn .5s ease both}
.campaign-shell{position:relative;width:min(463px,calc(100vw - 32px));filter:drop-shadow(0 24px 40px #0009);animation:popupGlideIn .9s cubic-bezier(.18,.8,.24,1) both}
.campaign-art{width:100%;aspect-ratio:463/650;background:url('assets/popup-card.webp') center/cover no-repeat}
.campaign-close{position:absolute;left:50%;top:-53px;right:auto;transform:translateX(-50%);display:flex;align-items:center;gap:5px;width:max-content;padding:5px;border:0;background:none;color:white;font-size:18px;font-weight:700;text-shadow:0 2px 8px #000;z-index:2}.campaign-close b{font-size:27px;font-weight:300;line-height:1}
.campaign-today{position:static;height:45px;background:transparent;color:white;font-size:16px;font-weight:700;text-shadow:0 2px 7px #000}.campaign-today input{width:18px;height:18px;accent-color:#fff}
@keyframes popupLayerIn{from{visibility:hidden}to{visibility:visible}}
@keyframes popupShadeIn{from{opacity:0}to{opacity:1}}
@keyframes popupGlideIn{0%{opacity:0;transform:translateY(85px) scale(.975)}60%{opacity:1}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:760px){.campaign-popup{padding-top:59px}.campaign-shell{width:min(430px,calc(100vw - 24px));max-height:calc(100svh - 70px)}.campaign-art{max-height:calc(100svh - 115px)}.campaign-close{top:-47px;font-size:16px}.campaign-close b{font-size:24px}.campaign-today{height:42px;font-size:14px}}
@media(max-height:780px){.campaign-shell{width:min(385px,calc(100vw - 32px))}}
@media(max-height:680px){.campaign-shell{width:min(325px,calc(100vw - 28px))}.campaign-close{top:-45px}.campaign-today{height:38px;font-size:13px}}
@media(max-height:580px){.campaign-shell{width:min(260px,calc(100vw - 24px))}.campaign-close{top:-40px;font-size:14px}.campaign-today{height:34px;font-size:12px}}
.popup-open .hero-frame,.popup-open .hero-copy>*,.popup-open .hero:after{animation-play-state:paused!important}
