:root{
  --navy:#07172d;
  --navy2:#0d274a;
  --gold:#c9a35c;
  --gold2:#efd7a4;
  --paper:#f5f4f0;
  --ink:#132033;
  --muted:#6b7481;
  --white:#fff;
  --journey-progress:0;
  --hero-scene-duration:2.85s;
}
*{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans KR",sans-serif;font-weight:300;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input{font:inherit}

/* Strong but brief signature intro */
.intro{position:fixed;inset:0;z-index:999;background:#01050d;display:grid;place-items:center;overflow:hidden;transition:opacity .38s ease,visibility .38s}
.intro.is-done{opacity:0;visibility:hidden}
.intro::before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 50% 50%,rgba(255,232,172,.34),rgba(186,119,21,.08) 20%,transparent 42%);opacity:0;transform:scale(.35);animation:introBurst 2.6s cubic-bezier(.2,.75,.2,1) forwards}
.intro::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.03) 42%,rgba(255,235,181,.32) 50%,rgba(255,255,255,.03) 58%,transparent 100%);transform:translateX(-110%) skewX(-12deg);mix-blend-mode:screen;animation:introWash 2.6s cubic-bezier(.65,0,.22,1) forwards}
.intro__glow{position:absolute;width:82vmin;height:82vmin;border-radius:50%;background:radial-gradient(circle,rgba(255,226,157,.55),rgba(213,151,55,.16) 31%,transparent 68%);filter:blur(24px);opacity:0;animation:introGlow 2.6s ease forwards}
.intro__beam{position:absolute;width:28px;height:190vh;left:-28%;top:-45%;background:linear-gradient(180deg,transparent,#fff9db 31%,#fff 45%,#d59b2e 51%,#fff 58%,#fff0bd 70%,transparent);filter:blur(.6px) drop-shadow(0 0 16px #fff2b4) drop-shadow(0 0 52px #db9b27);transform:rotate(27deg);animation:introBeam 2.6s cubic-bezier(.72,0,.18,1) forwards}
.intro__beam::before,.intro__beam::after{content:"";position:absolute;inset:0;transform:translateX(-44px);background:inherit;opacity:.24;filter:blur(10px)}
.intro__beam::after{transform:translateX(44px);opacity:.16}
.intro__logo{width:min(48vw,300px);opacity:0;filter:brightness(0) invert(1) drop-shadow(0 0 28px rgba(255,224,151,.38));animation:introLogo 2.6s ease forwards}
@keyframes introBeam{0%{left:-34%;opacity:0;transform:rotate(27deg) scaleX(.55)}12%{opacity:.6}28%{opacity:1}76%{left:112%;opacity:1;transform:rotate(27deg) scaleX(1.22)}100%{left:138%;opacity:0}}
@keyframes introGlow{0%,30%{opacity:0;transform:scale(.55)}52%{opacity:1;transform:scale(1)}84%{opacity:.48}100%{opacity:.08;transform:scale(1.25)}}
@keyframes introLogo{0%,37%{opacity:0;transform:scale(.92);letter-spacing:.1em}55%,83%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.03)}}
@keyframes introBurst{0%,36%{opacity:0;transform:scale(.3)}56%{opacity:1}100%{opacity:0;transform:scale(1.18)}}
@keyframes introWash{0%,30%{transform:translateX(-120%) skewX(-12deg)}78%{transform:translateX(120%) skewX(-12deg)}100%{transform:translateX(140%) skewX(-12deg)}}

