body:is(.exelock-page, .elx-page, .exe-cart-page) {
  overflow-wrap: anywhere;
}

.exelock-page:lang(ko) :is(.exe-lede, .exe-hero-points li),
.elx-page:lang(ko) .elx-content :is(p, li) {
  word-break: keep-all;
  overflow-wrap: break-word;
}

:is(.exelock-page, .elx-page, .exe-cart-page) .site-header-inner > .header {
  height: auto;
  min-height: 72px;
}

:is(.exelock-page, .elx-page, .exe-cart-page) .site-header .header .nav > li > a {
  height: auto;
  min-height: 42px;
  padding-block: 4px;
}

:is(.exelock-page, .elx-page, .exe-cart-page) .footer :is(.footbox, .foot) {
  box-sizing: border-box;
  width: min(980px, calc(100% - 32px));
  max-width: calc(100% - 32px);
}

:is(.exelock-page, .elx-page, .exe-cart-page) .footer .footbox {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

:is(.exelock-page, .elx-page, .exe-cart-page) .footer .footbox .us {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  padding-inline: 0;
}

:is(.exelock-page, .elx-page, .exe-cart-page) .footer .footbox .us .jbreg {
  display: flex;
}

:is(.exelock-page, .elx-page, .exe-cart-page) .footer .footbox .us .jbreg input {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  flex: 1 1 0;
}

.exelock-page .exe-actions > a.gs-banner-button {
  height: auto !important;
  padding-block: 10px !important;
  overflow-wrap: anywhere !important;
}

.exelock-page .productnav .row {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: min(980px, calc(100% - 32px));
  height: auto;
}

.exelock-page .productnav :is(.productnav-left, .productnav-right) {
  display: flex;
  align-items: stretch;
  width: auto;
  min-width: 0;
  height: auto;
  margin: 0;
}

.exelock-page .productnav-left { flex: 1 1 0; }
.exelock-page .productnav-right { flex: 1 1 0; justify-content: flex-end; gap: 12px; }

.exelock-page .productnav .productnav-left > a {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 60px;
  padding: 8px 12px;
  line-height: 1.3;
  text-align: center;
}

.exelock-page .productnav-left > a > i { flex: none; margin: 0; }
.exelock-page .productnav-left .userguide { white-space: normal; }

.exelock-page .productnav-right :is(.dow02, .buynow) {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  max-width: 100%;
  min-width: 0;
  height: auto;
  min-height: 38px;
  margin-block: 8px;
  line-height: 1.3;
}

.exelock-page .productnav-right .dow02 { padding: 8px 10px; }
.exelock-page .productnav-right .buynow span {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  height: auto;
  min-height: 38px;
  padding: 8px;
  line-height: 1.3;
  white-space: normal;
}

.exelock-page .featureandmedia > :is(.filelockfeature, .mediareview) { min-width: 0; }
.exelock-page .exe-shot-tab { min-width: 0; white-space: normal; overflow-wrap: anywhere; }

.elx-page .elx-content a.elx-button { white-space: normal; overflow-wrap: anywhere; }
.elx-page .elx-bottom .elx-wrap { grid-template-columns: minmax(0, 1fr) minmax(0, 190px); }
.elx-page .elx-bottom .elx-actions { min-width: 0; width: 100%; }
.elx-page .elx-bottom a.elx-button { width: 100%; }

/* Both bundles use the original .bundle wrapper on this cart. */
.exe-cart-page .bundle { height: auto !important; padding-bottom: 20px; }
.exe-cart-page .bundle > h3 { line-height: 1.5; }
.exe-cart-page .bundle :is(.bundlecon-a, .bundlecon-g) {
  box-sizing: border-box;
  height: auto;
  padding: 24px 16px 12px;
}
.exe-cart-page .bundle .bundlecon-g h3 { margin: 0 0 16px; padding: 0; font-size: 28px; line-height: 1.25; }
.exe-cart-page .bundle .bundlecon-g .imgi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 12px;
  max-width: 760px;
  padding: 0;
}
.exe-cart-page .bundle .bundlecon-g .imgi img { display: block; max-width: 100%; height: auto; padding: 0; }
.exe-cart-page .bundle .bundlecon-g .imgi > br { display: none; }
.exe-cart-page .bundle .bundlecon-g .cartbuybox {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 12px 22px;
  width: auto;
  margin: 0;
  padding: 4px 0 12px;
}
.exe-cart-page .bundle .bundlecon-g .cartbuybox > :is(p, div) {
  float: none;
  width: auto;
  max-width: 100%;
  margin: 0;
  padding: 0;
  line-height: 1.15;
  text-align: center;
}
.exe-cart-page .bundle .bundlecon-g .cartbuybox .buy02 {
  box-sizing: border-box;
  align-content: center;
  width: 150px;
  max-width: 100%;
  height: auto;
  min-height: 50px;
  margin: 0;
  padding: 8px 10px;
  line-height: 1.25;
}

.exe-cart-page .license-delivery-modal { box-sizing: border-box; padding: 16px; }
.exe-cart-page .license-delivery-dialog {
  box-sizing: border-box;
  min-width: 0;
  max-height: calc(100vh - 32px);
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.exe-cart-page .license-delivery-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.exe-cart-page .license-delivery-contact { flex-wrap: wrap; }
.exe-cart-page .license-delivery-contact > div { min-width: 0; flex: 1 1 180px; }
.exe-cart-page .license-delivery-contact a { box-sizing: border-box; max-width: 100%; white-space: normal; }
.exe-cart-page .license-delivery-consent span { min-width: 0; }
.exe-cart-page .license-delivery-actions button { box-sizing: border-box; max-width: 100%; height: auto; white-space: normal; overflow-wrap: anywhere; }

@media (min-width: 981px) {
  .exelock-page .site-language-footer { padding-bottom: 44px; }
  .exelock-page:has(#floatcsbfreebox:not(.floatcsbfreebox_h)) .site-language-footer { padding-bottom: 134px; }
}

@media (max-width: 1000px) {
  .elx-page .elx-bottom .elx-wrap { grid-template-columns: minmax(0, 1fr); }
  .elx-page .elx-bottom .elx-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
  :is(.exelock-page, .elx-page, .exe-cart-page) .footer .footbox { grid-template-columns: minmax(0, 1fr); }
  .exe-cart-page .cartbox .cartright { display: none; }
  .exelock-page .productnav .row { flex-wrap: wrap; }
  .exelock-page .productnav .productnav-left { width: 100%; flex-basis: 100%; }
  .exelock-page .productnav .productnav-right { display: none; }
}

@media (max-width: 560px) {
  .exelock-page .exe-actions > a.gs-banner-button { flex-basis: auto !important; }
  .elx-page .elx-actions, .elx-page .elx-bottom .elx-actions { grid-template-columns: minmax(0, 1fr); }
  .exe-cart-page .bundle .bundlecon-g h3 { font-size: 22px; }
  .exe-cart-page .license-delivery-dialog { padding: 26px 18px; }
  .exe-cart-page .license-delivery-summary { grid-template-columns: minmax(0, 1fr); }
  .exe-cart-page .license-delivery-contact > div { flex-basis: auto; }
}
