/* NEXT TRACK 2027: campaign invitation with a concise benefit preview. */
#kg-annual-popup{box-sizing:border-box;position:fixed;inset:0;margin:auto;padding:0;border:1px solid #725985;border-radius:22px;width:calc(100% - 32px);max-width:410px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;background:#19121f;color:#f6f0fa;font-family:'Apple SD Gothic Neo','Malgun Gothic',sans-serif;box-shadow:0 28px 90px #0009}
#kg-annual-popup:not([open]){display:none}
#kg-annual-popup::backdrop{background:#09060ec9;backdrop-filter:blur(4px)}
#kg-annual-popup *{box-sizing:border-box}
#kg-annual-popup button,#kg-annual-popup a{font:inherit;cursor:pointer}
#kg-annual-popup button:focus-visible,#kg-annual-popup a:focus-visible{outline:2px solid #e2bbff;outline-offset:3px}
#kg-annual-popup p{margin:0}
#kg-annual-popup .kg-ap-content{position:relative;padding:36px 28px 24px;background:linear-gradient(180deg,#17101df2 0%,#19121fb8 42%,#19121f33 68%,#19121fe8 100%),url('/assets/campaign-2027/studio-keyvisual.webp') 58% center/cover no-repeat}
#kg-annual-popup .kg-ap-close{position:absolute;z-index:1;right:10px;top:10px;border:0;background:transparent;color:#dfcfeb;width:36px;height:36px;font-size:26px;line-height:1}
#kg-annual-popup .kg-ap-brand{font-size:12px;font-weight:700;letter-spacing:2px;color:#e7dceb}
#kg-annual-popup .kg-ap-brand span{display:block;font-size:18px;font-weight:750;letter-spacing:1.6px;color:#d6b6f1;margin-top:9px}
#kg-annual-popup h2{font-size:36px;line-height:1.3;letter-spacing:-1.2px;margin:30px 0 18px;color:#fff;font-weight:750;word-break:keep-all}
#kg-annual-popup h2 em{font-style:normal;color:#dcc0f5}
#kg-annual-popup .kg-ap-intro{font-size:15px;line-height:1.9;color:#ded0e8}
#kg-annual-popup .kg-ap-space{height:76px}
#kg-annual-popup .kg-ap-cta{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#cfabed;color:#25132e;text-decoration:none;padding:15px 16px;border-radius:10px;font-size:15px;font-weight:750}
#kg-annual-popup .kg-ap-cta:hover{background:#e0c1fb}
#kg-annual-popup .kg-ap-controls{display:flex;justify-content:space-between;padding:9px 22px;border-top:1px solid #44304e;background:#17101d}
#kg-annual-popup .kg-ap-controls button{border:0;background:transparent;color:#c5b2d0;padding:7px 8px;font-size:11px;border-radius:6px;cursor:pointer;transition:background-color .15s,color .15s}
#kg-annual-popup .kg-ap-controls button:hover,#kg-annual-popup .kg-ap-controls button:focus-visible{background:#392541;color:#fff;text-decoration:underline;text-underline-offset:3px}
#kg-annual-popup [data-ap-close]{border-radius:0}
#kg-annual-popup [data-ap-close]:hover,#kg-annual-popup [data-ap-close]:focus-visible{background:transparent;color:#fff}
.kg-annual-popup-open{overflow:hidden!important}
/* Keep the campaign compact on phones, including short landscape viewports. */
@media(max-width:600px),(max-width:900px) and (max-height:500px){
 #kg-annual-popup{width:calc(100% - 48px);max-width:340px;max-height:80vh;max-height:min(80dvh,calc(100dvh - 64px));border-radius:18px}
 #kg-annual-popup[open]{display:flex;flex-direction:column}
 #kg-annual-popup .kg-ap-content{padding:26px 22px 18px;overflow:auto;min-height:0}
 #kg-annual-popup .kg-ap-close{top:4px;right:4px;width:44px;height:44px}
 #kg-annual-popup .kg-ap-brand{font-size:11px}
 #kg-annual-popup .kg-ap-brand span{font-size:16px;margin-top:6px}
 #kg-annual-popup h2{font-size:28px;line-height:1.3;margin:20px 0 14px;letter-spacing:-1px}
 #kg-annual-popup .kg-ap-intro{font-size:14px;line-height:1.7}
 #kg-annual-popup .kg-ap-space{height:24px}
 #kg-annual-popup .kg-ap-cta{font-size:14px;min-height:44px;padding:12px;gap:8px}
 #kg-annual-popup .kg-ap-controls{flex-shrink:0;padding:0 18px}
 #kg-annual-popup .kg-ap-controls button{min-width:44px;min-height:44px;font-size:12px}
}
@media(max-width:360px){
 #kg-annual-popup .kg-ap-content{padding:24px 18px 16px}
 #kg-annual-popup h2{font-size:26px;margin-top:18px}
 #kg-annual-popup .kg-ap-cta{font-size:13px}
}
@media(max-width:900px) and (max-height:650px){
 #kg-annual-popup .kg-ap-content{padding-top:22px}
 #kg-annual-popup h2{margin-top:16px;margin-bottom:12px}
 #kg-annual-popup .kg-ap-space{height:16px}
}