.site-header{position:fixed;z-index:80;left:0;right:0;top:0;height:76px;padding:0 clamp(18px,4vw,64px);display:flex;align-items:center;gap:34px;color:#fff;transition:.35s;background:linear-gradient(180deg,rgba(0,0,0,.44),transparent)}
.site-header.is-solid{background:rgba(7,23,45,.9);backdrop-filter:blur(16px);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.brand img{width:168px;filter:brightness(0) invert(1)}
.desktop-nav{display:flex;gap:28px;margin-left:auto;font-size:14px}
.desktop-nav a{opacity:.78;transition:.25s}
.desktop-nav a:hover{opacity:1;color:var(--gold2)}
.header-cta{padding:12px 19px;border:1px solid rgba(255,255,255,.4);border-radius:999px;font-size:13px;font-weight:700;transition:.25s}
.header-cta:hover{background:var(--gold);border-color:var(--gold);color:var(--navy)}

/* Hero copy runs automatically, independent of scrolling */
.hero-scroll{height:100vh;min-height:720px;background:var(--navy);scroll-margin-top:0}
.hero-sticky{position:relative;height:100%;overflow:hidden;background:#061328}
.hero-bg{position:absolute;inset:-5%;width:110%;height:110%;object-fit:cover;filter:saturate(.96) brightness(.82);animation:heroDrift 16s ease-in-out infinite alternate;will-change:transform}
@keyframes heroDrift{from{transform:scale(1.03) translate3d(0,0,0)}to{transform:scale(1.11) translate3d(-1.2%,-1.1%,0)}}
.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,10,24,.76) 0%,rgba(3,13,28,.26) 54%,rgba(2,10,24,.52) 100%),linear-gradient(180deg,rgba(0,0,0,.18),transparent 46%,rgba(0,0,0,.68))}
.hero-light{position:absolute;inset:-30%;background:radial-gradient(circle at 42% 45%,rgba(255,224,159,.32),transparent 24%);mix-blend-mode:screen;filter:blur(16px);animation:heroLight 8s ease-in-out infinite alternate}
@keyframes heroLight{to{transform:translateX(18%);opacity:.7}}
.hero-copy{position:absolute;left:max(24px,calc((100vw - 1280px)/2));top:50%;width:min(980px,86vw);color:#fff;transform:translate3d(-70px,-47%,0);opacity:0;visibility:hidden;pointer-events:none}
.hero-copy.is-active{visibility:visible;animation:heroCopyScene var(--hero-scene-duration) cubic-bezier(.18,.75,.16,1) both}
@keyframes heroCopyScene{0%{opacity:0;transform:translate3d(-90px,-47%,0);filter:blur(8px)}14%{opacity:1;transform:translate3d(0,-50%,0);filter:blur(0)}72%{opacity:1;transform:translate3d(0,-50%,0);filter:blur(0)}100%{opacity:0;transform:translate3d(65px,-53%,0);filter:blur(5px)}}
.kicker{display:block;color:var(--gold2);font-size:12px;font-weight:800;letter-spacing:.25em;margin-bottom:20px}
.hero-copy h1,.display-copy{font-family:"Noto Serif KR",serif;font-weight:300;letter-spacing:-.055em;line-height:1.09;margin:0;text-shadow:0 10px 30px rgba(0,0,0,.18)}
.hero-copy h1,.display-copy{font-size:clamp(40px,3.9vw,60px)}
.hero-progress{position:absolute;left:max(24px,calc((100vw - 1280px)/2));bottom:52px;width:min(360px,54vw);height:2px;background:rgba(255,255,255,.25);overflow:hidden}
.hero-progress span{display:block;width:100%;height:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--gold),#fff0bc);box-shadow:0 0 18px var(--gold)}
.hero-progress span.is-running{animation:heroTimer var(--hero-scene-duration) linear both}
@keyframes heroTimer{to{transform:scaleX(1)}}
.scroll-cue{position:absolute;right:clamp(20px,4vw,64px);bottom:40px;border:0;background:none;color:#fff;display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.22em;cursor:pointer}
.scroll-cue i{display:block;width:36px;height:36px;border:1px solid rgba(255,255,255,.45);border-radius:50%;position:relative}
.scroll-cue i:after{content:"";position:absolute;left:50%;top:8px;width:5px;height:5px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:translateX(-50%) rotate(45deg);animation:cue 1.6s infinite}
@keyframes cue{0%{top:7px;opacity:0}30%{opacity:1}80%{top:19px;opacity:0}100%{opacity:0}}

/* Horizontal menu is an autonomous carousel with natural page scrolling. */
.menu-journey{height:100vh;min-height:720px;background:linear-gradient(135deg,#06152b,#0e315c 65%,#081b35);color:#fff;scroll-margin-top:0}
.journey-sticky{position:relative;height:100%;overflow:hidden;padding-top:76px}
.journey-heading{position:absolute;z-index:3;left:max(24px,calc((100vw - 1280px)/2));top:86px;max-width:1050px;transition:opacity .35s,transform .35s}
.journey-heading.is-dimmed{opacity:1;transform:none}
.journey-heading h2{font-family:"Noto Serif KR",serif;font-weight:300;font-size:clamp(40px,3.9vw,60px);line-height:1.12;margin:0 0 12px;white-space:nowrap}
.journey-heading p{max-width:640px;color:rgba(255,255,255,.68);font-size:14px;font-weight:300;line-height:1.7;margin:0}
.journey-stage{position:absolute;inset:0;display:flex;align-items:flex-start;padding-top:clamp(250px,31vh,305px);outline:none}
.journey-track{display:flex;gap:clamp(20px,2.1vw,34px);padding-left:42vw;padding-right:15vw;will-change:transform;transform:translate3d(0,0,0)}
.journey-card{position:relative;flex:0 0 clamp(300px,31vw,470px);height:min(59vh,590px);border-radius:32px;overflow:hidden;background:#fff;color:var(--ink);box-shadow:0 26px 80px rgba(0,0,0,.3);transition:transform .35s cubic-bezier(.2,.8,.2,1),filter .3s,box-shadow .3s;isolation:isolate}
.journey-card::before{content:"";position:absolute;z-index:5;top:-35%;bottom:-35%;left:-62%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),rgba(237,194,99,.66),transparent);filter:blur(4px);transform:skewX(-18deg);opacity:0;pointer-events:none}
.journey-card:hover,.journey-card.is-focused{transform:translateY(-12px) scale(1.018);box-shadow:0 34px 110px rgba(0,0,0,.43),0 0 0 1px rgba(239,215,164,.36)}
.journey-card:hover::before,.journey-card.is-focused::before{animation:cardLightSweep 1.25s ease-in-out infinite;opacity:1}
@keyframes cardLightSweep{0%{left:-62%;opacity:0}20%{opacity:.9}75%{opacity:.75}100%{left:142%;opacity:0}}
.card-visual{position:absolute;inset:0}
.card-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) brightness(.62);transition:transform .8s ease,filter .4s}
.journey-card:hover .card-visual img,.journey-card.is-focused .card-visual img{transform:scale(1.06);filter:saturate(1.03) brightness(.68)}
.card-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,15,31,.12),rgba(4,15,31,.2) 35%,rgba(4,15,31,.9) 100%)}
.card-copy{position:absolute;z-index:3;left:28px;right:28px;bottom:28px;color:#fff}
.card-copy small{color:var(--gold2);font-weight:900}
.card-copy h3{font-family:"Noto Serif KR",serif;font-weight:300;font-size:clamp(32px,3vw,48px);margin:8px 0}
.card-copy p{margin:0;color:rgba(255,255,255,.72);line-height:1.55;font-size:14px;font-weight:300}
.card-arrow{position:absolute;z-index:4;right:24px;top:24px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);backdrop-filter:blur(10px);color:#fff;font-size:22px;transition:.3s}
.journey-card:hover .card-arrow,.journey-card.is-focused .card-arrow{background:var(--gold);color:var(--navy);transform:rotate(45deg)}
.card-icon{position:absolute;z-index:3;left:28px;top:28px;width:90px;height:90px;color:var(--gold2);filter:drop-shadow(0 0 0 transparent);transition:.35s}
.journey-card:not(:hover):not(.is-focused) .card-icon *{animation-play-state:paused!important}
.journey-card:hover .card-icon,.journey-card.is-focused .card-icon{filter:drop-shadow(0 0 15px rgba(239,215,164,.75));transform:scale(1.06)}
.icon-building{display:flex;align-items:flex-end;gap:5px}
.icon-building span{display:block;width:16px;border:2px solid currentColor;border-bottom:0;animation:building 2.2s ease-in-out infinite}
.icon-building span:nth-child(1){height:38px}.icon-building span:nth-child(2){height:66px;animation-delay:.14s}.icon-building span:nth-child(3){height:48px;animation-delay:.28s}.icon-building span:nth-child(4){height:76px;animation-delay:.42s}
@keyframes building{50%{filter:drop-shadow(0 0 12px var(--gold));transform:translateY(-5px)}}
.icon-route svg,.icon-shield svg,.icon-plan svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.icon-route path{stroke-dasharray:180;stroke-dashoffset:180;animation:draw 3s ease-in-out infinite}.icon-route circle{fill:currentColor;stroke:none;animation:pulse 2s infinite}
@keyframes draw{20%{stroke-dashoffset:180}70%,100%{stroke-dashoffset:0}}
@keyframes pulse{50%{filter:drop-shadow(0 0 10px currentColor);transform:scale(1.12);transform-origin:center}}
.icon-orbit i{position:absolute;inset:18px;border:2px solid currentColor;border-radius:50%;animation:orbit 3s linear infinite}.icon-orbit i:nth-child(2){inset:8px 30px;animation-duration:2.4s;transform:rotate(65deg)}.icon-orbit i:nth-child(3){inset:31px 6px;animation-duration:3.8s;transform:rotate(-38deg)}
@keyframes orbit{to{rotate:360deg}}
.icon-shield path:first-child{stroke-dasharray:220;animation:draw 3s infinite}
.icon-blocks{display:flex;align-items:flex-end;gap:4px}.icon-blocks b{width:14px;height:24px;border:2px solid currentColor;animation:blocks 2.4s infinite}.icon-blocks b:nth-child(2){height:56px;animation-delay:.15s}.icon-blocks b:nth-child(3){height:78px;animation-delay:.3s}.icon-blocks b:nth-child(4){height:48px;animation-delay:.45s}.icon-blocks b:nth-child(5){height:66px;animation-delay:.6s}
@keyframes blocks{50%{background:rgba(239,215,164,.24);filter:drop-shadow(0 0 9px currentColor)}}
.icon-plan path{stroke-dasharray:420;animation:draw 4s infinite}
.icon-pulse{display:grid;place-items:center}.icon-pulse i{position:absolute;border:1px solid currentColor;border-radius:50%;inset:14px;animation:ring 2.2s infinite}.icon-pulse i:nth-child(2){animation-delay:.8s}.icon-pulse span{font-size:31px}
@keyframes ring{0%{transform:scale(.65);opacity:1}100%{transform:scale(1.35);opacity:0}}
.journey-card--contact{outline:1px solid rgba(239,215,164,.45)}
.journey-meter{position:absolute;left:6vw;right:6vw;bottom:31px;height:2px;background:rgba(255,255,255,.15);overflow:hidden}.journey-meter span{display:block;height:100%;width:calc(var(--journey-progress)*100%);background:linear-gradient(90deg,var(--gold),#fff0bc);transition:width .16s linear}
.journey-hint{position:absolute;right:6vw;bottom:43px;color:rgba(255,255,255,.48);font-size:9px;font-weight:700;letter-spacing:.18em;transition:.3s}.journey-hint.is-paused{color:var(--gold2)}

.content-section,.units{padding:120px clamp(18px,6vw,90px);background:#fff;scroll-margin-top:75px}
.content-section--tint{background:#f0f3f7}
.section-title{max-width:1200px;margin:0 auto 38px}.section-title>span{color:#a67d36;font-size:12px;font-weight:900;letter-spacing:.22em}.section-title h2{font-family:"Noto Serif KR",serif;font-size:clamp(38px,5vw,68px);margin:10px 0}.section-title p{color:var(--muted)}
.content-image{width:min(100%,1200px);max-height:980px;object-fit:cover;object-position:top;margin:auto;border-radius:28px;box-shadow:0 25px 80px rgba(17,34,56,.12)}
.premium-grid{padding:120px clamp(18px,6vw,90px);background:#07172d;color:#fff;scroll-margin-top:75px}.section-title--light p{color:rgba(255,255,255,.6)}
.premium-cards{max-width:1200px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.premium-cards article{position:relative;border-radius:26px;overflow:hidden;min-height:440px;background:#102b4d}.premium-cards img{width:100%;height:100%;object-fit:cover;filter:brightness(.65);transition:.5s}.premium-cards article:hover img{transform:scale(1.05);filter:brightness(.75)}.premium-cards h3{position:absolute;left:24px;bottom:18px;font-family:"Noto Serif KR",serif;font-size:34px}
.unit-tabs{max-width:1200px;margin:0 auto 28px;display:flex;flex-wrap:wrap;gap:10px}.unit-tabs button{border:1px solid #d8dde4;background:#fff;border-radius:999px;padding:11px 20px;cursor:pointer}.unit-tabs button.active{background:var(--navy2);color:#fff;border-color:var(--navy2)}.unit-frame{max-width:1000px;margin:auto;padding:20px;background:#fff;border-radius:28px;box-shadow:0 25px 80px rgba(17,34,56,.12)}.unit-frame img{margin:auto;max-height:850px}
.contact{min-height:100vh;padding:120px 20px;background:linear-gradient(120deg,rgba(5,17,35,.94),rgba(8,29,55,.77)),url('img/img_visual_simage1.png') center/cover;color:#fff;display:grid;place-items:center;scroll-margin-top:0}.contact-inner{width:min(760px,100%);text-align:center}.contact-inner>img{width:230px;margin:0 auto 42px;filter:brightness(0) invert(1)}.contact h2{font-family:"Noto Serif KR",serif;font-size:clamp(42px,6vw,78px);line-height:1.12;margin:12px 0 36px}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:left}.contact label span{display:block;font-size:12px;color:rgba(255,255,255,.65);margin:0 0 8px}.contact input[type=text],.contact input[type=tel]{width:100%;height:56px;border-radius:12px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;padding:0 15px}.contact .agree{grid-column:1/-1;font-size:13px;color:rgba(255,255,255,.65);display:flex;align-items:center;gap:8px}.contact form button{grid-column:1/-1;height:58px;border:0;border-radius:12px;background:var(--gold);color:var(--navy);font-weight:900;cursor:pointer}.contact-phone{display:inline-block;margin-top:26px;font-size:30px;font-weight:900;color:var(--gold2)}.contact-inner>p{font-size:12px;color:rgba(255,255,255,.5)}
.reveal{opacity:0;transform:translateY(36px);transition:opacity .8s,transform .8s}.reveal.is-visible{opacity:1;transform:none}
.mobile-dock{display:none}

@media(max-width:820px){
  .site-header{height:65px;padding:0 16px}.brand img{width:130px}.desktop-nav{display:none}.header-cta{padding:10px 13px;font-size:11px}
  .intro__logo{width:min(62vw,260px)}.intro__beam{width:19px}
  .hero-scroll{height:100svh;min-height:640px}.hero-bg{inset:-4%;width:108%;height:108%;object-position:62% center}.hero-vignette{background:linear-gradient(180deg,rgba(1,8,18,.28),rgba(2,11,25,.32) 38%,rgba(2,10,24,.84))}.hero-copy{left:16px;top:48%;bottom:auto;width:calc(100vw - 32px);transform:translate3d(-45px,-50%,0)}.hero-copy.is-active{animation-name:heroCopySceneMobile}.hero-copy h1,.display-copy{font-size:clamp(34px,9vw,39px);line-height:1.1}
  @keyframes heroCopySceneMobile{0%{opacity:0;transform:translate3d(-55px,-50%,0);filter:blur(7px)}14%{opacity:1;transform:translate3d(0,-50%,0);filter:none}72%{opacity:1;transform:translate3d(0,-50%,0);filter:none}100%{opacity:0;transform:translate3d(38px,calc(-50% - 12px),0);filter:blur(4px)}}
  .hero-progress{left:16px;bottom:86px}.scroll-cue{right:18px;bottom:73px}.scroll-cue span{display:none}
  .menu-journey{height:100svh;min-height:650px}.journey-sticky{padding-top:65px}.journey-heading{left:16px;right:16px;top:75px;max-width:none}.journey-heading h2{font-size:clamp(30px,7.5vw,38px);white-space:normal}.journey-heading p{font-size:12px;max-width:82vw}.journey-stage{display:block;padding-top:300px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.journey-stage::-webkit-scrollbar{display:none}.journey-stage.is-manual{}.journey-track{gap:16px;padding:0 11vw 76px 11vw;transform:none!important}.journey-card{flex-basis:78vw;height:54vh;min-height:365px;border-radius:24px;}.card-copy{left:22px;right:22px;bottom:22px}.card-icon{left:22px;top:22px;width:70px;height:70px}.card-arrow{width:42px;height:42px;right:18px;top:18px}.journey-meter{left:11vw;right:11vw;bottom:77px}.journey-hint{right:11vw;bottom:87px}.journey-card .card-icon *{animation-play-state:paused!important}
  .content-section,.units,.premium-grid{padding:86px 18px}.content-image{border-radius:18px;max-height:720px}.premium-cards{grid-template-columns:1fr}.premium-cards article{min-height:360px}.contact{padding:90px 18px 120px}.contact form{grid-template-columns:1fr}.contact .agree,.contact form button{grid-column:1}
  .mobile-dock{position:fixed;z-index:90;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));height:68px;border-radius:20px;display:grid;grid-template-columns:repeat(3,1fr);background:rgba(7,23,45,.96);backdrop-filter:blur(14px);box-shadow:0 14px 40px rgba(0,0,0,.3);overflow:hidden;border:1px solid rgba(239,215,164,.26)}.mobile-dock a{display:grid;place-items:center;padding:0 7px;text-align:center;color:#fff;font-size:14px;font-weight:700;line-height:1.25;border-right:1px solid rgba(255,255,255,.12)}.mobile-dock a:last-child{border:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.intro{display:none!important}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.hero-copy{opacity:0!important}.hero-copy:first-of-type{opacity:1!important;visibility:visible!important;transform:none!important}.journey-card .card-icon *{animation-play-state:paused!important}}

/* Two-screen landing: the landing ends after the menu journey. */
body.landing-only main{background:#07172d}

/* =========================
   V4 landing refinements
   ========================= */
.site-header--landing{justify-content:flex-start;pointer-events:none}
.site-header--landing .brand{pointer-events:auto}
.brand img{width:218px;filter:drop-shadow(0 8px 24px rgba(0,0,0,.18))}
.intro__logo{width:min(54vw,360px);filter:drop-shadow(0 0 30px rgba(255,224,151,.42))}

/* Seamless infinite belt. The cloned second set is positioned directly after the first. */
.journey-stage{overflow:hidden}
.journey-track{flex:none;padding-right:0}
.journey-card[data-clone="true"]{pointer-events:auto}
.journey-meter span{width:22%;transform:translateX(var(--journey-meter-x));transition:transform .12s linear;width:22%}

@media(max-width:820px){
  .brand img{width:176px}
  .journey-stage{display:flex;padding-top:8vh;overflow:hidden;touch-action:pan-y}
  .journey-track{gap:16px;padding:0 0 76px 11vw;transform:translate3d(0,0,0)!important;will-change:transform}
  .journey-card{flex-basis:78vw}
}

/* V4 mobile separation: keep the menu cards below the heading while the belt continues. */
@media(max-width:820px){
  .journey-stage{align-items:flex-start;padding-top:306px}
  .journey-track{padding-bottom:92px}
}


/* =========================
   V4.1 landing navigation + contact lead popup
   ========================= */
.site-header--landing{justify-content:flex-start;pointer-events:auto}
.site-header--landing .brand{pointer-events:auto;flex:0 0 auto}
.site-header--landing .landing-nav{margin-left:auto;align-items:center}
.site-header--landing .landing-nav .header-cta{opacity:1;margin-left:2px}
.site-header--landing .brand img{width:220px;height:auto;filter:drop-shadow(0 8px 24px rgba(0,0,0,.22))}
.intro__logo{width:min(58vw,400px);height:auto;filter:drop-shadow(0 0 30px rgba(255,224,151,.42))}
.landing-menu-toggle{display:none;margin-left:auto;width:38px;height:38px;border:1px solid rgba(255,255,255,.30);border-radius:50%;background:rgba(7,23,45,.26);color:#fff;cursor:pointer;backdrop-filter:blur(8px)}
.landing-menu-toggle span{display:block;width:18px;height:1px;background:currentColor;margin:5px auto;transition:.25s}
.landing-mobile-panel{position:fixed;z-index:79;inset:0;background:rgba(7,23,45,.98);color:#fff;padding:92px 24px 72px;display:none;flex-direction:column;gap:2px;overflow:auto;transform:translateY(-100%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.landing-mobile-panel.is-open{transform:none}
.landing-mobile-panel a{font-family:"Noto Serif KR",serif;font-size:22px;font-weight:300;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.12)}
body.landing-menu-open{overflow:hidden}

.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}
.lead-popup[hidden]{display:none}
.lead-popup{position:fixed;z-index:1100;inset:0;display:grid;place-items:center;padding:14px;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}
.lead-popup.is-open{opacity:1;visibility:visible}
.lead-popup__backdrop{position:absolute;inset:0;background:rgba(1,8,18,.64);backdrop-filter:blur(8px)}
.lead-popup__panels{position:relative;z-index:2;width:min(620px,calc(100vw - 28px));filter:drop-shadow(0 28px 80px rgba(0,0,0,.34))}
.lead-popup__shell{position:relative;width:100%;max-height:min(72svh,520px);overflow:hidden;border:1px solid rgba(201,163,92,.28);border-radius:22px;background:#f7f2e9;color:#162439;box-shadow:0 28px 90px rgba(0,0,0,.30);transform:translateY(12px) scale(.99);transition:transform .36s cubic-bezier(.16,.84,.28,1)}
.lead-popup.is-open .lead-popup__shell{transform:none}
.lead-popup__close{position:absolute;z-index:8;top:8px;right:9px;width:34px;height:34px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(7,23,45,.88);color:#fff;font-size:26px;font-weight:300;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.18)}
.lead-popup__tabs{display:flex;align-items:center;gap:0;padding:0 50px 0 14px;border-bottom:1px solid #ddd5c8;background:#ece6dc}
.lead-popup__tab{min-height:44px;padding:0 15px;border:0;border-bottom:2px solid transparent;background:transparent;color:#68717b;font-size:12px;font-weight:400;cursor:pointer}
.lead-popup__tab.is-active{border-bottom-color:#b3863c;color:#07172d}
.lead-popup__tab[hidden]{display:none}
.lead-popup__tab-body{max-height:calc(min(72svh,520px) - 45px);overflow:auto;scrollbar-width:thin}
.lead-popup__tab-panel{display:none;padding:0}
.lead-popup__tab-panel.is-active{display:block}
.lead-popup__tab-panel[hidden]{display:none!important}
.lead-popup__card{position:relative;width:100%;background:transparent;color:#162439;box-shadow:none;transform:none}
.lead-popup__layout{display:grid;grid-template-columns:168px minmax(0,1fr);min-height:390px}
.lead-popup__visual{position:relative;min-height:390px;margin:0;overflow:hidden;background:#e8ded1}
.lead-popup__visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%;filter:saturate(.88) contrast(.98) brightness(1.02)}
.lead-popup__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 36%,rgba(24,18,12,.56) 100%)}
.lead-popup__visual figcaption{position:absolute;z-index:2;left:14px;right:12px;bottom:16px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.38)}
.lead-popup__visual small{display:block;font-size:7px;font-weight:500;letter-spacing:.15em;color:#f4dba8;margin-bottom:5px}
.lead-popup__visual strong{display:block;font-family:"Noto Serif KR",serif;font-size:21px;font-weight:400;line-height:1.2;word-break:keep-all}
.lead-popup__visual span{display:block;margin-top:5px;font-size:9px;font-weight:400;color:rgba(255,255,255,.82)}
.lead-popup__pane{padding:18px 20px 16px;background:linear-gradient(135deg,#fbf8f1,#f5f0e8)}
.lead-popup__logo{width:150px;max-width:56%;margin:0 auto 6px}
.lead-popup__intro{font-family:"Noto Sans KR",Arial,sans-serif;font-size:12px;white-space:pre-line;font-weight:300;line-height:1.45;margin:0 0 9px;color:#233147;letter-spacing:-.025em;text-align:center;word-break:keep-all}
.lead-popup__field{display:block;margin:0 0 6px}
.lead-popup__field input,.lead-popup__field select{width:100%;height:37px;border:1px solid #d2cec6;background:rgba(255,255,255,.92);padding:0 11px;color:#172338;outline:none;border-radius:8px;font:400 12px/1.2 "Noto Sans KR",Arial,sans-serif}
.lead-popup__field input:focus,.lead-popup__field select:focus{border-color:#a87d38;box-shadow:0 0 0 3px rgba(168,125,56,.09)}
.lead-popup__agree{display:grid;grid-template-columns:16px 1fr;gap:6px;align-items:start;font-size:10px;line-height:1.4;margin:2px 0;color:#334155}
.lead-popup__agree input{width:14px;height:14px;margin:1px 0 0;accent-color:#0b74de}
.lead-popup__links{text-align:right;margin:0 0 4px;font-size:9px;color:#687382;text-decoration:underline}
.lead-popup__today{display:flex;align-items:center;gap:6px;margin:4px 0 7px;color:#526071;font-size:10px;cursor:pointer;user-select:none}
.lead-popup__today input{width:14px;height:14px;margin:0;accent-color:#8f6a2c}
.lead-popup__submit{width:100%;height:37px;border:0;border-radius:8px;background:linear-gradient(135deg,#9d7537,#c79a4d);color:#fff;font-weight:500;cursor:pointer;transition:transform .2s ease,filter .2s ease;box-shadow:0 8px 20px rgba(137,97,42,.16)}
.lead-popup__submit:hover{filter:brightness(1.05);transform:translateY(-1px)}
.lead-popup__submit:disabled{opacity:.62;cursor:wait}
.lead-popup__message{min-height:13px;margin:4px 0 0;text-align:center;font-size:9px;font-weight:400;color:#0b617d}
.lead-popup__message.is-error{color:#b53b37}
.lead-popup__pane--news{padding-top:20px}
.lead-popup__news-kicker{display:block;color:#9c793b;font-size:9px;font-weight:500;letter-spacing:.18em;margin-bottom:6px}
.lead-popup__card--newsletter h2{font-family:"Noto Serif KR",serif;font-weight:400;font-size:23px;line-height:1.25;margin:0 0 9px}
.lead-popup__news-list{display:grid;gap:4px}
.lead-popup__news-item{display:block;padding:7px 0;border-top:1px solid rgba(23,34,57,.12)}
.lead-popup__news-item small{display:block;color:#9c793b;font-size:8px;font-weight:400;margin-bottom:2px}
.lead-popup__news-item strong{display:block;font-size:12px;font-weight:500;line-height:1.35}
.lead-popup__news-item p{font-size:10px;color:#6d7682;margin:2px 0 0;line-height:1.35}
.lead-popup__news-more{display:inline-flex;margin-top:9px;color:#173d6e;font-size:10px;font-weight:500;border-bottom:1px solid #c9a35c;padding-bottom:2px}
@media(max-width:1024px){.landing-mobile-panel{display:flex}.site-header--landing .desktop-nav{display:none}.landing-menu-toggle{display:block}.site-header--landing .brand img{width:172px}}
@media(max-width:620px){.lead-popup{padding:8px}.lead-popup__panels{width:min(500px,calc(100vw - 16px))}.lead-popup__shell{max-height:76svh;border-radius:18px}.lead-popup__tab-body{max-height:calc(76svh - 45px)}.lead-popup__layout{grid-template-columns:96px minmax(0,1fr);min-height:366px}.lead-popup__visual{min-height:366px}.lead-popup__visual figcaption{left:8px;right:6px;bottom:11px}.lead-popup__visual small{font-size:6px}.lead-popup__visual strong{font-size:14px}.lead-popup__visual span{font-size:7px}.lead-popup__pane{padding:12px 12px 11px}.lead-popup__logo{width:128px;max-width:60%}.lead-popup__intro{font-size:11px;margin-bottom:7px}.lead-popup__field{margin-bottom:5px}.lead-popup__field input,.lead-popup__field select{height:34px;font-size:11px}.lead-popup__tab{min-height:42px;padding:0 11px;font-size:11px}.lead-popup__tabs{padding-left:8px}.landing-mobile-panel{padding:78px 16px 60px}.landing-mobile-panel a{font-size:18px;padding:9px 0}}
@media(prefers-reduced-motion:reduce){.lead-popup,.lead-popup__shell,.landing-mobile-panel{transition:none!important}}


/* V5.1-R1: privacy modal, newsletter/footer, premium 8-grid, video player */
body.privacy-open{overflow:hidden}
.privacy-modal[hidden]{display:none}.privacy-modal{position:fixed;z-index:1400;inset:0;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:.24s}
.privacy-modal.is-open{opacity:1;visibility:visible}.privacy-modal__backdrop{position:absolute;inset:0;background:rgba(1,8,18,.72);backdrop-filter:blur(8px)}
.privacy-modal__panel{position:relative;width:min(1040px,calc(100vw - 32px));max-height:calc(100svh - 40px);overflow:auto;background:#f7f6f2;color:#152033;border-radius:28px;padding:34px;box-shadow:0 30px 100px rgba(0,0,0,.42);transform:translateY(16px) scale(.985);transition:.25s}
.privacy-modal.is-open .privacy-modal__panel{transform:none}.privacy-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid #dedbd2;padding-bottom:20px;margin-bottom:20px}
.privacy-modal__head small{color:#a67d36;font-weight:900;letter-spacing:.18em}.privacy-modal__head h2{font-family:"Noto Serif KR",serif;font-size:clamp(34px,5vw,56px);margin:5px 0 0}
.privacy-modal__close{flex:0 0 auto;width:46px;height:46px;border:0;border-radius:50%;background:#07172d;color:#fff;font-size:31px;line-height:1;cursor:pointer}.privacy-modal__intro{color:#5f6975;line-height:1.8}
.privacy-modal__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.privacy-modal__grid article{background:#fff;border:1px solid #e3e1da;border-radius:18px;padding:20px}.privacy-modal__grid h3{font-size:17px;margin:0 0 9px}.privacy-modal__grid p{font-size:13px;line-height:1.75;color:#69727d;margin:0}
.footer-links a[data-privacy-open]{cursor:pointer}
.premium-story--eight{grid-template-columns:repeat(4,1fr)}.premium-story--eight article{min-height:470px}.premium-story--eight h3{font-size:30px}
.video-content{text-align:center}.video-content>p{color:#6d7682;line-height:1.8}.video-player{position:relative;margin:34px auto;max-width:1100px;border-radius:28px;overflow:hidden;background:#07172d;box-shadow:0 26px 80px rgba(7,23,45,.22);aspect-ratio:16/9}.video-player__poster{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:#07172d;cursor:pointer}.video-player__poster img,.video-player video{width:100%;height:100%;object-fit:cover}.video-player__play{position:absolute;left:50%;top:50%;translate:-50% -50%;display:grid;place-items:center;width:86px;height:86px;border-radius:50%;background:rgba(255,255,255,.9);color:#07172d;font-size:30px;padding-left:5px;box-shadow:0 12px 34px rgba(0,0,0,.28)}.video-player video{position:absolute;inset:0;background:#000}
@media(max-width:1024px){.premium-story--eight{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.privacy-modal{padding:10px}.privacy-modal__panel{padding:22px 17px;border-radius:20px;max-height:calc(100svh - 20px)}.privacy-modal__grid{grid-template-columns:1fr}.privacy-modal__head h2{font-size:34px}.premium-story--eight{grid-template-columns:1fr}.premium-story--eight article{min-height:440px}.video-player__play{width:68px;height:68px;font-size:24px}}

/* V5.1-R1 landing menu heading: mobile position correction */
@media(max-width:820px){.journey-heading{top:76px}.journey-heading.is-dimmed{opacity:.92;transform:translateY(-4px)}.journey-stage{padding-top:318px}}


/* V7 PC stability and landing popup typography */
body.lead-popup-open{position:fixed;width:100%;left:0;right:0;overflow:hidden!important;overscroll-behavior:none;touch-action:none}
.lead-popup,.lead-popup input,.lead-popup select,.lead-popup button{font-family:"Noto Sans KR",Arial,sans-serif}
.lead-popup__intro{font-family:"Noto Sans KR",Arial,sans-serif;font-weight:300;word-break:keep-all;overflow-wrap:normal;letter-spacing:-.035em}
.lead-popup__field select{height:48px;border:1px solid #cfd2d5!important;border-radius:10px!important;padding:0 13px!important;background:#fff!important;font:500 14px/1.2 "Noto Sans KR",Arial,sans-serif!important;appearance:auto}
.lead-popup__today{display:flex;align-items:center;gap:8px;margin:9px 0 15px;color:#33445a;font-size:13px;cursor:pointer;user-select:none}
.lead-popup__today input{width:16px;height:16px;margin:0;accent-color:#06435b}
.lead-popup__news-item--empty{border-top:1px solid rgba(23,34,57,.12);padding-top:16px}

/* V7.0 phase 2: shared desktop shell alignment */
@media(min-width:821px){.site-header{padding-inline:max(24px,calc((100vw - 1280px)/2))}}
@keyframes eventPullInLanding{0%{max-width:0;padding-inline:0;opacity:0;transform:translateX(-34px)}65%{max-width:180px;opacity:1;transform:translateX(4px)}100%{max-width:180px;opacity:1;transform:none}}

/* V7.1 PC refinement: denser menu, calmer motion, premium typography */
.hero-copy h1,.display-copy,.journey-heading h2,.card-copy h3{font-family:"Noto Serif KR",serif;letter-spacing:-.035em}
@media(min-width:821px){
  .journey-card{flex-basis:clamp(235px,20.5vw,315px);height:min(56vh,560px);border-radius:26px}
  .card-copy{left:24px;right:24px;bottom:24px}
  .card-copy h3{font-size:clamp(27px,2.1vw,36px);margin:7px 0}
  .card-copy p{font-size:13px}
  .card-icon{width:78px;height:78px;left:22px;top:22px}
  .card-arrow{width:46px;height:46px;right:18px;top:18px}
  .journey-card:hover::before,.journey-card.is-focused::before{animation-iteration-count:1}
}
.landing-phone,.contact-phone{display:inline-flex;align-items:baseline;gap:7px;color:#fff;text-decoration:none;white-space:nowrap;opacity:.92}
.landing-phone span,.contact-phone span{font-size:10px;letter-spacing:.09em;opacity:.62}
.landing-phone strong,.contact-phone strong{font-size:14px;letter-spacing:.02em;font-weight:800}
.landing-phone:hover,.contact-phone:hover{color:var(--gold2);opacity:1}
.landing-quick-dock{position:fixed;z-index:74;right:20px;top:50%;bottom:auto;translate:0 -50%;display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease}
.landing-quick-dock[hidden]{display:none!important}
.landing-quick-dock.is-visible{opacity:1;transform:none}
.landing-quick-dock a{width:82px;height:82px;border:1px solid rgba(239,215,164,.58);border-radius:50%;display:grid;place-items:center;padding:0 9px;text-align:center;background:rgba(7,23,45,.90);color:#f5ead2;font-size:14px;font-weight:500;line-height:1.25;box-shadow:0 12px 34px rgba(1,10,24,.24);animation:landingDockBreath 4.2s ease-in-out infinite}
.landing-quick-dock a:first-child{background:rgba(201,163,92,.90);color:#07172d}@keyframes landingDockBreath{0%,100%{translate:0 0}50%{translate:0 -3px}}
.lead-popup__card--newsletter[hidden]{display:none!important}
@media(max-width:820px){.landing-quick-dock{display:none!important}}

/* V7.3 direct refinements: V7.1 base, no overlay stylesheet */
.landing-emphasis,.type-emphasis{font-weight:300}
.hero-copy h1,.display-copy{word-break:keep-all}
.journey-heading .kicker{margin-bottom:12px}
.journey-heading h2{font-size:clamp(40px,3.9vw,60px);margin-bottom:10px;white-space:nowrap}
@media(min-width:821px) and (max-height:820px){.journey-heading{top:86px}.journey-stage{padding-top:272px}.journey-card{height:min(52vh,410px)}}
@media(min-width:821px) and (min-height:821px){.journey-stage{padding-top:clamp(260px,30vh,315px)}}
.landing-quick-dock a{transition:transform .2s ease,box-shadow .2s ease}.landing-quick-dock a:hover{transform:scale(1.045);box-shadow:0 16px 40px rgba(1,10,24,.35)}
@keyframes eventColorShiftLanding{0%,100%{color:#fff}50%{color:#efd7a4}}
.landing-nav .event-link{animation:eventPullInLanding 1.15s cubic-bezier(.2,.85,.2,1) both,eventColorShiftLanding 2.8s 1.15s ease-in-out 3}
/* V7.3 confirmed landing copy line breaks on desktop/laptop */
@media(min-width:821px){
  .hero-copy--two,.hero-copy--three{width:min(1120px,86vw)}
  .hero-copy--two .display-copy,.hero-copy--three .display-copy{font-size:clamp(40px,3.9vw,60px);line-height:1.12;white-space:nowrap}
}

@media(max-width:1024px) and (min-width:821px){.site-header{padding-inline:24px}.hero-copy,.hero-progress,.journey-heading{left:24px}.journey-heading{top:86px}}
@media(max-width:820px){.site-header{padding-inline:16px}.hero-copy,.hero-progress,.journey-heading{left:16px}.journey-heading{right:16px;top:75px}.journey-heading h2{white-space:normal}}
/* V7.4 landing title scale stays identical across the three scenes. */
@media(max-width:820px){.journey-heading h2{font-size:clamp(34px,9vw,42px)}}
@media(max-width:480px){.hero-copy h1,.display-copy,.journey-heading h2{font-size:clamp(30px,8vw,34px)}}


/* V7.5 second-complete refinement: visible-logo alignment + responsive journey */
.site-header--landing .brand img{transform:translateX(-22.5%)}
@media(max-width:820px){
  .journey-heading{left:16px;right:16px;top:74px;max-width:none}
  .journey-heading h2{font-size:clamp(27px,4.2vw,34px);line-height:1.12;white-space:normal;word-break:keep-all;text-wrap:balance}
  .journey-heading p{font-size:11px;max-width:92vw;line-height:1.55}
  .journey-stage{padding-top:238px;overflow:hidden;touch-action:pan-y}
  .journey-track{gap:14px;padding:0 8vw 64px 8vw}
  .journey-card{flex-basis:clamp(250px,46vw,340px);height:min(50vh,470px);min-height:330px;border-radius:22px}
  .card-copy{left:18px;right:18px;bottom:18px}.card-copy h3{font-size:clamp(26px,4.5vw,34px)}.card-copy p{font-size:11px}
  .card-icon{left:18px;top:18px;width:58px;height:58px}.card-arrow{width:38px;height:38px;right:15px;top:15px}
  .journey-meter{left:8vw;right:8vw;bottom:66px}.journey-hint{right:8vw;bottom:75px;font-size:7px}
}
@media(max-width:520px){
  .hero-copy h1,.display-copy{font-size:clamp(34px,9vw,39px);line-height:1.1}
  .journey-heading h2{font-size:clamp(25px,7.1vw,31px)}
  .journey-stage{padding-top:225px}
  .journey-card{flex-basis:68vw;height:48vh;min-height:330px}
}


/* =========================================================
   V7.6 landing / popup refinement
   ========================================================= */
/* Slim premium popup: one shell, two tabs, real image + live HTML copy. */
.lead-popup__panels{width:min(560px,calc(100vw - 28px))}
.lead-popup__shell{max-height:min(65svh,470px);border-radius:20px}
.lead-popup__tab-body{max-height:calc(min(65svh,470px) - 45px)}
.lead-popup__layout{grid-template-columns:150px minmax(0,1fr);min-height:350px}
.lead-popup__visual{min-height:350px}
.lead-popup__pane{padding:16px 18px 14px}
.lead-popup__visual strong{font-size:19px}
.lead-popup__intro{line-height:1.4}
.lead-popup__field input,.lead-popup__field select{height:35px!important;font-size:12px!important}
.lead-popup__field select{height:35px!important}
.lead-popup__submit{height:35px}
.lead-popup__today{margin:5px 0 8px;font-size:10px}

/* V8.0 mobile landing2: denser rhythm, calmer belt, static icons. */
@media(max-width:820px){
  :root{--hero-scene-duration:4.8s}
  .menu-journey{height:min(82svh,720px);min-height:620px}
  .journey-sticky{height:100%}
  .journey-heading{top:70px}
  .journey-heading h2{font-size:clamp(30px,8vw,36px);line-height:1.12}
  .journey-heading p{font-size:13px;line-height:1.48;max-width:94vw}
  .journey-stage{padding-top:190px}
  .journey-track{gap:12px;padding:0 10vw 52px}
  .journey-card{flex-basis:clamp(238px,64vw,308px);height:min(43vh,390px);min-height:300px;border-radius:20px}
  .card-copy{left:16px;right:16px;bottom:16px}.card-copy h3{font-size:clamp(26px,6.8vw,31px);line-height:1.14}.card-copy p{font-size:13px;line-height:1.48}
  .card-icon{left:16px;top:16px;width:56px;height:56px}.card-arrow{width:38px;height:38px;right:14px;top:14px}
  .journey-card .card-icon *{animation-play-state:paused!important}
  .journey-meter{left:10vw;right:10vw;bottom:48px}.journey-hint{right:10vw;bottom:57px;font-size:8px}
}
@media(max-width:520px){
  .journey-stage{padding-top:184px}
  .journey-card{flex-basis:66vw;height:40vh;min-height:292px}
}

@media(max-width:620px){
  .lead-popup{padding:10px}
  .lead-popup__panels{width:calc(100vw - 20px)}
  .lead-popup__shell{max-height:70svh;border-radius:17px}
  .lead-popup__tab-body{max-height:calc(70svh - 43px)}
  .lead-popup__layout{grid-template-columns:82px minmax(0,1fr);min-height:330px}
  .lead-popup__visual{min-height:330px}
  .lead-popup__pane{padding:11px 11px 10px}
  .lead-popup__logo{width:112px;margin-bottom:4px}
  .lead-popup__intro{font-size:10.5px;margin-bottom:6px}
  .lead-popup__visual figcaption{left:7px;right:5px;bottom:10px}
  .lead-popup__visual strong{font-size:13px;line-height:1.22}
  .lead-popup__visual span{font-size:6.5px}
  .lead-popup__field{margin-bottom:4px}
  .lead-popup__field input,.lead-popup__field select{height:32px!important;font-size:10.5px!important}
  .lead-popup__agree{font-size:9px}.lead-popup__links{font-size:8px}
  .lead-popup__today{font-size:9px;margin:4px 0 6px}
  .lead-popup__submit{height:33px}
  .lead-popup__tab{min-height:41px;font-size:10.5px}
}

/* V7.6 final popup: one slim real-image popup with tabbed newsletter. */
@media(min-width:621px){
  .lead-popup__panels{width:min(560px,calc(100vw - 28px))}
  .lead-popup__shell{max-height:min(68svh,475px)}
  .lead-popup__tab-body{max-height:calc(min(68svh,475px) - 45px)}
  .lead-popup__layout{grid-template-columns:148px minmax(0,1fr);min-height:350px}
  .lead-popup__visual{min-height:350px}
  .lead-popup__pane{padding:16px 18px 14px}
  .lead-popup__logo{width:138px;margin-bottom:5px}
  .lead-popup__intro{font-size:11px;line-height:1.4;margin-bottom:7px}
  .lead-popup__field input,.lead-popup__field select{height:34px;font-size:11px}
  .lead-popup__submit{height:35px}
  .lead-popup__today{margin:4px 0 7px;font-size:10px}
}
@media(max-width:620px){
  .lead-popup{padding:6px}
  .lead-popup__panels{width:calc(100vw - 12px)}
  .lead-popup__shell{max-height:84svh;border-radius:19px}
  .lead-popup__tab-body{max-height:calc(84svh - 48px)}
  .lead-popup__layout{grid-template-columns:112px minmax(0,1fr);min-height:430px}
  .lead-popup__visual{min-height:430px}
  .lead-popup__pane{padding:16px 14px 14px}
  .lead-popup__logo{width:132px;max-width:68%;margin-bottom:7px}
  .lead-popup__intro{font-size:13px;line-height:1.48;margin-bottom:10px}
  .lead-popup__visual figcaption{left:10px;right:7px;bottom:14px}
  .lead-popup__visual small{font-size:7px}
  .lead-popup__visual strong{font-size:17px;line-height:1.24}
  .lead-popup__visual span{font-size:8px}
  .lead-popup__field{margin-bottom:7px}
  .lead-popup__field input,.lead-popup__field select{height:42px!important;font-size:14px!important;padding-inline:12px!important}
  .lead-popup__agree{grid-template-columns:19px 1fr;gap:7px;font-size:12px;line-height:1.42;margin-top:3px}
  .lead-popup__agree input{width:18px;height:18px}
  .lead-popup__links{font-size:10.5px;margin-bottom:6px}
  .lead-popup__today{font-size:12px;margin:7px 0 9px}
  .lead-popup__today input{width:18px;height:18px}
  .lead-popup__submit{height:46px;font-size:16px;border-radius:10px}
  .lead-popup__tab{min-height:48px;font-size:13px;padding:0 13px}
  .lead-popup__tabs{padding-left:10px}
  .lead-popup__close{width:40px;height:40px;font-size:29px}
  .lead-popup__message{font-size:10.5px}
}