#kg-annual-popup .kg-ap-period{margin-top:16px;font-size:12px;line-height:1.7;color:#ead6f6;word-break:keep-all}

#kg-annual-popup .kg-ap-benefits{margin-top:22px;padding:16px;border:1px solid #8e6aa158;border-radius:12px;background:#1b1425d9}
#kg-annual-popup .kg-ap-benefit-label{font-size:11px;font-weight:600;letter-spacing:.3px;color:#cbb8da;margin-bottom:12px}
#kg-annual-popup .kg-ap-benefits dl{margin:0;padding:0;display:grid;gap:10px;float:none;clear:none;width:auto}
#kg-annual-popup .kg-ap-benefits dl>div{float:none;width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:13px;line-height:1.5}
#kg-annual-popup .kg-ap-benefits dt{float:none;width:auto;position:static;margin:0;padding:0;color:#ede3f4}
#kg-annual-popup .kg-ap-benefits dd{float:none;width:auto;position:static;margin:0;padding:0;color:#e1bff5;font-weight:700;white-space:nowrap}
#kg-annual-popup .kg-ap-benefit-note{display:block;clear:both;margin-top:11px;font-size:10px;line-height:1.5;color:#c4b1cf}
#kg-annual-popup .kg-ap-period{margin-top:16px;margin-bottom:18px}
@media(max-width:600px),(max-width:900px) and (max-height:500px){
 #kg-annual-popup .kg-ap-intro{font-size:13px}
 #kg-annual-popup .kg-ap-benefits{margin-top:18px;padding:14px 12px}
 #kg-annual-popup .kg-ap-benefits dl>div{font-size:12px;gap:8px}
 #kg-annual-popup .kg-ap-benefit-label{margin-bottom:10px}
 #kg-annual-popup .kg-ap-period{font-size:11px;margin-top:14px;margin-bottom:16px}
}
@media(max-width:360px){
 #kg-annual-popup .kg-ap-benefits{padding:12px 10px}
 #kg-annual-popup .kg-ap-benefits dl>div{font-size:11px}
}
@media(max-width:360px) and (max-height:650px){
 #kg-annual-popup .kg-ap-content{padding:20px 18px 14px}
 #kg-annual-popup .kg-ap-brand{font-size:10px}
 #kg-annual-popup .kg-ap-brand span{font-size:14px;margin-top:5px}
 #kg-annual-popup h2{font-size:24px;line-height:1.2;margin:14px 0 10px}
 #kg-annual-popup .kg-ap-intro{font-size:12px;line-height:1.6}
 #kg-annual-popup .kg-ap-benefits{margin-top:14px;padding:12px 10px}
 #kg-annual-popup .kg-ap-benefit-label{margin-bottom:8px}
 #kg-annual-popup .kg-ap-benefits dl{gap:6px}
 #kg-annual-popup .kg-ap-benefit-note{font-size:9px;margin-top:8px}
 #kg-annual-popup .kg-ap-period{font-size:10px;margin:12px 0}
}

/* Enlarge supporting copy without overpowering the campaign headline. */
#kg-annual-popup .kg-ap-intro{font-size:16px;line-height:1.75}
#kg-annual-popup .kg-ap-benefit-label{font-size:12px}
#kg-annual-popup .kg-ap-benefits dl>div{font-size:14px;line-height:1.6}
#kg-annual-popup .kg-ap-benefit-note{font-size:12px;line-height:1.6}
#kg-annual-popup .kg-ap-period{font-size:13px;line-height:1.7}
#kg-annual-popup .kg-ap-controls button{font-size:12px}
@media(max-width:600px),(max-width:900px) and (max-height:500px){
 #kg-annual-popup .kg-ap-intro{font-size:14px;line-height:1.7}
 #kg-annual-popup .kg-ap-benefits dl>div{font-size:13px}
 #kg-annual-popup .kg-ap-benefit-note{font-size:11px}
 #kg-annual-popup .kg-ap-period{font-size:12px}
}
@media(max-width:360px){
 #kg-annual-popup .kg-ap-benefits dl>div{font-size:12px}
}
@media(max-width:360px) and (max-height:650px){
 #kg-annual-popup{max-height:88vh;max-height:min(88dvh,calc(100dvh - 48px))}
 #kg-annual-popup .kg-ap-intro{font-size:13px;line-height:1.65}
 #kg-annual-popup .kg-ap-benefit-note{font-size:11px}
 #kg-annual-popup .kg-ap-period{font-size:11px}
}
